OLD | NEW |
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 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
233 | 233 |
234 Scrollbar* horizontalScrollbar() const override { | 234 Scrollbar* horizontalScrollbar() const override { |
235 return m_scrollbarManager.horizontalScrollbar(); | 235 return m_scrollbarManager.horizontalScrollbar(); |
236 } | 236 } |
237 Scrollbar* verticalScrollbar() const override { | 237 Scrollbar* verticalScrollbar() const override { |
238 return m_scrollbarManager.verticalScrollbar(); | 238 return m_scrollbarManager.verticalScrollbar(); |
239 } | 239 } |
240 | 240 |
241 HostWindow* getHostWindow() const override; | 241 HostWindow* getHostWindow() const override; |
242 | 242 |
| 243 ProgrammaticScrollCoordinator* getProgrammaticScrollCoordinator() |
| 244 const override; |
| 245 |
243 // For composited scrolling, we allocate an extra GraphicsLayer to hold | 246 // For composited scrolling, we allocate an extra GraphicsLayer to hold |
244 // onto the scrolling content. The layer can be shifted on the GPU and | 247 // onto the scrolling content. The layer can be shifted on the GPU and |
245 // composited at little cost. | 248 // composited at little cost. |
246 // Note that this is done in CompositedLayerMapping, this function being | 249 // Note that this is done in CompositedLayerMapping, this function being |
247 // only a helper. | 250 // only a helper. |
248 GraphicsLayer* layerForScrolling() const override; | 251 GraphicsLayer* layerForScrolling() const override; |
249 | 252 |
250 // GraphicsLayers for the scrolling components. | 253 // GraphicsLayers for the scrolling components. |
251 // | 254 // |
252 // Any function can return nullptr if they are not accelerated. | 255 // Any function can return nullptr if they are not accelerated. |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
372 bool hitTestOverflowControls(HitTestResult&, const IntPoint& localPoint); | 375 bool hitTestOverflowControls(HitTestResult&, const IntPoint& localPoint); |
373 | 376 |
374 bool hitTestResizerInFragments(const PaintLayerFragments&, | 377 bool hitTestResizerInFragments(const PaintLayerFragments&, |
375 const HitTestLocation&) const; | 378 const HitTestLocation&) const; |
376 | 379 |
377 // Returns the new offset, after scrolling, of the given rect in absolute | 380 // Returns the new offset, after scrolling, of the given rect in absolute |
378 // coordinates, clipped by the parent's client rect. | 381 // coordinates, clipped by the parent's client rect. |
379 LayoutRect scrollIntoView(const LayoutRect&, | 382 LayoutRect scrollIntoView(const LayoutRect&, |
380 const ScrollAlignment& alignX, | 383 const ScrollAlignment& alignX, |
381 const ScrollAlignment& alignY, | 384 const ScrollAlignment& alignY, |
382 ScrollType = ProgrammaticScroll) override; | 385 ScrollType = ProgrammaticScroll, |
| 386 ScrollBehavior = ScrollBehaviorAuto) override; |
383 | 387 |
384 // Returns true if scrollable area is in the FrameView's collection of | 388 // Returns true if scrollable area is in the FrameView's collection of |
385 // scrollable areas. This can only happen if we're scrollable, visible to hit | 389 // scrollable areas. This can only happen if we're scrollable, visible to hit |
386 // test, and do in fact overflow. This means that 'overflow: hidden' or | 390 // test, and do in fact overflow. This means that 'overflow: hidden' or |
387 // 'pointer-events: none' layers never get added to the FrameView's | 391 // 'pointer-events: none' layers never get added to the FrameView's |
388 // collection. | 392 // collection. |
389 bool scrollsOverflow() const { return m_scrollsOverflow; } | 393 bool scrollsOverflow() const { return m_scrollsOverflow; } |
390 | 394 |
391 // Rectangle encompassing the scroll corner and resizer rect. | 395 // Rectangle encompassing the scroll corner and resizer rect. |
392 IntRect scrollCornerAndResizerRect() const final; | 396 IntRect scrollCornerAndResizerRect() const final; |
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
601 | 605 |
602 DEFINE_TYPE_CASTS(PaintLayerScrollableArea, | 606 DEFINE_TYPE_CASTS(PaintLayerScrollableArea, |
603 ScrollableArea, | 607 ScrollableArea, |
604 scrollableArea, | 608 scrollableArea, |
605 scrollableArea->isPaintLayerScrollableArea(), | 609 scrollableArea->isPaintLayerScrollableArea(), |
606 scrollableArea.isPaintLayerScrollableArea()); | 610 scrollableArea.isPaintLayerScrollableArea()); |
607 | 611 |
608 } // namespace blink | 612 } // namespace blink |
609 | 613 |
610 #endif // LayerScrollableArea_h | 614 #endif // LayerScrollableArea_h |
OLD | NEW |