Don't compress tasks before grouping, when task manager is vertical
ClosedPublic

Authored by gvgeo on Dec 10 2019, 1:21 PM.

Details

Summary

Prevents compressing task's icons below the desired size, before grouping when vertical. While it allows to cut text when task bar is horizontal.
Gives a more uniform look and behavior, when the taskbar is vertical and icons determine the size of the task button.

Test Plan

This patch, was original part of icons-only grouping change that would include "Group only when the Task Manager is full" option.
Would be more important in a docker style of task manager.

For now this patch can only have an effect when:
Group only when the Task Manager is full == True
Maximum rows = 1
Taskbar is vertical
Icon width > taskbar width (easiest to test with Icon size == large)

For more obvious effect, adjust the taskbar width, at a point where it will just display a bigger icon size.

In the same space, without the patch, it will display more items by choosing smaller icon size.
By opening more tasks (reach the task display threshold), will be forced to group them, and will pop to a bigger display icon size again.
With the patch will keep the desired icon size, and instead will group them together.
In both cases will shrink the icon sizes further if more tasks need to fit.


In the photo can see, the taskbar without the patch will fit the same amount of tasks, in a smaller space by displaying a smaller size.
After grouping will increase the size back again.

Diff Detail

Repository
R119 Plasma Desktop
Lint
Lint Skipped
Unit
Unit Tests Skipped
gvgeo created this revision.Dec 10 2019, 1:21 PM
Restricted Application added a subscriber: plasma-devel. · View Herald TranscriptDec 10 2019, 1:21 PM
gvgeo requested review of this revision.Dec 10 2019, 1:21 PM

So you want to be able to not group apps in IOTM, that is literally what IOTM is about, isnt it?

gvgeo added a comment.Dec 10 2019, 1:35 PM

So you want to be able to not group apps in IOTM, that is literally what IOTM is about, isnt it?

I don't know what the reasoning between splitting the task managers is.
But from what I understand, Icons-Only means no text.
And sorting is also removed.

gvgeo added inline comments.Dec 10 2019, 1:38 PM
applets/taskmanager/package/contents/ui/code/layout.js
88

This has an effect mostly for small displays. On bigger displays this has a small effect.
If this is not by design could be instead:

Math.Ceil(Math.floor(length / maximum) * maxStripes() * 1.25);

So you want to be able to not group apps in IOTM, that is literally what IOTM is about, isnt it?

I don't know what the reasoning between splitting the task managers is.
But from what I understand, Icons-Only means no text.
And sorting is also removed.

Icons-Only implements the "Dock" paradigm and organizes things on the basis of apps, not windows. So the name doesn't make it clear, but the Icons-Only Task Manager is much more than just "the regular task manager without labels".

I'm not sure of the history behind why this split is presented in the form of two different applets rather than a single one with configurable options. In the backend, they're both using the same code so this is easily possible. Personally I would like for there to be a single task manager that exposes three different modes in the config window:

  • Legacy Windows Vista and before mode (current default)
  • ^^, but without labels (Windows 10 style with grouping mode turned off)
  • macOS style Dock mode (current Icons-Only Task Manager)

This would call for some serious discussion before implementing it though.

GB_2 added a subscriber: GB_2.Dec 10 2019, 1:41 PM

I already made a patch for this: D23242

@gvgeo since we already have a patch that disables grouping, maybe you could use this one to implement only the change to the compressing animation?

I'm not sure of the history behind why this split is presented in the form of two different applets

To give history

We had a UX in Plasma 4 where choosing between an analog and digital clock would be an option in the main clock applet, but choosing the binary clock would be a completely different interface - and that doesn't make sense.
Also we want to reduce the size of our config UIs without losing features.

To give history

We had a UX in Plasma 4 where choosing between an analog and digital clock would be an option in the main clock applet, but choosing the binary clock would be a completely different interface - and that doesn't make sense.
Also we want to reduce the size of our config UIs without losing features.

Thanks David! So we moved in the direction of separating the presentation rather than grouping it. I almost wonder if it would make more sense to do the opposite thing group everything into a single applet wherever possible, but allow the presentation to be swapped at will--perhaps even with GHNS-downloadable themes or something. So there would be one clock applet, but it could look like an analog clock, a digital clock, a binary clock, or a fuzzy clock, and you could download a Mickey Mouse clock face, a Star Wars clock face, and so on.

gvgeo updated this revision to Diff 71191.Dec 10 2019, 2:37 PM
gvgeo retitled this revision from Add grouping options in Icons-only Task Manager to Don't compress tasks before grouping, when task manager is vertical..
gvgeo edited the summary of this revision. (Show Details)
In D25844#574741, @GB_2 wrote:

I already made a patch for this: D23242

@gvgeo since we already have a patch that disables grouping, maybe you could use this one to implement only the change to the compressing animation?

My mistake, should have checked here too first.
I left only the compressing part for the default task manager.

gvgeo updated this revision to Diff 71388.Dec 12 2019, 6:04 PM
gvgeo retitled this revision from Don't compress tasks before grouping, when task manager is vertical. to Don't compress tasks before grouping, when task manager is vertical or icons-only.
gvgeo edited the summary of this revision. (Show Details)

Now that D23242 got accepted, updated to fit icon-only groups too.

gvgeo updated this revision to Diff 71390.Dec 12 2019, 6:09 PM
gvgeo retitled this revision from Don't compress tasks before grouping, when task manager is vertical or icons-only to Don't compress tasks before grouping, when task manager is vertical.
gvgeo edited the summary of this revision. (Show Details)

Revert previous update, as D23242 does not enable 'Group only when the Task Manager is full' option.

I'm not sure how to reproduce the issue that this patch is fixing. Can you add more detail to the Test Plan section maybe?

gvgeo edited the test plan for this revision. (Show Details)Dec 13 2019, 3:32 PM
ngraham accepted this revision.Dec 13 2019, 4:28 PM

Thanks, now the bug and the fix are very clear! LGTM!

@hein and/or Plasma people, what do you think?

This revision is now accepted and ready to land.Dec 13 2019, 4:28 PM
hein accepted this revision.Dec 22 2019, 9:25 PM
This revision was automatically updated to reflect the committed changes.