https://bugs.kde.org/show_bug.cgi?id=475385

Dmitry Kazakov <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED
      Latest Commit|                            |https://invent.kde.org/grap
                   |                            |hics/krita/-/commit/fd4b9fe
                   |                            |47e67f91858d846f93d9ace5341
                   |                            |9d94eb

--- Comment #2 from Dmitry Kazakov <[email protected]> ---
Git commit fd4b9fe47e67f91858d846f93d9ace53419d94eb by Dmitry Kazakov.
Committed on 23/10/2023 at 17:08.
Pushed by dkazakov into branch 'master'.

WIP: Refactor transform masks not to discard keyframe channels on every change

The patch fixes the weird design of the transform masks. Before the patch
KisAnimatedTransformMaskParameters were replaced on every transform mask
change, which also replaced the keyframe channels. Which means that
every undo operation would just **delete** the keyframe channels
linked inside the node itself.

In the new design KisAnimatedTransformMaskParameters is never replaced
(it is actually planned to rename it into KisTransformMaskParametersHolder
or something like that). The holder just stores keyframe channels and
the params and just returnes the proper paraps when requested (by fetching
some information from the keyframe channels).

A  +111  -0    libs/command/KisChangeValueCommand.h  *
M  +1    -0    libs/image/CMakeLists.txt
A  +70   -0   
libs/image/commands_new/KisLazyCreateTransformMaskKeyframesCommand.cpp    
[License: GPL(v2.0+)]
A  +26   -0   
libs/image/commands_new/KisLazyCreateTransformMaskKeyframesCommand.h    
[License: GPL(v2.0+)]
M  +40   -14   libs/image/commands_new/KisSimpleModifyTransformMaskCommand.cpp
M  +10   -2    libs/image/commands_new/KisSimpleModifyTransformMaskCommand.h
M  +34   -0    libs/image/kis_keyframe_channel.cpp
M  +2    -0    libs/image/kis_keyframe_channel.h
M  +20   -0    libs/image/kis_lod_capable_layer_offset.h
M  +89   -53   libs/image/kis_transform_mask.cpp
M  +2    -0    libs/image/kis_transform_mask.h
M  +2    -17   libs/image/kis_transform_mask_params_factory_registry.cpp
M  +4    -7    libs/image/kis_transform_mask_params_factory_registry.h
M  +0    -9    libs/image/kis_transform_mask_params_interface.cpp
M  +23   -9    libs/image/kis_transform_mask_params_interface.h
M  +1    -1    libs/image/processing/kis_transform_processing_visitor.cpp
M  +15   -9    libs/libkis/TransformMask.cpp
M  +16   -19   libs/ui/tool/strokes/move_stroke_strategy.cpp
M  +4    -1    plugins/impex/libkra/kis_kra_load_visitor.cpp
M  +0    -1    plugins/tools/tool_transform2/CMakeLists.txt
M  +189  -356 
plugins/tools/tool_transform2/kis_animated_transform_parameters.cpp
M  +13   -32  
plugins/tools/tool_transform2/kis_animated_transform_parameters.h
D  +0    -70  
plugins/tools/tool_transform2/kis_modify_transform_mask_command.cpp
D  +0    -41  
plugins/tools/tool_transform2/kis_modify_transform_mask_command.h
M  +0    -13   plugins/tools/tool_transform2/kis_transform_mask_adapter.cpp
M  +0    -3    plugins/tools/tool_transform2/kis_transform_mask_adapter.h
M  +23   -36  
plugins/tools/tool_transform2/strokes/inplace_transform_stroke_strategy.cpp
M  +25   -34  
plugins/tools/tool_transform2/strokes/transform_stroke_strategy.cpp
M  +10   -15  
plugins/tools/tool_transform2/tests/test_animated_transform_parameters.cpp

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://invent.kde.org/graphics/krita/-/commit/fd4b9fe47e67f91858d846f93d9ace53419d94eb

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to