New issue
Advanced search Search tips

Issue 595839 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug-Regression



Sign in to add a comment

Background paint bugs on https://svgwg.org/svg2-draft/single-page.html

Project Member Reported by pdr@chromium.org, Mar 17 2016

Issue description

Version: 51.0.2679.0
OS: OSX10.11

What steps will reproduce the problem?
(1) Visit https://svgwg.org/svg2-draft/single-page.html
(2) Select text
(3) Notice bug.
 
Labels: -Type-Bug -Needs-Bisect M-51 hasbisect OS-Mac Type-Bug-Regression
Owner: wangxianzhu@chromium.org
Status: Assigned (was: Untriaged)
Able to reproduce the issue on Mac 10.10.5 using 51.0.2679.0, latest canary 51.0.2681.0 as per steps in comment #0.

This is regression issue broken in M-51.

Please find below bisect info:
Last good build:51.0.2673.0
First bad build:51.0.2678.0

CHANGELOG URL:
https://chromium.googlesource.com/chromium/src/+log/76311f1cf896615df4fa82b8421ae81cec9b7873..bd780bff9a4002c0241234e458cacf735236a288

From above CL, suspecting below:
https://chromium.googlesource.com/chromium/src/+/8ad6e62af5301a7e8dacd12fc1ae7914258b9e7a

wangxianzhu@Could you please look into this issue if it is related to your change, else feel free to assign it to an appropriate dev person.

Note:Unable to reproduce the issue on Windows 7, Ubuntu 14.04.
Labels: -OS-Mac OS-All
Reproduced on Linux with --enable-prefer-compositing-to-lcd-text. Will revert the change first.
Project Member

Comment 3 by bugdroid1@chromium.org, Mar 18 2016

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

commit e425e3a8c5204d2d75f34c885c33f077372d1ff8
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Fri Mar 18 18:24:54 2016

Revert of Skip PaintLayer empty paint phases if it previously painted nothing (patchset #12 id:220001 of https://codereview.chromium.org/1739893006/ )

Reason for revert:
BUG= 595839 

Original issue's description:
> Skip PaintLayer empty paint phases if it previously painted nothing
>
> This avoids later painting of empty phases if the layer is marked to need
> a paint phase but the phase painted nothing in the following cases:
> - the object marking the layer needing the paint phase is not visible
>   (e.g. because it is clipped)
> - the layer was marked needing the paint phase by some object that
>   has been deleted or moved to another layer.
>
> Instead of directly clearing the needsPaintPhase flags, this CL adds
> a new set of flags to indicate if the previous paint of the phases painted
> nothing. This is because invalidations of the needsPaintPhase flags and the
> new flags need different conditions. The new flags are cleared when scroll
> offset, interest rect or clipping changes.
>
> Cluster telemetry runs show that this will improve non-cached painting
> by 1.7% and fully-cached painting (with subsequence-caching disabled) by
> 45%.
>
> BUG= 574938 
>
> Committed: https://crrev.com/8ad6e62af5301a7e8dacd12fc1ae7914258b9e7a
> Cr-Commit-Position: refs/heads/master@{#380841}

TBR=chrishtr@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 574938 

Review URL: https://codereview.chromium.org/1815293002

Cr-Commit-Position: refs/heads/master@{#382018}

[modify] https://crrev.com/e425e3a8c5204d2d75f34c885c33f077372d1ff8/third_party/WebKit/Source/core/layout/LayoutBox.cpp
[modify] https://crrev.com/e425e3a8c5204d2d75f34c885c33f077372d1ff8/third_party/WebKit/Source/core/paint/PaintLayer.cpp
[modify] https://crrev.com/e425e3a8c5204d2d75f34c885c33f077372d1ff8/third_party/WebKit/Source/core/paint/PaintLayer.h
[modify] https://crrev.com/e425e3a8c5204d2d75f34c885c33f077372d1ff8/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp
[modify] https://crrev.com/e425e3a8c5204d2d75f34c885c33f077372d1ff8/third_party/WebKit/Source/core/paint/README.md

Labels: -M-51
This bug is kept open just to remind me about the case when I reland the CL.
Project Member

Comment 5 by bugdroid1@chromium.org, Aug 31 2016

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

commit f218841e39d1cb7bad5a0711081e75042bca316e
Author: wangxianzhu <wangxianzhu@chromium.org>
Date: Wed Aug 31 18:39:01 2016

Let only the root layer paint root background

When the viewport has fixed background, we may create a dedicated
GraphicsLayer (CompositedLayerMapping::m_backgroundLayer) for the
root background. Previously we used PaintLayerPaintingRootBackgroundOnly
and PaintLayerPaintingCompositingForegroundPhase flags when painting
the layer. The second flag was necessary before we refactored viewport
background painting into ViewPainter, because we needed the layout
objects of the document element or the body element to paint the
viewport background.

Now we need only the root layer to paint root background.

BUG= 595839 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2

Review-Url: https://codereview.chromium.org/2294313002
Cr-Commit-Position: refs/heads/master@{#415694}

[modify] https://crrev.com/f218841e39d1cb7bad5a0711081e75042bca316e/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp
[modify] https://crrev.com/f218841e39d1cb7bad5a0711081e75042bca316e/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp

Status: Fixed (was: Assigned)

Sign in to add a comment