summaryrefslogtreecommitdiff
path: root/modules/controlcenter/taskbar
diff options
context:
space:
mode:
authorRobin Seger <pixelkhaos@gmail.com>2026-03-15 07:34:52 +0100
committerGitHub <noreply@github.com>2026-03-15 17:34:52 +1100
commit1508abd3e13fe30bd90bc11d80b52aa8d8d4596e (patch)
treeaea4c81ace0344dbda5515b3e0ad613a3dd37568 /modules/controlcenter/taskbar
parentdash: use currentIndex for width, restore binding (#1286) (diff)
downloadcaelestia-shell-1508abd3e13fe30bd90bc11d80b52aa8d8d4596e.tar.gz
caelestia-shell-1508abd3e13fe30bd90bc11d80b52aa8d8d4596e.tar.bz2
caelestia-shell-1508abd3e13fe30bd90bc11d80b52aa8d8d4596e.zip
workspaces: window icons limit (#1267)
* workspace window icons display limit * serialization
Diffstat (limited to 'modules/controlcenter/taskbar')
-rw-r--r--modules/controlcenter/taskbar/TaskbarPane.qml37
1 files changed, 37 insertions, 0 deletions
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;
@@ -404,6 +406,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
radius: Appearance.rounding.normal
color: Colours.layer(Colours.palette.m3surfaceContainer, 2)