Bug 400248

Summary: kwin vanishes from shortcut config when changing number of workspaces
Product: [Plasma] kwin Reporter: Ludwig Nussel <ludwig.nussel>
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: kde, muesli, nate
Priority: NOR    
Version: 5.12.6   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 5.15.0

Description Ludwig Nussel 2018-10-24 14:57:46 UTC
SUMMARY

copying https://bugzilla.opensuse.org/show_bug.cgi?id=1103687

when using the panel applet to change the number of workspaces, the kwin entry vanishes from the system settings module for shortcuts.

PS: naming the entry "KWin" is not very explanatory anyways :-)

STEPS TO REPRODUCE
1. open system settings, global shortcuts again. see kwin in the list
2. right click on the panel workspace list in the panel, setup workspaces, change number of work spaces
3. open system settings, global shortcuts again. see kwin not there anymore

SOFTWARE VERSIONS
(available in About System)
KDE Plasma Version: 5.12.6
KDE Frameworks Version: 5.45.0
Qt Version: 5.9.4

ADDITIONAL INFORMATION
openSUSE Leap 15.0
Comment 1 David Edmundson 2018-10-24 21:09:33 UTC
Whoa, so it does.
Mine get replaced by ksmserver entries which is even weirder.

Confirmed.
Comment 2 David Edmundson 2018-10-24 21:16:51 UTC
Urgh, I see it.

KCM recreates a shortcut for next desktop. 

KGlobalaccel uses the aboutinfo - which is systemsettings.

Changing the "friendly name" of one shortcut, makes kglobalacceld rename everything with the same ID.

Everything still works, friendly name gets reset back when kwin next does shortcuts.
Comment 3 David Edmundson 2018-10-30 21:16:36 UTC
Git commit ce32b031f5a09cb0530a72e7602490cb05637ac0 by David Edmundson.
Committed on 30/10/2018 at 21:16.
Pushed by davidedmundson into branch 'master'.

[kcmkwin/kwindesktop] Fix global shortcut's display name for kwin changing

Summary:
KGlobalAcceld stores actions grouped by ID and a single display name.
When an action with a given id changes, the display names change for all
actions in that
group.

The KCM sets the ID to "kwin" but does not explicitly set a display
name. This means it is automatically deduced which will be kcmshell or
systemsettings.

The end result is all kwin shortcuts get renamed in system setting's
global shortcuts UI until kwin is restarted.

This patch explicitly sets the dispay name.
Fixed-in: 5.15.0

Test Plan:
Changed virtual desktops
Checked global shortcut settings still listed kwin as kwin

Reviewers: #kwin, graesslin

Reviewed By: #kwin, graesslin

Subscribers: graesslin, kwin

Tags: #kwin

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

M  +2    -0    kcmkwin/kwindesktop/main.cpp
M  +1    -0    kcmkwin/kwintabbox/main.cpp

https://commits.kde.org/kwin/ce32b031f5a09cb0530a72e7602490cb05637ac0
Comment 4 Nate Graham 2018-10-30 21:18:35 UTC
*** Bug 395599 has been marked as a duplicate of this bug. ***
Comment 5 Ludwig Nussel 2018-10-31 08:19:38 UTC
Thanks for fixing this.
For the record I'd like to note that openSUSE Leap users will not benefit from the fix in 5.15. It would have to be backported to 5.12 LTS. Not sure what the criteria for backporting fixes is and this one might not justify it. Nevertheless I'm mentioning LTS here as I don't know how much the LTS version is on your radar.
Comment 6 David Edmundson 2018-10-31 12:23:14 UTC
There's a rule about new strings in backports.

This has a new i18n'd string "KWin". 
I probably could ask for an exception, but the bug seemed quite minor.
Comment 7 Martin Flöser 2018-10-31 18:17:43 UTC
(In reply to David Edmundson from comment #6)
> There's a rule about new strings in backports.
> 
> This has a new i18n'd string "KWin". 
> I probably could ask for an exception, but the bug seemed quite minor.

We could backport without i18n: KWin is hardly a translatable string.