me like nix
0

Configure Feed

Select the types of activity you want to include in your feed.

hover for tray icons

author
Sean Aye
date (Mar 22, 2026, 8:03 PM -0400) commit f75135ac parent 460dfba7 change-id yqsuyyvv
+40 -6
+32 -6
hosts/common/quickshell/shell.qml
··· 84 84 property string powerProfile: "" 85 85 property string powerBackend: "" // "system76" or "ppd" 86 86 property string weather: "" 87 + property bool barHovered: false 87 88 88 89 anchors { 89 90 top: true ··· 96 97 margins.right: 0 97 98 implicitHeight: 30 98 99 color: Qt.rgba(0.188, 0.204, 0.275, 0.85) 100 + 101 + MouseArea { 102 + z: -1 103 + anchors.fill: parent 104 + hoverEnabled: true 105 + acceptedButtons: Qt.NoButton 106 + onContainsMouseChanged: { 107 + if (containsMouse) { trayHideTimer.stop(); root.barHovered = true } 108 + else { trayHideTimer.restart() } 109 + } 110 + } 111 + 112 + Timer { 113 + id: trayHideTimer 114 + interval: 500 115 + onTriggered: root.barHovered = false 116 + } 99 117 100 118 // CPU process 101 119 Process { ··· 332 350 visible: root.weather !== "" 333 351 } 334 352 335 - Rectangle { width: 1; height: 16; color: root.colOverlay0; visible: trayRepeater.count > 0 } 353 + Rectangle { 354 + width: 1; height: 16; color: root.colOverlay0 355 + visible: trayRepeater.count > 0 356 + opacity: root.barHovered ? 1.0 : 0.0 357 + Behavior on opacity { NumberAnimation { duration: 200 } } 358 + } 336 359 337 360 Repeater { 338 361 id: trayRepeater ··· 340 363 delegate: Item { 341 364 id: trayDelegate 342 365 required property var modelData 343 - width: trayIcon.width 344 - height: trayIcon.height 366 + Layout.preferredWidth: root.barHovered ? 28 : 0 367 + Layout.preferredHeight: 30 368 + opacity: root.barHovered ? 1.0 : 0.0 369 + clip: true 370 + 371 + Behavior on Layout.preferredWidth { NumberAnimation { duration: 200; easing.type: Easing.InOutQuad } } 372 + Behavior on opacity { NumberAnimation { duration: 200 } } 345 373 346 374 IconImage { 347 375 id: trayIcon 348 376 implicitSize: 16 377 + anchors.centerIn: parent 349 378 source: Quickshell.iconPath(trayDelegate.modelData.icon, true) || trayDelegate.modelData.icon 350 379 } 351 380 352 381 MouseArea { 353 382 anchors.fill: parent 354 - cursorShape: Qt.PointingHandCursor 355 383 onClicked: { 356 384 if (trayDelegate.modelData.id.toLowerCase().indexOf("steam") !== -1) { 357 385 steamOpenProc.running = true 358 - } else if (trayDelegate.modelData.onlyMenu || trayDelegate.modelData.hasMenu) { 359 - trayDelegate.modelData.display(root, trayDelegate.x, root.height) 360 386 } else { 361 387 trayDelegate.modelData.activate() 362 388 }
+8
hosts/common/wallpapers.nix
··· 36 36 url = "https://w.wallhaven.cc/full/85/wallhaven-852q62.png"; 37 37 filename = "sunset.png"; 38 38 } 39 + { 40 + url = "https://w.wallhaven.cc/full/ml/wallhaven-mlzzx8.png"; 41 + filename = "mimic.png"; 42 + } 43 + { 44 + url = "https://w.wallhaven.cc/full/9o/wallhaven-9oozpx.png"; 45 + filename = "neon.png"; 46 + } 39 47 ]