Коли відбуваються зміни в геттінгах?


9

Після внесення змін у щось в gsettings, чи потрібно щось зробити, щоб зміни вступили в силу?

Наприклад, якщо у мене є мініатюри, які ~/.thumbnailsдатуються кілька днів, буде виконано:

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

змусити миттєво видаляти ескізи старше одного дня?

Інший випадок - це вимкнення сповіщення випадково, а потім бажане відновлення за замовчуванням як у:

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

Залежно від характеру модифікованого ключа, чи потрібно буде вийти з системи, увійти або перезавантажитись? Чи є спосіб дізнатись, крім спроб та помилок?

Моя ОС - Lubuntu 13.10.


Я подумав, що керівним принципом Gnome є те, що налаштування набувають чинності негайно ... можливо, я помиляюся, я не використовую Gnome.
Робін Грін

Відповіді:


1

GSettings API , дійсно забезпечують bind, syncі сигнали. Але розробники програм повинні використовувати їх (get / sync) або коли їх використовувати або слухати зміни подій (періодично синхронізувати, отримувати один раз при завантаженні програми, а потім синхронізувати після завершення програми ...). Посилання: Довідковий посібник GIO

Будь-яке оновлення значення, воно буде негайно зберігатися в dconf user:db. Демон демонстрації GSttings надсилатиме сигнали зміни (сигнали glib). Сторона програми, залежно від її реалізації.

Наприклад:

  • Більшість сервісів перезавантажують налаштування при перезапуску.
  • Розкладка клавіатури була реалізована для негайного відображення змін. Це все одно повинно бути.

Приємний питання тут з простим тестом на прив’язку Що таке файл XML схеми в папці data / glib-2.0 мого швидкого додатка?

Примітка. Говорили про GSettings також для роботи з dbus, можливо, це вже реалізовано. Посилання: https://jasondclinton.livejournal.com/76020.html


1

Нові налаштування записуються негайно. Коли вони набувають чинності, залежить від того, що це за налаштування та який додаток використовує. Якщо налаштування призначено для системної служби, воно зазвичай набирає чинності під час перезавантаження служби. Якщо налаштування призначено для програми, воно зазвичай набирає чинності, коли програма закривається та відкривається знову. У випадку з папкою кешу, згідно з вашим прикладом, кешовані файли залишатимуться там, поки кеш не буде очищено, що може періодично траплятися або програма може перевірити кешовані файли при відкритті.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.