Commit graph

33 commits

Author SHA1 Message Date
b1e2bb3bc6 feat(bar): horizontal top bar — Phase A geometry (NoSignal layout)
Convert the bar from a vertical left-edge strip to a horizontal top bar. The
shell had no orientation abstraction, so this flips the geometry across the bar
and the drawer/region/interaction layer:

- Bar.qml: ColumnLayout -> RowLayout; hit-testing (checkPopout/handleWheel),
  scroll halves and popout-center anchoring all keyed off x instead of y;
  first/last padding -> left/right margins.
- BarWrapper.qml: the bar's "thickness" is now its height (clampedHeight/
  contentHeight/implicitHeight); content anchors left/right/top.
- drawers: Exclusions (exclusive zone moved left->top), Panels (content inset
  topMargin = bar height), Regions + ContentWindow (panel->window coordinate
  mapping and the thick border flip left->top), Interactions (bar-region check
  y<barHeight, panel Y-origin uses bar height, scroll passes x, bar drag-reveal
  is vertical).
- widgets: Clock (Row, HH:MM with a colon), StatusIcons (Row), Workspaces +
  Workspace (Row), Tray (Row, expand chevron at the right) — each sizes to the
  bar height instead of width.

Verified live in the dev VM: top bar renders with centered-clock entries, the
exclusion zone keeps windows below the bar, and the dashboard drops down
correctly. Popout fly-outs still anchor sideways (Phase B).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 23:26:55 +01:00
2 * r + 2 * t
b7e862e3aa feat: darken backdrop when detached popout open 2026-06-07 22:26:20 +10:00
2 * r + 2 * t
26b50cec04 fix: animate base transparency properly 2026-06-05 01:25:28 +10:00
2 * r + 2 * t
eb62e47d27 chore: remove old needsKeyboard prop 2026-05-05 20:37:27 +10:00
2 * r + 2 * t
05333b5e02 Merge branch 'main' into feat/m3-revamp 2026-04-30 23:00:31 +10:00
2 * r + 2 * t
dfbd0829e7 feat: add showOverFullscreen option + disable by default
Fixes #1377
2026-04-30 22:26:52 +10:00
2 * r + 2 * t
a06fa38522 fix: close detached popout on fs 2026-04-30 22:21:47 +10:00
2 * r + 2 * t
87a452851e fix: allow interacting with notifs and osd in fs 2026-04-30 22:17:19 +10:00
2 * r + 2 * t
bcd7f6f161 feat: display on overlay layer only when fs 2026-04-30 22:01:27 +10:00
2 * r + 2 * t
d4b98dec77 fix: slight border showing when fullscreen 2026-04-30 21:49:44 +10:00
2 * r + 2 * t
1eac4e4bcb Merge branch 'main' into feat/m3-revamp 2026-04-26 15:13:51 +10:00
2 * r + 2 * t
9be727dbe1 fix: interaction blocking at edges when fullscreen
Also completely disable interaction when fullscreen
2026-04-26 15:12:55 +10:00
2 * r + 2 * t
158588ce89 refactor: no need to explicitly type as default spatial
Default spatial is the default type, so no need to type anims as such
2026-04-23 03:47:56 +10:00
2 * r + 2 * t
7ea5fd3c70 fix: use effects curve for effects 2026-04-23 03:45:22 +10:00
2 * r + 2 * t
711587d193 refactor: migrate to new rounding tokens 2026-04-22 22:47:18 +10:00
2 * r + 2 * t
f77ba920ea feat: add deform scale config option 2026-04-20 01:00:13 +10:00
2 * r + 2 * t
ec8ce65857 feat: m3 expressive menus
Also fix the player selector being click through
Fixes #1405
Closes #1350
2026-04-19 19:15:31 +10:00
2 * r + 2 * t
d675478e91 refactor: use new anim type prop 2026-04-15 18:32:19 +10:00
2 * r + 2 * t
c517b71024 fix: utilities recording modal bg 2026-04-13 23:03:36 +10:00
2 * r + 2 * t
50c4eaf75b feat: add border smoothing option 2026-04-13 22:30:49 +10:00
2 * r + 2 * t
b1401c1c8c feat: border rounding only affect outer corners 2026-04-13 22:09:43 +10:00
2 * r + 2 * t
8106aca173 fix: even more non global access 2026-04-13 16:42:00 +10:00
2 * r + 2 * t
8c8d196e20 feat: use QQuickAttachedPropertyPropagator
Instead of manually trying to find ancestor ConfigScope, set attached
prop on ancestor and propagate via attached props
2026-04-13 03:06:13 +10:00
2 * r + 2 * t
9be9ec10a6 fix: per monitor configs
Use c++ singleton pattern for monitor manager and bind appearance tokens
properly
Also use scoped properties on ContentWindow
2026-04-11 23:44:13 +10:00
2 * r + 2 * t
71dd7b4db8 chore: format QML imports 2026-04-11 22:17:24 +10:00
2 * r + 2 * t
d99fefdd34 fix: use correct anim tokens in QML 2026-04-11 21:41:31 +10:00
2 * r + 2 * t
3a37d77d1f feat: replace qml config module with c++ module 2026-04-11 21:18:56 +10:00
2 * r + 2 * t
b1380235eb fix: prevent deform gap between bar and popouts 2026-04-08 17:20:58 +10:00
2 * r + 2 * t
ff5c46a429 fix: don't exclude panels from group based on size
Most panels do not change size either way, and doing this removes the
close sink effect
2026-04-08 17:07:35 +10:00
2 * r + 2 * t
df27c93224 feat: improve popouts
Fix bg tracking, use slow spatial for detach, default spatial for
everything else, adjust deform, move instead of width scale
2026-04-08 17:06:37 +10:00
2 * r + 2 * t
9ce0224d0a fix: reduce deform amount 2026-04-07 17:02:17 +10:00
2 * r + 2 * t
c126075d40 chore: clean out legacy background code 2026-04-06 23:42:47 +10:00
2 * r + 2 * t
0e50b62413 refactor: move drawers window -> ContentWindow.qml 2026-04-06 23:38:36 +10:00