Various bugs in GUI option migration
Rework the way Gtk (and Qt) option migration works, to fix a few obscure bugs, and maybe make it easier to understand.
Full details with patch when I've ported it to all branches.
#2 Updated by Jacob Nevins 5 months ago
- File m-gui-migration-rework.patch m-gui-migration-rework.patch added
- File 30-gui-migration-rework.patch 30-gui-migration-rework.patch added
- File 26-gui-migration-rework.patch 26-gui-migration-rework.patch added
- Status changed from In Progress to Resolved
Commit message describes what's done here:
- Don't try to migrate anything on first run. (This was probably harmless, but unnecessary.)
- On first boot of a client, mark all migrations relevant to it as done, so that they can't accidentally trigger on subsequent runs. (For instance, if the user explicitly enabled full-screen on first run, migrate_options_from_2_5() could clobber it back to FALSE on the second run.)
- Avoid an enabled fullscreen setting from pre-2.6 Gtk2 leaking though to Gtk3.x/4; as with migration from 2.6+ Gtk2, we want to start again from defaults for this setting.
- In the Gtk3.22/4 clients, migrate a pre-2.6 fullscreen preference that would have affected the pre-2.6 Gtk3 client (if there is no newer Gtk3-specific fullscreen preference).
As usual, gui-gtk-4.0 changes aren't even compile-tested, but unlike other patches these weren't a trivial port of gui-gtk-3.22, so higher risk that I've messed up.