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

Side by Side Diff: Source/core/rendering/RenderLayerScrollableArea.h

Issue 792513004: Implement CSSOM smooth scroll for Elements (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2003, 2009, 2012 Apple Inc. All rights reserved.
3 * 3 *
4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. 4 * Portions are Copyright (C) 1998 Netscape Communications Corporation.
5 * 5 *
6 * Other contributors: 6 * Other contributors:
7 * Robert O'Callahan <roc+@cs.cmu.edu> 7 * Robert O'Callahan <roc+@cs.cmu.edu>
8 * David Baron <dbaron@fas.harvard.edu> 8 * David Baron <dbaron@fas.harvard.edu>
9 * Christian Biesinger <cbiesinger@web.de> 9 * Christian Biesinger <cbiesinger@web.de>
10 * Randall Jesup <rjesup@wgate.com> 10 * Randall Jesup <rjesup@wgate.com>
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 virtual IntPoint maximumScrollPosition() const override; 102 virtual IntPoint maximumScrollPosition() const override;
103 virtual IntRect visibleContentRect(IncludeScrollbarsInRect) const override; 103 virtual IntRect visibleContentRect(IncludeScrollbarsInRect) const override;
104 virtual int visibleHeight() const override; 104 virtual int visibleHeight() const override;
105 virtual int visibleWidth() const override; 105 virtual int visibleWidth() const override;
106 virtual IntSize contentsSize() const override; 106 virtual IntSize contentsSize() const override;
107 virtual IntSize overhangAmount() const override; 107 virtual IntSize overhangAmount() const override;
108 virtual IntPoint lastKnownMousePosition() const override; 108 virtual IntPoint lastKnownMousePosition() const override;
109 virtual bool shouldSuspendScrollAnimations() const override; 109 virtual bool shouldSuspendScrollAnimations() const override;
110 virtual bool scrollbarsCanBeActive() const override; 110 virtual bool scrollbarsCanBeActive() const override;
111 virtual IntRect scrollableAreaBoundingBox() const override; 111 virtual IntRect scrollableAreaBoundingBox() const override;
112 virtual void registerForAnimation() override;
113 virtual void deregisterForAnimation() override;
112 virtual bool userInputScrollable(ScrollbarOrientation) const override; 114 virtual bool userInputScrollable(ScrollbarOrientation) const override;
113 virtual bool shouldPlaceVerticalScrollbarOnLeft() const override; 115 virtual bool shouldPlaceVerticalScrollbarOnLeft() const override;
114 virtual int pageStep(ScrollbarOrientation) const override; 116 virtual int pageStep(ScrollbarOrientation) const override;
115 117
116 double scrollXOffset() const { return m_scrollOffset.width() + scrollOrigin( ).x(); } 118 double scrollXOffset() const { return m_scrollOffset.width() + scrollOrigin( ).x(); }
117 double scrollYOffset() const { return m_scrollOffset.height() + scrollOrigin ().y(); } 119 double scrollYOffset() const { return m_scrollOffset.height() + scrollOrigin ().y(); }
118 120
119 DoubleSize scrollOffset() const { return m_scrollOffset; } 121 DoubleSize scrollOffset() const { return m_scrollOffset; }
120 122
121 // FIXME: We shouldn't allow access to m_overflowRect outside this class. 123 // FIXME: We shouldn't allow access to m_overflowRect outside this class.
122 LayoutRect overflowRect() const { return m_overflowRect; } 124 LayoutRect overflowRect() const { return m_overflowRect; }
123 125
124 void scrollToOffset(const DoubleSize& scrollOffset, ScrollOffsetClamping = S crollOffsetUnclamped); 126 void scrollToOffset(const DoubleSize& scrollOffset, ScrollOffsetClamping = S crollOffsetUnclamped, ScrollBehavior = ScrollBehaviorInstant);
125 void scrollToXOffset(double x, ScrollOffsetClamping clamp = ScrollOffsetUncl amped) { scrollToOffset(DoubleSize(x, scrollYOffset()), clamp); } 127
126 void scrollToYOffset(double y, ScrollOffsetClamping clamp = ScrollOffsetUncl amped) { scrollToOffset(DoubleSize(scrollXOffset(), y), clamp); } 128 void scrollToXOffset(double x, ScrollOffsetClamping clamp = ScrollOffsetUncl amped, ScrollBehavior scrollBehavior = ScrollBehaviorInstant)
129 {
130 scrollToOffset(DoubleSize(x, scrollYOffset()), clamp, scrollBehavior);
131 }
132
133 void scrollToYOffset(double y, ScrollOffsetClamping clamp = ScrollOffsetUncl amped, ScrollBehavior scrollBehavior = ScrollBehaviorInstant)
134 {
135 scrollToOffset(DoubleSize(scrollXOffset(), y), clamp, scrollBehavior);
136 }
127 137
128 void updateAfterLayout(); 138 void updateAfterLayout();
129 void updateAfterStyleChange(const RenderStyle*); 139 void updateAfterStyleChange(const RenderStyle*);
130 void updateAfterOverflowRecalc(); 140 void updateAfterOverflowRecalc();
131 141
132 virtual bool updateAfterCompositingChange() override; 142 virtual bool updateAfterCompositingChange() override;
133 143
134 bool hasScrollbar() const { return m_hBar || m_vBar; } 144 bool hasScrollbar() const { return m_hBar || m_vBar; }
135 145
136 RenderScrollbarPart* scrollCorner() const { return m_scrollCorner; } 146 RenderScrollbarPart* scrollCorner() const { return m_scrollCorner; }
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
259 // Renderers to hold our custom scroll corner. 269 // Renderers to hold our custom scroll corner.
260 RawPtrWillBePersistent<RenderScrollbarPart> m_scrollCorner; 270 RawPtrWillBePersistent<RenderScrollbarPart> m_scrollCorner;
261 271
262 // Renderers to hold our custom resizer. 272 // Renderers to hold our custom resizer.
263 RawPtrWillBePersistent<RenderScrollbarPart> m_resizer; 273 RawPtrWillBePersistent<RenderScrollbarPart> m_resizer;
264 }; 274 };
265 275
266 } // namespace blink 276 } // namespace blink
267 277
268 #endif // RenderLayerScrollableArea_h 278 #endif // RenderLayerScrollableArea_h
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderBox.cpp ('k') | Source/core/rendering/RenderLayerScrollableArea.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698