diff --git a/applets/taskmanager/package/contents/code/layout.js b/applets/taskmanager/package/contents/code/layout.js
--- a/applets/taskmanager/package/contents/code/layout.js
+++ b/applets/taskmanager/package/contents/code/layout.js
@@ -117,9 +117,13 @@
} else {
return tasks.height + horizontalMargins();
}
- } else {
- return Math.floor(preferredMinWidth() * 1.6);
}
+
+ if (plasmoid.configuration.groupingStrategy != 0 && !plasmoid.configuration.groupPopups) {
+ return preferredMinWidth();
+ }
+
+ return Math.floor(preferredMinWidth() * 1.6);
}
function preferredMinHeight() {
diff --git a/applets/taskmanager/package/contents/config/main.xml b/applets/taskmanager/package/contents/config/main.xml
--- a/applets/taskmanager/package/contents/config/main.xml
+++ b/applets/taskmanager/package/contents/config/main.xml
@@ -21,6 +21,9 @@
1
+
+ true
+
true
diff --git a/applets/taskmanager/package/contents/ui/ConfigGeneral.qml b/applets/taskmanager/package/contents/ui/ConfigGeneral.qml
--- a/applets/taskmanager/package/contents/ui/ConfigGeneral.qml
+++ b/applets/taskmanager/package/contents/ui/ConfigGeneral.qml
@@ -37,6 +37,7 @@
property alias cfg_maxStripes: maxStripes.value
property alias cfg_groupingStrategy: groupingStrategy.currentIndex
property alias cfg_middleClickAction: middleClickAction.currentIndex
+ property alias cfg_groupPopups: groupPopups.checked
property alias cfg_onlyGroupWhenFull: onlyGroupWhenFull.checked
property alias cfg_sortingStrategy: sortingStrategy.currentIndex
property alias cfg_showOnlyCurrentScreen: showOnlyCurrentScreen.checked
@@ -141,6 +142,7 @@
model: [i18n("Do Not Sort"), i18n("Manually"), i18n("Alphabetically"), i18n("By Desktop"), i18n("By Activity")]
}
+
Label {
Layout.fillWidth: true
Layout.row: 1
@@ -156,14 +158,32 @@
Layout.fillWidth: true
model: [i18n("Do Not Group"), i18n("By Program Name")]
}
+
CheckBox {
- id: onlyGroupWhenFull
+ id: groupPopups
Layout.column: 1
Layout.row: 2
Layout.columnSpan: 2
- text: i18n("Only when the task manager is full")
+ text: i18n("Open groups in popups")
enabled: groupingStrategy.currentIndex > 0
}
+
+ Item {
+ width: childrenRect.width
+ height: childrenRect.height
+
+ Layout.column: 1
+ Layout.row: 3
+ Layout.columnSpan: 2
+
+ CheckBox {
+ id: onlyGroupWhenFull
+ anchors.left: parent.left
+ anchors.leftMargin: units.gridUnit
+ text: i18n("Only group when the task manager is full")
+ enabled: groupingStrategy.currentIndex > 0 && groupPopups.checked
+ }
+ }
}
}
diff --git a/applets/taskmanager/package/contents/ui/main.qml b/applets/taskmanager/package/contents/ui/main.qml
--- a/applets/taskmanager/package/contents/ui/main.qml
+++ b/applets/taskmanager/package/contents/ui/main.qml
@@ -97,6 +97,7 @@
groupMode: iconsOnly ? TaskManager.TasksModel.GroupApplication
: sortModeEnumValue(plasmoid.configuration.groupingStrategy)
+ groupInline: !plasmoid.configuration.groupPopups
groupingWindowTasksThreshold: (plasmoid.configuration.onlyGroupWhenFull && !iconsOnly
? LayoutManager.optimumCapacity(width, height) + 1 : -1)