OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights
reserved. | 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All rights
reserved. |
3 * | 3 * |
4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. | 4 * Portions are Copyright (C) 1998 Netscape Communications Corporation. |
5 * | 5 * |
6 * Other contributors: | 6 * Other contributors: |
7 * Robert O'Callahan <roc+@cs.cmu.edu> | 7 * Robert O'Callahan <roc+@cs.cmu.edu> |
8 * David Baron <dbaron@fas.harvard.edu> | 8 * David Baron <dbaron@fas.harvard.edu> |
9 * Christian Biesinger <cbiesinger@web.de> | 9 * Christian Biesinger <cbiesinger@web.de> |
10 * Randall Jesup <rjesup@wgate.com> | 10 * Randall Jesup <rjesup@wgate.com> |
(...skipping 1496 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1507 } else { | 1507 } else { |
1508 ScrollbarControlSize scrollbarSize = RegularScrollbar; | 1508 ScrollbarControlSize scrollbarSize = RegularScrollbar; |
1509 if (actualLayoutObject.styleRef().hasAppearance()) | 1509 if (actualLayoutObject.styleRef().hasAppearance()) |
1510 scrollbarSize = LayoutTheme::theme().scrollbarControlSizeForPart(act
ualLayoutObject.styleRef().appearance()); | 1510 scrollbarSize = LayoutTheme::theme().scrollbarControlSizeForPart(act
ualLayoutObject.styleRef().appearance()); |
1511 scrollbar = Scrollbar::create(m_scrollableArea.get(), orientation, scrol
lbarSize, &m_scrollableArea->box().frame()->page()->chromeClient()); | 1511 scrollbar = Scrollbar::create(m_scrollableArea.get(), orientation, scrol
lbarSize, &m_scrollableArea->box().frame()->page()->chromeClient()); |
1512 if (orientation == HorizontalScrollbar) | 1512 if (orientation == HorizontalScrollbar) |
1513 m_scrollableArea->didAddScrollbar(*scrollbar, HorizontalScrollbar); | 1513 m_scrollableArea->didAddScrollbar(*scrollbar, HorizontalScrollbar); |
1514 else | 1514 else |
1515 m_scrollableArea->didAddScrollbar(*scrollbar, VerticalScrollbar); | 1515 m_scrollableArea->didAddScrollbar(*scrollbar, VerticalScrollbar); |
1516 } | 1516 } |
| 1517 |
1517 m_scrollableArea->box().document().view()->addChild(scrollbar.get()); | 1518 m_scrollableArea->box().document().view()->addChild(scrollbar.get()); |
| 1519 Page* page = m_scrollableArea->box().frame()->page(); |
| 1520 scrollbar->setScreenId(Page::screenId(page)); |
| 1521 |
1518 return scrollbar.release(); | 1522 return scrollbar.release(); |
1519 } | 1523 } |
1520 | 1524 |
1521 void PaintLayerScrollableArea::ScrollbarManager::destroyScrollbar(ScrollbarOrien
tation orientation) | 1525 void PaintLayerScrollableArea::ScrollbarManager::destroyScrollbar(ScrollbarOrien
tation orientation) |
1522 { | 1526 { |
1523 RefPtrWillBeMember<Scrollbar>& scrollbar = orientation == HorizontalScrollba
r ? m_hBar : m_vBar; | 1527 RefPtrWillBeMember<Scrollbar>& scrollbar = orientation == HorizontalScrollba
r ? m_hBar : m_vBar; |
1524 ASSERT(orientation == HorizontalScrollbar ? !m_hBarIsAttached: !m_vBarIsAtta
ched); | 1528 ASSERT(orientation == HorizontalScrollbar ? !m_hBarIsAttached: !m_vBarIsAtta
ched); |
1525 if (!scrollbar) | 1529 if (!scrollbar) |
1526 return; | 1530 return; |
1527 | 1531 |
1528 m_scrollableArea->setScrollbarNeedsPaintInvalidation(orientation); | 1532 m_scrollableArea->setScrollbarNeedsPaintInvalidation(orientation); |
1529 | 1533 |
1530 if (!scrollbar->isCustomScrollbar()) | 1534 if (!scrollbar->isCustomScrollbar()) |
1531 m_scrollableArea->willRemoveScrollbar(*scrollbar, orientation); | 1535 m_scrollableArea->willRemoveScrollbar(*scrollbar, orientation); |
1532 | 1536 |
1533 toFrameView(scrollbar->parent())->removeChild(scrollbar.get()); | 1537 toFrameView(scrollbar->parent())->removeChild(scrollbar.get()); |
1534 scrollbar->disconnectFromScrollableArea(); | 1538 scrollbar->disconnectFromScrollableArea(); |
1535 scrollbar = nullptr; | 1539 scrollbar = nullptr; |
1536 } | 1540 } |
1537 | 1541 |
1538 DEFINE_TRACE(PaintLayerScrollableArea::ScrollbarManager) | 1542 DEFINE_TRACE(PaintLayerScrollableArea::ScrollbarManager) |
1539 { | 1543 { |
1540 visitor->trace(m_scrollableArea); | 1544 visitor->trace(m_scrollableArea); |
1541 visitor->trace(m_hBar); | 1545 visitor->trace(m_hBar); |
1542 visitor->trace(m_vBar); | 1546 visitor->trace(m_vBar); |
1543 } | 1547 } |
1544 | 1548 |
1545 } // namespace blink | 1549 } // namespace blink |
OLD | NEW |