Bug 372198 - Shortcuts reset to default
Summary: Shortcuts reset to default
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Shortcuts and Canvas Input Settings (show other bugs)
Version: git master (please specify the git hash!)
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-11-07 21:15 UTC by eliotJ
Modified: 2016-12-19 15:08 UTC (History)
2 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 eliotJ 2016-11-07 21:15:51 UTC
I have lost my custom shortcuts. File "C:\Users\user_name\AppData\Local\kritashortcutsrc" is empty... I don't know how to reproduce this bug, but some weeks ago I had the same issue with ealier version than Krita 3.0.92.

I use Windows 7.
Comment 1 ocumo 2016-11-09 16:31:08 UTC
I have experienced similar issue when I first changed to current stable version 3.0.1.1 in Kubuntu Linux (krita-3.0.1.1-x86_64.appimage).  None of my customizations were there, and using the dropdown list to select different schemes gave any changes. Unfortunately I did not have the time to make a systematic troubleshooting, and out of the need to work and irritation this caused, I just created my customizations from scratch once again.

I know this doesn't help to reproduce or even describes accurately the problem, but it is not the first time a new version of Krita breaks shortcuts or shortcuts creation for me.

I started testing yesterday the 3rd beta for 3.1 and once again found that my customizations were not working and when I tried to create them from scratch, I had errors like "The L shortcut is ambiguous with the following shorcut...", which will keep popping anytime you reassign and retry.
Comment 2 wolthera 2016-11-09 17:12:33 UTC
Ok, I haven't tried reproducin myself, as I am in a hurry.

However, then there's two conflicting issues: shortcuts dissapearing. This is a really big issue.

The second is shortcuts being ambiguous. This isn't as big of an issue because while it highly sucks, it isn't dataloss.

What is probably going on for the later is that our shortcuts still think it needs to crossreference with plasma desktop or something.
Another issue that ties into this is that the person who did a lot of shortcut/input work more or less disappeared this spring.
Comment 3 eliotJ 2016-11-10 16:25:09 UTC
Shortcuts being ambiguous... Yes, I also get this sometimes... Imho these dataloss should be fixed before stable relase. This regression can broke a bit Krita reputation if this will stay not fixed in stable relase :(
Comment 4 eliotJ 2016-11-10 17:21:47 UTC
Today on the IRC (#krita channel):
"[12:52:50] <Floatharr> sigh, krita crashed and I lost all my hotkeys ~_~
[12:54:12] <Floatharr> and reassigning hotkeys without manually assigning overlapping keys to something else still creates ambiguous hotkeys
[12:54:19] <Floatharr> I thought that was fixed o.O
[12:55:15] <Floatharr> and you still can't set any hotkey custom shortcut to "none" as it defaults back to what it was
[12:55:24] <Floatharr> so my fill is now shift ctrl alt f
[12:57:01] <Floatharr> canvas input settings didn't reset, only keyboard shortcuts o.O
[12:58:54] <Floatharr> oh I see, assigning a key to something that already exists sets the previous hotkey to "none" but because you can't set anything to "none" it just makes duplicate hotkeys
<scottyp123> I think with the shortcuts, the whole "none" is just not working when it has to get assigned to a shortcut. Need to figure out how that works"
Comment 5 Dmitry Kazakov 2016-12-08 10:48:37 UTC
Git commit b0321ffda31b872063749a17033f557fb1362e39 by Dmitry Kazakov.
Committed on 08/12/2016 at 10:42.
Pushed by dkazakov into branch 'krita/3.1'.

Fixed multiple shortcuts bugs

1) Standard actions, like Copy/Paste are now propertized as well.
   Otherwise, their custom shortcuts were never used.

2) ActionInfoItem now has a special field showing that the action
   is explicitly reset to null. This way we will not break it
   accidentally, when refactoring empty strings in the future
   (like it happened this time).

3) Split up KisActionRegistry and KisActionsSnapshot. The former
   is a singleton and used for propertizing the actions, but the
   latter one is just a snapshot used for filling up the settings
   dialog.
Related: bug 373184

M  +0    -14   libs/ui/KisPart.cpp
M  +0    -5    libs/ui/KisPart.h
M  +23   -2    libs/ui/dialogs/kis_dlg_preferences.cc
M  +4    -0    libs/ui/dialogs/kis_dlg_preferences.h
M  +0    -12   libs/ui/kis_action.cpp
M  +0    -5    libs/ui/kis_action.h
M  +5    -5    libs/ui/kis_action_manager.cpp
M  +1    -0    libs/widgetutils/CMakeLists.txt
A  +69   -0    libs/widgetutils/KisActionsSnapshot.cpp     [License: GPL (v2+)]
A  +59   -0    libs/widgetutils/KisActionsSnapshot.h     [License: GPL (v2+)]
M  +92   -124  libs/widgetutils/kis_action_registry.cpp
M  +15   -7    libs/widgetutils/kis_action_registry.h

https://commits.kde.org/krita/b0321ffda31b872063749a17033f557fb1362e39
Comment 6 Dmitry Kazakov 2016-12-08 11:23:06 UTC
Git commit e1d0a836186bee704e8064ea0210816a76278fbc by Dmitry Kazakov.
Committed on 08/12/2016 at 11:01.
Pushed by dkazakov into branch 'rempt/impex-refactoring'.

Fixed multiple shortcuts bugs

1) Standard actions, like Copy/Paste are now propertized as well.
   Otherwise, their custom shortcuts were never used.

2) ActionInfoItem now has a special field showing that the action
   is explicitly reset to null. This way we will not break it
   accidentally, when refactoring empty strings in the future
   (like it happened this time).

3) Split up KisActionRegistry and KisActionsSnapshot. The former
   is a singleton and used for propertizing the actions, but the
   latter one is just a snapshot used for filling up the settings
   dialog.
Related: bug 373184

M  +0    -14   libs/ui/KisPart.cpp
M  +0    -5    libs/ui/KisPart.h
M  +23   -2    libs/ui/dialogs/kis_dlg_preferences.cc
M  +4    -0    libs/ui/dialogs/kis_dlg_preferences.h
M  +0    -12   libs/ui/kis_action.cpp
M  +0    -5    libs/ui/kis_action.h
M  +5    -5    libs/ui/kis_action_manager.cpp
M  +1    -0    libs/widgetutils/CMakeLists.txt
A  +69   -0    libs/widgetutils/KisActionsSnapshot.cpp     [License: GPL (v2+)]
A  +59   -0    libs/widgetutils/KisActionsSnapshot.h     [License: GPL (v2+)]
M  +92   -124  libs/widgetutils/kis_action_registry.cpp
M  +15   -7    libs/widgetutils/kis_action_registry.h

https://commits.kde.org/krita/e1d0a836186bee704e8064ea0210816a76278fbc
Comment 7 eliotJ 2016-12-19 15:08:25 UTC
Thanks for the fix :)