Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(495)

Unified Diff: Source/core/css/FontFace.cpp

Issue 481453003: Add FontFaceDescriptors IDL dictionary (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@idl_gyp
Patch Set: rebase Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/css/FontFace.h ('k') | Source/core/css/FontFace.idl » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/css/FontFace.cpp
diff --git a/Source/core/css/FontFace.cpp b/Source/core/css/FontFace.cpp
index a6250bab725d18e724d209986bf554966694d37b..699ca35b8a366d9c0ded9ea416851478683b178d 100644
--- a/Source/core/css/FontFace.cpp
+++ b/Source/core/css/FontFace.cpp
@@ -31,7 +31,6 @@
#include "config.h"
#include "core/css/FontFace.h"
-#include "bindings/core/v8/Dictionary.h"
#include "bindings/core/v8/ExceptionState.h"
#include "bindings/core/v8/ScriptState.h"
#include "core/CSSValueKeywords.h"
@@ -42,6 +41,7 @@
#include "core/css/CSSPrimitiveValue.h"
#include "core/css/CSSUnicodeRangeValue.h"
#include "core/css/CSSValueList.h"
+#include "core/css/FontFaceDescriptors.h"
#include "core/css/LocalFontFaceSource.h"
#include "core/css/RemoteFontFaceSource.h"
#include "core/css/StylePropertySet.h"
@@ -70,7 +70,7 @@ static PassRefPtrWillBeRawPtr<CSSValue> parseCSSValue(const Document* document,
return parsedStyle->getPropertyCSSValue(propertyID);
}
-PassRefPtrWillBeRawPtr<FontFace> FontFace::create(ExecutionContext* context, const AtomicString& family, const String& source, const Dictionary& descriptors)
+PassRefPtrWillBeRawPtr<FontFace> FontFace::create(ExecutionContext* context, const AtomicString& family, const String& source, const FontFaceDescriptors* descriptors)
{
RefPtrWillBeRawPtr<FontFace> fontFace = adoptRefWillBeNoop(new FontFace(context, family, descriptors));
@@ -82,14 +82,14 @@ PassRefPtrWillBeRawPtr<FontFace> FontFace::create(ExecutionContext* context, con
return fontFace.release();
}
-PassRefPtrWillBeRawPtr<FontFace> FontFace::create(ExecutionContext* context, const AtomicString& family, PassRefPtr<ArrayBuffer> source, const Dictionary& descriptors)
+PassRefPtrWillBeRawPtr<FontFace> FontFace::create(ExecutionContext* context, const AtomicString& family, PassRefPtr<ArrayBuffer> source, const FontFaceDescriptors* descriptors)
{
RefPtrWillBeRawPtr<FontFace> fontFace = adoptRefWillBeNoop(new FontFace(context, family, descriptors));
fontFace->initCSSFontFace(static_cast<const unsigned char*>(source->data()), source->byteLength());
return fontFace.release();
}
-PassRefPtrWillBeRawPtr<FontFace> FontFace::create(ExecutionContext* context, const AtomicString& family, PassRefPtr<ArrayBufferView> source, const Dictionary& descriptors)
+PassRefPtrWillBeRawPtr<FontFace> FontFace::create(ExecutionContext* context, const AtomicString& family, PassRefPtr<ArrayBufferView> source, const FontFaceDescriptors* descriptors)
{
RefPtrWillBeRawPtr<FontFace> fontFace = adoptRefWillBeNoop(new FontFace(context, family, descriptors));
fontFace->initCSSFontFace(static_cast<const unsigned char*>(source->baseAddress()), source->byteLength());
@@ -131,26 +131,19 @@ FontFace::FontFace()
ScriptWrappable::init(this);
}
-FontFace::FontFace(ExecutionContext* context, const AtomicString& family, const Dictionary& descriptors)
+FontFace::FontFace(ExecutionContext* context, const AtomicString& family, const FontFaceDescriptors* descriptors)
: m_family(family)
, m_status(Unloaded)
{
ScriptWrappable::init(this);
Document* document = toDocument(context);
- String value;
- if (DictionaryHelper::get(descriptors, "style", value))
- setPropertyFromString(document, value, CSSPropertyFontStyle);
- if (DictionaryHelper::get(descriptors, "weight", value))
- setPropertyFromString(document, value, CSSPropertyFontWeight);
- if (DictionaryHelper::get(descriptors, "stretch", value))
- setPropertyFromString(document, value, CSSPropertyFontStretch);
- if (DictionaryHelper::get(descriptors, "unicodeRange", value))
- setPropertyFromString(document, value, CSSPropertyUnicodeRange);
- if (DictionaryHelper::get(descriptors, "variant", value))
- setPropertyFromString(document, value, CSSPropertyFontVariant);
- if (DictionaryHelper::get(descriptors, "featureSettings", value))
- setPropertyFromString(document, value, CSSPropertyWebkitFontFeatureSettings);
+ setPropertyFromString(document, descriptors->style(), CSSPropertyFontStyle);
+ setPropertyFromString(document, descriptors->weight(), CSSPropertyFontWeight);
+ // FIXME: we don't implement 'font-strech' property so we can't set the property.
+ setPropertyFromString(document, descriptors->unicodeRange(), CSSPropertyUnicodeRange);
+ setPropertyFromString(document, descriptors->variant(), CSSPropertyFontVariant);
+ setPropertyFromString(document, descriptors->featureSettings(), CSSPropertyWebkitFontFeatureSettings);
}
FontFace::~FontFace()
« no previous file with comments | « Source/core/css/FontFace.h ('k') | Source/core/css/FontFace.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698