3 votes

Comment GTK enregistre-t-il les gestionnaires d'URI ?

J'utilise Google Chrome sur mon ordinateur portable Debian, mais à un moment donné, j'avais installé Firefox. Je suis en train de développer une application GTK, et lorsque je clique sur un lien, il affiche ceci :

(charry.phpw:6267): Gtk-WARNING **: Unable to show 'http://t.co/nOOjE9u1': Failed to execute child process "/opt/firefox/firefox" (No such file or directory)

Je ne comprends pas pourquoi il faudrait appeler Firefox, car j'ai réglé x-www-browser sur Chrome. Quelqu'un a-t-il une idée de la façon dont GTK choisit un navigateur pour ouvrir les hyperliens ?

Je dois maintenant développer cette question. Je me suis réveillé ce matin et j'ai essayé d'exécuter cette application sur ma boîte Windows, mais elle dit :

<php.exe:3360>: Gtk-WARNING **: Unable to show 'http://t.co/tKtwKbAt': No application is registered as handling this file

Alors comment GTK enregistre-t-il les gestionnaires d'URI ? Personne sur Internet ne semble savoir comment le faire... sans Gnome, du moins.

1voto

James Mertz Points 390

GTK utilise GVFS, qui utilisé pour utiliser les paramètres du schéma de Gconf ( /desktop/gnome/uri-handlers ), mais est depuis passé à la spécification XDG MIME Actions, avec des préférences conservées dans le fichier ${XDG_DATA_HOME-~/.local/share}/applications .

~/.local/share/applications/mimeapps.list :

[Default Applications]
x-scheme-handler/http=firefox.desktop

Le site .desktop sont recherchés dans le sous-dossier applications des deux $XDG_DATA_HOME et chaque chemin listé dans $XDG_DATA_DIRS .

Si mimeapps.list n'existe pas, defaults.list sera utilisé.


Je ne connais pas (encore) la réponse pour Windows, mais Moniteur de processus sera utile pour déterminer l'emplacement.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X