> Je dirais même plus, ce concept d'application globale a pour base le concept de variable globale très mauvais pour beaucoup de chose et bon pour très peu de chose...
À part le mot « global », il n'y a pas grand chose en rapport.
Ce qui se passe avec GtkApplication (et qui se passait avec libunique qui est maintenant obsolète), c'est qu'une nouvelle instance tente de communiquer via DBus avec la première instance. Et si la première instance existe, la nouvelle instance envoie généralement juste quelques commandes, et puis termine.
> Personnellement, j'en ai marre de ces applications qui refusent le multi-instance et les notions simples d'UNIX.
Moi j'aime bien quand le fichier que j'ouvre grâce à nautilus par exemple s'ouvre dans une fenêtre existante de l'application, si cette fenêtre se trouve sur le même espace de travail.
Si ce n'était pas le cas il faudrait ouvrir tous les fichiers via l'application elle-même, ce qui peut être contraignant.
De toute façon si on veut absolument que le fichier s'ouvre dans une nouvelle fenêtre, généralement il y a des options comme --new-window.
Autre exemple : avec Gedit il y a moyen de glisser/déposer des onglets d'une fenêtre à l'autre. Si c'était des instances différentes, il faudrait recharger le fichier dans la nouvelle fenêtre, et donc le fichier devrait préalablement être enregistré avant d'être déplacé, ce qui est plutôt embêtant pour un nouveau document.
Il y a sûrement plein d'autres choses utiles, tout dépend du type d'application.
Ceux qui croient que c'est utilisé seulement pour synchroniser les préférences et autres paramètres, c'est complètement faux puisque GSettings (successeur de GConf) se charge déjà de tout ça.
[^] # Re: Questions
Posté par Sébastien Wilmet (site web personnel, Mastodon) . En réponse à la dépêche Sortie officielle de GTK+ 3.0 !. Évalué à 8.
À part le mot « global », il n'y a pas grand chose en rapport.
Ce qui se passe avec GtkApplication (et qui se passait avec libunique qui est maintenant obsolète), c'est qu'une nouvelle instance tente de communiquer via DBus avec la première instance. Et si la première instance existe, la nouvelle instance envoie généralement juste quelques commandes, et puis termine.
> Personnellement, j'en ai marre de ces applications qui refusent le multi-instance et les notions simples d'UNIX.
Moi j'aime bien quand le fichier que j'ouvre grâce à nautilus par exemple s'ouvre dans une fenêtre existante de l'application, si cette fenêtre se trouve sur le même espace de travail.
Si ce n'était pas le cas il faudrait ouvrir tous les fichiers via l'application elle-même, ce qui peut être contraignant.
De toute façon si on veut absolument que le fichier s'ouvre dans une nouvelle fenêtre, généralement il y a des options comme --new-window.
Autre exemple : avec Gedit il y a moyen de glisser/déposer des onglets d'une fenêtre à l'autre. Si c'était des instances différentes, il faudrait recharger le fichier dans la nouvelle fenêtre, et donc le fichier devrait préalablement être enregistré avant d'être déplacé, ce qui est plutôt embêtant pour un nouveau document.
Il y a sûrement plein d'autres choses utiles, tout dépend du type d'application.
Ceux qui croient que c'est utilisé seulement pour synchroniser les préférences et autres paramètres, c'est complètement faux puisque GSettings (successeur de GConf) se charge déjà de tout ça.