From 64241ff84673ce7400741c83c5b4445746cc5fd9 Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Thu, 23 Apr 2026 19:48:51 -0500 Subject: Stop Category Migration dialog firing on every Fluorine launch Upstream MO2 gates the one-time MO2 2.4 -> 2.5 category-migration dialog on `lastVersion < 2.5`. Fluorine's 0.x.y schema change means lastVersion is 0.x.y, which is always < 2.5, so the dialog nagged on every startup. Skip it when lastVersion has major=0 (Fluorine). Co-Authored-By: Claude Opus 4.7 (1M context) --- src/src/mainwindow.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/src/mainwindow.cpp b/src/src/mainwindow.cpp index 8c79454..39a5c09 100644 --- a/src/src/mainwindow.cpp +++ b/src/src/mainwindow.cpp @@ -1366,7 +1366,15 @@ void MainWindow::showEvent(QShowEvent* event) m_OrganizerCore.settings().setFirstStart(false); } else { auto& settings = m_OrganizerCore.settings(); - if (m_LastVersion < QVersionNumber(2, 5) && + // The category migration dialog was meant to fire once per upgrade + // across the upstream MO2 2.4 -> 2.5 cut. Fluorine now stores its own + // 0.x.y version in the same slot, so lastVersion < 2.5 is true on + // every Fluorine launch and the dialog would nag forever. Skip it + // when lastVersion looks like a Fluorine build. + const bool fluorineVersionScheme = + m_LastVersion.majorVersion() == 0; + if (!fluorineVersionScheme && + m_LastVersion < QVersionNumber(2, 5) && !GlobalSettings::hideCategoryReminder()) { QMessageBox migrateCatDialog; migrateCatDialog.setWindowTitle("Category Migration"); -- cgit v1.3.1