https://bugs.kde.org/show_bug.cgi?id=491447
Dmitry Kazakov <dimul...@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|CONFIRMED |RESOLVED Latest Commit| |https://invent.kde.org/grap | |hics/krita/-/commit/75a084c | |a7e904e1fabfd556f617c32acda | |1e514c Resolution|--- |FIXED --- Comment #2 from Dmitry Kazakov <dimul...@gmail.com> --- Git commit 75a084ca7e904e1fabfd556f617c32acda1e514c by Dmitry Kazakov. Committed on 07/11/2024 at 14:55. Pushed by dkazakov into branch 'master'. Implement KisAbstractProjectionPlane::looseUserVisibleBounds() The function does almost exactly the same thing that tightUserVisibleBounds() does, but uses extent() instead of exactBounds() of the source layer as a base for the calculation. It makes it possible to use this method in hot places, like change/needRect calculation the transform masks. The patch fixes two bugs: 1) needRect of a group layer is not nullified by a transform mask attached to a group. After loading the layer, the group's original is empty, so we cannot use node->original()->extent() as an interestRect for the non-affine transforms. 2) When calculating KisGroupLayer::extent() in pass-though mode we should use tight/looseUserVisibleBounds() on the children to make sure the layer styles' state is taken into account. Otherwise, changing visibility of a pass-through group containing a layer with layer styles will cause artifacts on the canvas. M +5 -0 libs/image/kis_abstract_projection_plane.cpp M +11 -0 libs/image/kis_abstract_projection_plane.h M +19 -5 libs/image/kis_group_layer.cc M +3 -0 libs/image/kis_group_layer.h M +13 -2 libs/image/kis_layer.cc M +11 -0 libs/image/kis_layer.h M +5 -0 libs/image/kis_layer_projection_plane.cpp M +1 -0 libs/image/kis_layer_projection_plane.h M +7 -0 libs/image/kis_mask_projection_plane.cpp M +1 -0 libs/image/kis_mask_projection_plane.h M +17 -5 libs/image/kis_transform_mask.cpp M +9 -0 libs/image/layerstyles/kis_layer_style_filter_projection_plane.cpp M +1 -0 libs/image/layerstyles/kis_layer_style_filter_projection_plane.h M +12 -0 libs/image/layerstyles/kis_layer_style_projection_plane.cpp M +1 -0 libs/image/layerstyles/kis_layer_style_projection_plane.h https://invent.kde.org/graphics/krita/-/commit/75a084ca7e904e1fabfd556f617c32acda1e514c -- You are receiving this mail because: You are watching all bug changes.