New issue
Advanced search Search tips

Issue 878685 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Aug 31
Cc:
Components:
EstimatedDays: ----
NextAction: 2018-08-31
OS: Linux , Android , Windows , Chrome , Mac
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Animation is broken for elements with applied text gradient.

Reported by mee...@gmail.com, Aug 29

Issue description

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

Steps to reproduce the problem:
I simulated problem in codepen
1. https://codepen.io/meefox/pen/mGEmRW
2. See that second and third line is not animated at all

What is the expected behavior?
All the line will appearing simultaneously. 

What went wrong?
animation for multiple elements with text gradient won't work

Did this work before? Yes Chrome 68

Chrome version: 69.0.3497.57  Channel: beta
OS Version: OS X 10.13.6
Flash Version:
 
Labels: Needs-Triage-M69 Needs-Bisect
Cc: vamshi.kommuri@chromium.org
Components: Blink>Paint
Labels: -Pri-2 -Needs-Bisect hasbisect-per-revision ReleaseBlock-Stable Triaged-ET M-69 Target-70 RegressedIn-69 FoundIn-70 Target-69 FoundIn-69 OS-Linux OS-Windows Pri-1
Owner: wangxianzhu@chromium.org
Status: Assigned (was: Unconfirmed)
Thanks for filing the issue!

Able to reproduce the issue on reported chrome version 69.0.3497.57 and on the latest canary 70.0.3536.0 using Mac 10.13.1, Windows 10 and Ubuntu 14.04

Bisect Information:
-------------------
Good Build: 69.0.3480.0
Bad Build:  69.0.3481.0

You are probably looking for a change made after 572100 (known good), but no later than 572101 (first known bad).
CHANGELOG URL:
 https://chromium.googlesource.com/chromium/src/+log/e6b942fe171b276c5d0dcd3e011120e23c8279e3..ec1096b3e38911886aac84e97319d97cd445fb80
Suspecting: https://chromium.googlesource.com/chromium/src/+/ec1096b3e38911886aac84e97319d97cd445fb80
Review URL: https://chromium-review.googlesource.com/1114297

@Xianzhu Wang: Please help us in assigning it to the right owner if this is not related to your change.
Note: Adding RB-Stable as this seems to be recent regression, please remove/change if not required.
Components: -UI
Status: Started (was: Assigned)
Slightly reduced test case:

<style>
.t{
  font-size: 40px;
  will-change: opacity;
  background: blue;
  -webkit-background-clip: text;
}
</style>
<div class="t">Text 1</div>
<div class="t">Text 2</div>
<div class="t">Text 3</div>

It's an issue of background clip in composited layers.

Labels: OS-Android OS-Chrome
As this is Blink issue adding Android and Chrome OS well. Pls remove if not applicable.
Cc: pbomm...@chromium.org
Cc: benmason@chromium.org
Labels: Merge-Request-69
https://chromium-review.googlesource.com/c/chromium/src/+/1197462 is in CQ.

Stat on top 100k web pages shows that there are 30 web pages affected by the bug, which seems not small enough to skip the fix for M-69.

The CL is quite safe to merge:
1. the logic is simple and is easy to verify;
2. even if it had some problem, it would affects only -webkit-background-clip:text with PaintOffsetTranslation only, which is used in 0.03% of web pages.

Project Member

Comment 9 by sheriffbot@chromium.org, Aug 30

Labels: -Merge-Request-69 Merge-Review-69 Hotlist-Merge-Review
This bug requires manual review: We are only 4 days from stable.
Please contact the milestone owner if you have questions.
Owners: amineer@(Android), kariahda@(iOS), cindyb@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 10 by bugdroid1@chromium.org, Aug 30

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/876c69b24b5719bce12e24aae7a494997e038c74

commit 876c69b24b5719bce12e24aae7a494997e038c74
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Thu Aug 30 21:21:37 2018

[PE] Fix paint offset of -webkit-background-clip: text under transform

BoxModelObjectPainter::PaintTextClipMask() is called from Paint() method
of some painter which has already adjusted for paint offset and paint
properties, so we should not go back to call box_model_.Paint() again,
but should call LineBoxListPainter instead. This fixes an old FIXME
which was too bad before we switched to SPv175 paint offsets.

Bug:  878685 
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I78f3a82a133b14eb56dbeaf2b8b5f81041c0c59e
Reviewed-on: https://chromium-review.googlesource.com/1197462
Reviewed-by: Philip Rogers <pdr@chromium.org>
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#587771}
[add] https://crrev.com/876c69b24b5719bce12e24aae7a494997e038c74/third_party/WebKit/LayoutTests/paint/background/background-clip-text-transform-expected.html
[add] https://crrev.com/876c69b24b5719bce12e24aae7a494997e038c74/third_party/WebKit/LayoutTests/paint/background/background-clip-text-transform.html
[modify] https://crrev.com/876c69b24b5719bce12e24aae7a494997e038c74/third_party/blink/renderer/core/paint/box_model_object_painter.cc

Project Member

