Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(16)

Issue 2397003002: Mark children of an SVG root as needing paint invalidation checking on resize. (Closed)

Created:
4 years, 2 months ago by chrishtr
Modified:
4 years, 2 months ago
Reviewers:
fs, wkorman
CC:
fs, blink-reviews, blink-reviews-layout_chromium.org, chromium-reviews, krit, eae+blinkwatch, f(malita), gyuyoung2, jchaffraix+rendering, kouhei+svg_chromium.org, leviw+renderwatch, pdr+renderingwatchlist_chromium.org, pdr+svgwatchlist_chromium.org, rwlbuis, Stephen Chennney, szager+layoutwatch_chromium.org, zoltan1
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Mark children of an SVG root as needing paint invalidation checking on resize. BUG=649760 Committed: https://crrev.com/bd1529c0d0d4afe68e09b455203cc63d982e7b4d Cr-Commit-Position: refs/heads/master@{#423638}

Patch Set 1 #

Patch Set 2 : none #

Patch Set 3 : none #

Patch Set 4 : none #

Total comments: 9

Patch Set 5 : none #

Patch Set 6 : none #

Messages

Total messages: 26 (14 generated)
chrishtr
4 years, 2 months ago (2016-10-05 22:31:29 UTC) #3
chrishtr
Also marked two tests as passing that were failing for the same reason as the ...
4 years, 2 months ago (2016-10-05 22:40:40 UTC) #6
chrishtr
4 years, 2 months ago (2016-10-05 22:40:57 UTC) #8
wkorman
lgtm Thanks, that's great if this fixes those other cases! Was hoping to find a ...
4 years, 2 months ago (2016-10-05 23:00:36 UTC) #11
fs
lgtm https://codereview.chromium.org/2397003002/diff/60001/third_party/WebKit/LayoutTests/paint/invalidation/resources/text-based-repaint.js File third_party/WebKit/LayoutTests/paint/invalidation/resources/text-based-repaint.js (right): https://codereview.chromium.org/2397003002/diff/60001/third_party/WebKit/LayoutTests/paint/invalidation/resources/text-based-repaint.js#newcode16 third_party/WebKit/LayoutTests/paint/invalidation/resources/text-based-repaint.js:16: window.expectedObjectInvalidations = []; Maybe document that using this ...
4 years, 2 months ago (2016-10-06 10:51:49 UTC) #14
chrishtr
https://codereview.chromium.org/2397003002/diff/60001/third_party/WebKit/LayoutTests/paint/invalidation/resources/text-based-repaint.js File third_party/WebKit/LayoutTests/paint/invalidation/resources/text-based-repaint.js (right): https://codereview.chromium.org/2397003002/diff/60001/third_party/WebKit/LayoutTests/paint/invalidation/resources/text-based-repaint.js#newcode16 third_party/WebKit/LayoutTests/paint/invalidation/resources/text-based-repaint.js:16: window.expectedObjectInvalidations = []; On 2016/10/06 at 10:51:49, fs wrote: ...
4 years, 2 months ago (2016-10-06 16:52:04 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2397003002/80001
4 years, 2 months ago (2016-10-06 16:52:45 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2397003002/100001
4 years, 2 months ago (2016-10-06 18:16:19 UTC) #21
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 2 months ago (2016-10-06 19:58:25 UTC) #22
commit-bot: I haz the power
Patchset 6 (id:??) landed as https://crrev.com/bd1529c0d0d4afe68e09b455203cc63d982e7b4d Cr-Commit-Position: refs/heads/master@{#423638}
4 years, 2 months ago (2016-10-06 20:01:47 UTC) #24
chrishtr
https://codereview.chromium.org/2397003002/diff/60001/third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp File third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp (right): https://codereview.chromium.org/2397003002/diff/60001/third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp#newcode160 third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp:160: if (m_isLayoutSizeChanged) On 2016/10/06 at 10:51:49, fs wrote: > ...
4 years, 2 months ago (2016-10-06 20:08:37 UTC) #25
fs
4 years, 2 months ago (2016-10-06 20:14:47 UTC) #26
Message was sent while issue was closed.
https://codereview.chromium.org/2397003002/diff/60001/third_party/WebKit/Sour...
File third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp (right):

https://codereview.chromium.org/2397003002/diff/60001/third_party/WebKit/Sour...
third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp:160: if
(m_isLayoutSizeChanged)
On 2016/10/06 at 20:08:37, chrishtr wrote:
> On 2016/10/06 at 10:51:49, fs wrote:
> > I think this predicate may trigger over-invalidation when the SVG is fixed
size, but a descendant has relative lengths. Could you add a test for that case
too? (I've been trying to pick apart the selfNeedsLayout cases for this layout
object, so I'd like to keep dependencies spelled out if possible.)
> 
> Sorry, I accidentally missed this comment.
> 
> Can you paste an example in a reply to this comment? I will turn it into a
layout test.

Something like resize-svg-invalidate-children.html, but with
width="<somenumber>" and height="<somenumber>" (maybe <somenumber>=100) on the
<svg>, and then width=100% or so on the <rect> ought to do it:

<svg viewBox="0 0 200 200" width="100" height="100">
  <rect width="100%" height="100"/>
</svg>

(and the rest the same.)

Powered by Google App Engine
This is Rietveld 408576698