| Index: third_party/WebKit/Source/platform/scroll/ScrollableArea.h
|
| diff --git a/third_party/WebKit/Source/platform/scroll/ScrollableArea.h b/third_party/WebKit/Source/platform/scroll/ScrollableArea.h
|
| index f92a1452535f92f51bd36b7a627cfe147a10025c..86ed95c3ff42b1e986406bb9d969e6429878bd88 100644
|
| --- a/third_party/WebKit/Source/platform/scroll/ScrollableArea.h
|
| +++ b/third_party/WebKit/Source/platform/scroll/ScrollableArea.h
|
| @@ -107,8 +107,10 @@ class PLATFORM_EXPORT ScrollableArea : public GarbageCollectedMixin {
|
| void mouseEnteredContentArea() const;
|
| void mouseExitedContentArea() const;
|
| void mouseMovedInContentArea() const;
|
| - void mouseEnteredScrollbar(Scrollbar&) const;
|
| - void mouseExitedScrollbar(Scrollbar&) const;
|
| + void mouseEnteredScrollbar(Scrollbar&);
|
| + void mouseExitedScrollbar(Scrollbar&);
|
| + void mouseCapturedScrollbar();
|
| + void mouseReleasedScrollbar();
|
| void contentAreaDidShow() const;
|
| void contentAreaDidHide() const;
|
|
|
| @@ -227,7 +229,6 @@ class PLATFORM_EXPORT ScrollableArea : public GarbageCollectedMixin {
|
|
|
| virtual bool shouldSuspendScrollAnimations() const { return true; }
|
| virtual void scrollbarStyleChanged() {}
|
| - virtual void scrollbarVisibilityChanged() {}
|
| virtual bool scrollbarsCanBeActive() const = 0;
|
|
|
| // Returns the bounding box of this scrollable area, in the coordinate system
|
| @@ -256,7 +257,6 @@ class PLATFORM_EXPORT ScrollableArea : public GarbageCollectedMixin {
|
| // Overlay scrollbars can "fade-out" when inactive.
|
| virtual bool scrollbarsHidden() const;
|
| virtual void setScrollbarsHidden(bool);
|
| - virtual void didChangeScrollbarsHidden(){};
|
|
|
| // Returns true if the GraphicsLayer tree needs to be rebuilt.
|
| virtual bool updateAfterCompositingChange() { return false; }
|
| @@ -347,7 +347,7 @@ class PLATFORM_EXPORT ScrollableArea : public GarbageCollectedMixin {
|
| EAGERLY_FINALIZE();
|
| DECLARE_VIRTUAL_TRACE();
|
|
|
| - virtual void clearScrollAnimators();
|
| + virtual void clearScrollableArea();
|
|
|
| virtual ScrollAnchor* scrollAnchor() { return nullptr; }
|
|
|
| @@ -379,11 +379,15 @@ class PLATFORM_EXPORT ScrollableArea : public GarbageCollectedMixin {
|
| m_verticalScrollbarNeedsPaintInvalidation = false;
|
| m_scrollCornerNeedsPaintInvalidation = false;
|
| }
|
| + void showOverlayScrollbars();
|
| + virtual void scrollbarVisibilityChanged() {}
|
|
|
| private:
|
| void programmaticScrollHelper(const ScrollOffset&, ScrollBehavior);
|
| void userScrollHelper(const ScrollOffset&, ScrollBehavior);
|
|
|
| + void fadeOverlayScrollbarsTimerFired(TimerBase*);
|
| +
|
| // This function should be overriden by subclasses to perform the actual
|
| // scroll of the content.
|
| virtual void updateScrollOffset(const ScrollOffset&, ScrollType) = 0;
|
| @@ -396,6 +400,8 @@ class PLATFORM_EXPORT ScrollableArea : public GarbageCollectedMixin {
|
| mutable Member<ScrollAnimatorBase> m_scrollAnimator;
|
| mutable Member<ProgrammaticScrollAnimator> m_programmaticScrollAnimator;
|
|
|
| + std::unique_ptr<Timer<ScrollableArea>> m_fadeOverlayScrollbarsTimer;
|
| +
|
| unsigned m_scrollbarOverlayColorTheme : 2;
|
|
|
| unsigned m_scrollOriginChanged : 1;
|
| @@ -404,6 +410,7 @@ class PLATFORM_EXPORT ScrollableArea : public GarbageCollectedMixin {
|
| unsigned m_verticalScrollbarNeedsPaintInvalidation : 1;
|
| unsigned m_scrollCornerNeedsPaintInvalidation : 1;
|
| unsigned m_scrollbarsHidden : 1;
|
| + unsigned m_scrollbarCaptured : 1;
|
|
|
| // There are 6 possible combinations of writing mode and direction. Scroll
|
| // origin will be non-zero in the x or y axis if there is any reversed
|
|
|