Files
openide/plugins/settings-sync/git
Tomek jaen Mańko 3b3ef02a58 IJPL-13931 Ensure settings categories are respected in the initial sync
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
2024-07-10 17:44:42 +00:00
..