Пример #1
0
void ScrollbarGroup::scrollbarDestroyed(WebPluginScrollbarImpl* scrollbar)
{
    if (scrollbar == m_horizontalScrollbar) {
        willRemoveScrollbar(scrollbar->scrollbar(), HorizontalScrollbar);
        m_horizontalScrollbar = 0;
    } else {
        ASSERT(scrollbar == m_verticalScrollbar);
        willRemoveScrollbar(scrollbar->scrollbar(), VerticalScrollbar);
        m_verticalScrollbar = 0;
    }

    if (!m_horizontalScrollbar && !m_verticalScrollbar) {
        m_frameView->removeScrollableArea(this);
        m_frameView->setNeedsLayout();
    }
}
void RenderLayerScrollableArea::destroyScrollbar(ScrollbarOrientation orientation)
{
    RefPtr<Scrollbar>& scrollbar = orientation == HorizontalScrollbar ? m_hBar : m_vBar;
    if (!scrollbar)
        return;

    willRemoveScrollbar(scrollbar.get(), orientation);

    scrollbar->disconnectFromScrollableArea();
    scrollbar = nullptr;
}