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

Unified Diff: Source/core/rendering/RenderLayerScrollableArea.h

Issue 134443003: Implement CSSOM Smooth Scroll API (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased Created 6 years, 10 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/rendering/RenderLayerScrollableArea.h
diff --git a/Source/core/rendering/RenderLayerScrollableArea.h b/Source/core/rendering/RenderLayerScrollableArea.h
index 02ab6afc7f5f4c948bba9f9dd7a40ce802fb94d2..70d26f1b4865218cf5be35fa25b1903f673bedc2 100644
--- a/Source/core/rendering/RenderLayerScrollableArea.h
+++ b/Source/core/rendering/RenderLayerScrollableArea.h
@@ -110,6 +110,10 @@ public:
virtual bool shouldPlaceVerticalScrollbarOnLeft() const OVERRIDE;
virtual int pageStep(ScrollbarOrientation) const OVERRIDE;
+ virtual bool registerForAnimation() OVERRIDE;
+ virtual void deregisterForAnimation() OVERRIDE;
+ virtual bool scheduleAnimation() OVERRIDE;
+
int scrollXOffset() const { return m_scrollOffset.width() + scrollOrigin().x(); }
int scrollYOffset() const { return m_scrollOffset.height() + scrollOrigin().y(); }
@@ -118,9 +122,15 @@ public:
// FIXME: We shouldn't allow access to m_overflowRect outside this class.
LayoutRect overflowRect() const { return m_overflowRect; }
- void scrollToOffset(const IntSize& scrollOffset, ScrollOffsetClamping = ScrollOffsetUnclamped);
- void scrollToXOffset(int x, ScrollOffsetClamping clamp = ScrollOffsetUnclamped) { scrollToOffset(IntSize(x, scrollYOffset()), clamp); }
- void scrollToYOffset(int y, ScrollOffsetClamping clamp = ScrollOffsetUnclamped) { scrollToOffset(IntSize(scrollXOffset(), y), clamp); }
+ void scrollToOffset(const IntSize& scrollOffset, ScrollOffsetClamping = ScrollOffsetUnclamped, ScrollBehavior = ScrollBehaviorInstant);
+ void scrollToXOffset(int x, ScrollOffsetClamping clamp = ScrollOffsetUnclamped, ScrollBehavior scrollBehavior = ScrollBehaviorInstant)
+ {
+ scrollToOffset(IntSize(x, scrollYOffset()), clamp, scrollBehavior);
+ }
+ void scrollToYOffset(int y, ScrollOffsetClamping clamp = ScrollOffsetUnclamped, ScrollBehavior scrollBehavior = ScrollBehaviorInstant)
+ {
+ scrollToOffset(IntSize(scrollXOffset(), y), clamp, scrollBehavior);
+ }
void updateAfterLayout();
void updateAfterStyleChange(const RenderStyle*);
@@ -226,6 +236,8 @@ private:
void setForceNeedsCompositedScrolling(ForceNeedsCompositedScrollingMode);
+ virtual bool compositedScrollAnimationsEnabled() const OVERRIDE;
+
RenderBox* m_box;
// Keeps track of whether the layer is currently resizing, so events can cause resizing to start and stop.

Powered by Google App Engine
This is Rietveld 408576698