Quand les modifications des paramètres ont-elles lieu?

9

Après avoir modifié quelque chose dans gsettings, faut-il faire quelque chose pour que les modifications prennent effet?

Par exemple, si j'ai des vignettes ~/.thumbnailsdatant de quelques jours, fonctionnera:

gsettings set org.gnome.desktop.thumbnail-cache maximum-age 1

entraîner la suppression immédiate des miniatures de plus d'un jour?

Un autre cas serait de désactiver une notification par accident, puis de vouloir restaurer la valeur par défaut comme dans:

gsettings reset org.gnome.nm-applet disable-vpn-notifications

Selon la nature de la clé modifiée, une déconnexion et une connexion ou un redémarrage seront-ils nécessaires? Existe-t-il un moyen de le savoir autrement que par essais et erreurs?

Mon OS est Lubuntu 13.10.


la source
Je pensais qu'un principe directeur de Gnome était que les paramètres prennent effet immédiatement ... peut-être que je me trompe, je n'utilise pas Gnome.
Robin Green

Réponses:

1

API GSettings fournissent vraiment bind, syncet les signaux. Mais c'est aux développeurs d'applications de les utiliser (get / sync) ou quand les utiliser ou écouter les changements d'événement (synchroniser périodiquement, obtenir une fois au chargement de l'application puis synchroniser à la fin de l'application ...). Réf: Manuel de référence GIO

Toute mise à jour d'une valeur, elle sera immédiatement stockée dans dconf user:db. Le démon GSettings enverra des signaux de changement (signaux glib). Côté application, selon sa mise en œuvre.

Par exemple:

  • La plupart des services rechargent les paramètres au redémarrage.
  • La disposition du clavier a été implémentée pour refléter immédiatement le changement. Ce devrait être de toute façon.

Belle question ici avec un test de liaison simple Quel est le fichier XML de schéma dans le dossier data / glib-2.0 de mon application Quickly?

Remarque: Il y a eu une discussion sur GSettings pour fonctionner avec dbus aussi, peut-être qu'il est déjà implémenté. Réf: https://jasondclinton.livejournal.com/76020.html

user.dz
la source
1

Les nouveaux paramètres sont enregistrés immédiatement. Le moment où ils prennent effet dépend du paramètre et de l'application qui l'utilise. Si le paramètre concerne un service système, il prendra généralement effet lors du rechargement du service. Si le paramètre concerne une application, il prend généralement effet lorsque l'application est fermée et rouverte. Dans le cas d'un dossier de cache selon votre exemple, les fichiers mis en cache y resteront jusqu'à ce que le cache soit effacé, ce qui peut se produire périodiquement ou l'application peut valider les fichiers mis en cache une fois ouvert.

Micheal Johnson
la source