Bug 459763

Summary: Can't copy a selection in a frame that is not the first
Product: [Applications] krita Reporter: garuda1300
Component: AnimationAssignee: Krita Bugs <krita-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: ghevan, ginoba, ollyglenn207
Priority: NOR Keywords: regression, triaged
Version: 5.1.1   
Target Milestone: ---   
Platform: Mint (Ubuntu based)   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description garuda1300 2022-09-27 21:44:37 UTC
SUMMARY
Hello,
If I try to copy and paste a selection in another frame that is not the first one, the selection will not be copied correctly. Apparently it’s always copying the first frame.

STEPS TO REPRODUCE
1. create 3 frames
2. make a selection in the second frame
3. try to copy and paste into active layer that selection in the third frame

OBSERVED RESULT
it will copy the first frame

EXPECTED RESULT
It copy the selection in the second frame to the third

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: LinuxMint

ADDITIONAL INFORMATION
I tested the version 5.0.6 and it works perfectly copying and pasting selection from any frame.
Comment 1 vanyossi 2022-09-28 02:42:00 UTC
I can reproduce this bug as described or using preexsiting animation files. Pasting pixel data in active layer will always paste the first frame contents.
Comment 2 vanyossi 2022-09-29 18:49:49 UTC
*** Bug 459833 has been marked as a duplicate of this bug. ***
Comment 3 Deif Lou 2022-10-08 12:40:21 UTC
This seems fixed on master. I think it should be ported to 5.1.
Comment 4 Eoin O'Neill 2022-10-10 18:47:23 UTC
Git commit ca2ec62c0fdeb67d604cb4d0b02a6a370d8bcff7 by Eoin O'Neill.
Committed on 10/10/2022 at 18:37.
Pushed by eoinoneill into branch 'krita/5.1'.

Fix copy+paste working strangely with animated layers.

Achieved this by "burning" the current frameid into copied paint
devices. This is the desired behavior, as copy/pasted selections
should really be a simple WYSIWYG interaction where the visible
contents of a selection are copied.
Related: bug 457319
(cherry picked from commit 72bad700c6835dcd6619fb2d687b862a6353624c)

M  +26   -0    libs/image/kis_paint_device.cc
M  +18   -0    libs/image/kis_paint_device.h
M  +19   -52   libs/ui/actions/kis_selection_action_factories.cpp

https://invent.kde.org/graphics/krita/commit/ca2ec62c0fdeb67d604cb4d0b02a6a370d8bcff7