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

Issue 2727233005: Remove calls to styleForLayoutObject() in LayoutTreeBuilder::style() (Closed)

Created:
3 years, 9 months ago by nainar
Modified:
3 years, 5 months ago
CC:
blink-reviews, blink-reviews-dom_chromium.org, chromium-reviews, dglazkov+blink, eae+blinkwatch, rwlbuis, sof
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Remove calls to styleForLayoutObject() in LayoutTreeBuilder::style() This patch stashes all StyleReattachData information about all descendants when an element will need to undergo Reattach. It does so by recursing over all ContainerNode, ShadowRoot and PseudoElement descendants in the case where the node itself needs to Reattach. We then use the ComputedStyle stashed on the HashMap in LayoutTreeBuilder::style() eliminating the need to call Element::styleForLayoutObject() in Layout Tree Construction. BUG=695267, 595137

Patch Set 1 #

Total comments: 2

Patch Set 2 : Make sure Node::mutableComputedStyle() checks the HashMap for ComputedStyle information if it is av… #

Patch Set 3 : Add comments with questions to explore. #

Patch Set 4 : Format issue #

Total comments: 2

Patch Set 5 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+79 lines, -27 lines) Patch
M third_party/WebKit/Source/core/css/resolver/SharedStyleFinder.cpp View 1 2 3 4 4 chunks +6 lines, -14 lines 0 comments Download
M third_party/WebKit/Source/core/dom/ContainerNode.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/core/dom/ContainerNode.cpp View 1 2 3 1 chunk +7 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/dom/Element.h View 1 2 3 4 3 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/dom/Element.cpp View 1 2 3 4 4 chunks +38 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/dom/LayoutTreeBuilder.cpp View 1 2 3 4 1 chunk +4 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/dom/NodeComputedStyle.h View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/editing/EditingUtilities.cpp View 1 2 3 1 chunk +12 lines, -12 lines 0 comments Download
M third_party/WebKit/Source/core/html/HTMLObjectElement.h View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 18 (15 generated)
nainar
Elliott, No action required on this. More of an FYI on the progress. https://codereview.chromium.org/2727233005/diff/1/third_party/WebKit/Source/core/dom/Element.cpp File ...
3 years, 9 months ago (2017-03-03 06:08:52 UTC) #2
nainar
Just uploading code from yesterday. Four failing fast tests: fast/css-generated-content/016.html Minimized test case: <style> a:after ...
3 years, 9 months ago (2017-03-09 02:53:04 UTC) #10
alancutter (OOO until 2018)
3 years, 5 months ago (2017-06-30 06:37:17 UTC) #18
Message was sent while issue was closed.
If this patch lands we can land a fix to a very old transition bug:
https://chromium-review.googlesource.com/c/557586/

Powered by Google App Engine
This is Rietveld 408576698