Finish the wonderland: System told truthfully, in eight tabs instead of ten

Claude-Session: https://claude.ai/code/session_01Ms2FbjQy31TVf3CEvQhGM8
This commit is contained in:
Gabriel Brown
2026-08-24 23:31:52 -04:00
parent 9ffaf45a4d
commit be0e55214b
57 changed files with 5040 additions and 925 deletions
@@ -11,9 +11,16 @@ Rectangle {
&& pageLoader.item.objectName === "my-home-page"
? pageLoader.item.pageDiagnostics
: ({})
// The objectName check alone is not enough. This binding re-evaluates
// while the loader is swapping pages, and for a moment `item` is the new
// page carrying the old objectName -- calling uiDiagnostics() on it threw
// a TypeError every time somebody navigated away from System Health.
// Asking whether the function is actually there is the only test that
// holds during the swap.
readonly property var healthDiagnostics: pageLoader.status === Loader.Ready
&& pageLoader.item
&& pageLoader.item.objectName === "system-health-page"
&& typeof pageLoader.item.uiDiagnostics === "function"
? pageLoader.item.uiDiagnostics()
: ({})
@@ -181,7 +188,6 @@ Rectangle {
case "mouse": return mousePage;
case "dictation": return dictationPage;
case "privacy": return privacyPage;
case "region": return regionPage;
case "accounts": return onlineAccountsPage;
case "accessibility": return accessibilityPage;
case "power": return powerPage;
@@ -267,7 +273,6 @@ Rectangle {
Component { id: mousePage; MousePage {} }
Component { id: dictationPage; DictationPage {} }
Component { id: privacyPage; PrivacyPage {} }
Component { id: regionPage; RegionPage {} }
Component { id: onlineAccountsPage; OnlineAccountsPage {} }
Component { id: healthPage; HealthPage {} }
Component { id: manualPage; ManualPage {} }