bool RenderThemeChromiumDefault::paintSliderTrack(RenderObject* o, const PaintInfo& i, const IntRect& rect) { if (i.context->paintingDisabled()) return false; blink::WebThemeEngine::ExtraParams extraParams; blink::WebCanvas* canvas = i.context->canvas(); extraParams.slider.vertical = o->style()->appearance() == SliderVerticalPart; paintSliderTicks(o, i, rect); // FIXME: Mock theme doesn't handle zoomed sliders. float zoomLevel = useMockTheme() ? 1 : o->style()->effectiveZoom(); GraphicsContextStateSaver stateSaver(*i.context, false); IntRect unzoomedRect = rect; if (zoomLevel != 1) { stateSaver.save(); unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel); unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel); i.context->translate(unzoomedRect.x(), unzoomedRect.y()); i.context->scale(zoomLevel, zoomLevel); i.context->translate(-unzoomedRect.x(), -unzoomedRect.y()); } blink::Platform::current()->themeEngine()->paint(canvas, blink::WebThemeEngine::PartSliderTrack, getWebThemeState(this, o), blink::WebRect(unzoomedRect), &extraParams); return false; }
bool ThemePainterDefault::paintSliderTrack(const LayoutObject& o, const PaintInfo& i, const IntRect& rect) { WebThemeEngine::ExtraParams extraParams; WebCanvas* canvas = i.context.canvas(); extraParams.slider.vertical = o.styleRef().appearance() == SliderVerticalPart; paintSliderTicks(o, i, rect); // FIXME: Mock theme doesn't handle zoomed sliders. float zoomLevel = useMockTheme() ? 1 : o.styleRef().effectiveZoom(); GraphicsContextStateSaver stateSaver(i.context, false); IntRect unzoomedRect = rect; if (zoomLevel != 1) { stateSaver.save(); unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel); unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel); i.context.translate(unzoomedRect.x(), unzoomedRect.y()); i.context.scale(zoomLevel, zoomLevel); i.context.translate(-unzoomedRect.x(), -unzoomedRect.y()); } Platform::current()->themeEngine()->paint( canvas, WebThemeEngine::PartSliderTrack, getWebThemeState(o), WebRect(unzoomedRect), &extraParams); return false; }
bool RenderThemeNix::paintSliderTrack(RenderObject* object, const PaintInfo& info, const IntRect& rect) { themeEngine()->paintSliderTrack(webCanvas(info), getWebThemeState(this, object), rect); #if ENABLE(DATALIST_ELEMENT) paintSliderTicks(object, info, rect); #endif return false; }
bool RenderThemeChromiumWin::paintSliderTrack(RenderObject* o, const PaintInfo& i, const IntRect& r) { const ThemeData& themeData = getThemeData(o); ThemePainter painter(i.context, r); WebKit::WebCanvas* canvas = painter.context()->canvas(); WebKit::Platform::current()->themeEngine()->paintTrackbar(canvas, themeData.m_part, themeData.m_state, themeData.m_classicState, WebKit::WebRect(painter.drawRect())); paintSliderTicks(o, i, r); return false; }
bool RenderThemeChromiumWin::paintSliderTrack(RenderObject* o, const PaintInfo& i, const IntRect& r) { const ThemeData& themeData = getThemeData(o); ThemePainter painter(i.context, r); PlatformSupport::paintTrackbar(painter.context(), themeData.m_part, themeData.m_state, themeData.m_classicState, painter.drawRect()); #if ENABLE(DATALIST_ELEMENT) paintSliderTicks(o, i, r); #endif return false; }
bool RenderThemeChromiumDefault::paintSliderTrack(RenderObject* o, const PaintInfo& i, const IntRect& rect) { WebKit::WebThemeEngine::ExtraParams extraParams; WebKit::WebCanvas* canvas = i.context->canvas(); extraParams.slider.vertical = o->style()->appearance() == SliderVerticalPart; paintSliderTicks(o, i, rect); float zoomLevel = o->style()->effectiveZoom(); GraphicsContextStateSaver stateSaver(*i.context); IntRect unzoomedRect = rect; if (zoomLevel != 1) { unzoomedRect.setWidth(unzoomedRect.width() / zoomLevel); unzoomedRect.setHeight(unzoomedRect.height() / zoomLevel); i.context->translate(unzoomedRect.x(), unzoomedRect.y()); i.context->scale(FloatSize(zoomLevel, zoomLevel)); i.context->translate(-unzoomedRect.x(), -unzoomedRect.y()); } WebKit::Platform::current()->themeEngine()->paint(canvas, WebKit::WebThemeEngine::PartSliderTrack, getWebThemeState(this, o), WebKit::WebRect(unzoomedRect), &extraParams); return false; }