diff --git a/content/html/content/src/HTMLImageElement.cpp b/content/html/content/src/HTMLImageElement.cpp index 5a87e5c3a364..702a7ec938b2 100644 --- a/content/html/content/src/HTMLImageElement.cpp +++ b/content/html/content/src/HTMLImageElement.cpp @@ -87,6 +87,7 @@ NS_IMPL_STRING_ATTR(HTMLImageElement, Border, border) NS_IMPL_INT_ATTR(HTMLImageElement, Hspace, hspace) NS_IMPL_BOOL_ATTR(HTMLImageElement, IsMap, ismap) NS_IMPL_URI_ATTR(HTMLImageElement, LongDesc, longdesc) +NS_IMPL_STRING_ATTR(HTMLImageElement, Sizes, sizes) NS_IMPL_STRING_ATTR(HTMLImageElement, Lowsrc, lowsrc) NS_IMPL_URI_ATTR(HTMLImageElement, Src, src) NS_IMPL_STRING_ATTR(HTMLImageElement, Srcset, srcset) diff --git a/content/html/content/src/HTMLImageElement.h b/content/html/content/src/HTMLImageElement.h index be76e34fb7f2..1fa0558cc98d 100644 --- a/content/html/content/src/HTMLImageElement.h +++ b/content/html/content/src/HTMLImageElement.h @@ -159,6 +159,10 @@ public: { SetHTMLAttr(nsGkAtoms::longdesc, aLongDesc, aError); } + void SetSizes(const nsAString& aSizes, ErrorResult& aError) + { + SetHTMLAttr(nsGkAtoms::sizes, aSizes, aError); + } void SetBorder(const nsAString& aBorder, ErrorResult& aError) { SetHTMLAttr(nsGkAtoms::border, aBorder, aError); diff --git a/dom/interfaces/html/nsIDOMHTMLImageElement.idl b/dom/interfaces/html/nsIDOMHTMLImageElement.idl index 65d908420f8c..1419ed732586 100644 --- a/dom/interfaces/html/nsIDOMHTMLImageElement.idl +++ b/dom/interfaces/html/nsIDOMHTMLImageElement.idl @@ -16,12 +16,13 @@ * http://www.whatwg.org/specs/web-apps/current-work/ */ -[uuid(939f4ea1-cb8d-49d0-a4e1-23bce758f4af)] +[uuid(e83e726a-0aef-4292-938b-253fec691e2f)] interface nsIDOMHTMLImageElement : nsISupports { attribute DOMString alt; attribute DOMString src; attribute DOMString srcset; + attribute DOMString sizes; attribute DOMString crossOrigin; attribute DOMString useMap; attribute boolean isMap; diff --git a/dom/webidl/HTMLImageElement.webidl b/dom/webidl/HTMLImageElement.webidl index ce1187edf56e..8d918f724e25 100644 --- a/dom/webidl/HTMLImageElement.webidl +++ b/dom/webidl/HTMLImageElement.webidl @@ -59,6 +59,8 @@ partial interface HTMLImageElement { // [Update me: not in whatwg spec yet] // http://picture.responsiveimages.org/#the-img-element partial interface HTMLImageElement { + [SetterThrows, Pref="dom.image.picture.enabled"] + attribute DOMString sizes; [Pref="dom.image.srcset.enabled"] readonly attribute DOMString? currentSrc; }; diff --git a/modules/libpref/src/init/all.js b/modules/libpref/src/init/all.js index 72fab9dc3767..7d42843859fd 100644 --- a/modules/libpref/src/init/all.js +++ b/modules/libpref/src/init/all.js @@ -3930,6 +3930,9 @@ pref("dom.battery.enabled", true); // Image srcset pref("dom.image.srcset.enabled", false); +// element and sizes +pref("dom.image.picture.enabled", false); + // WebSMS pref("dom.sms.enabled", false); // Enable Latin characters replacement with corresponding ones in GSM SMS