Bug 463408 - Transparency Masks and Transform Masks are not saved into Compositions
Summary: Transparency Masks and Transform Masks are not saved into Compositions
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Layer Stack (other bugs)
Version First Reported In: 5.1.4
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: Tiar
URL:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2022-12-23 20:35 UTC by Jordan Ferrazza
Modified: 2023-04-20 19:54 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jordan Ferrazza 2022-12-23 20:35:56 UTC
SUMMARY
Transparency masks and transform masks persist data when switched off in hoards using compositions unless exporting them.

STEPS TO REPRODUCE
Requires compositions that change what layer is being displayed AND whether it is masked AT THE SAME TIME. Include large images that zoom in similarly in the background. May or may not need to 'overwhelm' the program using multiple rounds.

OBSERVED RESULT
Transparency masks -  Two layers converge as it turns off the mask and switches layer at the wrong interval and displays the irrelevant data that was unmasked.
Transform masks - Data sometimes persists from outside the canvas as it turns off the mask and switches layer at the wrong interval and displays the irrelevant data that was unmasked.

Glitches sometimes iron out after an automatic hard refresh in 5 seconds or immediately when exporting compositions. They can also be ironed out manually by toggling a layer that is either the layer being mistakenly displayed or the layer that takes up the space of the layer being mistakenly displayed. Consider changing the refresh mechanic or having a hard refresh button.

EXPECTED RESULT
Transparency masks and transform masks should display the result they were meant to and have no persisting data.

SOFTWARE/OS VERSIONS
Windows: 22H2

ADDITIONAL INFORMATION
Comment 1 Jordan Ferrazza 2022-12-23 20:45:47 UTC
*simultaneous rounds in one composition
Comment 2 wolthera 2023-01-12 10:53:34 UTC
Hi, thank you for your report. I can confirm with the Krita Version: 5.2.0-prealpha (git 5c98a72) Appimage with Qt 5.15.7? It seems to me masks visibility state isn't stored at all in the composition.

To reproduce:
1. Have an image with multiple layers
2. Add any kind of masks, transform masks, filter masks, transparency masks.
3. Create some compositions, with some disabling the visibility of these masks.
4. Switch between compositions. None of the masks have their visibility affected.
Comment 3 Jordan Ferrazza 2023-03-23 19:46:59 UTC
(In reply to wolthera from comment #2)
> Hi, thank you for your report. I can confirm with the Krita Version:
> 5.2.0-prealpha (git 5c98a72) Appimage with Qt 5.15.7? It seems to me masks
> visibility state isn't stored at all in the composition.
> 
> To reproduce:
> 1. Have an image with multiple layers
> 2. Add any kind of masks, transform masks, filter masks, transparency masks.
> 3. Create some compositions, with some disabling the visibility of these
> masks.
> 4. Switch between compositions. None of the masks have their visibility
> affected.

Nah I have issues where either a transform mask turns off and crops the layer to it or persists another transform mask which is no longer on.
Comment 4 Tiar 2023-04-20 19:54:58 UTC
Git commit 6cc18f5a496751dbb22414cb9f04a946e9667f27 by Agata Cacko.
Committed on 20/04/2023 at 19:54.
Pushed by tymond into branch 'master'.

Fix compositions to take into account masks visibility

Before this commit, masks visibility wasn't taken into account
in Compositions. This commit ensures it is.

M  +4    -1    libs/image/kis_layer_composition.cpp

https://invent.kde.org/graphics/krita/commit/6cc18f5a496751dbb22414cb9f04a946e9667f27