1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-05-14 08:12:46 -04:00

refactor(dbar/dock): Update fullscreen hiding logic

This commit is contained in:
purian23
2026-05-13 14:38:44 -04:00
parent 022f47a580
commit 5bde54fa89
2 changed files with 10 additions and 22 deletions
+9 -20
View File
@@ -317,7 +317,15 @@ PanelWindow {
property string screenName: modelData.name
property bool hasMaximizedToplevel: false
property bool hasFullscreenToplevel: false
readonly property bool hasFullscreenToplevel: {
if (!(barConfig?.fullscreenDetection ?? true))
return false;
CompositorService.sortedToplevels;
ToplevelManager.activeToplevel;
if (CompositorService.isNiri)
NiriService.allWorkspaces;
return CompositorService.hasFullscreenToplevelOnScreen(screenName);
}
property bool shouldHideForWindows: false
function _updateHasMaximizedToplevel() {
@@ -340,14 +348,6 @@ PanelWindow {
hasMaximizedToplevel = false;
}
function _updateHasFullscreenToplevel() {
if (!(barConfig?.fullscreenDetection ?? true)) {
hasFullscreenToplevel = false;
return;
}
hasFullscreenToplevel = CompositorService.hasFullscreenToplevelOnScreen(screenName);
}
function _updateShouldHideForWindows() {
if (!(barConfig?.showOnWindowsOpen ?? false)) {
shouldHideForWindows = false;
@@ -546,7 +546,6 @@ PanelWindow {
updateGpuTempConfig();
_updateBackgroundAlpha();
_updateHasMaximizedToplevel();
_updateHasFullscreenToplevel();
_updateShouldHideForWindows();
}
@@ -589,7 +588,6 @@ PanelWindow {
barWindow.updateGpuTempConfig();
barWindow._updateBackgroundAlpha();
barWindow._updateHasMaximizedToplevel();
barWindow._updateHasFullscreenToplevel();
barWindow._updateShouldHideForWindows();
}
@@ -607,7 +605,6 @@ PanelWindow {
target: CompositorService
function onToplevelsChanged() {
barWindow._updateHasMaximizedToplevel();
barWindow._updateHasFullscreenToplevel();
barWindow._updateShouldHideForWindows();
}
}
@@ -616,18 +613,10 @@ PanelWindow {
target: NiriService
function onAllWorkspacesChanged() {
barWindow._updateHasMaximizedToplevel();
barWindow._updateHasFullscreenToplevel();
barWindow._updateShouldHideForWindows();
}
}
Connections {
target: ToplevelManager
function onActiveToplevelChanged() {
barWindow._updateHasFullscreenToplevel();
}
}
Connections {
function onNvidiaGpuTempEnabledChanged() {
barWindow.updateGpuTempConfig();
+1 -2
View File
@@ -422,8 +422,7 @@ Singleton {
const filtered = filterCurrentWorkspace(sortedToplevels, screenName);
for (let i = 0; i < filtered.length; i++) {
const toplevel = filtered[i];
if (toplevel?.fullscreen && toplevel?.activated)
if (filtered[i]?.fullscreen)
return true;
}
return false;