Comment 11 by bugdroid1@chromium.org, Aug 30

Labels: merge-merged-3537
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/406046ab0c60935d68f81642b5f07b8123594ffa

commit 406046ab0c60935d68f81642b5f07b8123594ffa
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Thu Aug 30 21:23:53 2018

[PE] Fix paint offset of -webkit-background-clip: text under transform

BoxModelObjectPainter::PaintTextClipMask() is called from Paint() method
of some painter which has already adjusted for paint offset and paint
properties, so we should not go back to call box_model_.Paint() again,
but should call LineBoxListPainter instead. This fixes an old FIXME
which was too bad before we switched to SPv175 paint offsets.

TBR=wangxianzhu@chromium.org

(cherry picked from commit 876c69b24b5719bce12e24aae7a494997e038c74)

Bug:  878685 
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I78f3a82a133b14eb56dbeaf2b8b5f81041c0c59e
Reviewed-on: https://chromium-review.googlesource.com/1197462
Reviewed-by: Philip Rogers <pdr@chromium.org>
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#587771}
Reviewed-on: https://chromium-review.googlesource.com/1197742
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/branch-heads/3537@{#3}
Cr-Branched-From: 2517229df1c255626faa9309277b19bf79ad0b3d-refs/heads/master@{#587302}
[add] https://crrev.com/406046ab0c60935d68f81642b5f07b8123594ffa/third_party/WebKit/LayoutTests/paint/background/background-clip-text-transform-expected.html
[add] https://crrev.com/406046ab0c60935d68f81642b5f07b8123594ffa/third_party/WebKit/LayoutTests/paint/background/background-clip-text-transform.html
[modify] https://crrev.com/406046ab0c60935d68f81642b5f07b8123594ffa/third_party/blink/renderer/core/paint/box_model_object_painter.cc

Labels: -Merge-Review-69 Merge-Approved-69
NextAction: 2018-08-31
Triggered new canary from 3537 branch with merge listed at #11.

Approving merge to M69 branch 3497 based on comment #8 and per offline group chat with wangxianzhu@, benmason@ and pbommana@. 

Requesting to verify the change on canary and M69 build when available, pls let us know if this change cause any other regression or doesn't work as expected.
Project Member

Comment 13 by bugdroid1@chromium.org, Aug 30

Labels: -merge-approved-69 merge-merged-3497
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e7ae273f2ba3466ff303a48742031832cc34b14d

commit e7ae273f2ba3466ff303a48742031832cc34b14d
Author: Xianzhu Wang <wangxianzhu@chromium.org>
Date: Thu Aug 30 21:47:09 2018

[PE] Fix paint offset of -webkit-background-clip: text under transform

BoxModelObjectPainter::PaintTextClipMask() is called from Paint() method
of some painter which has already adjusted for paint offset and paint
properties, so we should not go back to call box_model_.Paint() again,
but should call LineBoxListPainter instead. This fixes an old FIXME
which became worse when we switched to SPv175 paint offsets.

TBR=wangxianzhu@chromium.org

(cherry picked from commit 876c69b24b5719bce12e24aae7a494997e038c74)

Bug:  878685 
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I78f3a82a133b14eb56dbeaf2b8b5f81041c0c59e
Reviewed-on: https://chromium-review.googlesource.com/1197462
Reviewed-by: Philip Rogers <pdr@chromium.org>
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#587771}
Reviewed-on: https://chromium-review.googlesource.com/1197843
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/branch-heads/3497@{#853}
Cr-Branched-From: 271eaf50594eb818c9295dc78d364aea18c82ea8-refs/heads/master@{#576753}
[add] https://crrev.com/e7ae273f2ba3466ff303a48742031832cc34b14d/third_party/WebKit/LayoutTests/paint/background/background-clip-text-transform-expected.html
[add] https://crrev.com/e7ae273f2ba3466ff303a48742031832cc34b14d/third_party/WebKit/LayoutTests/paint/background/background-clip-text-transform.html
[modify] https://crrev.com/e7ae273f2ba3466ff303a48742031832cc34b14d/third_party/blink/renderer/core/paint/box_model_object_painter.cc

Pls verify this bug on canary version 70.0.3537.2 or higher.
Labels: TE-Verified-M70 TE-Verified-M69 TE-Verified-70.0.3538.0 TE-Verified-69.0.3497.75
Verified the fix on Mac 10.13.1, Windows-10 and Ubuntu 14.04 using Chrome versions 69.0.3497.75 and 70.0.3538.0 as per the comment #0.
Attaching screen cast for reference.
Observed the animation rendered properly.
Hence, the fix is working as expected. 
Adding the verified labels.
Note: Able to reproduce the issue on chrome version with out fix.

Thanks...!!
878685 CL Verification.mp4
629 KB View Download
The NextAction date has arrived: 2018-08-31
I installed the latest beta build on Pixel 2 XL and verified the fix.
Android: Works as per expected behavior, Verified on 69.0.3497.76 and 70.0.3537.2
Status: Verified (was: Started)

Sign in to add a comment