Files
NixOS-Configs/home/hypr/quickshell/shell.qml

80 lines
2.0 KiB
QML

import QtQuick
import Quickshell
import Quickshell.Io
import "theme"
import "components"
import "."
Scope {
id: root
// =========================================================================
// IPC HANDLERS (Allows controlling shell via `qs ipc call <target> <method>`)
// =========================================================================
IpcHandler {
target: "spotlight"
function toggle() {
GlobalState.toggleSpotlight();
}
function open() {
GlobalState.spotlightVisible = true;
}
function close() {
GlobalState.spotlightVisible = false;
}
}
IpcHandler {
target: "controlCenter"
function toggle() {
GlobalState.toggleControlCenter();
}
function open() {
GlobalState.controlCenterVisible = true;
}
function close() {
GlobalState.controlCenterVisible = false;
}
}
IpcHandler {
target: "aboutMac"
function toggle() {
GlobalState.toggleAboutMac();
}
}
// =========================================================================
// MULTI-MONITOR BARS & DOCKS
// =========================================================================
// 1. macOS Catalina Top Menu Bar (Spawned per monitor)
Variants {
model: Quickshell.screens
MenuBar {}
}
// 2. macOS Catalina Floating Dock (Spawned per monitor)
Variants {
model: Quickshell.screens
Dock {}
}
// =========================================================================
// GLOBAL MODAL OVERLAYS
// =========================================================================
// 3. Spotlight Search Overlay
Spotlight {
id: spotlightOverlay
}
// 4. Control Center & Notification Center Sidebar
ControlCenter {
id: controlCenterSidebar
}
// 5. About This Mac Dialog
AboutMac {
id: aboutMacDialog
}
}