feat(config): bump schema to v20 with style-refactor visibility fields
Adds MainWindowOpen, SettingsWindowOpen, MaxParallelPopouts (channel popout pool size), TellAutoOpenMode (Off/Sidebar/TopTab/Popout) and SidebarAutoSwitchThresholdPx. Migration is additive — field initializers fill defaults for v19 configs, the Plugin.cs schema gate bumps the version stamp after load. UpdateFrom gets explicit sync statements for all five so settings-save edits do not drop them.
This commit is contained in:
@@ -200,11 +200,12 @@ public sealed class Plugin : IAsyncDalamudPlugin
|
||||
// do not touch either static, so the brief null-window is safe.
|
||||
|
||||
// Schema gate: v1.4.x+ requires config v16+. Users on older schemas
|
||||
// must install v1.4.2 first to run the migration chain. v19 adds the
|
||||
// must install v1.4.2 first to run the migration chain. v19 added the
|
||||
// top-level CustomSoundVolume, WindowOpacityInactive, WorldSuffixMode
|
||||
// and NameFormMode fields — all additive with defaults, so v16-v18
|
||||
// configs load cleanly and get their Version stamp bumped after the
|
||||
// gate.
|
||||
// and NameFormMode fields; v20 adds MainWindowOpen, SettingsWindowOpen,
|
||||
// MaxParallelPopouts, TellAutoOpenMode and SidebarAutoSwitchThresholdPx
|
||||
// — all additive with defaults, so v16-v19 configs load cleanly and
|
||||
// get their Version stamp bumped after the gate.
|
||||
if (Config.Version < 16)
|
||||
{
|
||||
throw new InvalidOperationException(
|
||||
@@ -212,7 +213,7 @@ public sealed class Plugin : IAsyncDalamudPlugin
|
||||
+ "Please install v1.4.2 first to migrate the configuration, then upgrade to v1.4.10."
|
||||
);
|
||||
}
|
||||
Config.Version = 19;
|
||||
Config.Version = 20;
|
||||
|
||||
// Unpinned TempTabs are session-only and dropped on every load. Pinned
|
||||
// TempTabs survive reload — Jin's tester feedback (v1.4.7).
|
||||
|
||||
Reference in New Issue
Block a user