Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
109 commits
Select commit Hold shift + click to select a range
1065384
feat: add QML UI migration and glass design system
magetsu002 Sep 10, 2026
7dded56
refactor(qml): add shared icon button tooltips
magetsu002 Sep 10, 2026
b7bd595
feat(qml): add vector save icon
magetsu002 Sep 10, 2026
c224fd8
refine(qml): replace slider knob with embedded capsule handle
magetsu002 Sep 10, 2026
315b913
refine(qml): use icon actions in Look & Feel
magetsu002 Sep 10, 2026
5e9f324
refine(qml): upgrade responsive slider control
magetsu002 Sep 10, 2026
e961cf7
refine(qml): balance Look & Feel responsive layout
magetsu002 Sep 10, 2026
a3f5b00
refine(qml): make setting fields responsive
magetsu002 Sep 10, 2026
410c92f
refine(qml): harden toggle layout at narrow widths
magetsu002 Sep 10, 2026
9bf999a
refactor(qml): add responsive application top bar
magetsu002 Sep 10, 2026
dd5ea2d
refactor(qml): add responsive sidebar component
magetsu002 Sep 10, 2026
47d1140
refactor(qml): add responsive page header and copy feedback
magetsu002 Sep 10, 2026
52b75fa
refactor(qml): replace dead learn-more footer with status bar
magetsu002 Sep 10, 2026
104dcd1
refactor(qml): extract responsive Environment page
magetsu002 Sep 10, 2026
7695263
refactor(qml): rebuild shell around responsive components
magetsu002 Sep 10, 2026
f21f6a5
refine(qml): add copy success check icon
magetsu002 Sep 10, 2026
9f6eb68
build(qml): register responsive shell components
magetsu002 Sep 10, 2026
a6c3138
feat(qml): expose variable CRUD through Rust bridge
magetsu002 Sep 10, 2026
27b2583
feat(qml): add Variables page
magetsu002 Sep 10, 2026
f93a5c4
feat(qml): wire Variables page into responsive shell
magetsu002 Sep 10, 2026
9db3463
build(qml): register Variables page
magetsu002 Sep 10, 2026
6fc724d
feat(qml): add reusable overview summary card
magetsu002 Sep 10, 2026
b6c9c8c
feat(qml): add functional Overview page
magetsu002 Sep 10, 2026
06560d6
feat(qml): wire Overview page into responsive shell
magetsu002 Sep 10, 2026
599d123
build(qml): register Overview components
magetsu002 Sep 10, 2026
5be5a8d
feat(qml): add Startup bridge
magetsu002 Sep 10, 2026
4f5bc19
feat(qml): add Startup page
magetsu002 Sep 10, 2026
ea503ed
build(qml): register Startup page bridge
magetsu002 Sep 10, 2026
973e28d
refine(qml): harden compact path copy and page subtitles
magetsu002 Sep 10, 2026
89c2735
feat(qml): wire Startup page into responsive shell
magetsu002 Sep 10, 2026
adee649
feat(qml): add Submaps bridge
magetsu002 Sep 10, 2026
1e8d341
feat(qml): add Submaps page
magetsu002 Sep 10, 2026
bf62547
build(qml): register Submaps page bridge
magetsu002 Sep 10, 2026
295e545
feat(qml): wire Submaps page into responsive shell
magetsu002 Sep 10, 2026
ced591c
refine(qml): add Submaps page description
magetsu002 Sep 10, 2026
c76dad6
feat(qml): expose health diagnostics to QML
magetsu002 Sep 10, 2026
7d7f00c
feat(qml): add responsive health diagnostics page
magetsu002 Sep 10, 2026
759d510
feat(qml): expose journal logs to QML
magetsu002 Sep 10, 2026
baa0498
feat(qml): add responsive journal logs page
magetsu002 Sep 10, 2026
956813e
build(qml): register health and logs pages
magetsu002 Sep 10, 2026
184e22c
feat(qml): wire health and logs pages
magetsu002 Sep 10, 2026
6cc5cc7
refine(qml): keep page header context responsive
magetsu002 Sep 10, 2026
9014ce1
ci: add QML migration build gate
magetsu002 Sep 10, 2026
fef415e
fix(qml): avoid reserved id role in logs delegate
magetsu002 Sep 10, 2026
3cbf2b0
fix(qml): expose startup entryId role
magetsu002 Sep 10, 2026
d2fe96d
fix(qml): expose submap entryId role
magetsu002 Sep 10, 2026
350a170
fix(qml): use startup entryId role safely
magetsu002 Sep 10, 2026
de4826b
fix(qml): use submap entryId role safely
magetsu002 Sep 10, 2026
895117f
ci: install libudev for hidapi build
magetsu002 Sep 10, 2026
92dc412
fix(qml): use inherited glass darkMode in status bar
magetsu002 Sep 10, 2026
91f095a
fix(qml): use inherited glass darkMode in summary cards
magetsu002 Sep 10, 2026
5baa41c
fix(qml): use inherited glass darkMode in settings cards
magetsu002 Sep 10, 2026
1f549e3
fix(qml): use supported text wrapping mode
magetsu002 Sep 10, 2026
60239b7
fix(qml): use supported log wrapping mode
magetsu002 Sep 10, 2026
f399b9f
fix(qml): register generated bridge modules
magetsu002 Sep 10, 2026
f7cc7bb
fix(qml): import native module in submaps page
magetsu002 Sep 10, 2026
39a1d76
fix(qml): import native module in startup page
magetsu002 Sep 10, 2026
8f32cc2
fix(qml): import native module in health page
magetsu002 Sep 10, 2026
f3cf208
fix(qml): import native module in logs page
magetsu002 Sep 10, 2026
3ac2ee5
fix(qml): stabilize responsive health layout
magetsu002 Sep 10, 2026
d2a0599
refactor(qml): refine window control glyphs
magetsu002 Sep 10, 2026
4f0e588
refactor(qml): polish titlebar window controls
magetsu002 Sep 10, 2026
0d0c19d
fix(qml): use valid pressed control token
magetsu002 Sep 10, 2026
b4b50ab
fix(qml): add Hyprland-native maximize bridge
magetsu002 Sep 10, 2026
00b11d7
feat(qml): add shared catalog bridge for remaining pages
magetsu002 Sep 10, 2026
f0143ce
feat(qml): add shared glass text editor
magetsu002 Sep 10, 2026
05fec3f
feat(qml): migrate binds page
magetsu002 Sep 10, 2026
ade3f08
feat(qml): migrate rule catalog pages
magetsu002 Sep 10, 2026
02e5e7e
feat(qml): migrate spec-backed settings pages
magetsu002 Sep 10, 2026
14e7f34
feat(qml): migrate config page
magetsu002 Sep 10, 2026
d7d090e
build(qml): register remaining migration pages and bridges
magetsu002 Sep 10, 2026
178f5a3
build(qml): register catalog and window bridges
magetsu002 Sep 10, 2026
f149b6e
fix(qml): make maximize reliable on Hyprland
magetsu002 Sep 10, 2026
78712a4
refactor(qml): add compact sidebar navigation
magetsu002 Sep 10, 2026
5796be0
refactor(qml): make sidebar collapse to icon rail
magetsu002 Sep 10, 2026
ee7d69a
feat(qml): route every sidebar page to migrated UI
magetsu002 Sep 10, 2026
6690bed
refactor(qml): complete page header metadata
magetsu002 Sep 10, 2026
987dec6
fix(qml): use Lua-safe Hyprland maximize dispatch
magetsu002 Sep 10, 2026
c9ddd2c
fix(qml): preserve sidebar icon geometry
magetsu002 Sep 10, 2026
13a3715
fix(qml): stabilize logs toolbar layout
magetsu002 Sep 10, 2026
7442473
refine(qml): stabilize slider handle geometry
magetsu002 Sep 10, 2026
37075b9
fix(qml): make look and feel toolbar deterministic
magetsu002 Sep 10, 2026
9f5ac11
fix(qml): make config toolbar deterministic
magetsu002 Sep 10, 2026
6ff5dd6
refine(qml): make window glyphs crisp at high dpi
magetsu002 Sep 10, 2026
40c9301
refine(qml): compose overview dashboard
magetsu002 Sep 10, 2026
60e2b12
refine(qml): replace config copy control
magetsu002 Sep 10, 2026
b4bd62c
refine(qml): unify titlebar action hover states
magetsu002 Sep 10, 2026
83d0ac6
refactor(qml): centralize page icon identity
magetsu002 Sep 10, 2026
d128ddf
refactor(qml): use shared page icon mapping
magetsu002 Sep 10, 2026
2937010
refactor(qml): align header icons with navigation identity
magetsu002 Sep 10, 2026
1e2d0cc
refine(qml): simplify navigation interaction states
magetsu002 Sep 10, 2026
3c6e2cc
fix(qml): reference navigation theme state correctly
magetsu002 Sep 10, 2026
193e375
refine(qml): give topbar actions cleaner hover breathing
magetsu002 Sep 10, 2026
8465928
refine(qml): rebalance light theme material palette
magetsu002 Sep 10, 2026
66dd248
refine(qml): keep text fields neutral on focus
magetsu002 Sep 10, 2026
0c79d0b
refine(qml): keep text areas neutral on edit
magetsu002 Sep 10, 2026
95c382d
refactor(qml): remove hidden button states from sidebar navigation
magetsu002 Sep 10, 2026
4493a44
refine(qml): simplify overview hero composition
magetsu002 Sep 10, 2026
4ed8d9f
refine(qml): make sidebar selection a single visual event
magetsu002 Sep 10, 2026
b334cf1
refine(qml): finish coherent light material palette
magetsu002 Sep 10, 2026
459aa28
fix(qml): eliminate overlapping nav selection transitions
magetsu002 Sep 10, 2026
499c9d4
fix(qml): make sidebar state transitions atomic
magetsu002 Sep 10, 2026
e6de76d
fix(qml): suppress redundant sidebar selections
magetsu002 Sep 10, 2026
9156f7b
chore(qml): finalize navigation polish
magetsu002 Sep 10, 2026
bf6ba3a
fix: make QML primary launch path
magetsu002 Sep 10, 2026
9c37259
ci: validate QML migration on pull requests
magetsu002 Sep 10, 2026
d90c65e
fix(qml): close migration parity gaps
magetsu002 Sep 10, 2026
9c651a0
fix(qml): validate launch compatibility paths
magetsu002 Sep 10, 2026
b321bf4
fix(qml): restore primary UI parity
magetsu002 Sep 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 50 additions & 0 deletions .github/workflows/qml-migration.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: QML Migration Check

on:
pull_request:
push:
branches:
- main
- feat/qml-ui-migration
workflow_dispatch:

permissions:
contents: read

jobs:
build:
runs-on: ubuntu-24.04
timeout-minutes: 20

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Install native dependencies
run: |
sudo apt-get update
sudo apt-get install -y \
build-essential \
cmake \
ninja-build \
pkg-config \
libgtk-4-dev \
libhidapi-dev \
libudev-dev \
qt6-base-dev \
qt6-declarative-dev \
qt6-declarative-dev-tools \
qt6-tools-dev \
qml6-module-qtquick \
qml6-module-qtquick-controls \
qml6-module-qtquick-layouts \
lua5.4

- name: Install Rust
uses: dtolnay/rust-toolchain@stable

- name: Test
run: cargo test --locked

- name: Build
run: cargo build --locked
Loading
Loading