Bug 433628

Summary: Filter masks aren't properly hidden when hiding the layer they're attached to
Product: [Applications] krita Reporter: tomtomtomreportingin
Component: GeneralAssignee: sh_zam <shzam>
Status: ASSIGNED ---    
Severity: normal CC: halla, shzam, tamtamy.tymona
Priority: NOR    
Version First Reported In: 4.4.3-beta1   
Target Milestone: ---   
Platform: Appimage   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: Testfile

Description tomtomtomreportingin 2021-02-26 03:29:13 UTC
SUMMARY
The canvas view isn't visually updated properly when hiding layers that utilize filter masks.

STEPS TO REPRODUCE
1. Create a filter mask for Random Noise.
2. Hide the paint layer that the filter mask is attached to.

OBSERVED RESULT
The Random Noise is still visible. Hiding the filter mask and then unhiding it will properly hide the Random Noise.


EXPECTED RESULT
The filter mask should always be hidden when the layer it's attached to is hidden.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Debian sid
(available in About System)
KDE Plasma Version: 5.20.5
KDE Frameworks Version: 5.78.0
Qt Version: 5.12.9 (Appimage)

ADDITIONAL INFORMATION
From what I can tell, this doesn't appear to be a regression as it happens as far back as 4.1.0.
Comment 1 Tiar 2021-03-17 13:18:50 UTC
Created attachment 136787 [details]
Testfile

It looks like Random Noise specifically tries to paint over the whole canvas, but then hiding and inhiding it only updates the part where the layer is, which means there is something wrong is dirty rects.
Interestingly, hiding and unhiding the mask itself does update the whole canvas.
(Tested in 4.4.3-beta2)