mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-09 08:09:39 +07:00
There are two parts to the fix:
* explicitly flushing settings to disk before the initial sync — while the sync subsystem
correctly filters out files not matching the selected sync categories, it only seems to
take into account files that are actually persisted on disk when uploading them. When
setting up sync, the settings object initially remains in-memory (at least until the
time IDE decides to flush it on it's own), so initial upload might be missing the
settings state, giving appearance of all the categories being synced, instead of just
the selected ones,
* correctly categorise plugin settings — `SettingsSyncFiltering.getSubCategory` was written
to only classify font settings properly, so you could not disable a specific plugin from
syncing. This is now fixed by using plugin ID for category while filtering. It might make
sense to unify this code with `SyncPluginGroup` one way or another, but it was simpler to
just duplicate the behaviour for this fix.
Signed-off-by: Sergey Pak <sergey.pak@jetbrains.com>
GitOrigin-RevId: 88ab02f1198479eaad8966b7890748b87e53f5e0