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

Issue 2770483002: CS of out-of-flow positioned objects should have is_new_fc == true (Closed)

Created:
3 years, 9 months ago by Gleb Lanbin
Modified:
3 years, 9 months ago
Reviewers:
cbiesinger, ikilpatrick
CC:
chromium-reviews, ojan+watch_chromium.org, szager+layoutwatch_chromium.org, glebl+reviews_chromium.org, dgrogan+ng_chromium.org, atotic+reviews_chromium.org, blink-reviews-layout_chromium.org, pdr+renderingwatchlist_chromium.org, eae+blinkwatch, leviw+renderwatch, zoltan1, jchaffraix+rendering, blink-reviews
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

CS of out-of-flow positioned objects should have is_new_fc == true List of changes: 1) IsNewFormattingContextForInFlowBlockLevelChild returns true for out-of-flow positioned child's style. 2) Add is_parent_new_fc_ to NGConstraintSpaceBuilder. We need need this bit to determine whether we need to pass exclusions to child's CS. Consider an example: <div id="container" style="width/height: 200px;"> <float1><float-child></float1> <float2></float2> </div> float1 and float2 CSs will have available size == 200x200 and that size will be used to search for layout opportunities. So instead of passing arround the list of exclusions this patch introduces is_parent_new_fc that tells space_builder whether we need to pass exclusions to a child's CS. 3) Delete test lines that check NGLayoutOpportunityTree. That's because we can't access it anymore and we check its correctness in other places. BUG=635619 Review-Url: https://codereview.chromium.org/2770483002 Cr-Commit-Position: refs/heads/master@{#459697} Committed: https://chromium.googlesource.com/chromium/src/+/b91d302ec822f5a1900e2e0479d98741c0fb6d73

Patch Set 1 #

Total comments: 8

Patch Set 2 : fix comments #

Total comments: 8

Patch Set 3 : fix comments #

Patch Set 4 : update TestExpectations #

Unified diffs Side-by-side diffs Delta from patch set Stats (+132 lines, -171 lines) Patch
M third_party/WebKit/LayoutTests/TestExpectations View 1 2 3 5 chunks +12 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/BUILD.gn View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc View 1 2 4 chunks +17 lines, -10 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm_test.cc View 4 chunks +0 lines, -124 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_constraint_space.cc View 1 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_constraint_space_builder.cc View 1 2 3 chunks +6 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_constraint_space_test.cc View 1 8 chunks +11 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_floating_object.h View 1 4 chunks +9 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_floats_utils.cc View 1 2 chunks +7 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_layout_opportunity_iterator.h View 1 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_layout_opportunity_iterator.cc View 1 3 chunks +7 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_line_builder.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_space_utils.h View 1 1 chunk +1 line, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/ng/ng_space_utils.cc View 1 2 chunks +9 lines, -3 lines 0 comments Download
A third_party/WebKit/Source/core/layout/ng/ng_space_utils_test.cc View 1 1 chunk +47 lines, -0 lines 0 comments Download

Messages

Total messages: 51 (36 generated)
Gleb Lanbin
3 years, 9 months ago (2017-03-21 23:24:58 UTC) #3
ikilpatrick
https://codereview.chromium.org/2770483002/diff/1/third_party/WebKit/Source/core/layout/ng/ng_constraint_space_builder.cc File third_party/WebKit/Source/core/layout/ng/ng_constraint_space_builder.cc (right): https://codereview.chromium.org/2770483002/diff/1/third_party/WebKit/Source/core/layout/ng/ng_constraint_space_builder.cc#newcode180 third_party/WebKit/Source/core/layout/ng/ng_constraint_space_builder.cc:180: is_parent_new_fc_ ? std::make_shared<NGExclusions>() : exclusions_); yeah i'm not sure ...
3 years, 9 months ago (2017-03-23 16:39:59 UTC) #7
Gleb Lanbin
https://codereview.chromium.org/2770483002/diff/1/third_party/WebKit/Source/core/layout/ng/ng_constraint_space_builder.cc File third_party/WebKit/Source/core/layout/ng/ng_constraint_space_builder.cc (right): https://codereview.chromium.org/2770483002/diff/1/third_party/WebKit/Source/core/layout/ng/ng_constraint_space_builder.cc#newcode180 third_party/WebKit/Source/core/layout/ng/ng_constraint_space_builder.cc:180: is_parent_new_fc_ ? std::make_shared<NGExclusions>() : exclusions_); On 2017/03/23 16:39:59, ikilpatrick ...
3 years, 9 months ago (2017-03-24 20:10:05 UTC) #8
ikilpatrick
ok, lgtm; I'd prefer that we add this information to NGFloatingObject and perform the adjustment, ...
3 years, 9 months ago (2017-03-24 21:17:34 UTC) #9
Gleb Lanbin
thanks for the review https://codereview.chromium.org/2770483002/diff/20001/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc File third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc (right): https://codereview.chromium.org/2770483002/diff/20001/third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc#newcode197 third_party/WebKit/Source/core/layout/ng/ng_block_layout_algorithm.cc:197: curr_bfc_offset_ = {}; On 2017/03/24 ...
3 years, 9 months ago (2017-03-24 21:49:36 UTC) #10
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/2770483002/100001
3 years, 9 months ago (2017-03-25 19:12:39 UTC) #31
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/394788)
3 years, 9 months ago (2017-03-25 19:17:31 UTC) #33
Gleb Lanbin
Christian, I need your approval for third_party/WebKit/Source/core/BUILD.gn thanks in advance.
3 years, 9 months ago (2017-03-25 19:56:11 UTC) #37
cbiesinger
rs-lgtm
3 years, 9 months ago (2017-03-26 22:24:57 UTC) #38
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/2770483002/100001
3 years, 9 months ago (2017-03-26 22:25:42 UTC) #40
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/408380)
3 years, 9 months ago (2017-03-27 00:12:13 UTC) #42
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/2770483002/100001
3 years, 9 months ago (2017-03-27 00:13:21 UTC) #44
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/391780)
3 years, 9 months ago (2017-03-27 01:16:49 UTC) #46
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/2770483002/100001
3 years, 9 months ago (2017-03-27 01:19:47 UTC) #48
commit-bot: I haz the power
3 years, 9 months ago (2017-03-27 03:28:17 UTC) #51
Message was sent while issue was closed.
Committed patchset #4 (id:100001) as
https://chromium.googlesource.com/chromium/src/+/b91d302ec822f5a1900e2e0479d9...

Powered by Google App Engine
This is Rietveld 408576698