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

Unified Diff: Source/core/html/HTMLImageElement.h

Issue 369423002: Have srcset respond to viewport changes (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Got rid of assert Created 6 years, 5 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
Index: Source/core/html/HTMLImageElement.h
diff --git a/Source/core/html/HTMLImageElement.h b/Source/core/html/HTMLImageElement.h
index c5a9530318de0e8571e8af2d0540426365c39382..11c8178d499f3a5e3c6fe4415c842823a568e2f9 100644
--- a/Source/core/html/HTMLImageElement.h
+++ b/Source/core/html/HTMLImageElement.h
@@ -34,9 +34,12 @@ namespace blink {
class HTMLFormElement;
class ImageCandidate;
+class MediaQueryList;
class HTMLImageElement FINAL : public HTMLElement, public CanvasImageSource {
public:
+ class ViewportChangeListener;
+
static PassRefPtrWillBeRawPtr<HTMLImageElement> create(Document&);
static PassRefPtrWillBeRawPtr<HTMLImageElement> create(Document&, HTMLFormElement*, bool createdByParser);
static PassRefPtrWillBeRawPtr<HTMLImageElement> createForJSConstructor(Document&, int width, int height);
@@ -129,8 +132,11 @@ private:
ImageCandidate findBestFitImageFromPictureParent();
void setBestFitURLAndDPRFromImageCandidate(const ImageCandidate&);
HTMLImageLoader& imageLoader() const { return *m_imageLoader; }
+ void notifyViewportChanged();
+ void createMediaQueryListIfDoesNotExist();
OwnPtrWillBeMember<HTMLImageLoader> m_imageLoader;
+ RefPtrWillBeMember<ViewportChangeListener> m_listener;
#if ENABLE(OILPAN)
Member<HTMLFormElement> m_form;
#else
@@ -139,8 +145,12 @@ private:
CompositeOperator m_compositeOperator;
AtomicString m_bestFitImageURL;
float m_imageDevicePixelRatio;
- bool m_formWasSetByParser;
- bool m_elementCreatedByParser;
+ unsigned m_formWasSetByParser : 1;
+ unsigned m_elementCreatedByParser : 1;
+ // Intrinsic sizing is viewport dependant if the 'w' descriptor was used for the picked resource.
+ unsigned m_intrinsicSizingViewportDependant : 1;
+ // Effective size is viewport dependant if the sizes attribute's effective size used v* length units.
+ unsigned m_effectiveSizeViewportDependant : 1;
};
} //namespace

Powered by Google App Engine
This is Rietveld 408576698