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

Unified Diff: Source/core/frame/FrameView.cpp

Issue 683373002: Invalidate the frame view when changing the background image of the document or body. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Cleanup. Created 6 years, 2 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
Index: Source/core/frame/FrameView.cpp
diff --git a/Source/core/frame/FrameView.cpp b/Source/core/frame/FrameView.cpp
index d5bf83aa8aecf7602cb2c174a742c86203a68ac7..3ad0947e71f1b4ef984773e8cffca0bfab8784a9 100644
--- a/Source/core/frame/FrameView.cpp
+++ b/Source/core/frame/FrameView.cpp
@@ -991,8 +991,6 @@ void FrameView::layout(bool allowSubtree)
layer->updateLayerPositionsAfterLayout();
- if (m_doFullPaintInvalidation)
- renderView()->compositor()->fullyInvalidatePaint();
renderView()->compositor()->didLayout();
m_layoutCount++;
@@ -1048,6 +1046,9 @@ void FrameView::invalidateTreeIfNeeded()
PaintInvalidationState rootPaintInvalidationState(rootForPaintInvalidation);
+ if (m_doFullPaintInvalidation)
+ renderView()->compositor()->fullyInvalidatePaint();
+
rootForPaintInvalidation.invalidateTreeIfNeeded(rootPaintInvalidationState);
// Invalidate the paint of the frameviews scrollbars if needed
@@ -1058,6 +1059,7 @@ void FrameView::invalidateTreeIfNeeded()
resetScrollbarDamage();
m_doFullPaintInvalidation = false;
+
#ifndef NDEBUG
renderView()->assertSubtreeClearedPaintInvalidationState();
#endif
@@ -1714,8 +1716,11 @@ void FrameView::scrollbarExistenceDidChange()
// http://crbug.com/269692
bool useOverlayScrollbars = ScrollbarTheme::theme()->usesOverlayScrollbars();
+ // FIXME: this call to layout() could be called within FrameView::layout(), but before performLayout(),
+ // causing double-layout.
dsinclair 2014/10/31 00:14:34 Can you file a bug to track this?
chrishtr 2014/10/31 18:22:24 Done.
if (!useOverlayScrollbars && needsLayout())
layout();
+ }
dsinclair 2014/10/31 00:14:34 Don't think this should be here.
chrishtr 2014/10/31 18:22:24 Done.
if (renderView() && renderView()->usesCompositing()) {
renderView()->compositor()->frameViewScrollbarsExistenceDidChange();

Powered by Google App Engine
This is Rietveld 408576698