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

Issue 16402019: Remove clips where we can show that they are unnecessary. (Closed)

Created:
7 years, 6 months ago by jbroman
Modified:
7 years, 4 months ago
CC:
blink-reviews, eae+blinkwatch, leviw+renderwatch, jchaffraix+rendering, danakj, Stephen Chennney
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Visibility:
Public.

Description

Remove block content clips where we can show that they are unnecessary. This CL: 1. Modifies RenderBlock::computeOverflow to track, in addition to the visual overflow of the element itself, a bounding rect for the visual overflow of its contents. All call sites of addVisualOverflow are modified to declare whether the visual overflow is affected by the contents clip or not. 2. Modifies RenderBox::pushContentsClip to use this rect to determine whether the contents are visually contained by the clip, in which case it omits the clip. See measurements in my comment #3 on the bug: https://code.google.com/p/chromium/issues/detail?id=238732#c3 BUG=238732 R=jchaffraix@chromium.org Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=155847

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : Some refactoring after talking to danakj #

Patch Set 6 : add TestExpectations for layout test changes due to crbug.com/249478 #

Total comments: 16

Patch Set 7 : rebase, refactor and test! #

Patch Set 8 : rebase again #

Patch Set 9 : rebase #

Patch Set 10 : NeedsRebaseline for Mac #

Total comments: 22

Patch Set 11 : address some review comments #

Patch Set 12 : updated TestExpectations (after content shell configuration changes by dpranke) #

Patch Set 13 : #

Total comments: 10

Patch Set 14 : rebase #

Patch Set 15 : per jchaffraix #

Unified diffs Side-by-side diffs Delta from patch set Stats (+383 lines, -30 lines) Patch
M LayoutTests/TestExpectations View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +3 lines, -0 lines 0 comments Download
M Source/core/core.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +2 lines, -0 lines 0 comments Download
M Source/core/platform/graphics/RoundedRect.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +3 lines, -0 lines 0 comments Download
M Source/core/platform/graphics/RoundedRect.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +11 lines, -0 lines 0 comments Download
A Source/core/platform/graphics/RoundedRectTest.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +84 lines, -0 lines 0 comments Download
M Source/core/rendering/RenderBlock.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +3 lines, -0 lines 0 comments Download
M Source/core/rendering/RenderBlock.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 5 chunks +21 lines, -12 lines 0 comments Download
M Source/core/rendering/RenderBlockLineLayout.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +2 lines, -2 lines 0 comments Download
M Source/core/rendering/RenderBox.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +8 lines, -1 line 0 comments Download
M Source/core/rendering/RenderBox.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 6 chunks +42 lines, -9 lines 0 comments Download
M Source/core/rendering/RenderListItem.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +4 lines, -4 lines 0 comments Download
M Source/core/rendering/RenderOverflow.h View 1 2 3 4 5 6 7 8 4 chunks +4 lines, -0 lines 0 comments Download
A Source/core/rendering/RenderOverflowTest.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +194 lines, -0 lines 0 comments Download
M Source/core/rendering/RenderTable.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -1 line 0 comments Download
M Source/core/rendering/RenderTableSection.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 11 (0 generated)
jbroman
7 years, 6 months ago (2013-06-13 22:22:29 UTC) #1
jbroman
ping for review
7 years, 6 months ago (2013-06-18 13:44:19 UTC) #2
Julien - ping for review
https://codereview.chromium.org/16402019/diff/33001/Source/core/platform/graphics/RoundedRect.cpp File Source/core/platform/graphics/RoundedRect.cpp (right): https://codereview.chromium.org/16402019/diff/33001/Source/core/platform/graphics/RoundedRect.cpp#newcode83 Source/core/platform/graphics/RoundedRect.cpp:83: IntRect RoundedRect::enclosedRect() const This will return a smaller rectangle ...
7 years, 6 months ago (2013-06-19 19:42:58 UTC) #3
jbroman
PTAL. Major refactoring, moving this to RenderOverflow and trimming the CL to be smaller and ...
7 years, 4 months ago (2013-08-02 14:28:16 UTC) #4
jbroman
https://codereview.chromium.org/16402019/diff/33001/Source/core/rendering/RenderBlock.cpp File Source/core/rendering/RenderBlock.cpp (left): https://codereview.chromium.org/16402019/diff/33001/Source/core/rendering/RenderBlock.cpp#oldcode1767 Source/core/rendering/RenderBlock.cpp:1767: LayoutRect rectToApply = LayoutRect(clientRect.x() + min<LayoutUnit>(0, textIndent), clientRect.y(), clientRect.width() ...
7 years, 4 months ago (2013-08-02 15:02:20 UTC) #5
Julien - ping for review
https://codereview.chromium.org/16402019/diff/33001/Source/core/rendering/RenderBlock.cpp File Source/core/rendering/RenderBlock.cpp (left): https://codereview.chromium.org/16402019/diff/33001/Source/core/rendering/RenderBlock.cpp#oldcode1767 Source/core/rendering/RenderBlock.cpp:1767: LayoutRect rectToApply = LayoutRect(clientRect.x() + min<LayoutUnit>(0, textIndent), clientRect.y(), clientRect.width() ...
7 years, 4 months ago (2013-08-07 00:17:08 UTC) #6
jbroman
https://codereview.chromium.org/16402019/diff/63001/LayoutTests/TestExpectations File LayoutTests/TestExpectations (right): https://codereview.chromium.org/16402019/diff/63001/LayoutTests/TestExpectations#newcode703 LayoutTests/TestExpectations:703: crbug.com/238732 fast/forms/placeholder-position.html [ NeedsRebaseline ] On 2013/08/07 00:17:08, Julien ...
7 years, 4 months ago (2013-08-08 14:35:39 UTC) #7
Julien - ping for review
lgtm https://codereview.chromium.org/16402019/diff/63001/LayoutTests/TestExpectations File LayoutTests/TestExpectations (right): https://codereview.chromium.org/16402019/diff/63001/LayoutTests/TestExpectations#newcode703 LayoutTests/TestExpectations:703: crbug.com/238732 fast/forms/placeholder-position.html [ NeedsRebaseline ] On 2013/08/08 14:35:39, ...
7 years, 4 months ago (2013-08-08 21:36:49 UTC) #8
jbroman
https://codereview.chromium.org/16402019/diff/63001/LayoutTests/TestExpectations File LayoutTests/TestExpectations (right): https://codereview.chromium.org/16402019/diff/63001/LayoutTests/TestExpectations#newcode703 LayoutTests/TestExpectations:703: crbug.com/238732 fast/forms/placeholder-position.html [ NeedsRebaseline ] On 2013/08/08 21:36:49, Julien ...
7 years, 4 months ago (2013-08-09 15:34:34 UTC) #9
jbroman
CQ isn't responding; going to dcommit this (release trybots are all green)
7 years, 4 months ago (2013-08-09 17:43:47 UTC) #10
jbroman
7 years, 4 months ago (2013-08-09 17:47:06 UTC) #11
Message was sent while issue was closed.
Committed patchset #15 manually as r155847 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698