PassRefPtr<RenderStyle> RenderSlider::createThumbStyle(const RenderStyle* parentStyle) { RefPtr<RenderStyle> style; RenderStyle* pseudoStyle = getCachedPseudoStyle(SLIDER_THUMB); if (pseudoStyle) // We may be sharing style with another slider, but we must not share the thumb style. style = RenderStyle::clone(pseudoStyle); else style = RenderStyle::create(); if (parentStyle) style->inheritFrom(parentStyle); style->setDisplay(BLOCK); if (parentStyle->appearance() == SliderVerticalPart) style->setAppearance(SliderThumbVerticalPart); else if (parentStyle->appearance() == SliderHorizontalPart) style->setAppearance(SliderThumbHorizontalPart); else if (parentStyle->appearance() == MediaSliderPart) style->setAppearance(MediaSliderThumbPart); else if (parentStyle->appearance() == MediaVolumeSliderPart) style->setAppearance(MediaVolumeSliderThumbPart); return style.release(); }
PassRefPtr<RenderStyle> RenderTextControlMultiLine::createInnerTextStyle(const RenderStyle* startStyle) const { RefPtr<RenderStyle> textBlockStyle; if (m_placeholderVisible) { if (RenderStyle* pseudoStyle = getCachedPseudoStyle(INPUT_PLACEHOLDER)) textBlockStyle = RenderStyle::clone(pseudoStyle); } if (!textBlockStyle) { textBlockStyle = RenderStyle::create(); textBlockStyle->inheritFrom(startStyle); } adjustInnerTextStyle(startStyle, textBlockStyle.get()); textBlockStyle->setDisplay(BLOCK); return textBlockStyle.release(); }