diff --git a/package/contents/ui/WindowModel.qml b/package/contents/ui/WindowModel.qml index c941c71..2d83a07 100644 --- a/package/contents/ui/WindowModel.qml +++ b/package/contents/ui/WindowModel.qml @@ -20,6 +20,7 @@ import QtQuick import org.kde.taskmanager 0.1 as TaskManager +import org.kde.kwindowsystem Item { id: wModel @@ -31,11 +32,12 @@ Item { property bool activeExists: false property var abstractTasksModel: TaskManager.AbstractTasksModel property var appId: abstractTasksModel.AppId - property var isMaximized: abstractTasksModel.IsMaximized - property var isActive: abstractTasksModel.IsActive property var isWindow: abstractTasksModel.IsWindow - property var isFullScreen: abstractTasksModel.IsFullScreen property var isMinimized: abstractTasksModel.IsMinimized + property var isMaximized: abstractTasksModel.IsMaximized + property var isFullScreen: abstractTasksModel.IsFullScreen + property var isActive: abstractTasksModel.IsActive + property var isHidden: abstractTasksModel.IsHidden property bool activeScreenOnly: wallpaper.configuration.checkActiveScreen property var excludeWindows: wallpaper.configuration.excludeWindows @@ -46,6 +48,13 @@ Item { } } + Connections { + target: KWindowSystem + function onShowingDesktopChanged() { + updateWindowsInfo(); + } + } + onPauseModeChanged: { updateWindowsInfo(); } @@ -105,14 +114,14 @@ Item { let visibleCount = 0; let maximizedCount = 0; - for (var i = 0; i < tasksModel.count; i++) { - const currentTask = tasksModel.index(i, 0); - if (currentTask === undefined) - continue; - if (excludeWindows.includes(tasksModel.data(currentTask, appId).replace(/\.desktop$/, ""))) - continue; + if (!KWindowSystem.showingDesktop) { + for (var i = 0; i < tasksModel.count; i++) { + const currentTask = tasksModel.index(i, 0); + + // Long line + if (currentTask === undefined || excludeWindows.includes(tasksModel.data(currentTask, appId).replace(/\.desktop$/, "")) || tasksModel.data(currentTask, isHidden) || !tasksModel.data(currentTask, isWindow) || tasksModel.data(currentTask, isMinimized)) + continue; - if (tasksModel.data(currentTask, isWindow) && !tasksModel.data(currentTask, isMinimized)) { visibleCount += 1; if (tasksModel.data(currentTask, isMaximized) || tasksModel.data(currentTask, isFullScreen)) maximizedCount += 1; diff --git a/package/contents/ui/config.qml b/package/contents/ui/config.qml index af6bed4..32d78ba 100644 --- a/package/contents/ui/config.qml +++ b/package/contents/ui/config.qml @@ -34,6 +34,10 @@ Kirigami.FormLayout { property var cfg_excludeWindows: wallpaper.configuration.excludeWindows property bool cfg_running: wallpaper.configuration.running + Palette { + id: palette + } + RowLayout { Kirigami.FormData.label: i18nd("online.knowmad.shaderwallpaper", "Select shader:") ComboBox { @@ -180,8 +184,8 @@ Kirigami.FormLayout { } } background: Rectangle { - color: shaderSpeedField.activeFocus ? Palette.base : "transparent" - border.color: shaderSpeedField.activeFocus ? Palette.highlight : "transparent" + color: shaderSpeedField.activeFocus ? palette.base : "transparent" + border.color: shaderSpeedField.activeFocus ? palette.highlight : "transparent" border.width: 1 radius: 4 anchors.fill: shaderSpeedField @@ -250,8 +254,8 @@ Kirigami.FormLayout { } } background: Rectangle { - color: mouseBiasField.activeFocus ? Palette.base : "transparent" - border.color: mouseBiasField.activeFocus ? Palette.highlight : "transparent" + color: mouseBiasField.activeFocus ? palette.base : "transparent" + border.color: mouseBiasField.activeFocus ? palette.highlight : "transparent" border.width: 1 radius: 4 anchors.fill: mouseBiasField @@ -498,6 +502,7 @@ Kirigami.FormLayout { Text { text: i18nd("@button:kofi", "Kofi") horizontalAlignment: Text.AlignHCenter + color: palette.text transform: Translate { x: -8 }