Как обрабатывать две страницы настроек, сохраняя конфликтующие значения в хранилище настроек? - PullRequest
0 голосов
/ 24 апреля 2020

Итак, я хочу синхронизировать настройки между двумя плагинами, то есть у меня есть две страницы настроек, которые в основном записывают в одно и то же хранилище настроек. На самом деле все немного сложнее, потому что синхронизация происходит в PropertyChangeListener.

Все работает нормально, пока я открываю только одну из страниц . Если я открою и страницу 1, и страницу 2, изменим значения на странице 1 и нажму «Применить и закрыть», и страница 1, и страница 2 сохранят свои значения - в результате страница 1 перезаписывает страницу 1, изменяя старые значения.

Есть ли способ обойти это? Все обходные пути не очень удобны для пользователей:

  • открывает только одну из страниц в диалоговом окне настроек - работает, потому что вторая страница даже не инициализирована и не пытается что-либо сохранить
  • Используйте только «Применить» и «Отмена» - таким образом, только страница, на которой я нажал «Применить», сохраняет свои настройки
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...