mirror of
https://github.com/LorenEteval/Furious.git
synced 2026-10-01 03:18:16 +03:00
1.4 KiB
1.4 KiB
Window and page guidance
MainWindowowns built-in pages/navigation and their persistent Qt tree. Plugin pages are registered throughPluginNavigationManager; pages adapt owning controllers/services/repositories rather than becoming state authorities.- Home is the initial page. Page selection and navigation expansion are session-local, with navigation initially collapsed; do not persist either state.
- Long-lived pages create controls, timers, services, and connections once. Visibility controls lazy presentation, not application-level collection or scheduler lifecycles.
- One-shot editors/prompts use managed transient dialogs.
TextEditorWindowis reusable and needs a deliberate durable owner. Close buttons call the normalclose()/closeEventpath so confirmation and cleanup remain canonical. - Use normal layouts and
AppQ*controls. Blocking file/network/core work leaves the GUI thread, and worker results return through owned signals without exposing secrets. - Top-level windows use
AppQMainWindowfirst-show preparation andDEFAULT_WINDOW_SIZE. Restore saved geometry only after the persistent child layout exists; a successfulrestoreGeometry()is authoritative, otherwise use the canonical default/centering path. - Verify navigation defaults, page lazy behavior, async continuations, unsaved-close flow, geometry restore, and repeated open/show/hide/destroy stability.