diff options
Diffstat (limited to 'src/3rdparty/webkit/WebCore/platform/ScrollView.h')
-rw-r--r-- | src/3rdparty/webkit/WebCore/platform/ScrollView.h | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/3rdparty/webkit/WebCore/platform/ScrollView.h b/src/3rdparty/webkit/WebCore/platform/ScrollView.h index 7060d07027..c356a60ef7 100644 --- a/src/3rdparty/webkit/WebCore/platform/ScrollView.h +++ b/src/3rdparty/webkit/WebCore/platform/ScrollView.h @@ -89,9 +89,16 @@ public: void scrollbarModes(ScrollbarMode& horizontalMode, ScrollbarMode& verticalMode) const; ScrollbarMode horizontalScrollbarMode() const { ScrollbarMode horizontal, vertical; scrollbarModes(horizontal, vertical); return horizontal; } ScrollbarMode verticalScrollbarMode() const { ScrollbarMode horizontal, vertical; scrollbarModes(horizontal, vertical); return vertical; } - void setCanHaveScrollbars(bool flag); + virtual void setCanHaveScrollbars(bool); bool canHaveScrollbars() const { return horizontalScrollbarMode() != ScrollbarAlwaysOff || verticalScrollbarMode() != ScrollbarAlwaysOff; } + virtual bool avoidScrollbarCreation() { return false; } + + // By default you only receive paint events for the area that is visible. In the case of using a + // tiled backing store, this method can be set, so that the view paints the entire contents. + bool paintsEntireContents() const { return m_paintsEntireContents; } + void setPaintsEntireContents(bool); + // Overridden by FrameView to create custom CSS scrollbars if applicable. virtual PassRefPtr<Scrollbar> createScrollbar(ScrollbarOrientation); @@ -246,7 +253,7 @@ protected: virtual void paintScrollCorner(GraphicsContext*, const IntRect& cornerRect); // Scroll the content by blitting the pixels - virtual void scrollContentsFastPath(const IntSize& scrollDelta, const IntRect& rectToScroll, const IntRect& clipRect); + virtual bool scrollContentsFastPath(const IntSize& scrollDelta, const IntRect& rectToScroll, const IntRect& clipRect); private: RefPtr<Scrollbar> m_horizontalScrollbar; @@ -275,6 +282,8 @@ private: bool m_drawPanScrollIcon; bool m_useFixedLayout; + bool m_paintsEntireContents; + void init(); void destroy(); @@ -310,7 +319,7 @@ private: #if PLATFORM(GTK) public: - void setGtkAdjustments(GtkAdjustment* hadj, GtkAdjustment* vadj); + void setGtkAdjustments(GtkAdjustment* hadj, GtkAdjustment* vadj, bool resetValues = true); GtkAdjustment* m_horizontalAdjustment; GtkAdjustment* m_verticalAdjustment; void setScrollOffset(const IntSize& offset) { m_scrollOffset = offset; } |