⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 246488 in webkit


Ignore:
Timestamp:
Jun 16, 2019, 5:33:32 PM (7 years ago)
Author:
Simon Fraser
Message:

Implement ScrollableArea::scrollOffset()
https://bugs.webkit.org/show_bug.cgi?id=198895

Reviewed by Antti Koivisto.

Source/WebCore:

Remove from ScrollableArea the following:

virtual int scrollSize(ScrollbarOrientation) const = 0;
virtual int scrollOffset(ScrollbarOrientation) const = 0;

and instead implement ScrollOffset scrollOffset() const.

Also make scrollPosition() pure virtual, avoiding the reverse dependency where
this base class implementation got values from scrollbars.

scrollSize(ScrollbarOrientation) was only used by ScrollAnimatorIOS and we can
do the same computation via min/max scroll positions.

RenderListBox and PopupMenuWin need implementations of scrollPosition().

Remove some PLATFORM(IOS_FAMILY) #ifdefs from ScrollableArea for code that compiles
on all platforms.

  • page/FrameView.h:
  • platform/ScrollView.cpp:

(WebCore::ScrollView::overhangAmount const):
(WebCore::ScrollView::scrollSize const): Deleted.
(WebCore::ScrollView::scrollOffset const): Deleted.

  • platform/ScrollView.h:
  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::isPinnedVerticallyInDirection const):
(WebCore::ScrollableArea::scrollOffset const):
(WebCore::ScrollableArea::scrollPosition const): Deleted.

  • platform/ScrollableArea.h:

(WebCore::offsetForOrientation):
(WebCore::ScrollableArea::isHorizontalScrollerPinnedToMinimumPosition const):
(WebCore::ScrollableArea::isHorizontalScrollerPinnedToMaximumPosition const):
(WebCore::ScrollableArea::isVerticalScrollerPinnedToMinimumPosition const):
(WebCore::ScrollableArea::isVerticalScrollerPinnedToMaximumPosition const):
(WebCore::ScrollableArea::tiledBacking const): Deleted.

  • platform/Scrollbar.cpp:

(WebCore::Scrollbar::Scrollbar):
(WebCore::Scrollbar::offsetDidChange):

  • platform/ios/ScrollAnimatorIOS.mm:

(WebCore::ScrollAnimatorIOS::handleTouchEvent):

  • platform/win/PopupMenuWin.cpp:

(WebCore::PopupMenuWin::scrollPosition const):
(WebCore::PopupMenuWin::wndProc):
(WebCore::PopupMenuWin::scrollSize const): Deleted.
(WebCore::PopupMenuWin::scrollOffset const): Deleted.

  • platform/win/PopupMenuWin.h:

(WebCore::PopupMenuWin::scrollOffset const): Deleted.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollSize const): Deleted.
(WebCore::RenderLayer::scrollOffset const): Deleted.

  • rendering/RenderLayer.h:
  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::scrollPosition const):
(WebCore::RenderListBox::scrollSize const): Deleted.
(WebCore::RenderListBox::scrollOffset const): Deleted.

  • rendering/RenderListBox.h:

Source/WebKit:

  • UIProcess/win/WebPopupMenuProxyWin.cpp:

(WebKit::PopupMenuWin::scrollPosition const):
(WebKit::WebPopupMenuProxyWin::onKeyDown): Just use m_scrollOffset.
(WebKit::WebPopupMenuProxyWin::scrollSize const): Deleted.

  • UIProcess/win/WebPopupMenuProxyWin.h: Remove the one-axis scrollOffset()
  • WebProcess/Plugins/PDF/PDFPlugin.h:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::scrollSize const): Deleted.
(WebKit::PDFPlugin::scrollOffset const): Deleted.

  • WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):

