Hi,

Fortunately, I was able to resolve this problem today with

- the upgrade to Plasma 5.8.2 (from copr repo 'group_kdesig-plasma-5-unstable')
  and KDE Frameworks 5.27.0 (from repo 'updates') - system fully upgraded today
- combined with a cleanup of Plasma configuration files -- see below.


Fredy Neeser wrote on 29.09.2016 11:49:42:

> Hi list,

>
> Two days ago, I upgraded from F22 to F24. The dnf upgrade succeeded
> and applications seem to work, but there's a new, serious desktop
> usability problem:

>
> I'm using a dual-screen setup (LVDS + external monitor), where I
> usually set Primary display = external monitor.  Moreover, I place
> the KDE Panel also on the external monitor.  When I do that and try
> to navigate through the Application Menu (launcher with cascading
> popup menus) or when I click / move over a desktop widget, the
> following happens:

>
> - After a mouse left click on the KDE menu icon (left hand side of
> KDE Panel), the menu pops up only after a delay of >= 1 second

> - When the mouse pointer is moved to another item in a popup menu,
> the focus visibly jumps from item to item, and a delay of at least 1
> second is added on every intermediate item.

> - When I click / move over a desktop widget, the desktop reacts with
> a delay of >= 1 second

>
> The delay problem consistently disappears when I set Primary display
> = Laptop Screen, even though the KDE Panel remains on the external
> monitor. It's strange that the KDE Panel does not move to the
> Primary display -- I'm likely seeing the following bug

>
>  https://bugzilla.redhat.com/show_bug.cgi?id=1322724

>  Bug 1322724 - Plasma panel not on primary screen
>
> in F24 as well.

>
> Also, the delay problem typically reappears when I go back to
> Primary display = external monitor.  Only in two out of perhaps a
> dozen logout-login cycles, I observed that the delay problem was
> gone, despite the fact that I had Primary dIsplay = external
> monitor.  This may indicate some kind of race condition.

>
> Since this was an upgrade, I also tried the following, but the delay
> problem behaved the same:

> - Remove the contents of ~/.cache
> - Temporarily remove ~/.config, ~/.local and ~/.kde and login to KDE
> - Login to KDE as another user
>
> Version-release numbers:

> kscreen-5.7.5-1.fc24.x86_64
> kwin-5.7.5-1.fc24.x86_64
> plasma-desktop-5.7.5-1.fc24.x86_64
> plasma-systemsettings-5.7.5-1.fc24.x86_64
> plasma-workspace-5.7.5-2.fc24.x86_64
> plasma-workspace-libs-5.7.5-2.fc24.x86_64
> qt5-qtbase-5.6.1-3.fc24.x86_64

The problems actually first got worse with the upgrades to
Plasma 5.8.1 and 5.8.2:

- Widgets and panel respond only with seconds of delay to mouse events
  (in my case, only when Primary Display = external monitor
   and only for widgets and panel shown on the external monitor)

- Second panel can be added ok, but suddenly disappears in a later session

- Windows are minimizing to a second panel that is invisible
  (Only <Alt>-<TAB> allowed me to find the application window in that case)

- Application icons are shown on Primary Display only

- Inconsistent size and alignment of application icons

 
> Any idea which component should be blamed or how to debug this problem?


Here's the solution:

Today I realized that certain Plasma config files in ~/.config
got messed up, possibly as a result of the Plasma upgrades and/or
as a result of changing the Primary Display setting back and forth,
which swaps panels.

***************************************************************
After cleaning up the Plasma config files today (see below) and
recreating my Panel and Desktop, the above problems (including
the delay problem) were all gone!!!
***************************************************************

I started to suspect a problem with Plasma desktop config files
when I read

  https://www.kde.org/announcements/plasma-5.8.2-5.8.3-changelog.php
  - See in particular the change
    "Update screen pool connector ID ordering before adjusting
     desktop containments. Commit. See bug #370711"

