Home | History | Annotate | Download | only in html
      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.
      4 
      5 #include "config.h"
      6 #include "core/html/HTMLPictureElement.h"
      7 
      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"
     13 
     14 namespace blink {
     15 
     16 using namespace HTMLNames;
     17 
     18 inline HTMLPictureElement::HTMLPictureElement(Document& document)
     19     : HTMLElement(pictureTag, document)
     20 {
     21 }
     22 
     23 DEFINE_NODE_FACTORY(HTMLPictureElement)
     24 
     25 void HTMLPictureElement::sourceOrMediaChanged()
     26 {
     27     for (HTMLImageElement* imageElement = Traversal<HTMLImageElement>::firstChild(*this); imageElement; imageElement = Traversal<HTMLImageElement>::nextSibling(*imageElement)) {
     28         imageElement->selectSourceURL(ImageLoader::UpdateNormal);
     29     }
     30 }
     31 
     32 Node::InsertionNotificationRequest HTMLPictureElement::insertedInto(ContainerNode* insertionPoint)
     33 {
     34     UseCounter::count(document(), UseCounter::Picture);
     35     return HTMLElement::insertedInto(insertionPoint);
     36 }
     37 
     38 } // namespace
     39