Blanket refactoring of QML
-
Port components with delegates to pragma ComponentBehavior: Bound;
-
Add import aliases to QtQuick.Controls and discover (lib & app);
-
Drop QML import versions;
-
Override default spacing with Kirigami.Units.smallSpacing in layouts;
-
Other code style changes and fixes;
-
Remove remnants of the CompactMode feature;
-
Port navigation.js (which relied on a magical context property lookup) to a global singleton which is preloaded with main window set via QQmlComponent::beginCreate multi-step initialization.
-
Refactor some memory management surrounding DiscoverObject and its main window object. Engine's rootObjects are no longer used for this.
-
Exit gracefully if UI failed to load
Due to unconditional access to engine's rootObjects() first item, the application used to crash with segfault instead of existing with code 1.