NPanel refactor - 1st pass: SidePanel and settings an new logic

This commit is contained in:
quadbyte 2025-08-20 08:45:48 -04:00
parent c8a93d7d1e
commit 57fee68793
14 changed files with 500 additions and 616 deletions

View file

@ -37,7 +37,7 @@ Singleton {
Process {
id: process
stdinEnabled: true
running: (Settings.data.audio.visualizerType !== "none") && PanelService.sidePanel.isLoaded
running: (Settings.data.audio.visualizerType !== "none") && PanelService.sidePanel.active
command: ["cava", "-p", "/dev/stdin"]
onExited: {
stdinEnabled = true

View file

@ -5,8 +5,16 @@ import Quickshell
Singleton {
id: root
// A ref. to the sidePanel, so it's accessible from other services
property var sidePanel: null
// Currently opened panel
property var openedPanel: null
property var sidePanel: null
function registerOpen(panel) {
if (openedPanel && openedPanel != panel) {
openedPanel.close()
}
openedPanel = panel
}
}

View file

@ -9,7 +9,15 @@ Singleton {
// -------------------------------------------
// Manual scaling via Settings
function scale(aScreen) {
return scaleByName(aScreen.name)
try {
if (aScreen !== undefined && aScreen.name !== undefined) {
return scaleByName(aScreen.name)
}
} catch (e) {
//Logger.warn(e)
}
return 1.0
}
function scaleByName(aScreenName) {