| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2008, 2011 Apple Inc. All Rights Reserved. | 2 * Copyright (C) 2008, 2011 Apple 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 | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 77 static int pixelsPerLineStep(HostWindow*); | 77 static int pixelsPerLineStep(HostWindow*); |
| 78 static float minFractionToStepWhenPaging(); | 78 static float minFractionToStepWhenPaging(); |
| 79 static int maxOverlapBetweenPages(); | 79 static int maxOverlapBetweenPages(); |
| 80 | 80 |
| 81 // Convert a non-finite scroll value (Infinity, -Infinity, NaN) to 0 as | 81 // Convert a non-finite scroll value (Infinity, -Infinity, NaN) to 0 as |
| 82 // per http://dev.w3.org/csswg/cssom-view/#normalize-non_finite-values. | 82 // per http://dev.w3.org/csswg/cssom-view/#normalize-non_finite-values. |
| 83 static double normalizeNonFiniteScroll(double value) { return std::isfinite(
value) ? value : 0.0; } | 83 static double normalizeNonFiniteScroll(double value) { return std::isfinite(
value) ? value : 0.0; } |
| 84 | 84 |
| 85 // The window that hosts the ScrollableArea. The ScrollableArea will communi
cate scrolls and repaints to the | 85 // The window that hosts the ScrollableArea. The ScrollableArea will communi
cate scrolls and repaints to the |
| 86 // host window in the window's coordinate space. | 86 // host window in the window's coordinate space. |
| 87 virtual HostWindow* hostWindow() const { return 0; } | 87 virtual HostWindow* getHostWindow() const { return 0; } |
| 88 | 88 |
| 89 virtual ScrollResult userScroll(ScrollGranularity, const FloatSize&); | 89 virtual ScrollResult userScroll(ScrollGranularity, const FloatSize&); |
| 90 | 90 |
| 91 virtual void setScrollPosition(const DoublePoint&, ScrollType, ScrollBehavio
r = ScrollBehaviorInstant); | 91 virtual void setScrollPosition(const DoublePoint&, ScrollType, ScrollBehavio
r = ScrollBehaviorInstant); |
| 92 virtual void scrollBy(const DoubleSize&, ScrollType, ScrollBehavior = Scroll
BehaviorInstant); | 92 virtual void scrollBy(const DoubleSize&, ScrollType, ScrollBehavior = Scroll
BehaviorInstant); |
| 93 void setScrollPositionSingleAxis(ScrollbarOrientation, double, ScrollType, S
crollBehavior = ScrollBehaviorInstant); | 93 void setScrollPositionSingleAxis(ScrollbarOrientation, double, ScrollType, S
crollBehavior = ScrollBehaviorInstant); |
| 94 | 94 |
| 95 // Scrolls the area so that the given rect, given in the document's content
coordinates, such that it's | 95 // Scrolls the area so that the given rect, given in the document's content
coordinates, such that it's |
| 96 // visible in the area. Returns the new location of the input rect relative
once again to the document. | 96 // visible in the area. Returns the new location of the input rect relative
once again to the document. |
| 97 // Note, in the case of a Document container, such as FrameView, the output
will always be the input rect | 97 // Note, in the case of a Document container, such as FrameView, the output
will always be the input rect |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 266 // that programmatic scrolls (i.e. setScrollPosition) are disabled when in | 266 // that programmatic scrolls (i.e. setScrollPosition) are disabled when in |
| 267 // updateScrollbars. Expose this here to allow RootFrameViewport to match th
e | 267 // updateScrollbars. Expose this here to allow RootFrameViewport to match th
e |
| 268 // semantics for now but it should be cleaned up at the source. | 268 // semantics for now but it should be cleaned up at the source. |
| 269 virtual bool isProgrammaticallyScrollable() { return true; } | 269 virtual bool isProgrammaticallyScrollable() { return true; } |
| 270 | 270 |
| 271 // Subtracts space occupied by this ScrollableArea's scrollbars. | 271 // Subtracts space occupied by this ScrollableArea's scrollbars. |
| 272 // Does nothing if overlay scrollbars are enabled. | 272 // Does nothing if overlay scrollbars are enabled. |
| 273 IntSize excludeScrollbars(const IntSize&) const; | 273 IntSize excludeScrollbars(const IntSize&) const; |
| 274 | 274 |
| 275 // Returns the widget associated with this ScrollableArea. | 275 // Returns the widget associated with this ScrollableArea. |
| 276 virtual Widget* widget() { return nullptr; } | 276 virtual Widget* getWidget() { return nullptr; } |
| 277 | 277 |
| 278 virtual bool isFrameView() const { return false; } | 278 virtual bool isFrameView() const { return false; } |
| 279 virtual bool isPaintLayerScrollableArea() const { return false; } | 279 virtual bool isPaintLayerScrollableArea() const { return false; } |
| 280 | 280 |
| 281 // Need to promptly let go of owned animator objects. | 281 // Need to promptly let go of owned animator objects. |
| 282 EAGERLY_FINALIZE(); | 282 EAGERLY_FINALIZE(); |
| 283 DECLARE_VIRTUAL_TRACE(); | 283 DECLARE_VIRTUAL_TRACE(); |
| 284 | 284 |
| 285 virtual void clearScrollAnimators(); | 285 virtual void clearScrollAnimators(); |
| 286 | 286 |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 341 // vertical-lr / ltr NO NO | 341 // vertical-lr / ltr NO NO |
| 342 // vertical-lr / rtl NO YES | 342 // vertical-lr / rtl NO YES |
| 343 // vertical-rl / ltr YES NO | 343 // vertical-rl / ltr YES NO |
| 344 // vertical-rl / rtl YES YES | 344 // vertical-rl / rtl YES YES |
| 345 IntPoint m_scrollOrigin; | 345 IntPoint m_scrollOrigin; |
| 346 }; | 346 }; |
| 347 | 347 |
| 348 } // namespace blink | 348 } // namespace blink |
| 349 | 349 |
| 350 #endif // ScrollableArea_h | 350 #endif // ScrollableArea_h |
| OLD | NEW |