39 lines
857 B
QML
39 lines
857 B
QML
import QtQuick
|
|
import Quickshell
|
|
import Quickshell.Io
|
|
import "." as M
|
|
|
|
M.BarIcon {
|
|
id: root
|
|
icon: "\uF011"
|
|
tooltip: "Power menu"
|
|
|
|
required property var bar
|
|
|
|
Process {
|
|
id: runner
|
|
}
|
|
|
|
MouseArea {
|
|
anchors.fill: parent
|
|
cursorShape: Qt.PointingHandCursor
|
|
onClicked: {
|
|
menuLoader.active = !menuLoader.active;
|
|
M.FlyoutState.visible = false;
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
id: menuLoader
|
|
active: false
|
|
sourceComponent: M.PowerMenu {
|
|
screen: root.bar.screen
|
|
anchorX: root.mapToGlobal(root.width / 2, 0).x - (QsWindow.window?.screen?.x ?? 0)
|
|
onDismissed: menuLoader.active = false
|
|
onRunCommand: cmd => {
|
|
runner.command = cmd;
|
|
runner.running = true;
|
|
}
|
|
}
|
|
}
|
|
}
|