From 1508abd3e13fe30bd90bc11d80b52aa8d8d4596e Mon Sep 17 00:00:00 2001 From: Robin Seger Date: Sun, 15 Mar 2026 07:34:52 +0100 Subject: workspaces: window icons limit (#1267) * workspace window icons display limit * serialization --- modules/controlcenter/taskbar/TaskbarPane.qml | 37 +++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'modules/controlcenter/taskbar/TaskbarPane.qml') diff --git a/modules/controlcenter/taskbar/TaskbarPane.qml b/modules/controlcenter/taskbar/TaskbarPane.qml index d12d174..9c999e5 100644 --- a/modules/controlcenter/taskbar/TaskbarPane.qml +++ b/modules/controlcenter/taskbar/TaskbarPane.qml @@ -38,6 +38,7 @@ Item { property bool workspacesActiveIndicator: Config.bar.workspaces.activeIndicator ?? true property bool workspacesOccupiedBg: Config.bar.workspaces.occupiedBg ?? false property bool workspacesShowWindows: Config.bar.workspaces.showWindows ?? false + property int workspacesMaxWindowIcons: Config.bar.workspaces.maxWindowIcons ?? 0 property bool workspacesPerMonitor: Config.bar.workspaces.perMonitorWorkspaces ?? true property bool scrollWorkspaces: Config.bar.scrollActions.workspaces ?? true property bool scrollVolume: Config.bar.scrollActions.volume ?? true @@ -81,6 +82,7 @@ Item { Config.bar.workspaces.activeIndicator = root.workspacesActiveIndicator; Config.bar.workspaces.occupiedBg = root.workspacesOccupiedBg; Config.bar.workspaces.showWindows = root.workspacesShowWindows; + Config.bar.workspaces.maxWindowIcons = root.workspacesMaxWindowIcons; Config.bar.workspaces.perMonitorWorkspaces = root.workspacesPerMonitor; Config.bar.scrollActions.workspaces = root.scrollWorkspaces; Config.bar.scrollActions.volume = root.scrollVolume; @@ -402,6 +404,41 @@ Item { } } + StyledRect { + Layout.fillWidth: true + implicitHeight: workspacesMaxWindowIconsRow.implicitHeight + Appearance.padding.large * 2 + radius: Appearance.rounding.normal + color: Colours.layer(Colours.palette.m3surfaceContainer, 2) + + Behavior on implicitHeight { + Anim {} + } + + RowLayout { + id: workspacesMaxWindowIconsRow + anchors.left: parent.left + anchors.right: parent.right + anchors.verticalCenter: parent.verticalCenter + anchors.margins: Appearance.padding.large + spacing: Appearance.spacing.normal + + StyledText { + Layout.fillWidth: true + text: qsTr("Max window icons") + } + + CustomSpinBox { + min: 0 + max: 20 + value: root.workspacesMaxWindowIcons + onValueModified: value => { + root.workspacesMaxWindowIcons = value; + root.saveConfig(); + } + } + } + } + StyledRect { Layout.fillWidth: true implicitHeight: workspacesPerMonitorRow.implicitHeight + Appearance.padding.large * 2 -- cgit v1.2.3-freya