OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights | 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights |
3 * reserved. | 3 * reserved. |
4 * | 4 * |
5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 5 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
6 * | 6 * |
7 * Other contributors: | 7 * Other contributors: |
8 * Robert O'Callahan <roc+@cs.cmu.edu> | 8 * Robert O'Callahan <roc+@cs.cmu.edu> |
9 * David Baron <dbaron@fas.harvard.edu> | 9 * David Baron <dbaron@fas.harvard.edu> |
10 * Christian Biesinger <cbiesinger@gmail.com> | 10 * Christian Biesinger <cbiesinger@gmail.com> |
(...skipping 1647 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1658 | 1658 |
1659 void PaintLayerScrollableArea::updateScrollableAreaSet(bool hasOverflow) { | 1659 void PaintLayerScrollableArea::updateScrollableAreaSet(bool hasOverflow) { |
1660 LocalFrame* frame = box().frame(); | 1660 LocalFrame* frame = box().frame(); |
1661 if (!frame) | 1661 if (!frame) |
1662 return; | 1662 return; |
1663 | 1663 |
1664 FrameView* frameView = frame->view(); | 1664 FrameView* frameView = frame->view(); |
1665 if (!frameView) | 1665 if (!frameView) |
1666 return; | 1666 return; |
1667 | 1667 |
1668 // FIXME: Does this need to be fixed later for OOPI? | |
1669 bool isVisibleToHitTest = box().style()->visibleToHitTesting(); | 1668 bool isVisibleToHitTest = box().style()->visibleToHitTesting(); |
1670 if (HTMLFrameOwnerElement* owner = frame->deprecatedLocalOwner()) { | |
1671 isVisibleToHitTest &= owner->layoutObject() && | |
1672 owner->layoutObject()->style()->visibleToHitTesting(); | |
1673 } | |
1674 | |
1675 bool didScrollOverflow = m_scrollsOverflow; | 1669 bool didScrollOverflow = m_scrollsOverflow; |
1676 | |
1677 m_scrollsOverflow = hasOverflow && isVisibleToHitTest; | 1670 m_scrollsOverflow = hasOverflow && isVisibleToHitTest; |
1678 if (didScrollOverflow == scrollsOverflow()) | 1671 if (didScrollOverflow == scrollsOverflow()) |
1679 return; | 1672 return; |
1680 | 1673 |
1681 if (RuntimeEnabledFeatures::slimmingPaintInvalidationEnabled()) { | 1674 if (RuntimeEnabledFeatures::slimmingPaintInvalidationEnabled()) { |
1682 // The scroll and scroll offset properties depend on |scrollsOverflow| (see: | 1675 // The scroll and scroll offset properties depend on |scrollsOverflow| (see: |
1683 // PaintPropertyTreeBuilder::updateScrollAndScrollTranslation). | 1676 // PaintPropertyTreeBuilder::updateScrollAndScrollTranslation). |
1684 box().setNeedsPaintPropertyUpdate(); | 1677 box().setNeedsPaintPropertyUpdate(); |
1685 } | 1678 } |
1686 | 1679 |
(...skipping 429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2116 | 2109 |
2117 void PaintLayerScrollableArea::DelayScrollOffsetClampScope:: | 2110 void PaintLayerScrollableArea::DelayScrollOffsetClampScope:: |
2118 clampScrollableAreas() { | 2111 clampScrollableAreas() { |
2119 for (auto& scrollableArea : *s_needsClamp) | 2112 for (auto& scrollableArea : *s_needsClamp) |
2120 scrollableArea->clampScrollOffsetAfterOverflowChange(); | 2113 scrollableArea->clampScrollOffsetAfterOverflowChange(); |
2121 delete s_needsClamp; | 2114 delete s_needsClamp; |
2122 s_needsClamp = nullptr; | 2115 s_needsClamp = nullptr; |
2123 } | 2116 } |
2124 | 2117 |
2125 } // namespace blink | 2118 } // namespace blink |
OLD | NEW |