const Vector<float>& getLineDash() const;
void setLineDash(const Vector<float>&);
- void setWebkitLineDash(const Vector<float>&);
float lineDashOffset() const;
void setLineDashOffset(float);
- float webkitLineDashOffset() const;
- void setWebkitLineDashOffset(float);
float shadowOffsetX() const;
void setShadowOffsetX(float);
String globalCompositeOperation() const;
void setGlobalCompositeOperation(const String&);
- void save() { ++m_unrealizedSaveCount; }
+ void save() { ++m_stateStack.last().m_unrealizedSaveCount; }
void restore();
SVGMatrix currentTransform() const
// CSSFontSelectorClient implementation
virtual void fontsNeedUpdate(CSSFontSelector*) OVERRIDE;
+ unsigned m_unrealizedSaveCount;
+
String m_unparsedStrokeColor;
String m_unparsedFillColor;
RefPtr<CanvasStyle> m_strokeStyle;
CanvasRenderingContext2D(HTMLCanvasElement*, const Canvas2DContextAttributes* attrs, bool usesCSSCompatibilityParseMode);
- State& modifiableState() { ASSERT(!m_unrealizedSaveCount); return m_stateStack.last(); }
+ State& modifiableState() { ASSERT(!state().m_unrealizedSaveCount); return m_stateStack.last(); }
const State& state() const { return m_stateStack.last(); }
void applyLineDash() const;
GraphicsContext* drawingContext() const;
void unwindStateStack();
- void realizeSaves()
- {
- if (m_unrealizedSaveCount)
- realizeSavesLoop();
- }
- void realizeSavesLoop();
+ void realizeSaves();
void applyStrokePattern();
void applyFillPattern();
virtual blink::WebLayer* platformLayer() const OVERRIDE;
Vector<State, 1> m_stateStack;
- unsigned m_unrealizedSaveCount;
bool m_usesCSSCompatibilityParseMode;
bool m_hasAlpha;
MutableStylePropertyMap m_fetchedFonts;