Bug 381944 - Crop, flip image and resize image all do very funny things to vectors.
Summary: Crop, flip image and resize image all do very funny things to vectors.
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Layers/Vector (show other bugs)
Version: git master (please specify the git hash!)
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
: 381340 (view as bug list)
Depends on:
Blocks:
 
Reported: 2017-07-02 23:36 UTC by wolthera
Modified: 2018-02-07 19:34 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 wolthera 2017-07-02 23:36:43 UTC
1. Crop doesn't move the vector layers. It crops the canvas, but the vector layers are not offset, making them seem offset in the end result.

2. Flip image horizontically gives really weird drawing issues.

3. Resize image works... but undoing it makes the rendering system deeply confused, making everything look transparent.
Comment 1 mvowada 2017-08-08 08:54:57 UTC
*** Bug 381340 has been marked as a duplicate of this bug. ***
Comment 2 Dmitry Kazakov 2018-02-06 17:00:54 UTC
1) Crop seem to work now
2) Mirroring also works fine now
3) Resize works fine as well

The only thing that doesn't work now is Rotation: it generates some update problem
Comment 3 Dmitry Kazakov 2018-02-07 19:34:30 UTC
Git commit f35f5648acd4cea43778e0ef5479f87ef3be5c75 by Dmitry Kazakov.
Committed on 07/02/2018 at 19:33.
Pushed by dkazakov into branch 'master'.

Fix updates of shape layers when the image in transformed with size change

The problem was:

The shape layer crops the prerendered projection by the image size. And
during the transformation steps the image resize happened **after** the
all the shape updates has been completed. It meant that these "new" areas
of the image were never updated

The patch also implements a correct updates compression in the shape
layers and its handling by
KisDelayedUpdateNodeInterface::forceUpdateTimedNode()

M  +6    -0    libs/global/kis_thread_safe_signal_compressor.cpp
M  +2    -0    libs/global/kis_thread_safe_signal_compressor.h
M  +2    -2    libs/image/commands_new/kis_image_resize_command.cpp
M  +1    -1    libs/image/commands_new/kis_image_resize_command.h
M  +1    -0    libs/image/kis_layer_utils.cpp
M  +61   -14   libs/ui/flake/kis_shape_layer_canvas.cpp
M  +11   -0    libs/ui/flake/kis_shape_layer_canvas.h

https://commits.kde.org/krita/f35f5648acd4cea43778e0ef5479f87ef3be5c75