//@ pragma UseQApplication import QtQuick import Quickshell import Quickshell.Io import qs.Modules import qs.Modules.TopBar import qs.Modules.AppDrawer import qs.Modules.CentcomCenter import qs.Modules.ControlCenter import qs.Modules.Settings import qs.Modules.ProcessList import qs.Modules.ControlCenter.Network import qs.Modules.Lock import qs.Modules.Notifications import qs.Modals import qs.Services ShellRoot { id: root WallpaperBackground {} Lock { id: lock anchors.fill: parent } // Multi-monitor support using Variants Variants { model: Quickshell.screens delegate: TopBar { modelData: item } } CentcomPopout { id: centcomPopout } SystemTrayContextMenu { id: systemTrayContextMenu } NotificationCenterPopout { id: notificationCenter } NotificationPopupManager { id: notificationPopupManager } ControlCenterPopout { id: controlCenterPopout onPowerActionRequested: (action, title, message) => { powerConfirmModal.powerConfirmAction = action; powerConfirmModal.powerConfirmTitle = title; powerConfirmModal.powerConfirmMessage = message; powerConfirmModal.powerConfirmVisible = true; } onLockRequested: { lock.activate(); } } WifiPasswordModal { id: wifiPasswordModal } NetworkInfoModal { id: networkInfoModal } BatteryPopout { id: batteryPopout } PowerMenu { id: powerMenu } PowerConfirmModal { id: powerConfirmModal } ProcessListPopout { id: processListPopout } SettingsModal { id: settingsModal } // Application and clipboard components AppDrawerPopout { id: appDrawerPopout } SpotlightModal { id: spotlightModal } ClipboardHistoryModal { id: clipboardHistoryModalPopup } LazyLoader { id: processListModalLoader active: false ProcessListModal { id: processListModal } } IpcHandler { function open() { processListModalLoader.active = true; if (processListModalLoader.item) { processListModalLoader.item.show(); } return "PROCESSLIST_OPEN_SUCCESS"; } function close() { if (processListModalLoader.item) { processListModalLoader.item.hide(); } return "PROCESSLIST_CLOSE_SUCCESS"; } function toggle() { processListModalLoader.active = true; if (processListModalLoader.item) { processListModalLoader.item.toggle(); } return "PROCESSLIST_TOGGLE_SUCCESS"; } target: "processlist" } Toast { id: toastWidget } VolumePopup { id: volumePopup } }