New issue
Advanced search Search tips

Issue 626080 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Jul 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 624431



Sign in to add a comment

Mask layer texture is not cleared before reuse

Project Member Reported by varkha@chromium.org, Jul 6 2016

Issue description

Creating a mask layer and painting on it repeatedly exposes texture reuse.

What steps will reproduce the problem?
(1) Apply https://codereview.chromium.org/2125133002
(2) Build with chromeos=1
(3) Run on Linux
(4) Have one browser window open
(5) Press F5 (Overview mode accelerator on Chrome OS) 10 times in about two seconds.

What is the expected output?
with the patch from (1) the browser window in overview is masked with a mask layer that has layer id printout used as a mask. I expect to only ever see one id in the mask.

What do you see instead?
Multiple runs using different mask layers (with different ids) seem to be painting on the same texture.
See attached screenshot. If I wait at least a second between overview mode invocations the mask texture gets cleared.

Bonus points for trying to open multiple (say 10) browser windows and pressing F5. Some of the masked windows in overview will have more than one mask layer ids drawn (second screenshot).

This is a cause of issue 624431 (which is not specific to Files.app).
 
mask texture reuse.png
84.5 KB View Download
mask texture reuse 2.png
78.2 KB View Download
Cc: danakj@chromium.org enne@chromium.org
Adding more people for insights.
Labels: Proj-MaterialDesign-CrOS
Tagging as CrOS MD since the repro steps apply to overview mode, though this is a more general bug.
Labels: M-53
Labels: ReleaseBlock-Stable

Comment 5 by enne@chromium.org, Jul 8 2016

Owner: enne@chromium.org
The ui::Layer for the mask is marked as FillsBoundsOpaquely, which promises cc that the paint routine will paint onto the canvas such that every pixel inside the bounds is both painted and opaque.  This paint routine does not appear to do that either patched or unpatched.  Here's a quick patch: https://codereview.chromium.org/2134943002
Status: WontFix (was: Available)
Yes, #5 is working (thanks!), so I guess this is by design and is an optimization. Marking WontFix, re-open if you disagree.

Sign in to add a comment