Bug 338813

Summary: Background layer can have transparent parts, which are then made opaque when transforming
Product: [Applications] krita Reporter: Chris Le Sueur <thefishface+kdebugs>
Component: UsabilityAssignee: Krita Bugs <krita-bugs-null>
Status: RESOLVED INTENTIONAL    
Severity: minor CC: halla
Priority: NOR    
Version First Reported In: 2.8.2   
Target Milestone: ---   
Platform: Mint (Ubuntu based)   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Chris Le Sueur 2014-09-04 23:45:10 UTC
Whether this is a usability bug or something else, I'm not sure, but it was very surprising to me. I had unwittingly done half my work on the background layer, then when I came to move and scale it, uncovered this issue: transparent areas of the background layer became white.

This can be worked around by copying the layer's contents to a new layer. From a "principle of least surprise" perspective I would say that either the background layer should not accept any kind of transparency, or it should accept it and work as normal.

I guess what is happening is that, to support the "infinite canvas of white" feature, Krita is filling in all these pixels on the assumption that they came from outside the bounds of the image.

Reproducible: Always

Steps to Reproduce:
1. Create a new image
2. Erase some of it in any way you please
3. Scale the image a little with the transform tool

Actual Results:  
The transparent area becomes opaque

Expected Results:  
The transparent area remains transparent
Comment 1 Halla Rempt 2015-02-02 19:35:11 UTC
Hi Chris,

Thanks for your report. This definitely is a bug -- I'm not even totally sure when it happens exactly, since it doesn't seem to happen if I make the layer entirely transparent then paint a bit, then transform.
Comment 2 Halla Rempt 2015-05-21 11:37:03 UTC
Ah, the problem is the default pixel color of the background. An erased pixel doesn't exist anymore, so the transform tool fills in with the default color.
Comment 3 Halla Rempt 2018-01-13 13:52:44 UTC
I have to reconsider: this isn't something that can be fixe, because of what I said in the last comment. It is possible to setup an image so that this doesn't happen, with a fixed background color, or just by not working on the solid background layer.