rework of IdleButton
This commit is contained in:
+1
-1
@@ -24,7 +24,7 @@ QtObject {
|
|||||||
readonly property int border_width: 2
|
readonly property int border_width: 2
|
||||||
|
|
||||||
readonly property string font: "CodeNewRoman Nerd Font"
|
readonly property string font: "CodeNewRoman Nerd Font"
|
||||||
readonly property string jfont: "CodeNewRoman Nerd Font"
|
readonly property string jfont: "Noto Sans JP"
|
||||||
|
|
||||||
function big_font_size(value) {
|
function big_font_size(value) {
|
||||||
return value * 0.6
|
return value * 0.6
|
||||||
|
|||||||
+1
-1
@@ -70,7 +70,7 @@ PanelWindow {
|
|||||||
Tray{}
|
Tray{}
|
||||||
Battery{}
|
Battery{}
|
||||||
Network {}
|
Network {}
|
||||||
IdleButton {}
|
IdleButton { panelWindow: panel }
|
||||||
PowerButton {}
|
PowerButton {}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,14 +0,0 @@
|
|||||||
if [ "$1" = "--status" ]; then
|
|
||||||
if pgrep -x "hypridle" >/dev/null; then
|
|
||||||
echo 1
|
|
||||||
else
|
|
||||||
echo 0
|
|
||||||
fi
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
if pgrep -x "hypridle" >/dev/null; then
|
|
||||||
killall hypridle
|
|
||||||
else
|
|
||||||
hypridle &
|
|
||||||
fi
|
|
||||||
@@ -5,24 +5,6 @@ import Quickshell.Io
|
|||||||
import "../../../../config"
|
import "../../../../config"
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
property int idle: 0
|
// true = inhibit idle (prevent hypridle/lock/dpms), false = allow idle
|
||||||
|
property bool idle: false
|
||||||
Process {
|
|
||||||
id: statusScript
|
|
||||||
command: ["sh", "-c", Config.configDir + "/modules/bar/scripts/Idle.sh --status"]
|
|
||||||
running: true
|
|
||||||
stdout: StdioCollector {
|
|
||||||
onStreamFinished: {
|
|
||||||
idle = this.text.trim() === "0" ? 1 : 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Timer {
|
|
||||||
interval: 5000
|
|
||||||
running: true
|
|
||||||
repeat: true
|
|
||||||
triggeredOnStart: true
|
|
||||||
onTriggered: statusScript.running = true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
import QtQuick
|
import QtQuick
|
||||||
import Quickshell
|
import Quickshell
|
||||||
import Quickshell.Hyprland
|
import Quickshell.Hyprland
|
||||||
|
import Quickshell.Wayland
|
||||||
import Quickshell.Io
|
import Quickshell.Io
|
||||||
import "../../../config"
|
import "../../../config"
|
||||||
import "../states/Idle"
|
import "../states/Idle"
|
||||||
@@ -12,16 +13,29 @@ MouseArea {
|
|||||||
hoverEnabled: true
|
hoverEnabled: true
|
||||||
cursorShape: Qt.PointingHandCursor
|
cursorShape: Qt.PointingHandCursor
|
||||||
|
|
||||||
|
required property PanelWindow panelWindow
|
||||||
|
|
||||||
|
IdleInhibitor {
|
||||||
|
id: idleInhibitor
|
||||||
|
window: panelWindow
|
||||||
|
enabled: IdleState.idle
|
||||||
|
}
|
||||||
|
|
||||||
|
IdleMonitor {
|
||||||
|
id: idleMonitor
|
||||||
|
enabled: true
|
||||||
|
timeout: 30
|
||||||
|
respectInhibitors: true
|
||||||
|
}
|
||||||
|
|
||||||
onClicked: {
|
onClicked: {
|
||||||
var newState = IdleState.idle ? 0 : 1
|
IdleState.idle = !IdleState.idle
|
||||||
console.log("[IdleButton] Toggling idle: " + (newState ? "enabled" : "disabled"))
|
console.log("[IdleButton] Toggling idle: " + (IdleState.idle ? "enabled" : "disabled"))
|
||||||
idleToggleProc.startDetached()
|
|
||||||
IdleState.idle = newState
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Rectangle {
|
Rectangle {
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
color: idleButton.containsMouse ? Colors.tertiary : Qt.alpha(Colors.tertiaryContainer, 0.25)
|
color: idleButton.containsMouse ? Colors.tertiary : idleMonitor.isIdle ? Qt.alpha(Colors.secondary, 0.25) : Qt.alpha(Colors.tertiaryContainer, 0.25)
|
||||||
radius: Config.radius_fun(idleButton.height)
|
radius: Config.radius_fun(idleButton.height)
|
||||||
border.width: Config.border_width
|
border.width: Config.border_width
|
||||||
border.color: (
|
border.color: (
|
||||||
@@ -42,10 +56,4 @@ MouseArea {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Process {
|
|
||||||
id: idleToggleProc
|
|
||||||
command: ["sh", "-c", Config.configDir + "/modules/bar/scripts/Idle.sh"]
|
|
||||||
running: false
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
@@ -74,6 +74,7 @@ Rectangle {
|
|||||||
} else {
|
} else {
|
||||||
Hyprland.dispatch("workspace " + workspaceData.id)
|
Hyprland.dispatch("workspace " + workspaceData.id)
|
||||||
}
|
}
|
||||||
|
Hyprland.refreshWorkspaces()
|
||||||
}
|
}
|
||||||
|
|
||||||
Row {
|
Row {
|
||||||
|
|||||||
Reference in New Issue
Block a user