Bug 406327

Summary: Split alpha on animated layer only results in selected frame being separated out.
Product: [Applications] krita Reporter: wolthera <griffinvalley>
Component: AnimationAssignee: Eoin O'Neill <eoinoneill1991>
Status: RESOLVED FIXED    
Severity: normal CC: emmetoneill.pdx, eoinoneill1991, halla
Priority: NOR    
Version: git master (please specify the git hash!)   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:

Description wolthera 2019-04-08 11:05:04 UTC
SUMMARY
When trying to split the alpha on an animated layer, the transparency mask only takes the transparency of the active frame.

STEPS TO REPRODUCE
1. Have animated layer
2. Apply split alpha

OBSERVED RESULT
The transparency mask resulted only takes the split alpha values of the active frame and is not animated.

EXPECTED RESULT
The resulting transparency mask has the split alpha of all frames.

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION
Comment 1 Eoin O'Neill 2021-01-20 03:42:44 UTC
Additionally, it looks like having no frame on the "current time" results in the operation locking up. I'll look into this now.
Comment 2 Eoin O'Neill 2021-01-21 23:33:29 UTC
Git commit 0aa864c8cdcf3ce1ec5f88e90d39bd0d82cde0c3 by Eoin O'Neill.
Committed on 21/01/2021 at 23:32.
Pushed by eoinoneill into branch 'master'.

Change slotSplitAlphaIntoMask to use KisProcessingApplicator

Should now work with multiple frames and should no longer cause lock-ups
when "currentTime" does not have frame content. AddNewFrame command
given additional options for use w/ non-merge based info.

Fixes:

M  +176  -7    libs/image/kis_layer_utils.cpp
M  +2    -1    libs/image/kis_layer_utils.h
M  +8    -4    libs/ui/kis_mask_manager.cc
M  +1    -0    libs/ui/kis_mask_manager.h
M  +6    -27   libs/ui/kis_node_manager.cpp

https://invent.kde.org/graphics/krita/commit/0aa864c8cdcf3ce1ec5f88e90d39bd0d82cde0c3