Bug 376946 - JJ: Shortcuts for layer visibility, lock, alpha inherit and locked alpha
Summary: JJ: Shortcuts for layer visibility, lock, alpha inherit and locked alpha
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Layer Stack (show other bugs)
Version: 3.1.2
Platform: Other Linux
: NOR wishlist
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords: junior-jobs
Depends on:
Blocks:
 
Reported: 2017-02-26 08:40 UTC by Nathan GDquest
Modified: 2017-06-08 07:22 UTC (History)
3 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 Nathan GDquest 2017-02-26 08:40:59 UTC
To manage layers from the keyboard only, I'd like to suggest shortcut entries for:
- Layer visibility
- Layer lock
- Layer preserve alpha
- Layer alpha lock

They're all available from the F3 menu, but it takes 3 or 4 keystrokes (F3, Alt + letter, sometimes spacebar, and finally enter). These are very common operations, so even if they don't have default shortcuts, I think it'd be useful to have them by default. It'd be ideal if they worked on all selected layers at the same time. It's powerful for both visibility and alpha lock when you have keyboard focus on the layers docker: you use the arrows to navigate the stack and Shift + arrows to select a range of layers.
Comment 1 Mohit Kumar Fagna 2017-02-26 09:06:16 UTC
This would be a great feature.
I use Krita in fullscreen mode. While I easily switch between layers using PgUp, PgDown or holding R. I have to contantlly go back to the mode with dockers to change layer visibility, alpha inheritance etc.
Comment 2 Halla Rempt 2017-02-26 12:04:02 UTC
It's also really simple to implement. People should come up with a patch :-)
Comment 3 Mohit Kumar Fagna 2017-02-26 12:49:21 UTC
(In reply to Boudewijn Rempt from comment #2)
> It's also really simple to implement. People should come up with a patch :-)

Can you please guide me as where can I find resources to learn how to make patches. Which language I need to learn and the API. I would like to do some changes in my free time.
I know a bit of python and I'm waiting for you to get the scripting done.
Comment 4 Halla Rempt 2017-02-26 12:53:51 UTC
In fact, it would even be possible to do it from Python, once that gets merged. A good example is the 10 brushes plugin, which adds shortcuts for selecting ten pre-selected brush presets.
Comment 5 Nathan GDquest 2017-02-27 07:12:46 UTC
Great to know then, you're making feel me more excited about Python every time :)
Comment 6 Valerii Malov 2017-06-07 12:08:55 UTC
Submitted a patch
https://phabricator.kde.org/D6127
Comment 7 Halla Rempt 2017-06-08 07:22:34 UTC
Git commit 7099c1567c4dae28641e0ffb598b1e2d658af868 by Boudewijn Rempt.
Committed on 08/06/2017 at 07:18.
Pushed by rempt into branch 'master'.

Implement shortcuts for layer lock and layer visibility
Patch by Shreyasr Ramachandran

M  +24   -0    krita/krita.action
M  +23   -0    libs/ui/kis_node_manager.cpp
M  +2    -0    libs/ui/kis_node_manager.h

https://commits.kde.org/krita/7099c1567c4dae28641e0ffb598b1e2d658af868
Comment 8 Halla Rempt 2017-06-08 07:22:34 UTC
Git commit c2b3000ea5b3d3a097bc21b4aa52d193e6ce19f4 by Boudewijn Rempt.
Committed on 08/06/2017 at 07:20.
Pushed by rempt into branch 'master'.

CCMAIL:kimageshop@kde.org

The actions don't have shortcuts by default, but are in the layer
menu.

Patch by Valeriy Malov

M  +48   -24   krita/krita.action
M  +80   -23   libs/ui/kis_node_manager.cpp
M  +5    -2    libs/ui/kis_node_manager.h
M  +5    -0    plugins/dockers/defaultdockers/kis_layer_box.cpp

https://commits.kde.org/krita/c2b3000ea5b3d3a097bc21b4aa52d193e6ce19f4
Comment 9 Halla Rempt 2017-06-08 07:22:45 UTC
Git commit 59f5e1a1e6cc0c89eec57a17998af722f2c971d7 by Boudewijn Rempt.
Committed on 08/06/2017 at 07:22.
Pushed by rempt into branch 'krita/3.2'.

CCMAIL:kimageshop@kde.org

The actions don't have shortcuts by default, but are in the layer
menu.

Patch by Valeriy Malov

M  +48   -0    krita/krita.action
M  +80   -0    libs/ui/kis_node_manager.cpp
M  +5    -0    libs/ui/kis_node_manager.h
M  +5    -0    plugins/dockers/defaultdockers/kis_layer_box.cpp

https://commits.kde.org/krita/59f5e1a1e6cc0c89eec57a17998af722f2c971d7