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

Issue 2073563002: Rework mapToVisualRectInAncestorSpace to handle flipped blocks correctly. (Closed)

Created:
4 years, 6 months ago by wkorman
Modified:
4 years, 5 months ago
Reviewers:
chrishtr
CC:
blink-reviews, blink-reviews-layout_chromium.org, chromium-reviews, eae+blinkwatch, jchaffraix+rendering, leviw+renderwatch, pdr+renderingwatchlist_chromium.org, szager+layoutwatch_chromium.org, zoltan1
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Rework mapToVisualRectInAncestorSpace to handle flipped blocks correctly. In particular, we were incorrectly calculating rects for out-of-flow positioned elements. Follows canonical logic in PaintLayer::updateLayerPosition(). BUG=616600 Committed: https://crrev.com/a7e6a571947df4ac9a93a8d43882c6d8588514b6 Cr-Commit-Position: refs/heads/master@{#404925}

Patch Set 1 #

Patch Set 2 : Minor cleanup. #

Patch Set 3 : Sync to head and integrate changes from meta patch. #

Patch Set 4 : Sync to head. #

Patch Set 5 : Sync to head. #

Patch Set 6 : Fix flipped blocks for tables. #

Total comments: 2

Patch Set 7 : No need to flip and unflip in LayoutFlowThread. #

Patch Set 8 : Sync to head. #

Patch Set 9 : Add TODO to document flipped blocks in layout .md. #

Patch Set 10 : Don't need to flip in CLM. #

Total comments: 15

Patch Set 11 : Integrate feedback. #

Patch Set 12 : Integrate feedback. #

Total comments: 6

Patch Set 13 : More feedback. #

Total comments: 2

Patch Set 14 : Fix comment further. #

Patch Set 15 : Fix comment quoting. #

Total comments: 1

Patch Set 16 : Sync to head. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+66 lines, -56 lines) Patch
M third_party/WebKit/Source/core/layout/LayoutBox.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +5 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutBox.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 6 chunks +18 lines, -30 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutFlowThread.cpp View 1 2 3 4 5 6 1 chunk +0 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutInline.cpp View 1 2 3 4 1 chunk +4 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutObject.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +9 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutTableCell.h View 1 2 3 4 5 1 chunk +0 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutTableCell.cpp View 1 2 3 4 5 1 chunk +0 lines, -9 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutView.cpp View 1 2 3 1 chunk +0 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/layout/PaintInvalidationState.cpp View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +7 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/README.md View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 7 chunks +19 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -3 lines 0 comments Download

Messages

