Bug 346892

Summary: Add opaque, intersect opaque and remove opaque from the global selection
Product: [Applications] krita Reporter: Andreas <andreasesau>
Component: Layer StackAssignee: Krita Bugs <krita-bugs-null>
Status: RESOLVED FIXED    
Severity: wishlist CC: halla
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Other   
Latest Commit: Version Fixed In:

Description Andreas 2015-04-29 09:35:51 UTC
Currently krita lets the user generate a selection by right clicking on a layer and press select opaque. This function is great but can be improved. And thanks to the kickstarter stretch goal this would even fit into the selection enhancement stretchgoal.

So my suggestion would be. Ctrl+click on the layer thumbnail would generate a layer selection. ctrl+shift+click will add the layer to existing selection and ctrl+alt+click will substract from existing selection. 
And lastly ctrl+shift+alt+click will create an intersection selection between existing selection and the clicked layer.


Reproducible: Always
Comment 1 Halla Rempt 2016-01-24 14:22:03 UTC
WISHGROUP: Larger Usability Fixes
Comment 2 Dmitry Kazakov 2018-08-21 12:24:53 UTC
Git commit bb92265f455aff3a7d44fad2457f3ebfca6b49e9 by Dmitry Kazakov.
Committed on 21/08/2018 at 12:24.
Pushed by dkazakov into branch 'master'.

Implement different types of Select Opaque action

Now we have four different actions:

* Select Opaque --- replaces the current selection
* Select Opaque (Add) --- adds to the current selection
* Select Opaque (Subtract) --- Subtracts from the current selection
* Select Opaque (Intersect) --- Intersects with the current selection
CC:kimageshop@kde.org

M  +0    -12   krita/krita.action
M  +8    -1    krita/krita4.xmlgui
M  +36   -0    krita/kritamenu.action
M  +1    -8    plugins/dockers/defaultdockers/kis_layer_box.cpp
M  +0    -1    plugins/dockers/defaultdockers/kis_layer_box.h
M  +51   -4    plugins/extensions/colorrange/colorrange.cc
M  +7    -1    plugins/extensions/colorrange/colorrange.h

https://commits.kde.org/krita/bb92265f455aff3a7d44fad2457f3ebfca6b49e9
Comment 3 Dmitry Kazakov 2018-08-22 11:19:40 UTC
Git commit 09ce1d040f3ad9f3dc1a2d7185639b06d4c50fb3 by Dmitry Kazakov.
Committed on 22/08/2018 at 11:19.
Pushed by dkazakov into branch 'master'.

Implement Ctrl+click shortcuts for selecting opaque pixels on a layer

Now one can click on a layer's thumbnail in the Layers docker to
have all the opaque pixels selected.

* ctrl+click --- replace selection
* ctrl+shift+click --- add selection
* ctrl+alt+click --- subtract selection
* ctrl+shift+alt+click --- intersect selection

CC:kimageshop@kde.org

A  +18   -0    libs/image/KisSelectionTags.h     [License: UNKNOWN]  *
M  +1    -12   libs/image/kis_selection.h
M  +12   -2    libs/libqml/plugins/kritasketchplugin/models/LayerModel.cpp
M  +1    -0    libs/ui/CMakeLists.txt
M  +40   -2    libs/ui/KisNodeDelegate.cpp
M  +1    -1    libs/ui/KisNodeDelegate.h
A  +15   -0    libs/ui/KisSelectionActionsAdapter.cpp     [License: UNKNOWN]  *
A  +21   -0    libs/ui/KisSelectionActionsAdapter.h     [License: UNKNOWN]  *
M  +1    -1    libs/ui/kis_node_filter_proxy_model.cpp
M  +18   -2    libs/ui/kis_node_model.cpp
M  +15   -3    libs/ui/kis_node_model.h
M  +71   -0    libs/ui/kis_selection_manager.cc
M  +3    -0    libs/ui/kis_selection_manager.h
M  +2    -2    libs/ui/tests/kis_model_index_converter_test.cpp
M  +5    -5    libs/ui/tests/kis_node_model_test.cpp
M  +1    -1    libs/ui/tests/kis_node_view_test.cpp
M  +12   -2    plugins/dockers/defaultdockers/kis_layer_box.cpp
M  +2    -0    plugins/dockers/defaultdockers/kis_layer_box.h
M  +4    -58   plugins/extensions/colorrange/colorrange.cc
M  +0    -6    plugins/extensions/colorrange/colorrange.h

The files marked with a * at the end have a non valid license. Please read: https://community.kde.org/Policies/Licensing_Policy and use the headers which are listed at that page.


https://commits.kde.org/krita/09ce1d040f3ad9f3dc1a2d7185639b06d4c50fb3