Repository navigation
Conversation
Roadmap 8c. app/ui_qt sits only on app/api: server list and live status header, batched console with command input, close-to-tray choice and QSystemTrayIcon, the Engine & Version dialog, a dark/light theme built from the AppConfig tokens, and Spanish from the same gettext catalog (28 new strings). QtDispatcher posts API callbacks to the GUI thread through a queued signal. packaging/qt_spike.spec builds a 30.9 MiB one-file exe; PySide6 lives only in requirements-qt.txt and the release specs exclude it. tools/qt_spike_bench.py reproduces the numbers in docs/QT-SPIKE.md (GO with conditions); ROADMAP 8c updated.
# Conflicts: # assets/locales/es/LC_MESSAGES/zbb.mo # assets/locales/es/LC_MESSAGES/zbb.po # assets/locales/zbb.pot
The same main screen two ways over one QObject backend on app/api: Qt Widgets pushed with painted animated controls, real shadows, a sliding selection indicator, skeletons and a Mica backdrop (--variant=widgets), and Qt Quick/QML with MultiEffect shadows, glow and frosted glass, transitions and an animated ListView (--variant=qml). Shared line icons in the website's style, Spanish from the gettext catalog. tools/qt_visual_bench.py measures open time, frame intervals, CPU/GPU, console bursts and captures the app window only; packaging/qt_visual.spec builds either variant. Results and the Widgets-first hybrid recommendation are in docs/QT-SPIKE.md.
Keeps the native window styles (shadow, rounded corners, animations, Aero Snap, edge resizing) and removes only the caption: WM_NCCALCSIZE drops the non-client area (and keeps a maximized window inside the work area), WM_NCHITTEST marks the caption strip, the resize edges and the maximize button (HTMAXBUTTON, so Windows 11 shows Snap Layouts). Windows 11-style caption buttons with Segoe Fluent Icons glyphs. With a removed caption DWM leaves the old caption band without Mica, so the custom bar uses opaque theme backgrounds; both options and the verification are documented in docs/QT-SPIKE.md.
Owner
Author
|
Added a custom Windows 11 title bar to variant A (
Screenshots of both options are in the "Custom title bar (Widgets)" section of |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This is a follow-up to #29 and builds on its branch. The question here is not speed (#29 covered that) but how far Qt can take the look of the app. The full write-up is the "Visual ceiling" section of
docs/QT-SPIKE.md. This is a draft and exploratory; please don't merge.The same main screen is built twice: server list, status header with Start/Stop, console and command bar. Both versions sit on one QObject backend over
app/apiand use the design tokens, the website's line icons, Mica and Spanish.--ui=qt --variant=widgets): painted animated buttons, a pulsing status pill, a sliding selection indicator, real shadows, skeletons and Mica.--ui=qt --variant=qml):MultiEffectshadows, glow and frosted glass, page transitions, and an animatedListView.Results
The two versions share 391 lines.
Recommendation: Widgets-first hybrid. Use Widgets for every screen, with a small design kit built from variant A. QML stays an option for a dashboard island later, at a cost of +15 MiB and a second language. For 8d this means +2 days in step 1, about 26 days in total.
Limits found
MAX_PATHlimit from a deep venv.Reproduce with
tools/qt_visual_bench.pyandpackaging/qt_visual.spec.