finished the launcher
This commit is contained in:
@@ -1,10 +1,13 @@
|
|||||||
|
pragma ComponentBehavior: Bound
|
||||||
import QtQuick
|
import QtQuick
|
||||||
import QtQuick.Layouts
|
import QtQuick.Layouts
|
||||||
import Quickshell
|
import Quickshell
|
||||||
|
import Quickshell.Hyprland
|
||||||
|
|
||||||
import "../Color.js" as Colors
|
import "../Color.js" as Colors
|
||||||
|
|
||||||
import "../Components/"
|
import "../Components/"
|
||||||
|
import "../Services/"
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
id: root
|
id: root
|
||||||
@@ -12,36 +15,53 @@ Item {
|
|||||||
property var buttons: [
|
property var buttons: [
|
||||||
{
|
{
|
||||||
icon: "",
|
icon: "",
|
||||||
color: Colors.surface1
|
color: Colors.surface1,
|
||||||
|
action: function () {}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
icon: "",
|
icon: "",
|
||||||
color: Colors.yellow
|
color: Colors.yellow,
|
||||||
|
action: function () {
|
||||||
|
Quickshell.execDetached("nemo");
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
icon: "",
|
icon: "",
|
||||||
color: Colors.green
|
color: Colors.green,
|
||||||
|
action: function () {
|
||||||
|
Hyprland.dispatch("hl.dsp.exec_cmd('firefox --new-window \"https://office.voidarc.co.uk\"')");
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
icon: "",
|
icon: "",
|
||||||
color: Colors.sky
|
color: Colors.sky,
|
||||||
|
action: function () {
|
||||||
|
Hyprland.dispatch("hl.dsp.exec_cmd('firefox --new-window \"https://teams.cloud.microsoft\"')");
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
icon: "",
|
icon: "",
|
||||||
color: Colors.mauve
|
color: Colors.mauve,
|
||||||
|
action: function () {
|
||||||
|
Hyprland.dispatch("hl.dsp.exec_cmd('kitty')");
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
icon: "",
|
icon: "",
|
||||||
color: Colors.red
|
color: Colors.red,
|
||||||
|
action: function () {}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
icon: "",
|
icon: "",
|
||||||
color: Colors.peach
|
color: Colors.peach,
|
||||||
|
action: function () {
|
||||||
|
Hyprland.dispatch("hl.dsp.exec_cmd('firefox')");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
property real cx: width / 2
|
property real cx: width / 2
|
||||||
property real cy: height / 2
|
property real cy: height / 2
|
||||||
property bool hidden: true
|
property bool hidden: !IpcManager.launcherOpen
|
||||||
property real r: 120
|
property real r: 120
|
||||||
property double topMargin: 50
|
property double topMargin: 50
|
||||||
|
|
||||||
@@ -68,12 +88,6 @@ Item {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
// Behavior on topMargin {
|
|
||||||
// SpringAnimation {
|
|
||||||
// damping: 0.3
|
|
||||||
// spring: 5
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
transitions: [
|
transitions: [
|
||||||
Transition {
|
Transition {
|
||||||
from: "hidden"
|
from: "hidden"
|
||||||
@@ -156,6 +170,13 @@ Item {
|
|||||||
implicitWidth: 80 + (itemRoot.index === 0 ? 2 : 0)
|
implicitWidth: 80 + (itemRoot.index === 0 ? 2 : 0)
|
||||||
radius: 10
|
radius: 10
|
||||||
|
|
||||||
|
TapHandler {
|
||||||
|
onTapped: {
|
||||||
|
itemRoot.modelData.action();
|
||||||
|
IpcManager.toggleLauncher();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
anchors {
|
anchors {
|
||||||
horizontalCenter: parent.horizontalCenter
|
horizontalCenter: parent.horizontalCenter
|
||||||
verticalCenter: parent.verticalCenter
|
verticalCenter: parent.verticalCenter
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ Singleton {
|
|||||||
id: root
|
id: root
|
||||||
|
|
||||||
property var focusState: WlrKeyboardFocus.None
|
property var focusState: WlrKeyboardFocus.None
|
||||||
|
property bool launcherOpen: false
|
||||||
property bool logoutMenuOpen: false
|
property bool logoutMenuOpen: false
|
||||||
property bool tabletMode: false
|
property bool tabletMode: false
|
||||||
|
|
||||||
@@ -16,11 +17,15 @@ Singleton {
|
|||||||
signal enableTabletMode
|
signal enableTabletMode
|
||||||
signal logoutMenu
|
signal logoutMenu
|
||||||
signal normalMode
|
signal normalMode
|
||||||
|
signal toggleLauncher
|
||||||
|
|
||||||
onCloseLogoutMenu: {
|
onCloseLogoutMenu: {
|
||||||
root.focusState = WlrKeyboardFocus.None;
|
root.focusState = WlrKeyboardFocus.None;
|
||||||
root.logoutMenuOpen = false;
|
root.logoutMenuOpen = false;
|
||||||
}
|
}
|
||||||
|
onToggleLauncher: {
|
||||||
|
root.launcherOpen = root.launcherOpen == true ? false : true;
|
||||||
|
}
|
||||||
|
|
||||||
IpcHandler {
|
IpcHandler {
|
||||||
function disableTabletMode(): void {
|
function disableTabletMode(): void {
|
||||||
|
|||||||
Reference in New Issue
Block a user