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

Issue 684633006: Reattach whitespace siblings only when needed (Closed)

Created:
6 years, 1 month ago by Xianzhu
Modified:
6 years, 1 month ago
CC:
blink-reviews, blink-reviews-dom_chromium.org, dglazkov+blink, eae+blinkwatch, rwlbuis, sof
Project:
blink
Visibility:
Public.

Description

Reattach whitespace siblings only when needed When an element's renderer is being reattached, previously we reattach whitespace siblings, causing full paint invalidation of the parent. If the whitespace sibling needed renderer and still needs renderer, don't reattach. - Renamed Node::reattachWhitespaceSiblings() to Node::reattachWhitespaceSlibingsIfNeeded(); - In the function, test if rendererIsNeeded changed before reattaching; - Modified Text::textRendererIsNeeded() so that it can return correct value when the Text has already renderer. BUG=428997 TEST=fast/repaint/absolute-display-block-to-none.html TEST=fast/forms/select-listbox-focus-displaynone.html (Existing test covering the change in Text.cpp). Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=185421

Patch Set 1 #

Total comments: 5

Patch Set 2 : Text::reattachIfNeeded() #

Total comments: 4

Patch Set 3 : #

Total comments: 1

Patch Set 4 : Rebased #

Patch Set 5 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+46 lines, -11 lines) Patch
A LayoutTests/fast/repaint/absolute-display-block-to-none.html View 1 chunk +10 lines, -0 lines 0 comments Download
A + LayoutTests/fast/repaint/absolute-display-block-to-none-expected.txt View 1 chunk +0 lines, -1 line 0 comments Download
M Source/core/dom/Element.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M Source/core/dom/Node.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M Source/core/dom/Node.cpp View 1 2 3 4 1 chunk +5 lines, -6 lines 0 comments Download
M Source/core/dom/Text.h View 1 1 chunk +1 line, -0 lines 0 comments Download
M Source/core/dom/Text.cpp View 1 2 3 4 3 chunks +28 lines, -2 lines 0 comments Download

Messages

Total messages: 29 (11 generated)
Xianzhu
This patch resolves half of the bug (absolute display:block to display:none). Another patch is needed ...
6 years, 1 month ago (2014-11-03 21:53:53 UTC) #2
esprehn
This might be okay, but calling textRendererIsNeeded twice is going to be a perf regression ...
6 years, 1 month ago (2014-11-04 22:03:55 UTC) #4
Xianzhu
PTAL. https://codereview.chromium.org/684633006/diff/1/Source/core/dom/Node.cpp File Source/core/dom/Node.cpp (right): https://codereview.chromium.org/684633006/diff/1/Source/core/dom/Node.cpp#newcode966 Source/core/dom/Node.cpp:966: bool rendererIsNeeded = toText(sibling)->textRendererIsNeeded(*parentRenderer->style(), *parentRenderer); On 2014/11/04 22:03:55, ...
6 years, 1 month ago (2014-11-05 01:30:13 UTC) #5
leviw_travelin_and_unemployed
https://codereview.chromium.org/684633006/diff/20001/Source/core/dom/Text.cpp File Source/core/dom/Text.cpp (right): https://codereview.chromium.org/684633006/diff/20001/Source/core/dom/Text.cpp#newcode277 Source/core/dom/Text.cpp:277: while (first && (first == renderer() || first->isFloatingOrOutOfFlowPositioned()) && ...
6 years, 1 month ago (2014-11-05 19:23:15 UTC) #6
Xianzhu
https://codereview.chromium.org/684633006/diff/20001/Source/core/dom/Text.cpp File Source/core/dom/Text.cpp (right): https://codereview.chromium.org/684633006/diff/20001/Source/core/dom/Text.cpp#newcode277 Source/core/dom/Text.cpp:277: while (first && (first == renderer() || first->isFloatingOrOutOfFlowPositioned()) && ...
6 years, 1 month ago (2014-11-05 20:15:33 UTC) #7
Xianzhu
ping...
6 years, 1 month ago (2014-11-12 18:58:20 UTC) #8
Xianzhu
On 2014/11/12 18:58:20, Xianzhu wrote: > ping... ping...
6 years, 1 month ago (2014-11-14 17:05:59 UTC) #9
leviw_travelin_and_unemployed
LGTM!
6 years, 1 month ago (2014-11-14 22:23:26 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/684633006/60001
6 years, 1 month ago (2014-11-14 22:24:28 UTC) #12
commit-bot: I haz the power
Try jobs failed on following builders: linux_blink_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/33734) mac_blink_compile_dbg on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/mac_blink_compile_dbg/builds/25754)
6 years, 1 month ago (2014-11-14 22:37:02 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/684633006/60001
6 years, 1 month ago (2014-11-16 01:53:48 UTC) #16
commit-bot: I haz the power
Try jobs failed on following builders: linux_blink_rel on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel/builds/33862) linux_gpu on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/linux_gpu/builds/92359)
6 years, 1 month ago (2014-11-16 02:02:59 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/684633006/80001
6 years, 1 month ago (2014-11-16 02:21:54 UTC) #20
commit-bot: I haz the power
Try jobs failed on following builders: linux_blink_dbg on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/linux_blink_dbg/builds/33186)
6 years, 1 month ago (2014-11-16 04:37:46 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/684633006/80001
6 years, 1 month ago (2014-11-17 01:00:47 UTC) #24
commit-bot: I haz the power
Try jobs failed on following builders: linux_blink_dbg on tryserver.blink (http://build.chromium.org/p/tryserver.blink/builders/linux_blink_dbg/builds/33299)
6 years, 1 month ago (2014-11-17 03:14:00 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/684633006/80001
6 years, 1 month ago (2014-11-17 04:04:59 UTC) #28
commit-bot: I haz the power
6 years, 1 month ago (2014-11-17 06:12:59 UTC) #29
Message was sent while issue was closed.
Committed patchset #5 (id:80001) as 185421

Powered by Google App Engine
This is Rietveld 408576698