OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
88 ScriptPromise loaded(ScriptState* scriptState) { return fontStatusPromise(sc
riptState); } | 88 ScriptPromise loaded(ScriptState* scriptState) { return fontStatusPromise(sc
riptState); } |
89 | 89 |
90 ScriptPromise load(ScriptState*); | 90 ScriptPromise load(ScriptState*); |
91 | 91 |
92 LoadStatus loadStatus() const { return m_status; } | 92 LoadStatus loadStatus() const { return m_status; } |
93 void setLoadStatus(LoadStatus); | 93 void setLoadStatus(LoadStatus); |
94 void setError(DOMException* = nullptr); | 94 void setError(DOMException* = nullptr); |
95 DOMException* error() const { return m_error; } | 95 DOMException* error() const { return m_error; } |
96 FontTraits traits() const; | 96 FontTraits traits() const; |
97 CSSFontFace* cssFontFace() { return m_cssFontFace.get(); } | 97 CSSFontFace* cssFontFace() { return m_cssFontFace.get(); } |
| 98 ScriptPromise binaryData(ScriptState*) const; |
98 | 99 |
99 DECLARE_VIRTUAL_TRACE(); | 100 DECLARE_VIRTUAL_TRACE(); |
100 | 101 |
101 bool hadBlankText() const; | 102 bool hadBlankText() const; |
102 | 103 |
103 class LoadFontCallback : public RefCountedWillBeGarbageCollectedFinalized<Lo
adFontCallback> { | 104 class LoadFontCallback : public RefCountedWillBeGarbageCollectedFinalized<Lo
adFontCallback> { |
104 public: | 105 public: |
105 virtual ~LoadFontCallback() { } | 106 virtual ~LoadFontCallback() { } |
106 virtual void notifyLoaded(FontFace*) = 0; | 107 virtual void notifyLoaded(FontFace*) = 0; |
107 virtual void notifyError(FontFace*) = 0; | 108 virtual void notifyError(FontFace*) = 0; |
108 DEFINE_INLINE_VIRTUAL_TRACE() { } | 109 DEFINE_INLINE_VIRTUAL_TRACE() { } |
109 }; | 110 }; |
110 void loadWithCallback(PassRefPtrWillBeRawPtr<LoadFontCallback>, ExecutionCon
text*); | 111 void loadWithCallback(PassRefPtrWillBeRawPtr<LoadFontCallback>, ExecutionCon
text*); |
111 | 112 |
112 // ActiveDOMObject | 113 // ActiveDOMObject |
113 bool hasPendingActivity() const override; | 114 bool hasPendingActivity() const override; |
114 | 115 |
| 116 protected: |
| 117 void initCSSFontFace(Document*, PassRefPtrWillBeRawPtr<CSSValue> src); |
| 118 FontFace(ExecutionContext*, const AtomicString& family, const FontFaceDescri
ptors&); |
| 119 |
115 private: | 120 private: |
116 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, PassRefPtr<DOMArrayBuffer> source, const FontFaceDescriptors&)
; | 121 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, PassRefPtr<DOMArrayBuffer> source, const FontFaceDescriptors&)
; |
117 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, PassRefPtr<DOMArrayBufferView>, const FontFaceDescriptors&); | 122 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, PassRefPtr<DOMArrayBufferView>, const FontFaceDescriptors&); |
118 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, const String& source, const FontFaceDescriptors&); | 123 static PassRefPtrWillBeRawPtr<FontFace> create(ExecutionContext*, const Atom
icString& family, const String& source, const FontFaceDescriptors&); |
119 | 124 |
120 explicit FontFace(ExecutionContext*); | 125 explicit FontFace(ExecutionContext*); |
121 FontFace(ExecutionContext*, const AtomicString& family, const FontFaceDescri
ptors&); | |
122 | 126 |
123 void initCSSFontFace(Document*, PassRefPtrWillBeRawPtr<CSSValue> src); | |
124 void initCSSFontFace(const unsigned char* data, size_t); | 127 void initCSSFontFace(const unsigned char* data, size_t); |
125 void setPropertyFromString(const Document*, const String&, CSSPropertyID, Ex
ceptionState* = 0); | 128 void setPropertyFromString(const Document*, const String&, CSSPropertyID, Ex
ceptionState* = 0); |
126 bool setPropertyFromStyle(const StylePropertySet&, CSSPropertyID); | 129 bool setPropertyFromStyle(const StylePropertySet&, CSSPropertyID); |
127 bool setPropertyValue(PassRefPtrWillBeRawPtr<CSSValue>, CSSPropertyID); | 130 bool setPropertyValue(PassRefPtrWillBeRawPtr<CSSValue>, CSSPropertyID); |
128 bool setFamilyValue(const CSSValue&); | 131 bool setFamilyValue(const CSSValue&); |
129 void loadInternal(ExecutionContext*); | 132 void loadInternal(ExecutionContext*); |
130 ScriptPromise fontStatusPromise(ScriptState*); | 133 ScriptPromise fontStatusPromise(ScriptState*); |
131 | 134 |
132 using LoadedProperty = ScriptPromiseProperty<RawPtrWillBeMember<FontFace>, R
awPtrWillBeMember<FontFace>, Member<DOMException>>; | 135 using LoadedProperty = ScriptPromiseProperty<RawPtrWillBeMember<FontFace>, R
awPtrWillBeMember<FontFace>, Member<DOMException>>; |
133 | 136 |
(...skipping 12 matching lines...) Expand all Loading... |
146 PersistentWillBeMember<LoadedProperty> m_loadedProperty; | 149 PersistentWillBeMember<LoadedProperty> m_loadedProperty; |
147 OwnPtrWillBeMember<CSSFontFace> m_cssFontFace; | 150 OwnPtrWillBeMember<CSSFontFace> m_cssFontFace; |
148 WillBeHeapVector<RefPtrWillBeMember<LoadFontCallback>> m_callbacks; | 151 WillBeHeapVector<RefPtrWillBeMember<LoadFontCallback>> m_callbacks; |
149 }; | 152 }; |
150 | 153 |
151 using FontFaceArray = WillBeHeapVector<RefPtrWillBeMember<FontFace>>; | 154 using FontFaceArray = WillBeHeapVector<RefPtrWillBeMember<FontFace>>; |
152 | 155 |
153 } // namespace blink | 156 } // namespace blink |
154 | 157 |
155 #endif // FontFace_h | 158 #endif // FontFace_h |
OLD | NEW |