Bug 374162 - Add an option to sort programs chronologically in task bar, when grouping
Summary: Add an option to sort programs chronologically in task bar, when grouping
Status: RESOLVED DUPLICATE of bug 373698
Alias: None
Product: plasmashell
Classification: Plasma
Component: Task Manager and Icons-Only Task Manager (show other bugs)
Version: master
Platform: Other Linux
: NOR wishlist
Target Milestone: 1.0
Assignee: Eike Hein
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-12-26 12:14 UTC by Timvde
Modified: 2017-01-09 07:16 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Timvde 2016-12-26 12:14:14 UTC
At this moment, you can either enable grouping, or set sorting to manual (which is basically chronologically, if you don't move them around). However, I would like my windows to group by program on my task bar, but then remain a consistent order.

This problem shows clearly with two browser windows, where the page title is decided by the web page. This is aggravated by a sites which change the page title to show a state (e.g. Facebook, when your received a message, changes the page title every second or so). This leads to windows moving around constantly, which is both distracting and annoying to navigate between.
Comment 1 Eike Hein 2017-01-03 07:52:57 UTC
Actually not entirely sure I follow, why can't you set sorting to manual and enable grouping and inline grouping?
Comment 2 Eike Hein 2017-01-03 07:53:19 UTC
Setting to NEEDSINFO.
Comment 3 Timvde 2017-01-03 14:04:58 UTC
Sorry, I am using the term "grouping" ambiguously, and maybe even wrong in my original report. I want windows of the same program to stick together, and not have new windows moved to the end of the task bar. What is called "grouping" in KDE (moving them all under one button in the task bar) actually seems unrelated, in hindsight.

So what I'm asking for, is sorting alphabetically (by program name), but not doing any sorting based on the window title.
Comment 4 Eike Hein 2017-01-03 15:20:32 UTC
Steps:
1. Set sorting to manual
2. Set grouping to By Program and disable only group when full
3. Disable open groups in popups (then groups are maintained inline on the bar)

You need 5.7+.
Comment 5 Timvde 2017-01-03 15:50:52 UTC
Ah, that's interesting, and almost what I want! But I *do* want grouping in a pop-up instead of increasingly smaller tiles if the task bar gets too full. However, as soon as I re-enable grouping, new windows get put at the end of the task bar again, as long as it is not full enough to group.

If I'm not making myself clear, we can talk this over on IRC (which is where I went first, and someone in there told me that it is not possible, so I should file a bug). I'm in #kde on Freenode as "Timvde".
Comment 6 Eike Hein 2017-01-04 01:15:49 UTC
Ah I see.

I'll consider adding a new sort mode maybe ... mmm. It might be too late for 5.9 already, though, sorry!
Comment 7 Timvde 2017-01-04 02:09:15 UTC
No worries, thanks for your effort! If there is anything I can do, feel free to ask. I have coding experience, but sadly not too much with C++/Qt/QML.

I actually already had a look at the source on Github (that was easier than going through https://community.kde.org/Guidelines_and_HOWTOs/Build_from_source), and could only find the relevant QML[0], not the actual sorting implementation...

I make no promises though, and if you think it's easier to just code it up yourself, that's probably the better choice. Chances that I'll become a maintainer somewhere down the road are pretty slim.

[0] https://github.com/KDE/plasma-desktop/blob/master/applets/taskmanager/package/contents/ui/main.qml#L125
Comment 8 Eike Hein 2017-01-04 05:27:41 UTC
The actual sorting happens in the library backend:

https://github.com/KDE/plasma-workspace/tree/master/libtaskmanager

TaskGroupingProxyModel (grouping) and TasksModel (sorting).
Comment 9 Eike Hein 2017-01-09 07:16:19 UTC
Consolidating requests.

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