Bug 460981

Summary: "Fill free space on panel" option of Icon-Only Task Manager pushes widgets on the right out of display
Product: [Plasma] plasmashell Reporter: MitraX <mitrax>
Component: Task Manager and Icons-Only Task ManagerAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: minor CC: nate, niccolo.venerandi
Priority: NOR    
Version: 5.26.0   
Target Milestone: 1.0   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed In:

Description MitraX 2022-10-25 12:48:22 UTC
SUMMARY

If a user opens too many applications with unchecked "Fill free space on panel" option of Icon-Only Task Manager with un-grouped items,  widgets on the right side are pushed out of display.


STEPS TO REPRODUCE

1. Open Icon-Only Task Manager settings
2. Deselect the option "Fill free space on panel" in the General tab
3. Choose option "Do not group" in the Behavior tab
3. Save changes
4. Open multiple applications one by one so their multiple icons are displayed un-grouped on the panel (e.g. multiple instances of Konsole)


OBSERVED RESULT

If there's too many application icons on the panel, widgets on the right (e.g. notifications, clock...) will be pushed out of screen while the size of the icons in icon-only task manager remains unchanged.


EXPECTED RESULT

The icons in icon-only task manager should be resized while widgets on the right side stay in place.


SOFTWARE/OS VERSIONS
Linux/KDE Plasma: KDE neon 5.26
KDE Plasma Version: 5.26
KDE Frameworks Version: 5.99.0
Qt Version: 5.15.6
Comment 1 Nate Graham 2022-10-25 17:21:00 UTC
I guess without Layout.FillWidth set, there's effectively no width bound set, so the contents can overflow.
Comment 2 Nate Graham 2022-10-25 19:54:06 UTC
Basically we need this change:

diff --git applets/taskmanager/package/contents/ui/main.qml applets/taskmanager/package/contents/ui/main.qml
index 706ebe80d..0a48376b5 100644
--- applets/taskmanager/package/contents/ui/main.qml
+++ applets/taskmanager/package/contents/ui/main.qml
@@ -59,6 +59,8 @@ MouseArea {
         }
         return !tasks.vertical ? 0 : LayoutManager.preferredMinHeight();
     }
+    Layout.maximumWidth: tasks.vertical ? -1 : [the width it *would* consume if Layout.fillWidth were set]
+    Layout.maximumHeight: !tasks.vertical ? -1 : [the height it *would* consume if Layout.fillHeight were set]
 
 //BEGIN TODO: this is not precise enough: launchers are smaller than full tasks
     Layout.preferredWidth: {


But I can't figure out how to get those width and height values. Niccolò, any ideas?
Comment 3 Nate Graham 2023-04-11 21:55:48 UTC

*** This bug has been marked as a duplicate of bug 467385 ***