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

Issue 1536663004: Need to repaint its ::first-line background when a block moves. (Closed)

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

Description

Need to repaint its ::first-line background when a block moves. Everything else pertaining to ::first-line is painted by the InlineBox objects established by DOM nodes (text, inline SPAN, whatever), so they get invalidated when their LayoutObjects get invalidated, but ::first-line background is special and is painted by RootInlineBox, which wasn't properly invalidated along with the rest. BUG=537638 R=chrishtr@chromium.org,eae@chromium.org,wangxianzhu@chromium.org Committed: https://crrev.com/c2c4f22ffab452a9225239bfc86da699af342386 Cr-Commit-Position: refs/heads/master@{#366396}

Patch Set 1 #

Total comments: 6

Patch Set 2 : Document that we don't check if the first line is affected by any ::first-line selectors. #

Patch Set 3 : Modifying test, in the hope that it will behave the same on all platforms. #

Patch Set 4 : Need to rebaseline a bunch of tests because of this CL. #

Patch Set 5 : rebase master #

Patch Set 6 : Need to rebaseline even more tests. #

Patch Set 7 : Two tests even need manual rebaseline, since they already existed in TestExpectations. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+303 lines, -13 lines) Patch
M third_party/WebKit/LayoutTests/TestExpectations View 1 2 3 4 5 6 3 chunks +124 lines, -2 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/inline-block-resize-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/inline-reflow-expected.txt View 1 2 3 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/multicol-repaint-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/multicol-with-abspos-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/multicol-with-abspos-in-relpos-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/multicol-with-block-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/multicol-with-text-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/negative-text-indent-with-overflow-hidden-expected.txt View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
A third_party/WebKit/LayoutTests/fast/repaint/push-block-with-first-line.html View 1 2 1 chunk +23 lines, -0 lines 0 comments Download
A + third_party/WebKit/LayoutTests/fast/repaint/push-block-with-first-line-expected.txt View 1 2 1 chunk +8 lines, -5 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/remove-inline-block-descendant-of-flex-expected.txt View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/repaint/svg-layout-root-style-attr-update-expected.png View 1 2 3 Binary file 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/4776765-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/abspos-shift-image-incorrect-repaint-expected.txt View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/block-layout-inline-children-float-positioned-expected.txt View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/block-layout-inline-children-replaced-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/block-no-inflow-children-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/box-inline-resize-expected.txt View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/bugzilla-3509-expected.txt View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/bugzilla-5699-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/bugzilla-6278-expected.txt View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/bugzilla-6473-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/change-text-content-and-background-color-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/clip-with-layout-delta-expected.txt View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/clipped-relative-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/crbug-371640-4-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/crbug-371640-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/delete-into-nested-block-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/details-open-repaint-expected.txt View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/float-overflow-expected.txt View 1 2 3 14 chunks +16 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/float-overflow-right-expected.txt View 1 2 3 14 chunks +16 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/inline-focus-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/layoutstate-invalid-invalidation-inline-relative-positioned-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-2-expected.txt View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-6-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-8-expected.txt View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/list-marker-2-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/make-children-non-inline-expected.txt View 1 2 3 4 2 chunks +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/multi-layout-one-frame-expected.txt View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/offset-change-wrong-invalidation-with-float-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/outline-change-invalidation-expected.txt View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/outline-clip-change-expected.txt View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/outline-continuations-expected.txt View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/overflow-scroll-body-appear-expected.txt View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/paint-invalidation-with-reparent-across-frame-boundaries-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/positioned-document-element-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/positioned-great-grandparent-change-location-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/positioned-list-offset-change-repaint-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/repaint-descandant-on-ancestor-layer-move-expected.txt View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/repaint-during-scroll-with-zoom-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/replaced-clipped-positioned-not-wrong-incremental-repainting-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/resize-scrollable-iframe-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/search-field-cancel-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/select-option-background-color-expected.txt View 1 2 3 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/selection-after-delete-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/selection-after-remove-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/selection-clear-expected.txt View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/shift-relative-positioned-container-with-image-addition-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/shift-relative-positioned-container-with-image-removal-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/subtree-root-skipped-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/table-collapsed-border-expected.txt View 1 2 3 2 chunks +6 lines, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/table-shrink-row-repaint-expected.txt View 1 2 3 1 chunk +12 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/text-match-document-change-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/transform-inline-layered-child-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/vertical-align-length1-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/vertical-align1-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/vertical-align2-expected.txt View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/window-resize-vertical-writing-mode-expected.txt View 1 2 3 4 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutBlockFlow.h View 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp View 1 2 3 4 1 chunk +15 lines, -0 lines 0 comments Download

Messages

Total messages: 23 (12 generated)
Xianzhu
https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp File third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp (right): https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp#newcode2091 third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp:2091: invalidateDisplayItemClient(*line); Will this always invalidate the first line, even ...
5 years ago (2015-12-18 07:01:20 UTC) #5
mstensho (USE GERRIT)
5 years ago (2015-12-18 10:27:41 UTC) #6
mstensho (USE GERRIT)
https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp File third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp (right): https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp#newcode2091 third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp:2091: invalidateDisplayItemClient(*line); On 2015/12/18 07:01:20, Xianzhu wrote: > Will this ...
5 years ago (2015-12-18 10:33:04 UTC) #7
mstensho (USE GERRIT)
https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp File third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp (right): https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp#newcode2091 third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp:2091: invalidateDisplayItemClient(*line); On 2015/12/18 10:33:04, mstensho wrote: > On 2015/12/18 ...
5 years ago (2015-12-18 13:11:11 UTC) #8
Xianzhu
https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp File third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp (right): https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp#newcode2082 third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp:2082: PaintInvalidationReason LayoutBlockFlow::invalidatePaintIfNeeded(PaintInvalidationState& paintInvalidationState, const LayoutBoxModelObject& paintInvalidationContainer) This will miss ...
5 years ago (2015-12-18 17:24:54 UTC) #9
mstensho (USE GERRIT)
https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp File third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp (right): https://codereview.chromium.org/1536663004/diff/1/third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp#newcode2091 third_party/WebKit/Source/core/layout/LayoutBlockFlowLine.cpp:2091: invalidateDisplayItemClient(*line); On 2015/12/18 17:24:54, Xianzhu wrote: > On 2015/12/18 ...
5 years ago (2015-12-21 10:54:10 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1536663004/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1536663004/80001
5 years ago (2015-12-21 10:54:29 UTC) #14
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/152427)
5 years ago (2015-12-21 12:19:50 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1536663004/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1536663004/140001
5 years ago (2015-12-21 13:00:07 UTC) #19
commit-bot: I haz the power
Committed patchset #7 (id:140001)
5 years ago (2015-12-21 16:23:53 UTC) #21
commit-bot: I haz the power
5 years ago (2015-12-21 16:24:55 UTC) #23
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/c2c4f22ffab452a9225239bfc86da699af342386
Cr-Commit-Position: refs/heads/master@{#366396}

Powered by Google App Engine
This is Rietveld 408576698