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

Unified Diff: third_party/WebKit/Source/core/dom/Element.cpp

Issue 2647533002: Force compositing inputs to be clean for getBoundingClientRect (Closed)
Patch Set: For discussion; only do compositing update when in sticky subtree Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/layout/LayoutBoxModelObject.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/core/dom/Element.cpp
diff --git a/third_party/WebKit/Source/core/dom/Element.cpp b/third_party/WebKit/Source/core/dom/Element.cpp
index d5ea539ee3527b4a3f90bb8e3b32abb76b499bdf..a093e84882d2c80981feef70e1220ae5bc237789 100644
--- a/third_party/WebKit/Source/core/dom/Element.cpp
+++ b/third_party/WebKit/Source/core/dom/Element.cpp
@@ -1125,6 +1125,13 @@ void Element::clientQuads(Vector<FloatQuad>& quads) {
if (!elementLayoutObject)
return;
+ FrameView* view = document().view();
+ if (UNLIKELY(view && elementLayoutObject->enclosingBoxModelObject() &&
+ elementLayoutObject->enclosingBoxModelObject()
+ ->isInStickySubtree())) {
+ view->updateLifecycleToCompositingCleanPlusScrolling();
chrishtr 2017/01/19 21:29:19 Hmm. I think this will be incorrect if layout/styl
smcgruer 2017/01/20 01:40:41 I think those are all fair points. I'm happy to re
flackr 2017/01/20 02:19:41 We could certainly measure how often we actually d
smcgruer 2017/01/20 02:32:29 Ack, uploaded new PS that takes the code back to P
+ }
+
if (isSVGElement() && !elementLayoutObject->isSVGRoot()) {
// Get the bounding rectangle from the SVG model.
if (toSVGElement(this)->isSVGGraphicsElement())
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/layout/LayoutBoxModelObject.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698