and the related bugs

  https://bugs.kde.org/show_bug.cgi?id=369665
  Impossible to modify the layout of the second screen
  - where Comment 12 suggests to clean
      ~/.config/plasmashellrc and
      ~/.config/plasma-org.kde.plasma.desktop-appletsrc
 
  https://bugs.kde.org/show_bug.cgi?id=370711
  wallpaper on second monitor is always set to default

My problems did not look exactly like those in bug #369665, but
the cleaning procedure suggested by Comment 12 saved my day:

I removed
      ~/.config/plasmashellrc and
      ~/.config/plasma-org.kde.plasma.desktop-appletsrc

executed 'kquitapp5 plasmashell' from a konsole window,
and then 'kstart5 plasmashell' to restart it.
This resulted in clean (almost empty) desktop containments with
fresh wallpapers (one on LVDS, the other on the external monitor)
and one (default) panel placed on the primary display.

After this cleanup, adding an application to Desktop creates
an icon on each desktop containment. Application icons are
consistent in size and nicely aligned; moreover, their position
can be adjusted separately on each desktop containment.

I should add that this cleanup causes plasmashell to create
(default) desktop containments with
  Layout = Folder View
rather than
  Layout = Desktop
which I had before.

So the nice behavior with application icons can be attributed
to the Folder View layout (you can see the layout by right
clicking the desktop > Desktop Settings > Wallpaper).

Icons added to Folder View layout are visible on each screen;
they are not shown when you convert the layout to Desktop
but reappear when you go back to Folder View.

Icons added to Desktop layout are visible only on the screen
to which they are added; otoh, they are also shown when the
layout is switched to Folder View.

Somewhat inconsistent ... so it seems best to stick to
one layout ...


I really think my previous Plasma config files were corrupted:
The file ~/.config/plasma-org.kde.plasma.desktop-appletsrc
contained

- 3 containments of type org.kde.desktopcontainment,
  with references to lastScreen=0, 1, and 2,
  even though I'm using two screens only.

- 2 containments of type org.kde.panel and
  2 containments of type org.kde.plasma.private.systemtray
  but only one panel (and systemtray) was shown.

Here's the relevant portion of
  ~/.config/plasma-org.kde.plasma.desktop-appletsrc
showing just Desktop Containments, Panels, and System Trays:


// Desktop Containments

[Containments][169]
activityId=abb2c567-3754-4794-ab37-4b3f73a33619
formfactor=0
immutability=1
lastScreen=2
location=0
plugin=org.kde.desktopcontainment
wallpaperplugin=org.kde.image

[Containments][19]
activityId=abb2c567-3754-4794-ab37-4b3f73a33619
formfactor=0
immutability=1
lastScreen=0
location=0
plugin=org.kde.desktopcontainment
wallpaperplugin=org.kde.image

[Containments][26]
activityId=abb2c567-3754-4794-ab37-4b3f73a33619
formfactor=0
immutability=1
lastScreen=1
location=0
plugin=org.kde.desktopcontainment
wallpaperplugin=org.kde.image


// Panels

[Containments][111]
activityId=
formfactor=2
immutability=1
lastScreen=2
location=4
plugin=org.kde.panel
wallpaperplugin=org.kde.image

[Containments][139]
activityId=
formfactor=2
immutability=1
lastScreen=1
location=4
plugin=org.kde.panel
wallpaperplugin=org.kde.image


// System Trays

[Containments][116]
activityId=
formfactor=2
immutability=1
lastScreen=2
location=4
plugin=org.kde.plasma.private.systemtray
wallpaperplugin=org.kde.image

[Containments][144]
activityId=
formfactor=2
immutability=1
lastScreen=1
location=4
plugin=org.kde.plasma.private.systemtray
wallpaperplugin=org.kde.image

// End of snippets from ~/.config/plasma-org.kde.plasma.desktop-appletsrc


Regards

Fredy Neeser
IBM Zurich Research