| 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 3680 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3691 (shouldPlaceVerticalScrollbarOnLeft() && m_verticalScrollbar) | 3691 (shouldPlaceVerticalScrollbarOnLeft() && m_verticalScrollbar) |
| 3692 ? m_verticalScrollbar->width() | 3692 ? m_verticalScrollbar->width() |
| 3693 : 0, | 3693 : 0, |
| 3694 height() - thickness, | 3694 height() - thickness, |
| 3695 width() - (m_verticalScrollbar ? m_verticalScrollbar->width() : 0), | 3695 width() - (m_verticalScrollbar ? m_verticalScrollbar->width() : 0), |
| 3696 thickness); | 3696 thickness); |
| 3697 m_horizontalScrollbar->setFrameRect(hBarRect); | 3697 m_horizontalScrollbar->setFrameRect(hBarRect); |
| 3698 if (oldRect != m_horizontalScrollbar->frameRect()) | 3698 if (oldRect != m_horizontalScrollbar->frameRect()) |
| 3699 setScrollbarNeedsPaintInvalidation(HorizontalScrollbar); | 3699 setScrollbarNeedsPaintInvalidation(HorizontalScrollbar); |
| 3700 | 3700 |
| 3701 m_horizontalScrollbar->setEnabled(contentsWidth() > clientWidth); | 3701 m_horizontalScrollbar->setEnabled(contentsWidth() > clientWidth && |
| 3702 !scrollbarsHidden()); |
| 3702 m_horizontalScrollbar->setProportion(clientWidth, contentsWidth()); | 3703 m_horizontalScrollbar->setProportion(clientWidth, contentsWidth()); |
| 3703 m_horizontalScrollbar->offsetDidChange(); | 3704 m_horizontalScrollbar->offsetDidChange(); |
| 3704 } | 3705 } |
| 3705 | 3706 |
| 3706 if (m_verticalScrollbar) { | 3707 if (m_verticalScrollbar) { |
| 3707 int thickness = m_verticalScrollbar->scrollbarThickness(); | 3708 int thickness = m_verticalScrollbar->scrollbarThickness(); |
| 3708 int clientHeight = visibleHeight(); | 3709 int clientHeight = visibleHeight(); |
| 3709 IntRect oldRect(m_verticalScrollbar->frameRect()); | 3710 IntRect oldRect(m_verticalScrollbar->frameRect()); |
| 3710 IntRect vBarRect( | 3711 IntRect vBarRect( |
| 3711 shouldPlaceVerticalScrollbarOnLeft() ? 0 : (width() - thickness), 0, | 3712 shouldPlaceVerticalScrollbarOnLeft() ? 0 : (width() - thickness), 0, |
| 3712 thickness, | 3713 thickness, |
| 3713 height() - | 3714 height() - |
| 3714 (m_horizontalScrollbar ? m_horizontalScrollbar->height() : 0)); | 3715 (m_horizontalScrollbar ? m_horizontalScrollbar->height() : 0)); |
| 3715 m_verticalScrollbar->setFrameRect(vBarRect); | 3716 m_verticalScrollbar->setFrameRect(vBarRect); |
| 3716 if (oldRect != m_verticalScrollbar->frameRect()) | 3717 if (oldRect != m_verticalScrollbar->frameRect()) |
| 3717 setScrollbarNeedsPaintInvalidation(VerticalScrollbar); | 3718 setScrollbarNeedsPaintInvalidation(VerticalScrollbar); |
| 3718 | 3719 |
| 3719 m_verticalScrollbar->setEnabled(contentsHeight() > clientHeight); | 3720 m_verticalScrollbar->setEnabled(contentsHeight() > clientHeight && |
| 3721 !scrollbarsHidden()); |
| 3720 m_verticalScrollbar->setProportion(clientHeight, contentsHeight()); | 3722 m_verticalScrollbar->setProportion(clientHeight, contentsHeight()); |
| 3721 m_verticalScrollbar->offsetDidChange(); | 3723 m_verticalScrollbar->offsetDidChange(); |
| 3722 } | 3724 } |
| 3723 } | 3725 } |
| 3724 | 3726 |
| 3725 bool FrameView::adjustScrollbarExistence( | 3727 bool FrameView::adjustScrollbarExistence( |
| 3726 ComputeScrollbarExistenceOption option) { | 3728 ComputeScrollbarExistenceOption option) { |
| 3727 ASSERT(m_inUpdateScrollbars); | 3729 ASSERT(m_inUpdateScrollbars); |
| 3728 | 3730 |
| 3729 // If we came in here with the view already needing a layout, then go ahead | 3731 // If we came in here with the view already needing a layout, then go ahead |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3777 return m_frame->settings()->ignoreMainFrameOverflowHiddenQuirk() && | 3779 return m_frame->settings()->ignoreMainFrameOverflowHiddenQuirk() && |
| 3778 m_frame->isMainFrame(); | 3780 m_frame->isMainFrame(); |
| 3779 } | 3781 } |
| 3780 | 3782 |
| 3781 void FrameView::updateScrollbarsIfNeeded() { | 3783 void FrameView::updateScrollbarsIfNeeded() { |
| 3782 if (m_needsScrollbarsUpdate || needsScrollbarReconstruction() || | 3784 if (m_needsScrollbarsUpdate || needsScrollbarReconstruction() || |
| 3783 scrollOriginChanged()) | 3785 scrollOriginChanged()) |
| 3784 updateScrollbars(); | 3786 updateScrollbars(); |
| 3785 } | 3787 } |
| 3786 | 3788 |
| 3789 void FrameView::didChangeScrollbarsHidden() { |
| 3790 updateScrollbars(); |
| 3791 } |
| 3792 |
| 3787 void FrameView::updateScrollbars() { | 3793 void FrameView::updateScrollbars() { |
| 3788 m_needsScrollbarsUpdate = false; | 3794 m_needsScrollbarsUpdate = false; |
| 3789 | 3795 |
| 3790 if (RuntimeEnabledFeatures::rootLayerScrollingEnabled()) | 3796 if (RuntimeEnabledFeatures::rootLayerScrollingEnabled()) |
| 3791 return; | 3797 return; |
| 3792 | 3798 |
| 3793 // Avoid drawing two sets of scrollbars when visual viewport is enabled. | 3799 // Avoid drawing two sets of scrollbars when visual viewport is enabled. |
| 3794 if (visualViewportSuppliesScrollbars()) { | 3800 if (visualViewportSuppliesScrollbars()) { |
| 3795 setHasHorizontalScrollbar(false); | 3801 setHasHorizontalScrollbar(false); |
| 3796 setHasVerticalScrollbar(false); | 3802 setHasVerticalScrollbar(false); |
| (...skipping 710 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4507 DCHECK(m_frame->isMainFrame()); | 4513 DCHECK(m_frame->isMainFrame()); |
| 4508 return m_initialViewportSize.width(); | 4514 return m_initialViewportSize.width(); |
| 4509 } | 4515 } |
| 4510 | 4516 |
| 4511 int FrameView::initialViewportHeight() const { | 4517 int FrameView::initialViewportHeight() const { |
| 4512 DCHECK(m_frame->isMainFrame()); | 4518 DCHECK(m_frame->isMainFrame()); |
| 4513 return m_initialViewportSize.height(); | 4519 return m_initialViewportSize.height(); |
| 4514 } | 4520 } |
| 4515 | 4521 |
| 4516 } // namespace blink | 4522 } // namespace blink |
| OLD | NEW |