зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1435984 - patch 4 - Expose variationSettings on the FontFace webidl interface. r=bz,jwatt
--HG-- extra : source : 987305fa2a5faba6da86f8f0d494a6ce3dc77b33
This commit is contained in:
Родитель
5bb5607380
Коммит
8cc473a34a
|
@ -19,6 +19,7 @@ dictionary FontFaceDescriptors {
|
|||
DOMString unicodeRange = "U+0-10FFFF";
|
||||
DOMString variant = "normal";
|
||||
DOMString featureSettings = "normal";
|
||||
DOMString variationSettings = "normal";
|
||||
DOMString display = "auto";
|
||||
};
|
||||
|
||||
|
@ -38,6 +39,7 @@ interface FontFace {
|
|||
[SetterThrows] attribute DOMString unicodeRange;
|
||||
[SetterThrows] attribute DOMString variant;
|
||||
[SetterThrows] attribute DOMString featureSettings;
|
||||
[SetterThrows, Pref="layout.css.font-variations.enabled"] attribute DOMString variationSettings;
|
||||
[SetterThrows, Pref="layout.css.font-display.enabled"] attribute DOMString display;
|
||||
|
||||
readonly attribute FontFaceLoadStatus status;
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#include "nsCSSParser.h"
|
||||
#include "nsIDocument.h"
|
||||
#include "nsStyleUtil.h"
|
||||
#include "StylePrefs.h"
|
||||
|
||||
namespace mozilla {
|
||||
namespace dom {
|
||||
|
@ -344,6 +345,21 @@ FontFace::SetFeatureSettings(const nsAString& aValue, ErrorResult& aRv)
|
|||
SetDescriptor(eCSSFontDesc_FontFeatureSettings, aValue, aRv);
|
||||
}
|
||||
|
||||
void
|
||||
FontFace::GetVariationSettings(nsString& aResult)
|
||||
{
|
||||
mFontFaceSet->FlushUserFontSet();
|
||||
GetDesc(eCSSFontDesc_FontVariationSettings, eCSSProperty_font_variation_settings,
|
||||
aResult);
|
||||
}
|
||||
|
||||
void
|
||||
FontFace::SetVariationSettings(const nsAString& aValue, ErrorResult& aRv)
|
||||
{
|
||||
mFontFaceSet->FlushUserFontSet();
|
||||
SetDescriptor(eCSSFontDesc_FontVariationSettings, aValue, aRv);
|
||||
}
|
||||
|
||||
void
|
||||
FontFace::GetDisplay(nsString& aResult)
|
||||
{
|
||||
|
@ -600,6 +616,10 @@ FontFace::SetDescriptors(const nsAString& aFamily,
|
|||
!ParseDescriptor(eCSSFontDesc_FontFeatureSettings,
|
||||
aDescriptors.mFeatureSettings,
|
||||
mDescriptors->mFontFeatureSettings) ||
|
||||
(StylePrefs::sFontVariationsEnabled &&
|
||||
!ParseDescriptor(eCSSFontDesc_FontVariationSettings,
|
||||
aDescriptors.mVariationSettings,
|
||||
mDescriptors->mFontVariationSettings)) ||
|
||||
!ParseDescriptor(eCSSFontDesc_Display,
|
||||
aDescriptors.mDisplay,
|
||||
mDescriptors->mDisplay)) {
|
||||
|
|
|
@ -162,6 +162,8 @@ public:
|
|||
void SetVariant(const nsAString& aValue, mozilla::ErrorResult& aRv);
|
||||
void GetFeatureSettings(nsString& aResult);
|
||||
void SetFeatureSettings(const nsAString& aValue, mozilla::ErrorResult& aRv);
|
||||
void GetVariationSettings(nsString& aResult);
|
||||
void SetVariationSettings(const nsAString& aValue, mozilla::ErrorResult& aRv);
|
||||
void GetDisplay(nsString& aResult);
|
||||
void SetDisplay(const nsAString& aValue, mozilla::ErrorResult& aRv);
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче