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>
MultiEffect used to do a hard cutoff and not work with soft masks, but
since Qt 6.10 (or 6.11) it works correctly, so we don't need the custom
mask anymore
* reworked fullscreen mode as transforming shell
* controlcenter configuring of toasts & notifs
* fix animation on fs switch
* border rounding & shadow animation
* change controlcenter notifications layout
* stay on WlrLayer.Overlay, use Anim
* ci: update action versions
* qmlformat
* format take two
* third time's the charm
* fix: special workspace fullscreen
* fix: bar width border.thickness on non-persistent behaviour
* merge fix
* stop layout shift on close
* last few conventions sorted
* linting
* maximized state to fullscreen
---------
Co-authored-by: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>
* osicon: Unblurred sidebar icon
+ The multiplier on the implicitWidth and implicitHeight caused the
distro icon on the sidebar to look blurry. I believe this is because the
screen can't render a fraction of a pixel, and so, the qtengine
compensates by using anti-aliasing which causes the icon look smudged.
+ I changed the font size of the icon to a standard integer size
(extraLarge) and removed the multipliers. A side-effect of this commit
is that the icon looks a bit bigger now, I chose extraLarge instead of
just large because the icon looked a bit too small, but I do not know of
other people's preference on this.
* feat: Adjusted root implictWidth and implicitHeight
* fix
---------
Co-authored-by: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>
* First pass at hiding systray icons
Signed-off-by: Dan Griffiths <dgriffiths@widgitlabs.com>
* Don't dump all IDs for no reason >_<
Signed-off-by: Dan Griffiths <dgriffiths@widgitlabs.com>
* Better handling for hiding tray icons
Signed-off-by: Dan Griffiths <dgriffiths@widgitlabs.com>
* Re-add EOF newline
Signed-off-by: Dan Griffiths <dgriffiths@widgitlabs.com>
* Hide popouts too
Signed-off-by: Dan Griffiths <dgriffiths@widgitlabs.com>
* Hide the expand icon if no icons are visible
Signed-off-by: Dan Griffiths <dgriffiths@widgitlabs.com>
* Update modules/bar/components/Tray.qml
Co-authored-by: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>
* Update modules/bar/components/Tray.qml
Co-authored-by: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>
* Update modules/bar/components/Tray.qml
Co-authored-by: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>
* That needs to be inverted
* Clean up
Signed-off-by: Dan Griffiths <dgriffiths@widgitlabs.com>
* fix
---------
Signed-off-by: Dan Griffiths <dgriffiths@widgitlabs.com>
Co-authored-by: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com>