Hi, when I am changing the resolution of one of my monitors, all programs disappear in the task manager of the panel of the screen. The programs still run and I can switch to them via alt + tab. Restarting plasmashell fixes the problem. The programs also disappear, if I only change the position of the screen in regards to a second screen.
Patch under review at https://phabricator.kde.org/D3628
Git commit 0b0d14639a1a0eb2766d74daa3358c0939b6d8b3 by Eike Hein.
Committed on 09/12/2016 at 16:50.
Pushed by hein into branch 'Plasma/5.8'.
Refresh the ScreenGeometry data role whenever a screen is added or changes its geometry.
As this happens the screen filtering higher up in the proxy chain
culimating in TasksModel needs to be re-executed, as it compares
ScreenGeometry against a property value set on the model. Without
this update, tasks may disappear from views using TasksModel.
Mapping the trigger conditions to affected rows is deliberately
maximally coarse; see implementation comment in code.
Reviewers: #plasma, davidedmundson
Differential Revision: https://phabricator.kde.org/D3628
M +2 -0 libtaskmanager/CMakeLists.txt
A +60 -0 libtaskmanager/abstractwindowtasksmodel.cpp [License: BSD]
A +53 -0 libtaskmanager/abstractwindowtasksmodel.h [License: BSD]
M +1 -1 libtaskmanager/waylandtasksmodel.cpp
M +2 -2 libtaskmanager/waylandtasksmodel.h
M +1 -1 libtaskmanager/xwindowtasksmodel.cpp
M +2 -2 libtaskmanager/xwindowtasksmodel.h
I am now using the 5.9 beta and that bug should be fixed in this release? Because I still observe the bug. If I remove my second screen, the applications in the task manager are not updated nor I can click on the applications that are visible in the task manager.
Yeah, it should be fixed. I can't reproduce the problem (I can only test res changes, I have no second monitor) so some other dev will need to try.
A code audit has uncovered that there's still a bug in plasma-framework "below" the improved libtaskmanager code.
Git commit 2c69d2254663955564ef26687797e3b977be5a38 by Eike Hein.
Committed on 18/01/2017 at 18:43.
Pushed by hein into branch 'master'.
Add missing screenGeometryChanged signal; use in AppletInterface; fix typos.
Reviewed-by: Marco Martin
M +7 -2 src/plasma/corona.h
M +12 -1 src/scriptengines/qml/plasmoid/appletinterface.cpp
M +2 -1 src/scriptengines/qml/plasmoid/appletinterface.h
Thanks for the fast "support" :). I will try to find some time to test your patches!
*** Bug 375281 has been marked as a duplicate of this bug. ***
*** Bug 375343 has been marked as a duplicate of this bug. ***
*** Bug 375546 has been marked as a duplicate of this bug. ***
Now I am using 5.9.1 from the arch repos and the bug still occurs. My main taskmanager on my laptop display still does not update if I remove my second monitor.
Okay, I realised that I need to wait for the newest version of plasma framework. Sorry for spaming. I will mark this as resolved again.
Okay, I am back :D After upgrading to plasma-framework 5.31 the unplugging of Screens works perfectly for me. So, thanks for that :) However, changing the resolution still results in empty task managers on both screens (that also works with only one screen attached). After resetting the resolution, the task manager is filled again.
If I disable the secondary monitor via kscreen, then the laptop taskbar remains populated. If however I just disconnect the secondary monitor, then first the applications get migrated to the laptop screen (they appear on the laptop-screen-taskbar), then after some flickering the laptop-screen-taskbar gets empty...
All returns to normal when I reconnect the external monitor.
(running plasma-framework 5.31.0 and other plasma stuff at 5.9.1 on arch)
The bugs as I observed them on Plasma 5.9.3/KDE FWs 5.31.0/Qt 5.7.1:
Steps to reproduce:
1. prepare a laptop, an external monitor and an HDMI cable
2. start up some apps, so that there are some icons on the taskbar
3. connect the external monitor via HDMI
4. close the lid of your laptop
5. observe that the taskbar has now moved from the laptop screen to the external monitor and is lacking app icons
6. open the lid of your laptop
7. observe that the taskbar is back on the laptop screen, but is still lacking the app icons and that the external monitor screen lost its wallpaper and is completely black
9. disconnect the external monitor
10. observe that the taskbar is still missing the app icons
In order to regain the taskbar app icons, one has to either reconnect the external monitor and move the taskbar to the external monitor screen and back, or proceed with the steps described here - https://superuser.com/a/1091973/248776.
Related: https://bugs.kde.org/show_bug.cgi?id=353722, https://bugs.kde.org/show_bug.cgi?id=348095, https://bugs.kde.org/show_bug.cgi?id=360856, https://bugs.kde.org/show_bug.cgi?id=371734
(In reply to Jan Chren (rindeal) from comment #16)
> 4. close the lid of your laptop
> 5. observe that the taskbar has now moved from the laptop screen to the
> external monitor and is lacking app icons
To follow these steps you also need to make sure the energy settings are configured to turn off the screen when the lid is closed, rather than suspending the system.
Git commit e34b0064d6ff787270127d261be65c3b6780b31f by Eike Hein.
Committed on 19/04/2017 at 10:36.
Pushed by hein into branch 'Plasma/5.8'.
M +1 -1 libtaskmanager/abstractwindowtasksmodel.cpp
*** Bug 378350 has been marked as a duplicate of this bug. ***
The problem is still present in 5.9.5.
I see the same problem in my KDE Neon User Edition with Plasma 5.10.4, Frameworks 5.37.0 and Qt 5.9.1.
I have no external display - i just tested appearance of programs in Task Manager on various screen resolution changed - and they appear ok
OS: Netrunner Rolling
Video: Intel 4400
Still in Plasma 5.15.5 with Frameworks 5.57.
Unplugging second screen resulted in empty taskmanager on the first screen.
Devs: could you please read https://bugs.kde.org/show_bug.cgi?id=404295#c7
*** Bug 400505 has been marked as a duplicate of this bug. ***
Git commit 7852de5e697c17565fda8d0b24c062ea00605a37 by Nate Graham, on behalf of Alexander Kandaurov.
Committed on 06/07/2020 at 20:40.
Pushed by ngraham into branch 'master'.
Notify of screen geometry changes only after DesktopView has updated
Currently updating the DesktopView geometry and emitting signals notifying of changes to screen geometry are connected independently to QScreen::geometryChanged(), while screenGeometry() as well as availableScreenRect() and availableScreenRegion() depend on the DesktopView geometry. The incorrect order of slots being called causes the task manager to behave incorrectly on screen configuration changes, displaying either no windows or windows from a wrong screen. This also affects the desktop pager widget when configured to show the current desktop only.
M +1 -0 shell/desktopview.cpp
M +1 -0 shell/desktopview.h
M +2 -2 shell/shellcorona.cpp