Total messages: 36 (13 generated)
chrishtr
https://codereview.chromium.org/2073563002/diff/100001/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp File third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp (right): https://codereview.chromium.org/2073563002/diff/100001/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp#newcode2302 third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp:2302: if (anchorLayoutObject->isBox() && !anchorLayoutObject->isLayoutView()) Why this change?
4 years, 5 months ago (2016-07-08 19:54:52 UTC) #3
wkorman
https://codereview.chromium.org/2073563002/diff/100001/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp File third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp (right): https://codereview.chromium.org/2073563002/diff/100001/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp#newcode2302 third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp:2302: if (anchorLayoutObject->isBox() && !anchorLayoutObject->isLayoutView()) On 2016/07/08 at 19:54:51, chrishtr ...
4 years, 5 months ago (2016-07-08 23:55:50 UTC) #4
chrishtr
https://codereview.chromium.org/2073563002/diff/180001/third_party/WebKit/Source/core/layout/LayoutBox.cpp File third_party/WebKit/Source/core/layout/LayoutBox.cpp (left): https://codereview.chromium.org/2073563002/diff/180001/third_party/WebKit/Source/core/layout/LayoutBox.cpp#oldcode1001 third_party/WebKit/Source/core/layout/LayoutBox.cpp:1001: flipForWritingMode(rect); Do you know what the code in this ...
4 years, 5 months ago (2016-07-09 00:15:57 UTC) #6
wkorman
https://codereview.chromium.org/2073563002/diff/180001/third_party/WebKit/Source/core/layout/LayoutBox.cpp File third_party/WebKit/Source/core/layout/LayoutBox.cpp (left): https://codereview.chromium.org/2073563002/diff/180001/third_party/WebKit/Source/core/layout/LayoutBox.cpp#oldcode1001 third_party/WebKit/Source/core/layout/LayoutBox.cpp:1001: flipForWritingMode(rect); On 2016/07/09 at 00:15:57, chrishtr wrote: > Do ...
4 years, 5 months ago (2016-07-09 01:16:08 UTC) #7
chrishtr
https://codereview.chromium.org/2073563002/diff/180001/third_party/WebKit/Source/core/layout/LayoutBox.cpp File third_party/WebKit/Source/core/layout/LayoutBox.cpp (left): https://codereview.chromium.org/2073563002/diff/180001/third_party/WebKit/Source/core/layout/LayoutBox.cpp#oldcode1001 third_party/WebKit/Source/core/layout/LayoutBox.cpp:1001: flipForWritingMode(rect); On 2016/07/09 at 01:16:08, wkorman wrote: > On ...
4 years, 5 months ago (2016-07-11 17:35:56 UTC) #8
wkorman
Updated comments in PaintInvalidationState and unit tests from in person review.
4 years, 5 months ago (2016-07-11 22:23:09 UTC) #9
chrishtr
https://codereview.chromium.org/2073563002/diff/220001/third_party/WebKit/Source/core/layout/LayoutBox.cpp File third_party/WebKit/Source/core/layout/LayoutBox.cpp (right): https://codereview.chromium.org/2073563002/diff/220001/third_party/WebKit/Source/core/layout/LayoutBox.cpp#newcode2068 third_party/WebKit/Source/core/layout/LayoutBox.cpp:2068: if (!(isInline() && isLayoutInline())) Add a TODO that we ...
4 years, 5 months ago (2016-07-11 22:35:11 UTC) #10
wkorman
https://codereview.chromium.org/2073563002/diff/220001/third_party/WebKit/Source/core/layout/LayoutBox.cpp File third_party/WebKit/Source/core/layout/LayoutBox.cpp (right): https://codereview.chromium.org/2073563002/diff/220001/third_party/WebKit/Source/core/layout/LayoutBox.cpp#newcode2068 third_party/WebKit/Source/core/layout/LayoutBox.cpp:2068: if (!(isInline() && isLayoutInline())) On 2016/07/11 at 22:35:11, chrishtr ...
4 years, 5 months ago (2016-07-11 22:46:17 UTC) #11
chrishtr
https://codereview.chromium.org/2073563002/diff/240001/third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp File third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp (right): https://codereview.chromium.org/2073563002/diff/240001/third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp#newcode176 third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp:176: // currently expects the input rect to be in ...
4 years, 5 months ago (2016-07-11 22:49:42 UTC) #12
chrishtr
https://codereview.chromium.org/2073563002/diff/240001/third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp File third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp (right): https://codereview.chromium.org/2073563002/diff/240001/third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp#newcode176 third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp:176: // currently expects the input rect to be in ...
4 years, 5 months ago (2016-07-11 22:49:42 UTC) #13
wkorman
https://codereview.chromium.org/2073563002/diff/240001/third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp File third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp (right): https://codereview.chromium.org/2073563002/diff/240001/third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp#newcode176 third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp:176: // currently expects the input rect to be in ...
4 years, 5 months ago (2016-07-11 22:54:51 UTC) #14
chrishtr
lgtm
4 years, 5 months ago (2016-07-11 23:03:12 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/2073563002/280001
4 years, 5 months ago (2016-07-11 23:28:15 UTC) #18
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/199361)
4 years, 5 months ago (2016-07-12 00:52:25 UTC) #20
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/2073563002/280001
4 years, 5 months ago (2016-07-12 00:57:15 UTC) #22
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/190625)
4 years, 5 months ago (2016-07-12 01:33:25 UTC) #24
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/2073563002/300001
4 years, 5 months ago (2016-07-12 17:48:54 UTC) #27
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_asan_rel_ng/builds/191526)
4 years, 5 months ago (2016-07-12 22:55:45 UTC) #29
wkorman
The latest commit failures are ASAN re: inspector instrumentation and don't look related to my ...
4 years, 5 months ago (2016-07-12 23:36:15 UTC) #30
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/2073563002/300001
4 years, 5 months ago (2016-07-12 23:39:31 UTC) #32
commit-bot: I haz the power
Committed patchset #16 (id:300001)
4 years, 5 months ago (2016-07-13 02:44:31 UTC) #33
commit-bot: I haz the power
CQ bit was unchecked.
4 years, 5 months ago (2016-07-13 02:45:49 UTC) #34
commit-bot: I haz the power
4 years, 5 months ago (2016-07-13 02:48:02 UTC) #36
Message was sent while issue was closed.
Patchset 16 (id:??) landed as
https://crrev.com/a7e6a571947df4ac9a93a8d43882c6d8588514b6
Cr-Commit-Position: refs/heads/master@{#404925}

Powered by Google App Engine
This is Rietveld 408576698