New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 702042 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 709081
Owner:
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows
Pri: 2
Type: Bug-Regression



Sign in to add a comment

Opacity is not respected on text-input child of border-radius parent

Reported by lix.x...@gmail.com, Mar 16 2017

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36

Example URL:
https://codepen.io/lix42/pen/ryGvBV

Steps to reproduce the problem:
It only repros on Windows. Chrom v57+, (also repro on Canary)
On a mac, it works well.

Go to the codepen https://codepen.io/lix42/pen/ryGvBV I created to repro the issue.
The submit button should be transparent since opacity:0.01
However, it appears on Windows Chrome v57.

The repro page is already minimized.
To be noted. the inlined style "transform: translateZ(0);" is mandatory. If the style is moved to CSS file, then it works well.

What is the expected behavior?
The submit button should be transparent.

What went wrong?
the submit button shows up

Does it occur on multiple sites: Yes

Is it a problem with a plugin? No 

Did this work before? Yes V56

Does this work in other browsers? Yes

Chrome version: 57.0.2987.98  Channel: stable
OS Version: Windows 10
Flash Version: 

It impacts Amazon homepage.
 
Labels: Needs-Bisect Needs-Triage-M57
Cc: pbomm...@chromium.org ranjitkan@chromium.org gov...@chromium.org brajkumar@chromium.org
Components: -Blink Blink>Compositing
Labels: -Type-Bug -Pri-2 -Needs-Bisect -Needs-Triage-M57 hasbisect-per-revision ReleaseBlock-Stable M-57 prestable-57.0.2987.98 OS-Linux Pri-1 Type-Bug-Regression
Owner: schenney@chromium.org
Status: Assigned (was: Unconfirmed)
Able to reproduce on Windows-10 and Ubuntu 14.04 using chrome stable M57-57.0.2987.98. Mac OS 10.12 works fine.

Bisect Information:
=====================
Good build: 57.0.2972.0
Bad Build : 57.0.2974.0

You are probably looking for a change made after 441591 (known good), but no later than 441592 (first known bad).

Change Log URL: 
https://chromium.googlesource.com/chromium/src/+log/cd8243b3c7f369202cffc7afcc2e75338de3da92..d3ba7664a7ebc6e74861602eb9696c7ca0a4ed2e

From the above change log suspecting below change
Review URL: https://codereview.chromium.org/2588853002

schenney@ - Could you please check whether this is caused with respect to your change, if not please help us in assigning it to the right owner.

Note: Since this issue got regressed in chrome M-57 adding RB-Stable, Please feel free to edit if this is not the case.

Thanks!
Labels: -ReleaseBlock-Stable PaintTeamTriaged-20130316 BugSource-User RegressionFound-57 Regressed-57
The problem is not serious enough to warrant release blocking. But it is our 3rd M-57 paint regression.
Summary: Opacity is not respected on composited child of border-radius parent (was: Opacity is not followed)
The issue is specific to the text box, replacing it with a div gives the right behavior. And when the text box has the focus the behavior is also correct. This is very odd.
Summary: Opacity is not respected on text-box child of border-radius parent (was: Opacity is not respected on composited child of border-radius parent)
Summary: Opacity is not respected on text-input child of border-radius parent (was: Opacity is not respected on text-box child of border-radius parent)
Labels: Hotlist-ThreadedRendering
This is super odd. Taking the style property on the sibling div, and putting it in a <style> block with an associated class, causes the issue to go away. Why on earth would defining the property in a style block vs on the element cause a change in behavior?
Transforms applied inline to elements trigger a certain fast path in the
SPv1 compositor to make them faster. They avoid a full compositing state rebuild
and compensate by setting "assumes overlap" for everything later in paint order.
So a fix for this issue is always assuming overlap for elements with transparency? It suggests this is a squashing bug, where we are squashing and losing the opacity. It also explains why giving the element the focus modifies the behavior.

Or it might just be that we are missing something in the input elements that we have on other elements, since this only seems to hit input elements. The quest continues.

Comment 11 by lix.x...@gmail.com, Mar 16 2017

Two clarification:
a. It's not only a text-input. It could be any input element, e.g. submit, password.
b. Not only happens when inlined style on sibling element, but on any element on the same page can cause this issue.
Thanks for the extra info. I suspected it was a problem for all input and I appreciate you confirming that.
Not squashing related. In no case is a layer squashed thanks to SquashingDisallowedReasonClippingContainerMismatch
What is the layout tree like on Windows? I think we need a platform-independent
repro.
This fails on Linux. Will check Windows.
input-element-opacity-when-masked.html
448 bytes View Download
Fails on Windows too. Interestingly, when you turn on Show Layers in DevTools the input element gets its opacity again.
Labels: -Pri-1 Pri-2
Dropping priority because:
(a) There's a workaround (do not inline style)
(b) It seems very rare to have transparent input elements (animating opacity to make an element disappear is probably the use case)
@schenney: do you need help figuring this out? May be a subtle issue deep somewhere.
I will likely need help if I determine that it is in fact a cc bug, otherwise I'm learning stuff.

Right now I've got to the point where the broken/unbroken cases differ at the GraphicsLayer level only by the presence of an "offset from layout object". i.e. I'm not at a dead end.

Labels: -M-57 M-59
Mergedinto: 709081
Status: Duplicate (was: Assigned)

Sign in to add a comment