summaryrefslogtreecommitdiffstats
path: root/WebCore/svg/SVGFontData.h
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2008-12-17 18:05:15 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2008-12-17 18:05:15 -0800
commit1cbdecfa9fc428ac2d8aca0fa91c9580b3d57353 (patch)
tree4457a7306ea5acb43fe05bfe0973b1f7faf97ba2 /WebCore/svg/SVGFontData.h
parent9364f22aed35e1a1e9d07c121510f80be3ab0502 (diff)
downloadexternal_webkit-1cbdecfa9fc428ac2d8aca0fa91c9580b3d57353.zip
external_webkit-1cbdecfa9fc428ac2d8aca0fa91c9580b3d57353.tar.gz
external_webkit-1cbdecfa9fc428ac2d8aca0fa91c9580b3d57353.tar.bz2
Code drop from //branches/cupcake/...@124589
Diffstat (limited to 'WebCore/svg/SVGFontData.h')
-rw-r--r--WebCore/svg/SVGFontData.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/WebCore/svg/SVGFontData.h b/WebCore/svg/SVGFontData.h
index cb2192c..4df3db2 100644
--- a/WebCore/svg/SVGFontData.h
+++ b/WebCore/svg/SVGFontData.h
@@ -31,7 +31,7 @@ public:
SVGFontData(SVGFontFaceElement*);
virtual ~SVGFontData();
- SVGFontFaceElement* svgFontFaceElement() const { return m_svgFontFaceElement.get(); }
+ SVGFontFaceElement* svgFontFaceElement() const { return m_svgFontFaceElement; }
float horizontalOriginX() const { return m_horizontalOriginX; }
float horizontalOriginY() const { return m_horizontalOriginY; }
@@ -42,7 +42,13 @@ public:
float verticalAdvanceY() const { return m_verticalAdvanceY; }
private:
- RefPtr<SVGFontFaceElement> m_svgFontFaceElement;
+ // Ths SVGFontFaceElement is kept alive --
+ // 1) in the external font case: by the CSSFontFaceSource, which holds a reference to the external SVG document
+ // containing the element;
+ // 2) in the in-document font case: by virtue of being in the document tree and making sure that when it is removed
+ // from the document, it removes the @font-face rule it owns from the document's mapped element sheet and forces
+ // a style update.
+ SVGFontFaceElement* m_svgFontFaceElement;
float m_horizontalOriginX;
float m_horizontalOriginY;