| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> | 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> |
| 3 * 1999 Lars Knoll <knoll@kde.org> | 3 * 1999 Lars Knoll <knoll@kde.org> |
| 4 * 1999 Antti Koivisto <koivisto@kde.org> | 4 * 1999 Antti Koivisto <koivisto@kde.org> |
| 5 * 2000 Dirk Mueller <mueller@kde.org> | 5 * 2000 Dirk Mueller <mueller@kde.org> |
| 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
| 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) | 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) |
| 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) | 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) |
| 9 * Copyright (C) 2009 Google Inc. All rights reserved. | 9 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 10 * | 10 * |
| (...skipping 1725 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1736 } | 1736 } |
| 1737 | 1737 |
| 1738 HostWindow* FrameView::hostWindow() const | 1738 HostWindow* FrameView::hostWindow() const |
| 1739 { | 1739 { |
| 1740 Page* page = frame().page(); | 1740 Page* page = frame().page(); |
| 1741 if (!page) | 1741 if (!page) |
| 1742 return nullptr; | 1742 return nullptr; |
| 1743 return &page->chrome(); | 1743 return &page->chrome(); |
| 1744 } | 1744 } |
| 1745 | 1745 |
| 1746 void FrameView::contentRectangleForPaintInvalidation(const IntRect& rect) | 1746 void FrameView::contentRectangleForPaintInvalidation(const IntRect& rectInConten
t) |
| 1747 { | 1747 { |
| 1748 ASSERT(!m_frame->ownerRenderer()); | 1748 ASSERT(!m_frame->ownerRenderer()); |
| 1749 | 1749 |
| 1750 if (m_isTrackingPaintInvalidations) { | 1750 if (m_isTrackingPaintInvalidations) { |
| 1751 IntRect paintInvalidationRect = rect; | 1751 m_trackedPaintInvalidationRects.append(contentsToFrame(rectInContent)); |
| 1752 paintInvalidationRect.move(-scrollOffset()); | |
| 1753 m_trackedPaintInvalidationRects.append(paintInvalidationRect); | |
| 1754 // FIXME: http://crbug.com/368518. Eventually, invalidateContentRectangl
eForPaint | 1752 // FIXME: http://crbug.com/368518. Eventually, invalidateContentRectangl
eForPaint |
| 1755 // is going away entirely once all layout tests are FCM. In the short | 1753 // is going away entirely once all layout tests are FCM. In the short |
| 1756 // term, no code should be tracking non-composited FrameView paint inval
idations. | 1754 // term, no code should be tracking non-composited FrameView paint inval
idations. |
| 1757 RELEASE_ASSERT_NOT_REACHED(); | 1755 RELEASE_ASSERT_NOT_REACHED(); |
| 1758 } | 1756 } |
| 1759 | 1757 |
| 1760 IntRect paintRect = rect; | 1758 IntRect paintRect = rectInContent; |
| 1761 if (clipsPaintInvalidations()) | 1759 if (clipsPaintInvalidations()) |
| 1762 paintRect.intersect(visibleContentRect()); | 1760 paintRect.intersect(visibleContentRect()); |
| 1763 if (paintRect.isEmpty()) | 1761 if (paintRect.isEmpty()) |
| 1764 return; | 1762 return; |
| 1765 | 1763 |
| 1766 if (HostWindow* window = hostWindow()) | 1764 if (HostWindow* window = hostWindow()) |
| 1767 window->invalidateRect(contentsToWindow(paintRect)); | 1765 window->invalidateRect(contentsToWindow(paintRect)); |
| 1768 } | 1766 } |
| 1769 | 1767 |
| 1770 void FrameView::contentsResized() | 1768 void FrameView::contentsResized() |
| (...skipping 979 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2750 IntRect FrameView::convertFromRenderer(const LayoutObject& renderer, const IntRe
ct& rendererRect) const | 2748 IntRect FrameView::convertFromRenderer(const LayoutObject& renderer, const IntRe
ct& rendererRect) const |
| 2751 { | 2749 { |
| 2752 IntRect rect = pixelSnappedIntRect(enclosingLayoutRect(renderer.localToAbsol
uteQuad(FloatRect(rendererRect)).boundingBox())); | 2750 IntRect rect = pixelSnappedIntRect(enclosingLayoutRect(renderer.localToAbsol
uteQuad(FloatRect(rendererRect)).boundingBox())); |
| 2753 | 2751 |
| 2754 // Convert from page ("absolute") to FrameView coordinates. | 2752 // Convert from page ("absolute") to FrameView coordinates. |
| 2755 rect.moveBy(-scrollPosition()); | 2753 rect.moveBy(-scrollPosition()); |
| 2756 | 2754 |
| 2757 return rect; | 2755 return rect; |
| 2758 } | 2756 } |
| 2759 | 2757 |
| 2760 IntRect FrameView::convertToRenderer(const LayoutObject& renderer, const IntRect
& viewRect) const | 2758 IntRect FrameView::convertToRenderer(const LayoutObject& renderer, const IntRect
& frameRect) const |
| 2761 { | 2759 { |
| 2762 IntRect rect = viewRect; | 2760 IntRect rectInContent = frameToContents(frameRect); |
| 2763 | 2761 |
| 2764 // Convert from FrameView coords into page ("absolute") coordinates. | 2762 // Convert from FrameView coords into page ("absolute") coordinates. |
| 2765 rect.moveBy(scrollPosition()); | 2763 rectInContent.moveBy(scrollPosition()); |
| 2766 | 2764 |
| 2767 // FIXME: we don't have a way to map an absolute rect down to a local quad,
so just | 2765 // FIXME: we don't have a way to map an absolute rect down to a local quad,
so just |
| 2768 // move the rect for now. | 2766 // move the rect for now. |
| 2769 rect.setLocation(roundedIntPoint(renderer.absoluteToLocal(rect.location(), U
seTransforms))); | 2767 rectInContent.setLocation(roundedIntPoint(renderer.absoluteToLocal(rectInCon
tent.location(), UseTransforms))); |
| 2770 return rect; | 2768 return rectInContent; |
| 2771 } | 2769 } |
| 2772 | 2770 |
| 2773 IntPoint FrameView::convertFromRenderer(const LayoutObject& renderer, const IntP
oint& rendererPoint) const | 2771 IntPoint FrameView::convertFromRenderer(const LayoutObject& renderer, const IntP
oint& rendererPoint) const |
| 2774 { | 2772 { |
| 2775 IntPoint point = roundedIntPoint(renderer.localToAbsolute(rendererPoint, Use
Transforms)); | 2773 IntPoint point = roundedIntPoint(renderer.localToAbsolute(rendererPoint, Use
Transforms)); |
| 2776 | 2774 |
| 2777 // Convert from page ("absolute") to FrameView coordinates. | 2775 // Convert from page ("absolute") to FrameView coordinates. |
| 2778 point.moveBy(-scrollPosition()); | 2776 point.moveBy(-scrollPosition()); |
| 2779 return point; | 2777 return point; |
| 2780 } | 2778 } |
| 2781 | 2779 |
| 2782 IntPoint FrameView::convertToRenderer(const LayoutObject& renderer, const IntPoi
nt& viewPoint) const | 2780 IntPoint FrameView::convertToRenderer(const LayoutObject& renderer, const IntPoi
nt& framePoint) const |
| 2783 { | 2781 { |
| 2784 IntPoint point = viewPoint; | 2782 IntPoint point = framePoint; |
| 2785 | 2783 |
| 2786 // Convert from FrameView coords into page ("absolute") coordinates. | 2784 // Convert from FrameView coords into page ("absolute") coordinates. |
| 2787 point += IntSize(scrollX(), scrollY()); | 2785 point += IntSize(scrollX(), scrollY()); |
| 2788 | 2786 |
| 2789 return roundedIntPoint(renderer.absoluteToLocal(point, UseTransforms)); | 2787 return roundedIntPoint(renderer.absoluteToLocal(point, UseTransforms)); |
| 2790 } | 2788 } |
| 2791 | 2789 |
| 2792 IntRect FrameView::convertToContainingView(const IntRect& localRect) const | 2790 IntRect FrameView::convertToContainingView(const IntRect& localRect) const |
| 2793 { | 2791 { |
| 2794 if (const FrameView* parentView = toFrameView(parent())) { | 2792 if (const FrameView* parentView = toFrameView(parent())) { |
| (...skipping 824 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3619 if (!scrollContentsFastPath(-scrollDelta)) | 3617 if (!scrollContentsFastPath(-scrollDelta)) |
| 3620 scrollContentsSlowPath(updateRect); | 3618 scrollContentsSlowPath(updateRect); |
| 3621 | 3619 |
| 3622 // Invalidate the overhang areas if they are visible. | 3620 // Invalidate the overhang areas if they are visible. |
| 3623 updateOverhangAreas(); | 3621 updateOverhangAreas(); |
| 3624 | 3622 |
| 3625 // This call will move children with native widgets (plugins) and invalidate
them as well. | 3623 // This call will move children with native widgets (plugins) and invalidate
them as well. |
| 3626 frameRectsChanged(); | 3624 frameRectsChanged(); |
| 3627 } | 3625 } |
| 3628 | 3626 |
| 3629 IntPoint FrameView::rootViewToContents(const IntPoint& rootViewPoint) const | 3627 IntPoint FrameView::contentsToFrame(const IntPoint& pointInContentSpace) const |
| 3630 { | 3628 { |
| 3631 IntPoint viewPoint = convertFromContainingWindow(rootViewPoint); | 3629 return pointInContentSpace - scrollOffset(); |
| 3632 return viewPoint + scrollOffset(); | |
| 3633 } | 3630 } |
| 3634 | 3631 |
| 3635 IntPoint FrameView::contentsToRootView(const IntPoint& contentsPoint) const | 3632 IntRect FrameView::contentsToFrame(const IntRect& rectInContentSpace) const |
| 3636 { | 3633 { |
| 3637 IntPoint viewPoint = contentsPoint - scrollOffset(); | 3634 return IntRect(contentsToFrame(rectInContentSpace.location()), rectInContent
Space.size()); |
| 3638 return convertToContainingWindow(viewPoint); | |
| 3639 } | 3635 } |
| 3640 | 3636 |
| 3641 IntRect FrameView::rootViewToContents(const IntRect& rootViewRect) const | 3637 FloatPoint FrameView::frameToContents(const FloatPoint& pointInFrame) const |
| 3642 { | 3638 { |
| 3643 IntRect viewRect = convertFromContainingWindow(rootViewRect); | 3639 return pointInFrame + scrollOffset(); |
| 3644 viewRect.move(scrollOffset()); | |
| 3645 return viewRect; | |
| 3646 } | 3640 } |
| 3647 | 3641 |
| 3648 IntRect FrameView::contentsToRootView(const IntRect& contentsRect) const | 3642 IntPoint FrameView::frameToContents(const IntPoint& pointInFrame) const |
| 3649 { | 3643 { |
| 3650 IntRect viewRect = contentsRect; | 3644 return pointInFrame + scrollOffset(); |
| 3651 viewRect.move(-scrollOffset()); | 3645 } |
| 3652 return convertToContainingWindow(viewRect); | 3646 |
| 3647 IntRect FrameView::frameToContents(const IntRect& rectInFrame) const |
| 3648 { |
| 3649 return IntRect(frameToContents(rectInFrame.location()), rectInFrame.size()); |
| 3650 } |
| 3651 |
| 3652 IntPoint FrameView::rootFrameToContents(const IntPoint& rootFramePoint) const |
| 3653 { |
| 3654 IntPoint framePoint = convertFromContainingWindow(rootFramePoint); |
| 3655 return frameToContents(framePoint); |
| 3656 } |
| 3657 |
| 3658 IntRect FrameView::rootFrameToContents(const IntRect& rootFrameRect) const |
| 3659 { |
| 3660 return IntRect(rootFrameToContents(rootFrameRect.location()), rootFrameRect.
size()); |
| 3661 } |
| 3662 |
| 3663 IntPoint FrameView::contentsToRootFrame(const IntPoint& contentsPoint) const |
| 3664 { |
| 3665 IntPoint framePoint = contentsToFrame(contentsPoint); |
| 3666 return convertToContainingWindow(framePoint); |
| 3667 } |
| 3668 |
| 3669 IntRect FrameView::contentsToRootFrame(const IntRect& contentsRect) const |
| 3670 { |
| 3671 IntRect rectInFrame = contentsToFrame(contentsRect); |
| 3672 return convertToContainingWindow(rectInFrame); |
| 3653 } | 3673 } |
| 3654 | 3674 |
| 3655 IntPoint FrameView::windowToContents(const IntPoint& windowPoint) const | 3675 IntPoint FrameView::windowToContents(const IntPoint& windowPoint) const |
| 3656 { | 3676 { |
| 3657 IntPoint viewPoint = convertFromContainingWindow(windowPoint); | 3677 IntPoint framePoint = convertFromContainingWindow(windowPoint); |
| 3658 return viewPoint + scrollOffset(); | 3678 return frameToContents(framePoint); |
| 3659 } | 3679 } |
| 3660 | 3680 |
| 3661 FloatPoint FrameView::windowToContents(const FloatPoint& windowPoint) const | 3681 FloatPoint FrameView::windowToContents(const FloatPoint& windowPoint) const |
| 3662 { | 3682 { |
| 3663 FloatPoint viewPoint = convertFromContainingWindow(windowPoint); | 3683 FloatPoint framePoint = convertFromContainingWindow(windowPoint); |
| 3664 return viewPoint + scrollOffset(); | 3684 return frameToContents(framePoint); |
| 3665 } | 3685 } |
| 3666 | 3686 |
| 3667 IntPoint FrameView::contentsToWindow(const IntPoint& contentsPoint) const | 3687 IntPoint FrameView::contentsToWindow(const IntPoint& contentsPoint) const |
| 3668 { | 3688 { |
| 3669 IntPoint viewPoint = contentsPoint - scrollOffset(); | 3689 IntPoint framePoint = contentsToFrame(contentsPoint); |
| 3670 return convertToContainingWindow(viewPoint); | 3690 return convertToContainingWindow(framePoint); |
| 3671 } | 3691 } |
| 3672 | 3692 |
| 3673 IntRect FrameView::windowToContents(const IntRect& windowRect) const | 3693 IntRect FrameView::windowToContents(const IntRect& windowRect) const |
| 3674 { | 3694 { |
| 3675 IntRect viewRect = convertFromContainingWindow(windowRect); | 3695 IntRect rectInFrame = convertFromContainingWindow(windowRect); |
| 3676 viewRect.move(scrollOffset()); | 3696 return frameToContents(rectInFrame); |
| 3677 return viewRect; | |
| 3678 } | 3697 } |
| 3679 | 3698 |
| 3680 IntRect FrameView::contentsToWindow(const IntRect& contentsRect) const | 3699 IntRect FrameView::contentsToWindow(const IntRect& contentsRect) const |
| 3681 { | 3700 { |
| 3682 IntRect viewRect = contentsRect; | 3701 IntRect rectInFrame = contentsToFrame(contentsRect); |
| 3683 viewRect.move(-scrollOffset()); | 3702 return convertToContainingWindow(rectInFrame); |
| 3684 return convertToContainingWindow(viewRect); | |
| 3685 } | 3703 } |
| 3686 | 3704 |
| 3687 IntRect FrameView::contentsToScreen(const IntRect& rect) const | 3705 IntRect FrameView::contentsToScreen(const IntRect& rect) const |
| 3688 { | 3706 { |
| 3689 HostWindow* window = hostWindow(); | 3707 HostWindow* window = hostWindow(); |
| 3690 if (!window) | 3708 if (!window) |
| 3691 return IntRect(); | 3709 return IntRect(); |
| 3692 return window->rootViewToScreen(contentsToRootView(rect)); | 3710 return window->viewportToScreen(contentsToWindow(rect)); |
| 3693 } | 3711 } |
| 3694 | 3712 |
| 3695 bool FrameView::containsScrollbarsAvoidingResizer() const | 3713 bool FrameView::containsScrollbarsAvoidingResizer() const |
| 3696 { | 3714 { |
| 3697 return !m_scrollbarsAvoidingResizer; | 3715 return !m_scrollbarsAvoidingResizer; |
| 3698 } | 3716 } |
| 3699 | 3717 |
| 3700 void FrameView::adjustScrollbarsAvoidingResizerCount(int overlapDelta) | 3718 void FrameView::adjustScrollbarsAvoidingResizerCount(int overlapDelta) |
| 3701 { | 3719 { |
| 3702 int oldCount = m_scrollbarsAvoidingResizer; | 3720 int oldCount = m_scrollbarsAvoidingResizer; |
| (...skipping 23 matching lines...) Expand all Loading... |
| 3726 if (m_verticalScrollbar) | 3744 if (m_verticalScrollbar) |
| 3727 m_verticalScrollbar->invalidate(); | 3745 m_verticalScrollbar->invalidate(); |
| 3728 | 3746 |
| 3729 // Invalidate the scroll corner too on unsuppress. | 3747 // Invalidate the scroll corner too on unsuppress. |
| 3730 invalidateRect(scrollCornerRect()); | 3748 invalidateRect(scrollCornerRect()); |
| 3731 } | 3749 } |
| 3732 } | 3750 } |
| 3733 | 3751 |
| 3734 Scrollbar* FrameView::scrollbarAtWindowPoint(const IntPoint& windowPoint) | 3752 Scrollbar* FrameView::scrollbarAtWindowPoint(const IntPoint& windowPoint) |
| 3735 { | 3753 { |
| 3736 IntPoint viewPoint = convertFromContainingWindow(windowPoint); | 3754 IntPoint pointInFrame = convertFromContainingWindow(windowPoint); |
| 3737 return scrollbarAtViewPoint(viewPoint); | 3755 return scrollbarAtFramePoint(pointInFrame); |
| 3738 } | 3756 } |
| 3739 | 3757 |
| 3740 Scrollbar* FrameView::scrollbarAtViewPoint(const IntPoint& viewPoint) | 3758 Scrollbar* FrameView::scrollbarAtFramePoint(const IntPoint& pointInFrame) |
| 3741 { | 3759 { |
| 3742 if (m_horizontalScrollbar && m_horizontalScrollbar->shouldParticipateInHitTe
sting() && m_horizontalScrollbar->frameRect().contains(viewPoint)) | 3760 if (m_horizontalScrollbar && m_horizontalScrollbar->shouldParticipateInHitTe
sting() && m_horizontalScrollbar->frameRect().contains(pointInFrame)) |
| 3743 return m_horizontalScrollbar.get(); | 3761 return m_horizontalScrollbar.get(); |
| 3744 if (m_verticalScrollbar && m_verticalScrollbar->shouldParticipateInHitTestin
g() && m_verticalScrollbar->frameRect().contains(viewPoint)) | 3762 if (m_verticalScrollbar && m_verticalScrollbar->shouldParticipateInHitTestin
g() && m_verticalScrollbar->frameRect().contains(pointInFrame)) |
| 3745 return m_verticalScrollbar.get(); | 3763 return m_verticalScrollbar.get(); |
| 3746 return nullptr; | 3764 return nullptr; |
| 3747 } | 3765 } |
| 3748 | 3766 |
| 3749 static void positionScrollbarLayer(GraphicsLayer* graphicsLayer, Scrollbar* scro
llbar) | 3767 static void positionScrollbarLayer(GraphicsLayer* graphicsLayer, Scrollbar* scro
llbar) |
| 3750 { | 3768 { |
| 3751 if (!graphicsLayer || !scrollbar) | 3769 if (!graphicsLayer || !scrollbar) |
| 3752 return; | 3770 return; |
| 3753 | 3771 |
| 3754 IntRect scrollbarRect = scrollbar->frameRect(); | 3772 IntRect scrollbarRect = scrollbar->frameRect(); |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3914 window->invalidateRect(horizontalOverhangRect); | 3932 window->invalidateRect(horizontalOverhangRect); |
| 3915 if (!verticalOverhangRect.isEmpty()) | 3933 if (!verticalOverhangRect.isEmpty()) |
| 3916 window->invalidateRect(verticalOverhangRect); | 3934 window->invalidateRect(verticalOverhangRect); |
| 3917 } | 3935 } |
| 3918 | 3936 |
| 3919 bool FrameView::isPointInScrollbarCorner(const IntPoint& windowPoint) | 3937 bool FrameView::isPointInScrollbarCorner(const IntPoint& windowPoint) |
| 3920 { | 3938 { |
| 3921 if (!scrollbarCornerPresent()) | 3939 if (!scrollbarCornerPresent()) |
| 3922 return false; | 3940 return false; |
| 3923 | 3941 |
| 3924 IntPoint viewPoint = convertFromContainingWindow(windowPoint); | 3942 IntPoint framePoint = convertFromContainingWindow(windowPoint); |
| 3925 | 3943 |
| 3926 if (m_horizontalScrollbar) { | 3944 if (m_horizontalScrollbar) { |
| 3927 int horizontalScrollbarYMin = m_horizontalScrollbar->frameRect().y(); | 3945 int horizontalScrollbarYMin = m_horizontalScrollbar->frameRect().y(); |
| 3928 int horizontalScrollbarYMax = m_horizontalScrollbar->frameRect().y() + m
_horizontalScrollbar->frameRect().height(); | 3946 int horizontalScrollbarYMax = m_horizontalScrollbar->frameRect().y() + m
_horizontalScrollbar->frameRect().height(); |
| 3929 int horizontalScrollbarXMin = m_horizontalScrollbar->frameRect().x() + m
_horizontalScrollbar->frameRect().width(); | 3947 int horizontalScrollbarXMin = m_horizontalScrollbar->frameRect().x() + m
_horizontalScrollbar->frameRect().width(); |
| 3930 | 3948 |
| 3931 return viewPoint.y() > horizontalScrollbarYMin && viewPoint.y() < horizo
ntalScrollbarYMax && viewPoint.x() > horizontalScrollbarXMin; | 3949 return framePoint.y() > horizontalScrollbarYMin && framePoint.y() < hori
zontalScrollbarYMax && framePoint.x() > horizontalScrollbarXMin; |
| 3932 } | 3950 } |
| 3933 | 3951 |
| 3934 int verticalScrollbarXMin = m_verticalScrollbar->frameRect().x(); | 3952 int verticalScrollbarXMin = m_verticalScrollbar->frameRect().x(); |
| 3935 int verticalScrollbarXMax = m_verticalScrollbar->frameRect().x() + m_vertica
lScrollbar->frameRect().width(); | 3953 int verticalScrollbarXMax = m_verticalScrollbar->frameRect().x() + m_vertica
lScrollbar->frameRect().width(); |
| 3936 int verticalScrollbarYMin = m_verticalScrollbar->frameRect().y() + m_vertica
lScrollbar->frameRect().height(); | 3954 int verticalScrollbarYMin = m_verticalScrollbar->frameRect().y() + m_vertica
lScrollbar->frameRect().height(); |
| 3937 | 3955 |
| 3938 return viewPoint.x() > verticalScrollbarXMin && viewPoint.x() < verticalScro
llbarXMax && viewPoint.y() > verticalScrollbarYMin; | 3956 return framePoint.x() > verticalScrollbarXMin && framePoint.x() < verticalSc
rollbarXMax && framePoint.y() > verticalScrollbarYMin; |
| 3939 } | 3957 } |
| 3940 | 3958 |
| 3941 bool FrameView::scrollbarCornerPresent() const | 3959 bool FrameView::scrollbarCornerPresent() const |
| 3942 { | 3960 { |
| 3943 return (m_horizontalScrollbar && width() - m_horizontalScrollbar->width() >
0) | 3961 return (m_horizontalScrollbar && width() - m_horizontalScrollbar->width() >
0) |
| 3944 || (m_verticalScrollbar && height() - m_verticalScrollbar->height() > 0)
; | 3962 || (m_verticalScrollbar && height() - m_verticalScrollbar->height() > 0)
; |
| 3945 } | 3963 } |
| 3946 | 3964 |
| 3947 IntRect FrameView::convertFromScrollbarToContainingView(const Scrollbar* scrollb
ar, const IntRect& localRect) const | 3965 IntRect FrameView::convertFromScrollbarToContainingView(const Scrollbar* scrollb
ar, const IntRect& localRect) const |
| 3948 { | 3966 { |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4054 { | 4072 { |
| 4055 Settings* settings = frame().settings(); | 4073 Settings* settings = frame().settings(); |
| 4056 if (!settings || !settings->rootLayerScrolls()) | 4074 if (!settings || !settings->rootLayerScrolls()) |
| 4057 return this; | 4075 return this; |
| 4058 | 4076 |
| 4059 RenderView* renderView = this->renderView(); | 4077 RenderView* renderView = this->renderView(); |
| 4060 return renderView ? renderView->scrollableArea() : nullptr; | 4078 return renderView ? renderView->scrollableArea() : nullptr; |
| 4061 } | 4079 } |
| 4062 | 4080 |
| 4063 } // namespace blink | 4081 } // namespace blink |
| OLD | NEW |