OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2010, Google Inc. All rights reserved. | 2 * Copyright (c) 2010, Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 20 matching lines...) Expand all Loading... |
31 #ifndef ScrollAnimator_h | 31 #ifndef ScrollAnimator_h |
32 #define ScrollAnimator_h | 32 #define ScrollAnimator_h |
33 | 33 |
34 #include "platform/PlatformExport.h" | 34 #include "platform/PlatformExport.h" |
35 #include "platform/PlatformWheelEvent.h" | 35 #include "platform/PlatformWheelEvent.h" |
36 #include "platform/geometry/FloatSize.h" | 36 #include "platform/geometry/FloatSize.h" |
37 #include "platform/scroll/ScrollTypes.h" | 37 #include "platform/scroll/ScrollTypes.h" |
38 #include "wtf/FastAllocBase.h" | 38 #include "wtf/FastAllocBase.h" |
39 #include "wtf/Forward.h" | 39 #include "wtf/Forward.h" |
40 #include "wtf/Noncopyable.h" | 40 #include "wtf/Noncopyable.h" |
41 #include "wtf/UnusedParam.h" | |
42 | 41 |
43 namespace WebCore { | 42 namespace WebCore { |
44 | 43 |
45 class FloatPoint; | 44 class FloatPoint; |
46 class ScrollableArea; | 45 class ScrollableArea; |
47 class Scrollbar; | 46 class Scrollbar; |
48 | 47 |
49 class PLATFORM_EXPORT ScrollAnimator { | 48 class PLATFORM_EXPORT ScrollAnimator { |
50 WTF_MAKE_FAST_ALLOCATED; WTF_MAKE_NONCOPYABLE(ScrollAnimator); | 49 WTF_MAKE_FAST_ALLOCATED; WTF_MAKE_NONCOPYABLE(ScrollAnimator); |
51 public: | 50 public: |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
91 | 90 |
92 virtual void finishCurrentScrollAnimations() { } | 91 virtual void finishCurrentScrollAnimations() { } |
93 | 92 |
94 virtual void didAddVerticalScrollbar(Scrollbar*) { } | 93 virtual void didAddVerticalScrollbar(Scrollbar*) { } |
95 virtual void willRemoveVerticalScrollbar(Scrollbar*) { } | 94 virtual void willRemoveVerticalScrollbar(Scrollbar*) { } |
96 virtual void didAddHorizontalScrollbar(Scrollbar*) { } | 95 virtual void didAddHorizontalScrollbar(Scrollbar*) { } |
97 virtual void willRemoveHorizontalScrollbar(Scrollbar*) { } | 96 virtual void willRemoveHorizontalScrollbar(Scrollbar*) { } |
98 | 97 |
99 virtual bool shouldScrollbarParticipateInHitTesting(Scrollbar*) { return tru
e; } | 98 virtual bool shouldScrollbarParticipateInHitTesting(Scrollbar*) { return tru
e; } |
100 | 99 |
101 virtual void notifyContentAreaScrolled(const FloatSize& delta) { UNUSED_PARA
M(delta); } | 100 virtual void notifyContentAreaScrolled(const FloatSize&) { } |
102 | 101 |
103 virtual bool isRubberBandInProgress() const { return false; } | 102 virtual bool isRubberBandInProgress() const { return false; } |
104 | 103 |
105 protected: | 104 protected: |
106 explicit ScrollAnimator(ScrollableArea*); | 105 explicit ScrollAnimator(ScrollableArea*); |
107 | 106 |
108 virtual void notifyPositionChanged(const FloatSize& delta); | 107 virtual void notifyPositionChanged(const FloatSize& delta); |
109 | 108 |
110 ScrollableArea* m_scrollableArea; | 109 ScrollableArea* m_scrollableArea; |
111 float m_currentPosX; // We avoid using a FloatPoint in order to reduce | 110 float m_currentPosX; // We avoid using a FloatPoint in order to reduce |
112 float m_currentPosY; // subclass code complexity. | 111 float m_currentPosY; // subclass code complexity. |
113 | 112 |
114 private: | 113 private: |
115 float clampScrollPosition(ScrollbarOrientation, float); | 114 float clampScrollPosition(ScrollbarOrientation, float); |
116 }; | 115 }; |
117 | 116 |
118 } // namespace WebCore | 117 } // namespace WebCore |
119 | 118 |
120 #endif // ScrollAnimator_h | 119 #endif // ScrollAnimator_h |
OLD | NEW |