1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
6 #include "core/html/HTMLPictureElement.h"
8 #include "core/HTMLNames.h"
9 #include "core/dom/ElementTraversal.h"
10 #include "core/frame/UseCounter.h"
11 #include "core/html/HTMLImageElement.h"
12 #include "core/loader/ImageLoader.h"
16 using namespace HTMLNames
;
18 inline HTMLPictureElement::HTMLPictureElement(Document
& document
)
19 : HTMLElement(pictureTag
, document
)
23 DEFINE_NODE_FACTORY(HTMLPictureElement
)
25 void HTMLPictureElement::sourceOrMediaChanged()
27 for (HTMLImageElement
* imageElement
= Traversal
<HTMLImageElement
>::firstChild(*this); imageElement
; imageElement
= Traversal
<HTMLImageElement
>::nextSibling(*imageElement
)) {
28 imageElement
->selectSourceURL(ImageLoader::UpdateNormal
);
32 Node::InsertionNotificationRequest
HTMLPictureElement::insertedInto(ContainerNode
* insertionPoint
)
34 UseCounter::count(document(), UseCounter::Picture
);
35 return HTMLElement::insertedInto(insertionPoint
);