Rebuild Displays around the canvas, and let the transaction keep color
Claude-Session: https://claude.ai/code/session_01Ms2FbjQy31TVf3CEvQhGM8
This commit is contained in:
@@ -80,6 +80,21 @@ and remote desktop. The allow-list in
|
||||
[`services/SystemSettings.qml`](config/dot/quickshell/services/SystemSettings.qml)
|
||||
is what decides; anything not on it is a panel Panama owns itself.
|
||||
|
||||
Displays is one of the panels it owns, and the only one where a wrong answer
|
||||
can leave you unable to see well enough to undo it. So every change there is
|
||||
applied as one complete layout, read back from the compositor, and reverted
|
||||
after fifteen seconds unless you keep it — resolution, scale, rotation,
|
||||
position and primary display, and now colour profile, bit depth, SDR
|
||||
brightness and saturation, and mirroring with them. Two of those opt out of
|
||||
part of that, for reasons rather than convenience. A per-display variable
|
||||
refresh rate override is applied but never verified, because `hyprctl` reports
|
||||
whether adaptive sync is live this instant rather than what was asked for. And
|
||||
a mirrored display's position is not asserted at all: the compositor stacks it
|
||||
on the display it mirrors and ignores the coordinates the rule carried, so
|
||||
holding it to them would make Keep permanently unavailable. Monitor brightness
|
||||
sits outside the transaction entirely — it is the panel's own backlight over
|
||||
DDC, and the buttons on the bezel change it behind our back.
|
||||
|
||||
| Piece | What it is |
|
||||
|---|---|
|
||||
| `config/dot/hypr/` | Compositor config. **Lua, not hyprlang** — see its README |
|
||||
|
||||
Reference in New Issue
Block a user