aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/island/ClockPill.qml
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-10-07 18:57:23 +0200
committerDanilo M. <danix@danix.xyz>2026-10-07 18:57:23 +0200
commitb324ff0fb5cbc13a038ce2e5a2a4af69598bb91a (patch)
tree3038d7ed7f940b209b7e9db68393c6e229d925cd /desktop/island/ClockPill.qml
parent744802e1ecb44ddb4714f8922b8ee0e9e5def811 (diff)
downloadquickshell-b324ff0fb5cbc13a038ce2e5a2a4af69598bb91a.tar.gz
quickshell-b324ff0fb5cbc13a038ce2e5a2a4af69598bb91a.zip
fix(island): review findings in the pill components
- The flag switches once per wheel notch; a touchpad's stream of small deltas switched an erratic number of times. - The flick decides on resolved icon paths, so a name the icon theme lacks falls back to the workspace number instead of a blank slot. - Layout switching uses Hyprland's 'current' keyboard rather than looking up the main device in a subshell. - The capsule radius reaches half the rest height, a real capsule. - privacy.sh exits non-zero when pw-dump fails, so Privacy keeps its last reading instead of reporting nothing captured. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'desktop/island/ClockPill.qml')
-rw-r--r--desktop/island/ClockPill.qml17
1 files changed, 11 insertions, 6 deletions
diff --git a/desktop/island/ClockPill.qml b/desktop/island/ClockPill.qml
index f1217f1..07a0eb7 100644
--- a/desktop/island/ClockPill.qml
+++ b/desktop/island/ClockPill.qml
@@ -27,6 +27,12 @@ Capsule {
readonly property var entry: flickApp ? DesktopEntries.heuristicLookup(flickApp) : null
readonly property string wsIcon: Workspaces.icon(flickWs)
+ // Resolved paths, not names, decide what shows: a name the icon theme
+ // lacks resolves to "", and testing the name left a blank slot where the
+ // workspace number should have been.
+ readonly property string wsPath: wsIcon ? Quickshell.iconPath(wsIcon, true) : ""
+ readonly property string appPath:
+ flickApp ? Quickshell.iconPath(entry?.icon || flickApp, true) : ""
restWidth: (flicking ? flickRow.implicitWidth : restRow.implicitWidth) + 28
@@ -73,24 +79,23 @@ Capsule {
IconImage {
anchors.verticalCenter: parent.verticalCenter
- visible: pill.wsIcon !== ""
+ visible: pill.wsPath !== ""
implicitSize: 18
- source: pill.wsIcon ? Quickshell.iconPath(pill.wsIcon, true) : ""
+ source: pill.wsPath
}
// A named workspace, or one past eight, has no icon: its number.
Text {
anchors.verticalCenter: parent.verticalCenter
- visible: pill.wsIcon === ""
+ visible: pill.wsPath === ""
text: pill.flickWs
font { family: Theme.fontFamily; pixelSize: Theme.fontSize - 1; weight: Font.DemiBold }
color: Theme.accent
}
IconImage {
anchors.verticalCenter: parent.verticalCenter
- visible: pill.flickApp !== ""
+ visible: pill.appPath !== ""
implicitSize: 18
- source: pill.flickApp
- ? Quickshell.iconPath(pill.entry?.icon || pill.flickApp, true) : ""
+ source: pill.appPath
}
Text {
anchors.verticalCenter: parent.verticalCenter