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

Unified Diff: Source/core/page/FrameView.h

Issue 23819019: Refactor fixed layout mode (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 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
« no previous file with comments | « Source/core/page/Frame.cpp ('k') | Source/core/page/FrameView.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/page/FrameView.h
diff --git a/Source/core/page/FrameView.h b/Source/core/page/FrameView.h
index bd690e3138ff73e297a79de6050cf17927c8b94c..2c2af807f5208d5f0da1a1c37f1a27c5a1e84c5b 100644
--- a/Source/core/page/FrameView.h
+++ b/Source/core/page/FrameView.h
@@ -108,6 +108,15 @@ public:
void setNeedsLayout();
void setViewportConstrainedObjectsNeedLayout();
+ // Methods for getting/setting the size Blink should use to layout the contents.
+ IntSize layoutSize(IncludeScrollbarsInRect = ExcludeScrollbars) const;
+ void setLayoutSize(const IntSize&);
+
+ // If this is set to false, the layout size will need to be explicitly set by the owner.
+ // E.g. WebViewImpl sets its mainFrame's layout size manually
+ void setLayoutSizeFixedToFrameSize(bool isFixed) { m_layoutSizeFixedToFrameSize = isFixed; }
+ bool layoutSizeFixedToFrameSize() { return m_layoutSizeFixedToFrameSize; }
+
bool needsFullRepaint() const { return m_doFullRepaint; }
void serviceScriptedAnimations(double monotonicAnimationStartTime);
@@ -354,6 +363,7 @@ private:
void reset();
void init();
+ virtual void frameRectsChanged();
virtual bool isFrameView() const OVERRIDE { return true; }
friend class RenderWidget;
@@ -379,7 +389,7 @@ private:
virtual void repaintContentRectangle(const IntRect&);
virtual void contentsResized() OVERRIDE;
- virtual void visibleContentsResized();
+ virtual void scrollbarExistenceDidChange();
// Override ScrollView methods to do point conversion via renderers, in order to
// take transforms into account.
@@ -432,6 +442,8 @@ private:
bool isMainFrame() const;
+ void setLayoutSizeInternal(const IntSize&);
+
static double s_currentFrameTimeStamp; // used for detecting decoded resource thrash in the cache
static bool s_inPaintContents;
@@ -541,6 +553,8 @@ private:
float m_visibleContentScaleFactor;
PartialLayoutState m_partialLayout;
+ IntSize m_layoutSize;
+ bool m_layoutSizeFixedToFrameSize;
};
inline void FrameView::incrementVisuallyNonEmptyCharacterCount(unsigned count)
« no previous file with comments | « Source/core/page/Frame.cpp ('k') | Source/core/page/FrameView.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698