Bug 346892 - Add opaque, intersect opaque and remove opaque from the global selection
Summary: Add opaque, intersect opaque and remove opaque from the global selection
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Layer Stack (show other bugs)
Version: unspecified
Platform: Other Other
: NOR wishlist
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-04-29 09:35 UTC by Andreas
Modified: 2018-08-22 11:19 UTC (History)
1 user (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 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