Bug 365630 - Plasma applet icons shifting based on recent activity
Summary: Plasma applet icons shifting based on recent activity
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: System Tray (show other bugs)
Version: 5.7.1
Platform: Fedora RPMs Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-07-13 18:19 UTC by Petr Bartos
Modified: 2018-03-11 15:15 UTC (History)
4 users (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 Petr Bartos 2016-07-13 18:19:56 UTC
I noticed this with redshift-control plasmoid, klipper plasmoid and software updates plasmoid. Whenever certain action is performed with them (e.g. redshift trurned on/of via middleclick, history of klipper is cleared or new updates are found) used plasmoid is moved to be first in tray.
My setup is to have always all icons visible and this did not happen with plasma <5.7. It is very annoying because sometimes when I need to perform next action on same plasmoid I click on another one because their position was changed.

Reproducible: Always
Comment 1 Marco Martin 2016-08-16 12:11:35 UTC
plasmoid always goes first in the tray?
it's supposed to put as first the icons that appear, or go from not visible to visible,
but they shouldn't move their position without getting hidden beforehand
Comment 2 Petr Bartos 2016-08-26 10:35:54 UTC
(In reply to Marco Martin from comment #1)
> plasmoid always goes first in the tray?
> it's supposed to put as first the icons that appear, or go from not visible
> to visible,
> but they shouldn't move their position without getting hidden beforehand

Sorry for late reply. The order of plasmoids after startup is "random" depending on time they are started (the last started is listed as first - thats always has been like this). But once action on plasmoids I've mentioned is triggered (now I've found it happens also with bluedevil plasmoid when switching bt on/of), they are moved so that they are first in tray.

However in plasma 5.7.3 the situation has changed a bit. Now they are not moved always, but usualy only on first action, after that their position is fixed for some time (few minutes), then they are moving again.

So It might be somehow connected with some visibility flag which ignores that all plasmoids are set to be visible. When action is triggered, "hidden" plasmoid is set to be shown (so it moves to be first). It is displayed for some time (timeout in which position is not changed on action), and then if there is no activity is set to be hidden again (which "unlocks" movement after next triggered action)
Comment 3 Kai Uwe Broulik 2017-02-08 16:28:27 UTC
Git commit a7d56be57a1c1258608d8eb363191d69f40c12e3 by Kai Uwe Broulik.
Committed on 08/02/2017 at 16:26.
Pushed by broulik into branch 'master'.

[System Tray] Introduce "effectiveStatus" property and update visibility only when that changes

Instead of calling it in response to any of the properties it depends on.

This also saves some calls to this function on startup (80 instead of 90 for me with 14 tray icons)
and keeps plasmoids from shifting around just because their status changed from e.g. Active
to AcceptingInput (like touchpad when it asks for whether you really want to disable touchpad
with no mouse attached) although the item's effective visibility didn't actually change.
Related: bug 375112
FIXED-IN: 5.10.0

Differential Revision: https://phabricator.kde.org/D4488

M  +10   -4    applets/systemtray/package/contents/ui/items/AbstractItem.qml
M  +7    -8    applets/systemtray/package/contents/ui/main.qml

https://commits.kde.org/plasma-workspace/a7d56be57a1c1258608d8eb363191d69f40c12e3
Comment 4 Nikolaos Kakouros 2017-02-10 12:16:41 UTC
This is resolved right? Tested with kde neon unstable and everything seems to work correctly.
Comment 5 avlas 2017-02-10 14:32:08 UTC
Will this be backported to Plasma 5.9?
Comment 6 Nate Graham 2018-03-11 15:15:28 UTC
Seems fixed to me in 5.12.3.