Location:
trunk/Source
Files:
20 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r246486 r246488  
     12019-06-16  Simon Fraser  <simon.fraser@apple.com>
     2
     3        Implement ScrollableArea::scrollOffset()
     4        https://bugs.webkit.org/show_bug.cgi?id=198895
     5
     6        Reviewed by Antti Koivisto.
     7
     8        Remove from ScrollableArea the following:
     9            virtual int scrollSize(ScrollbarOrientation) const = 0;
     10            virtual int scrollOffset(ScrollbarOrientation) const = 0;
     11        and instead implement ScrollOffset scrollOffset() const.
     12
     13        Also make scrollPosition() pure virtual, avoiding the reverse dependency where
     14        this base class implementation got values from scrollbars.
     15       
     16        scrollSize(ScrollbarOrientation) was only used by ScrollAnimatorIOS and we can
     17        do the same computation via min/max scroll positions.
     18       
     19        RenderListBox and PopupMenuWin need implementations of scrollPosition().
     20       
     21        Remove some PLATFORM(IOS_FAMILY) #ifdefs from ScrollableArea for code that compiles
     22        on all platforms.
     23
     24        * page/FrameView.h:
     25        * platform/ScrollView.cpp:
     26        (WebCore::ScrollView::overhangAmount const):
     27        (WebCore::ScrollView::scrollSize const): Deleted.
     28        (WebCore::ScrollView::scrollOffset const): Deleted.
     29        * platform/ScrollView.h:
     30        * platform/ScrollableArea.cpp:
     31        (WebCore::ScrollableArea::isPinnedVerticallyInDirection const):
     32        (WebCore::ScrollableArea::scrollOffset const):
     33        (WebCore::ScrollableArea::scrollPosition const): Deleted.
     34        * platform/ScrollableArea.h:
     35        (WebCore::offsetForOrientation):
     36        (WebCore::ScrollableArea::isHorizontalScrollerPinnedToMinimumPosition const):
     37        (WebCore::ScrollableArea::isHorizontalScrollerPinnedToMaximumPosition const):
     38        (WebCore::ScrollableArea::isVerticalScrollerPinnedToMinimumPosition const):
     39        (WebCore::ScrollableArea::isVerticalScrollerPinnedToMaximumPosition const):
     40        (WebCore::ScrollableArea::tiledBacking const): Deleted.
     41        * platform/Scrollbar.cpp:
     42        (WebCore::Scrollbar::Scrollbar):
     43        (WebCore::Scrollbar::offsetDidChange):
     44        * platform/ios/ScrollAnimatorIOS.mm:
     45        (WebCore::ScrollAnimatorIOS::handleTouchEvent):
     46        * platform/win/PopupMenuWin.cpp:
     47        (WebCore::PopupMenuWin::scrollPosition const):
     48        (WebCore::PopupMenuWin::wndProc):
     49        (WebCore::PopupMenuWin::scrollSize const): Deleted.
     50        (WebCore::PopupMenuWin::scrollOffset const): Deleted.
     51        * platform/win/PopupMenuWin.h:
     52        (WebCore::PopupMenuWin::scrollOffset const): Deleted.
     53        * rendering/RenderLayer.cpp:
     54        (WebCore::RenderLayer::scrollSize const): Deleted.
     55        (WebCore::RenderLayer::scrollOffset const): Deleted.
     56        * rendering/RenderLayer.h:
     57        * rendering/RenderListBox.cpp:
     58        (WebCore::RenderListBox::scrollPosition const):
     59        (WebCore::RenderListBox::scrollSize const): Deleted.
     60        (WebCore::RenderListBox::scrollOffset const): Deleted.
     61        * rendering/RenderListBox.h:
     62
    1632019-06-16  Zalan Bujtas  <zalan@apple.com>
    264
  • trunk/Source/WebCore/page/FrameView.h

    r245787 r246488  
    154154    WEBCORE_EXPORT void scheduleLayerFlushAllowingThrottling();
    155155
    156     WEBCORE_EXPORT TiledBacking* tiledBacking() const final;
     156    WEBCORE_EXPORT TiledBacking* tiledBacking() const;
    157157
    158158    ScrollingNodeID scrollingNodeID() const override;
  • trunk/Source/WebCore/platform/ScrollView.cpp

    r245320 r246488  
    379379}
    380380
    381 int ScrollView::scrollSize(ScrollbarOrientation orientation) const
    382 {
    383     // If no scrollbars are present, it does not indicate content is not be scrollable.
    384     if (!m_horizontalScrollbar && !m_verticalScrollbar && !prohibitsScrolling()) {
    385         IntSize scrollSize = m_contentsSize - visibleContentRect(LegacyIOSDocumentVisibleRect).size();
    386         scrollSize.clampNegativeToZero();
    387         return orientation == HorizontalScrollbar ? scrollSize.width() : scrollSize.height();
    388     }
    389 
    390     Scrollbar* scrollbar = ((orientation == HorizontalScrollbar) ? m_horizontalScrollbar : m_verticalScrollbar).get();
    391     return scrollbar ? (scrollbar->totalSize() - scrollbar->visibleSize()) : 0;
    392 }
    393 
    394381void ScrollView::notifyPageThatContentAreaWillPaint() const
    395382{
     
    475462}
    476463
    477 int ScrollView::scrollOffset(ScrollbarOrientation orientation) const
    478 {
    479     ScrollOffset offset = scrollOffsetFromPosition(scrollPosition());
    480 
    481     if (orientation == HorizontalScrollbar)
    482         return offset.x();
    483 
    484     if (orientation == VerticalScrollbar)
    485         return offset.y();
    486 
    487     return 0;
    488 }
    489 
    490464void ScrollView::setScrollPosition(const ScrollPosition& scrollPosition)
    491465{
     
    529503
    530504    // FIXME: use maximumScrollOffset()
    531     ScrollOffset scrollOffset = scrollOffsetFromPosition(scrollPosition());
     505    ScrollOffset scrollOffset = this->scrollOffset();
    532506    if (scrollOffset.y() < 0)
    533507        stretch.setHeight(scrollOffset.y());
  • trunk/Source/WebCore/platform/ScrollView.h

    r245987 r246488  
    7070
    7171    // ScrollableArea functions.
    72     int scrollSize(ScrollbarOrientation) const final;
    73     int scrollOffset(ScrollbarOrientation) const final;
    7472    WEBCORE_EXPORT void setScrollOffset(const ScrollOffset&) final;
    7573    bool isScrollCornerVisible() const final;
  • trunk/Source/WebCore/platform/ScrollableArea.cpp

    r243919 r246488  
    573573}
    574574
    575 #if PLATFORM(IOS_FAMILY)
    576575bool ScrollableArea::isPinnedInBothDirections(const IntSize& scrollDelta) const
    577576{
     
    596595    return false;
    597596}
    598 #endif // PLATFORM(IOS_FAMILY)
    599597
    600598int ScrollableArea::horizontalScrollbarIntrusion() const
     
    613611}
    614612
    615 ScrollPosition ScrollableArea::scrollPosition() const
    616 {
    617     // FIXME: This relationship seems to be inverted. Scrollbars should be 'view', not 'model', and should get their values from us.
    618     int x = horizontalScrollbar() ? horizontalScrollbar()->value() : 0;
    619     int y = verticalScrollbar() ? verticalScrollbar()->value() : 0;
    620     return IntPoint(x, y);
     613ScrollOffset ScrollableArea::scrollOffset() const
     614{
     615    return scrollOffsetFromPosition(scrollPosition());
    621616}
    622617
  • trunk/Source/WebCore/platform/ScrollableArea.h

    r243919 r246488  
    4949typedef IntPoint ScrollOffset;
    5050
     51
     52inline int offsetForOrientation(ScrollOffset offset, ScrollbarOrientation orientation)
     53{
     54    switch (orientation) {
     55    case HorizontalScrollbar: return offset.x();
     56    case VerticalScrollbar: return offset.y();
     57    }
     58    ASSERT_NOT_REACHED();
     59    return 0;
     60}
     61
     62
    5163class ScrollableArea : public CanMakeWeakPtr<ScrollableArea> {
    5264public:
     
    158170
    159171    virtual bool isActive() const = 0;
    160     virtual int scrollSize(ScrollbarOrientation) const = 0;
    161     virtual int scrollOffset(ScrollbarOrientation) const = 0;
    162172    WEBCORE_EXPORT virtual void invalidateScrollbar(Scrollbar&, const IntRect&);
    163173    virtual bool isScrollCornerVisible() const = 0;
     
    197207    bool scrollOriginChanged() const { return m_scrollOriginChanged; }
    198208
    199     virtual ScrollPosition scrollPosition() const;
     209    virtual ScrollPosition scrollPosition() const = 0;
    200210    virtual ScrollPosition minimumScrollPosition() const;
    201211    virtual ScrollPosition maximumScrollPosition() const;
     
    205215        return position.constrainedBetween(minimumScrollPosition(), maximumScrollPosition());
    206216    }
     217
     218    WEBCORE_EXPORT ScrollOffset scrollOffset() const;
    207219
    208220    ScrollOffset maximumScrollOffset() const;
     
    299311    void serviceScrollAnimations();
    300312
    301 #if PLATFORM(IOS_FAMILY)
    302     bool isHorizontalScrollerPinnedToMinimumPosition() const { return !horizontalScrollbar() || scrollOffset(HorizontalScrollbar) <= 0; }
    303     bool isHorizontalScrollerPinnedToMaximumPosition() const { return !horizontalScrollbar() || scrollOffset(HorizontalScrollbar) >= maximumScrollOffset().x(); }
    304     bool isVerticalScrollerPinnedToMinimumPosition() const { return !verticalScrollbar() || scrollOffset(VerticalScrollbar) <= 0; }
    305     bool isVerticalScrollerPinnedToMaximumPosition() const { return !verticalScrollbar() || scrollOffset(VerticalScrollbar) >= maximumScrollOffset().y(); }
     313    bool isHorizontalScrollerPinnedToMinimumPosition() const { return !horizontalScrollbar() || scrollOffset().x() <= 0; }
     314    bool isHorizontalScrollerPinnedToMaximumPosition() const { return !horizontalScrollbar() || scrollOffset().x() >= maximumScrollOffset().x(); }
     315    bool isVerticalScrollerPinnedToMinimumPosition() const { return !verticalScrollbar() || scrollOffset().y() <= 0; }
     316    bool isVerticalScrollerPinnedToMaximumPosition() const { return !verticalScrollbar() || scrollOffset().y() >= maximumScrollOffset().y(); }
    306317
    307318    bool isPinnedInBothDirections(const IntSize&) const;
    308319    bool isPinnedHorizontallyInDirection(int horizontalScrollDelta) const;
    309320    bool isPinnedVerticallyInDirection(int verticalScrollDelta) const;
    310 #endif
    311 
    312     virtual TiledBacking* tiledBacking() const { return nullptr; }
    313321
    314322    // True if scrolling happens by moving compositing layers.
  • trunk/Source/WebCore/platform/Scrollbar.cpp

    r239984 r246488  
    7070    Widget::setFrameRect(IntRect(0, 0, thickness, thickness));
    7171
    72     m_currentPos = static_cast<float>(m_scrollableArea.scrollOffset(m_orientation));
     72    m_currentPos = static_cast<float>(offsetForOrientation(m_scrollableArea.scrollOffset(), m_orientation));
    7373}
    7474
     
    9292void Scrollbar::offsetDidChange()
    9393{
    94     float position = static_cast<float>(m_scrollableArea.scrollOffset(m_orientation));
     94    float position = static_cast<float>(offsetForOrientation(m_scrollableArea.scrollOffset(), m_orientation));
    9595    if (position == m_currentPos)
    9696        return;
  • trunk/Source/WebCore/platform/ios/ScrollAnimatorIOS.mm

    r237266 r246488  
    104104
    105105    if (!m_committedToScrollAxis) {
    106         bool horizontallyScrollable = m_scrollableArea.scrollSize(HorizontalScrollbar);
    107         bool verticallyScrollable = m_scrollableArea.scrollSize(VerticalScrollbar);
     106        auto scrollSize = m_scrollableArea.maximumScrollPosition() - m_scrollableArea.minimumScrollPosition();
     107        bool horizontallyScrollable = scrollSize.width();
     108        bool verticallyScrollable = scrollSize.height();
    108109
    109110        if (!horizontallyScrollable && !verticallyScrollable)
  • trunk/Source/WebCore/platform/win/PopupMenuWin.cpp

    r239201 r246488  
    680680}
    681681
    682 int PopupMenuWin::scrollSize(ScrollbarOrientation orientation) const
    683 {
    684     return ((orientation == VerticalScrollbar) && m_scrollbar) ? (m_scrollbar->totalSize() - m_scrollbar->visibleSize()) : 0;
    685 }
    686 
    687 int PopupMenuWin::scrollOffset(ScrollbarOrientation) const
    688 {
    689     return m_scrollOffset;
     682ScrollPosition PopupMenuWin::scrollPosition() const
     683{
     684    return { 0, m_scrollOffset };
    690685}
    691686
     
    893888                    break;
    894889                case VK_PRIOR:
    895                     if (focusedIndex() != scrollOffset()) {
     890                    if (focusedIndex() != m_scrollOffset) {
    896891                        // Set the selection to the first visible item
    897                         int firstVisibleItem = scrollOffset();
     892                        int firstVisibleItem = m_scrollOffset;
    898893                        up(focusedIndex() - firstVisibleItem);
    899894                    } else {
     
    903898                    break;
    904899                case VK_NEXT: {
    905                     int lastVisibleItem = scrollOffset() + visibleItems() - 1;
     900                    int lastVisibleItem = m_scrollOffset + visibleItems() - 1;
    906901                    if (focusedIndex() != lastVisibleItem) {
    907902                        // Set the selection to the last visible item
  • trunk/Source/WebCore/platform/win/PopupMenuWin.h

    r239201 r246488  
    7878    bool wasClicked() const { return m_wasClicked; }
    7979
    80     int scrollOffset() const { return m_scrollOffset; }
    81 
    8280    bool scrollToRevealSelection();
    8381
     
    9088
    9189    // ScrollableArea
    92     int scrollSize(ScrollbarOrientation) const override;
    93     int scrollOffset(ScrollbarOrientation) const override;
     90    ScrollPosition scrollPosition() const override;
    9491    void setScrollOffset(const IntPoint&) override;
    9592    void invalidateScrollbarRect(Scrollbar&, const IntRect&) override;
  • trunk/Source/WebCore/rendering/RenderLayer.cpp

    r246407 r246488  
    28992899}
    29002900
    2901 int RenderLayer::scrollSize(ScrollbarOrientation orientation) const
    2902 {
    2903     Scrollbar* scrollbar = ((orientation == HorizontalScrollbar) ? m_hBar : m_vBar).get();
    2904     return scrollbar ? (scrollbar->totalSize() - scrollbar->visibleSize()) : 0;
    2905 }
    2906 
    29072901void RenderLayer::setScrollOffset(const ScrollOffset& offset)
    29082902{
    29092903    scrollTo(scrollPositionFromOffset(offset));
    2910 }
    2911 
    2912 int RenderLayer::scrollOffset(ScrollbarOrientation orientation) const
    2913 {
    2914     if (orientation == HorizontalScrollbar)
    2915         return scrollOffset().x();
    2916 
    2917     if (orientation == VerticalScrollbar)
    2918         return scrollOffset().y();
    2919 
    2920     return 0;
    29212904}
    29222905
  • trunk/Source/WebCore/rendering/RenderLayer.h

    r245837 r246488  
    443443    void applyPostLayoutScrollPositionIfNeeded();
    444444
    445     ScrollOffset scrollOffset() const { return scrollOffsetFromPosition(m_scrollPosition); }
    446 
    447445    void availableContentSizeChanged(AvailableSizeChangeReason) override;
    448446
     
    10741072    bool shouldBeSelfPaintingLayer() const;
    10751073
    1076     int scrollOffset(ScrollbarOrientation) const override;
    1077    
    10781074    // ScrollableArea interface
    10791075    void invalidateScrollbarRect(Scrollbar&, const IntRect&) override;
     
    10861082    IntPoint convertFromScrollbarToContainingView(const Scrollbar&, const IntPoint&) const override;
    10871083    IntPoint convertFromContainingViewToScrollbar(const Scrollbar&, const IntPoint&) const override;
    1088     int scrollSize(ScrollbarOrientation) const override;
    10891084    void setScrollOffset(const ScrollOffset&) override;
    10901085    ScrollingNodeID scrollingNodeID() const override;
  • trunk/Source/WebCore/rendering/RenderListBox.cpp

    r246389 r246488  
    646646}
    647647
    648 int RenderListBox::scrollSize(ScrollbarOrientation orientation) const
    649 {
    650     return ((orientation == VerticalScrollbar) && m_vBar) ? (m_vBar->totalSize() - m_vBar->visibleSize()) : 0;
    651 }
    652 
    653 int RenderListBox::scrollOffset(ScrollbarOrientation) const
    654 {
    655     return m_indexOffset;
     648ScrollPosition RenderListBox::scrollPosition() const
     649{
     650    return { 0, m_indexOffset };
    656651}
    657652
  • trunk/Source/WebCore/rendering/RenderListBox.h

    r243701 r246488  
    113113
    114114    // ScrollableArea interface.
    115     int scrollSize(ScrollbarOrientation) const override;
    116     int scrollOffset(ScrollbarOrientation) const override;
    117115    void setScrollOffset(const ScrollOffset&) override;
     116
     117    ScrollPosition scrollPosition() const override;
    118118    ScrollPosition minimumScrollPosition() const override;
    119119    ScrollPosition maximumScrollPosition() const override;
     120
    120121    void invalidateScrollbarRect(Scrollbar&, const IntRect&) override;
    121122    bool isActive() const override;
  • trunk/Source/WebKit/ChangeLog

    r246472 r246488  
     12019-06-16  Simon Fraser  <simon.fraser@apple.com>
     2
     3        Implement ScrollableArea::scrollOffset()
     4        https://bugs.webkit.org/show_bug.cgi?id=198895
     5
     6        Reviewed by Antti Koivisto.
     7
     8        * UIProcess/win/WebPopupMenuProxyWin.cpp:
     9        (WebKit::PopupMenuWin::scrollPosition const):
     10        (WebKit::WebPopupMenuProxyWin::onKeyDown): Just use m_scrollOffset.
     11        (WebKit::WebPopupMenuProxyWin::scrollSize const): Deleted.
     12        * UIProcess/win/WebPopupMenuProxyWin.h: Remove the one-axis scrollOffset()
     13        * WebProcess/Plugins/PDF/PDFPlugin.h:
     14        * WebProcess/Plugins/PDF/PDFPlugin.mm:
     15        (WebKit::PDFPlugin::scrollSize const): Deleted.
     16        (WebKit::PDFPlugin::scrollOffset const): Deleted.
     17        * WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:
     18        (WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
     19
    1202019-06-15  Youenn Fablet  <youenn@apple.com>
    221
  • trunk/Source/WebKit/UIProcess/win/WebPopupMenuProxyWin.cpp

    r239366 r246488  
    442442}
    443443
    444 int WebPopupMenuProxyWin::scrollSize(ScrollbarOrientation orientation) const
    445 {
    446     return ((orientation == VerticalScrollbar) && m_scrollbar) ? (m_scrollbar->totalSize() - m_scrollbar->visibleSize()) : 0;
     444ScrollPosition WebPopupMenuProxyWin::scrollPosition() const
     445{
     446    return { 0, m_scrollOffset };
    447447}
    448448
     
    555555        break;
    556556    case VK_PRIOR:
    557         if (focusedIndex() != scrollOffset(VerticalScrollbar)) {
     557        if (focusedIndex() != m_scrollOffset) {
    558558            // Set the selection to the first visible item
    559             int firstVisibleItem = scrollOffset(VerticalScrollbar);
     559            int firstVisibleItem = m_scrollOffset;
    560560            up(focusedIndex() - firstVisibleItem);
    561561        } else {
     
    565565        break;
    566566    case VK_NEXT: {
    567         int lastVisibleItem = scrollOffset(VerticalScrollbar) + visibleItems() - 1;
     567        int lastVisibleItem = m_scrollOffset + visibleItems() - 1;
    568568        if (focusedIndex() != lastVisibleItem) {
    569569            // Set the selection to the last visible item
     
    922922}
    923923
    924 
    925924void WebPopupMenuProxyWin::incrementWheelDelta(int delta)
    926925{
  • trunk/Source/WebKit/UIProcess/win/WebPopupMenuProxyWin.h

    r239366 r246488  
    5959
    6060    // ScrollableArea
    61     int scrollSize(WebCore::ScrollbarOrientation) const override;
     61    WebCore::ScrollPosition scrollPosition() const override;
    6262    void setScrollOffset(const WebCore::IntPoint&) override;
    63     int scrollOffset(WebCore::ScrollbarOrientation) const override { return m_scrollOffset; }
    6463
    6564    void invalidateScrollbarRect(WebCore::Scrollbar&, const WebCore::IntRect&) override;
  • trunk/Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.h

    r238771 r246488  
    203203    void invalidateScrollCornerRect(const WebCore::IntRect&) final;
    204204    WebCore::IntPoint lastKnownMousePosition() const final { return m_lastMousePositionInPluginCoordinates; }
    205     int scrollSize(WebCore::ScrollbarOrientation) const final;
    206205    bool isActive() const final;
    207206    bool isScrollCornerVisible() const final { return false; }
    208     int scrollOffset(WebCore::ScrollbarOrientation) const final;
    209207    WebCore::ScrollPosition scrollPosition() const final;
    210208    WebCore::ScrollPosition minimumScrollPosition() const final;
  • trunk/Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm

    r244405 r246488  
    864864}
    865865
    866 int PDFPlugin::scrollSize(ScrollbarOrientation orientation) const
    867 {
    868     Scrollbar* scrollbar = ((orientation == HorizontalScrollbar) ? m_horizontalScrollbar : m_verticalScrollbar).get();
    869     return scrollbar ? (scrollbar->totalSize() - scrollbar->visibleSize()) : 0;
    870 }
    871 
    872866bool PDFPlugin::isActive() const
    873867{
     
    888882
    889883    return false;
    890 }
    891 
    892 int PDFPlugin::scrollOffset(ScrollbarOrientation orientation) const
    893 {
    894     if (orientation == HorizontalScrollbar)
    895         return m_scrollOffset.width();
    896 
    897     if (orientation == VerticalScrollbar)
    898         return m_scrollOffset.height();
    899 
    900     ASSERT_NOT_REACHED();
    901     return 0;
    902884}
    903885
  • trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm

    r246142 r246488  
    254254
    255255#if !PLATFORM(IOS_FAMILY)
    256     if (m_viewExposedRect) {
    257         ScrollOffset scrollOffset = frameView->scrollOffsetFromPosition(frameView->scrollPosition());
    258         m_scrolledViewExposedRect.value().moveBy(scrollOffset);
    259     }
     256    if (m_viewExposedRect)
     257        m_scrolledViewExposedRect.value().moveBy(frameView->scrollOffset());
    260258#endif
    261259
Note: See TracChangeset for help on using the changeset viewer.