v0.33.0: title bars drawn by LinTunes, in the window's grey
On Wayland Qt paints the title bar through its adwaita decoration plugin, which hardcodes pure white in light mode and ignores the palette. Every window now goes frameless and gets an app-drawn bar in the palette's Window color, so it follows the Background setting. Buttons follow GNOME's button-layout; moving, snapping and edge resizing still go through the compositor. Windows grow by the bar's height so their contents keep the size they had. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -604,7 +604,18 @@ persistence) → GUI (Qt widgets that read the manager and connect to its signal
|
||||
`QCursor.pos()` are unreliable during a drag — `gui/drag_ghost.py` paints its
|
||||
own child-widget overlay instead. `QAudioOutput` must not be constructed before
|
||||
a `QMainWindow` exists (Qt 6.10 deadlock). Some PyQt signal relays need explicit
|
||||
types/lambdas.
|
||||
types/lambdas. **Title bars are ours** (Round 72): Mutter draws none for
|
||||
Wayland clients, and Qt's `adwaita` decoration plugin paints them pure white
|
||||
from hardcoded constants, deaf to the palette. So on Wayland
|
||||
`gui/titlebar.install` (an app event filter) makes every `Window`/`Dialog`
|
||||
frameless at `Polish` and adds a `TitleBar` at its first `Show`, in the
|
||||
palette's `Window` color, room made through the window's top contents
|
||||
margin and the window grown by that much so its contents keep their size.
|
||||
Buttons follow GNOME's `button-layout`; move/resize go through
|
||||
`startSystemMove`/`startSystemResize`. A window with no layout must paint
|
||||
into `contentsRect()` (`art_window.py`); one that needs the system frame
|
||||
sets the `titlebar.OPT_OUT` property. The bar must never be an event filter
|
||||
on its own window — that is called during the window's teardown and aborts.
|
||||
- **Music files are only touched deliberately:** tag edits via `tagging.py`,
|
||||
and — since Round 18 — artist/album_artist/album edits relocate the file
|
||||
inside `LibraryManager.organize_root()` (`<music_folder>/Music`) to keep the
|
||||
|
||||
Reference in New Issue
Block a user