diff --git a/Functions/ToggleLayer.qml b/Functions/ToggleLayer.qml new file mode 100644 index 0000000..f7ad0bd --- /dev/null +++ b/Functions/ToggleLayer.qml @@ -0,0 +1,18 @@ +import QtQuick +import Quickshell.Wayland + +QtObject { + property bool onTop: true + + // The main toggle function + function toggleLayer() { + if (!onTop) { + mainWindow.WlrLayershell.layer = WlrLayer.Top + onTop = true + } else { + mainWindow.WlrLayershell.layer = WlrLayer.Bottom + onTop = false + } + console.log("Toggled layer, onTop =") + } +} diff --git a/Modules/PetMarch.qml b/Modules/PetMarch.qml new file mode 100644 index 0000000..064408b --- /dev/null +++ b/Modules/PetMarch.qml @@ -0,0 +1,22 @@ +import QtQuick + +Rectangle { + anchors.fill: parent + color: "transparent" + + AnimatedImage { + anchors.fill: parent + source: "../Gifs/evernight.gif" + fillMode: Image.PreserveAspectFit + } + + MouseArea { + anchors.fill: parent + acceptedButtons: Qt.MiddleButton + onClicked: (mouse) => { + if (mouse.button === Qt.MiddleButton) { + toggleHelper.toggleLayer() + } + } + } +} diff --git a/shell.qml b/shell.qml index 1763b53..fb61f51 100755 --- a/shell.qml +++ b/shell.qml @@ -1,8 +1,10 @@ pragma ComponentBehavior: Bound import QtQuick import Quickshell +import Quickshell.Io import Quickshell.Wayland -//import qs.Gifs +import qs.Modules +import qs.Functions PanelWindow { id: mainWindow @@ -20,37 +22,17 @@ PanelWindow { bottom: 5 } - property bool onTop: true - - function toggleLayer() { - if (onTop) { - WlrLayershell.layer = WlrLayer.Bottom - onTop = false - } else { - WlrLayershell.layer = WlrLayer.Top - onTop = true - } + IpcHandler { + id: ipc + target: mainWindow + function getColor() { return mainWindow.color.toString() } } - Rectangle { - anchors.fill: parent - color: "transparent" + ToggleLayer { + id: toggleHelper + } - id: petContainer - AnimatedImage { - anchors.fill: parent - source: "Gifs/evernight.gif" - fillMode: Image.PreserveAspectFit - } - - MouseArea { - anchors.fill: parent - acceptedButtons: Qt.MiddleButton - onClicked: (mouse) => { - if (mouse.button === Qt.MiddleButton) { - mainWindow.toggleLayer() - } - } - } + PetMarch{ + id:petMarch } }