void LayoutScrollbar::setParent(Widget* parent) { Scrollbar::setParent(parent); if (!parent) { // Destroy all of the scrollbar's LayoutBoxes. updateScrollbarParts(true); } }
void RenderScrollbar::setEnabled(bool e) { bool wasEnabled = enabled(); Scrollbar::setEnabled(e); if (wasEnabled != e) updateScrollbarParts(); }
void RenderScrollbar::setParent(ScrollView* parent) { Scrollbar::setParent(parent); if (!parent) { // Destroy all of the scrollbar's RenderBoxes. updateScrollbarParts(true); } }
void RenderScrollbar::paint(GraphicsContext* context, const IntRect& damageRect) { if (context->updatingControlTints()) { updateScrollbarParts(); return; } Scrollbar::paint(context, damageRect); }
RenderScrollbar::~RenderScrollbar() { if (!m_parts.isEmpty()) { // When a scrollbar is detached from its parent (causing all parts removal) and // ready to be destroyed, its destruction can be delayed because of RefPtr // maintained in other classes such as EventHandler (m_lastScrollbarUnderMouse). // Meanwhile, we can have a call to updateScrollbarPart which recreates the // scrollbar part. So, we need to destroy these parts since we don't want them // to call on a destroyed scrollbar. See webkit bug 68009. updateScrollbarParts(true); } }
void RenderScrollbar::styleChanged() { updateScrollbarParts(); }
void LayoutScrollbar::styleChanged() { updateScrollbarParts(); }