Add floating traffic-light window chrome
Introduces a dedicated layer-shell `WindowChromeSurface` that renders macOS-style traffic-light controls over the focused Sway window titlebar, replacing the old top-bar window controls. Adds theme tokens and a reusable `TrafficLightButton` component, updates shell QML/CMake wiring, and adjusts Sway titlebar padding/title format so window titles do not overlap the overlay. Window tracking was extended with focused-window geometry/deco/fullscreen properties plus backend refresh support so the chrome follows window movement and state changes in near real time.
This commit is contained in:
@@ -29,6 +29,9 @@ QtObject {
|
||||
readonly property color pressedFill: Qt.rgba(1, 1, 1, 0.10)
|
||||
readonly property color dangerSoft: Qt.rgba(201 / 255, 136 / 255, 136 / 255, 0.18)
|
||||
readonly property color dangerSoftStrong: Qt.rgba(201 / 255, 136 / 255, 136 / 255, 0.28)
|
||||
readonly property color trafficClose: "#ff5f57"
|
||||
readonly property color trafficMinimise: "#febc2e"
|
||||
readonly property color trafficZoom: "#28c840"
|
||||
readonly property color tileHover: Qt.rgba(1, 1, 1, 0.05)
|
||||
readonly property color iconWell: Qt.rgba(1, 1, 1, 0.05)
|
||||
readonly property color iconWellHighlight: Qt.rgba(1, 1, 1, 0.06)
|
||||
@@ -49,6 +52,9 @@ QtObject {
|
||||
readonly property int topBarHeight: 40
|
||||
readonly property int controlHeight: 28
|
||||
readonly property int searchHeight: 36
|
||||
readonly property int trafficLightSize: 12
|
||||
readonly property int trafficLightGap: 8
|
||||
readonly property int windowChromeInset: 10
|
||||
|
||||
readonly property int fontSize: 13
|
||||
readonly property int fontSizeApp: 12
|
||||
|
||||
Reference in New Issue
Block a user