Changeset 152203 in webkit


Ignore:
Timestamp:
Jun 28, 2013 7:41:54 PM (11 years ago)
Author:
kangil.han@samsung.com
Message:

Adopt is/toHTMLImageElement for code cleanup
https://bugs.webkit.org/show_bug.cgi?id=118182

Reviewed by Andreas Kling.

To enhance readability, this patch adopts is/toHTMLImageElement.
This also helps out to reduce duplicated use of static_cast.

Source/WebCore:

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::isNativeImage):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::url):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::isReachableFromDOM):

  • bridge/qt/qt_pixmapruntime.cpp:

(JSC::Bindings::assignToHTMLImageElement):
(JSC::Bindings::QtPixmapRuntime::toQt):

  • dom/Clipboard.cpp:

(WebCore::Clipboard::setDragImage):

  • dom/Node.cpp:

(WebCore::Node::enclosingLinkEventParentOrSelf):

  • editing/Editor.cpp:

(WebCore::imageElementFromImageDocument):

  • html/HTMLAnchorElement.cpp:

(WebCore::appendServerMapMousePosition):

  • html/HTMLImageElement.h:

(WebCore::isHTMLImageElement):
(WebCore::toHTMLImageElement):

  • html/HTMLMapElement.cpp:

(WebCore::HTMLMapElement::imageElement):

  • html/HTMLNameCollection.cpp:

(WebCore::WindowNameCollection::nodeMatchesIfNameAttributeMatch):
(WebCore::DocumentNameCollection::nodeMatchesIfIdAttributeMatch):
(WebCore::DocumentNameCollection::nodeMatchesIfNameAttributeMatch):
(WebCore::DocumentNameCollection::nodeMatches):

  • page/DragController.cpp:

(WebCore::DragController::draggableElement):

  • page/PageSerializer.cpp:

(WebCore::PageSerializer::serializeFrame):

  • platform/gtk/PasteboardGtk.cpp:

(WebCore::getURLForImageNode):

  • platform/mac/HTMLConverter.mm:

(+[WebHTMLConverter editingAttributedStringFromRange:]):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::altDisplayString):
(WebCore::HitTestResult::absoluteImageURL):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::paintIntoRect):
(WebCore::RenderImage::imageMap):
(WebCore::RenderImage::updateAltText):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::shouldRespectImageOrientation):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::webContext):
(BlackBerry::WebKit::WebPagePrivate::blockZoomRectForNode):
(BlackBerry::WebKit::WebPage::blockZoom):

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::isElementClickable):

Location:
trunk/Source
Files:
22 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r152202 r152203  
     12013-06-28  Kangil Han  <kangil.han@samsung.com>
     2
     3        Adopt is/toHTMLImageElement for code cleanup
     4        https://bugs.webkit.org/show_bug.cgi?id=118182
     5
     6        Reviewed by Andreas Kling.
     7
     8        To enhance readability, this patch adopts is/toHTMLImageElement.
     9        This also helps out to reduce duplicated use of static_cast.
     10
     11        * accessibility/AccessibilityNodeObject.cpp:
     12        (WebCore::AccessibilityNodeObject::isNativeImage):
     13        * accessibility/AccessibilityRenderObject.cpp:
     14        (WebCore::AccessibilityRenderObject::url):
     15        * bindings/js/JSNodeCustom.cpp:
     16        (WebCore::isReachableFromDOM):
     17        * bridge/qt/qt_pixmapruntime.cpp:
     18        (JSC::Bindings::assignToHTMLImageElement):
     19        (JSC::Bindings::QtPixmapRuntime::toQt):
     20        * dom/Clipboard.cpp:
     21        (WebCore::Clipboard::setDragImage):
     22        * dom/Node.cpp:
     23        (WebCore::Node::enclosingLinkEventParentOrSelf):
     24        * editing/Editor.cpp:
     25        (WebCore::imageElementFromImageDocument):
     26        * html/HTMLAnchorElement.cpp:
     27        (WebCore::appendServerMapMousePosition):
     28        * html/HTMLImageElement.h:
     29        (WebCore::isHTMLImageElement):
     30        (WebCore::toHTMLImageElement):
     31        * html/HTMLMapElement.cpp:
     32        (WebCore::HTMLMapElement::imageElement):
     33        * html/HTMLNameCollection.cpp:
     34        (WebCore::WindowNameCollection::nodeMatchesIfNameAttributeMatch):
     35        (WebCore::DocumentNameCollection::nodeMatchesIfIdAttributeMatch):
     36        (WebCore::DocumentNameCollection::nodeMatchesIfNameAttributeMatch):
     37        (WebCore::DocumentNameCollection::nodeMatches):
     38        * page/DragController.cpp:
     39        (WebCore::DragController::draggableElement):
     40        * page/PageSerializer.cpp:
     41        (WebCore::PageSerializer::serializeFrame):
     42        * platform/gtk/PasteboardGtk.cpp:
     43        (WebCore::getURLForImageNode):
     44        * platform/mac/HTMLConverter.mm:
     45        (+[WebHTMLConverter editingAttributedStringFromRange:]):
     46        * rendering/HitTestResult.cpp:
     47        (WebCore::HitTestResult::altDisplayString):
     48        (WebCore::HitTestResult::absoluteImageURL):
     49        * rendering/RenderImage.cpp:
     50        (WebCore::RenderImage::paintIntoRect):
     51        (WebCore::RenderImage::imageMap):
     52        (WebCore::RenderImage::updateAltText):
     53        * rendering/RenderObject.cpp:
     54        (WebCore::RenderObject::shouldRespectImageOrientation):
     55
    1562013-06-28  Gavin Barraclough  <barraclough@apple.com>
    257
  • trunk/Source/WebCore/accessibility/AccessibilityNodeObject.cpp

    r152149 r152203  
    489489        return false;
    490490
    491     if (node->hasTagName(imgTag))
     491    if (isHTMLImageElement(node))
    492492        return true;
    493493
  • trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp

    r152149 r152203  
    14681468        return m_renderer->document()->url();
    14691469   
    1470     if (isImage() && m_renderer->node() && m_renderer->node()->hasTagName(imgTag))
    1471         return static_cast<HTMLImageElement*>(m_renderer->node())->src();
     1470    if (isImage() && m_renderer->node() && isHTMLImageElement(m_renderer->node()))
     1471        return toHTMLImageElement(m_renderer->node())->src();
    14721472   
    14731473    if (isInputImage())
  • trunk/Source/WebCore/bindings/js/JSNodeCustom.cpp

    r151981 r152203  
    106106        // the element is destroyed, its load event will not fire.
    107107        // FIXME: The DOM should manage this issue without the help of JavaScript wrappers.
    108         if (node->hasTagName(imgTag)) {
    109             if (static_cast<HTMLImageElement*>(node)->hasPendingActivity())
     108        if (isHTMLImageElement(node)) {
     109            if (toHTMLImageElement(node)->hasPendingActivity())
    110110                return true;
    111111        }
  • trunk/Source/WebCore/bridge/qt/qt_pixmapruntime.cpp

    r151170 r152203  
    138138    // We now know that we have a valid <img> element as the argument, we can attach the pixmap to it.
    139139    RefPtr<StillImage> stillImage = WebCore::StillImage::create(toPixmap(data));
    140     HTMLImageElement* imageElement = static_cast<HTMLImageElement*>(static_cast<JSHTMLImageElement*>(jsObject)->impl());
     140    HTMLImageElement* imageElement = toHTMLImageElement(static_cast<JSHTMLImageElement*>(jsObject)->impl());
    141141    imageElement->setCachedImage(new CachedImage(stillImage.get()));
    142142    return JSValueMakeUndefined(context);
     
    219219
    220220    JSHTMLImageElement* elementJSWrapper = static_cast<JSHTMLImageElement*>(jsObject);
    221     HTMLImageElement* imageElement = static_cast<HTMLImageElement*>(elementJSWrapper->impl());
     221    HTMLImageElement* imageElement = toHTMLImageElement(elementJSWrapper->impl());
    222222
    223223    if (!imageElement)
  • trunk/Source/WebCore/dom/Clipboard.cpp

    r150926 r152203  
    286286        return;
    287287
    288     if (element && element->hasTagName(HTMLNames::imgTag) && !element->inDocument())
    289         setDragImage(static_cast<HTMLImageElement*>(element)->cachedImage(), IntPoint(x, y));
     288    if (element && isHTMLImageElement(element) && !element->inDocument())
     289        setDragImage(toHTMLImageElement(element)->cachedImage(), IntPoint(x, y));
    290290    else
    291291        setDragImageElement(element, IntPoint(x, y));
     
    386386
    387387    CachedImage* image;
    388     if (element && element->hasTagName(HTMLNames::imgTag) && !element->inDocument())
    389         image = static_cast<HTMLImageElement*>(element)->cachedImage();
     388    if (element && isHTMLImageElement(element) && !element->inDocument())
     389        image = toHTMLImageElement(element)->cachedImage();
    390390    else
    391391        image = 0;
  • trunk/Source/WebCore/dom/Node.cpp

    r151911 r152203  
    6565#include "HTMLElement.h"
    6666#include "HTMLFrameOwnerElement.h"
     67#include "HTMLImageElement.h"
    6768#include "HTMLNames.h"
    6869#include "HTMLStyleElement.h"
     
    19501951        // So we don't let images be the enclosingLinkNode, even though isLink sometimes returns true
    19511952        // for them.
    1952         if (node->isLink() && !node->hasTagName(imgTag))
     1953        if (node->isLink() && !isHTMLImageElement(node))
    19531954            return node;
    19541955    }
  • trunk/Source/WebCore/editing/Editor.cpp

    r151947 r152203  
    289289    Node* node = body->firstChild();
    290290    if (!node)
    291         return 0;   
    292     if (!node->hasTagName(imgTag))
    293291        return 0;
    294     return static_cast<HTMLImageElement*>(node);
     292    if (!isHTMLImageElement(node))
     293        return 0;
     294    return toHTMLImageElement(node);
    295295}
    296296
  • trunk/Source/WebCore/html/HTMLAnchorElement.cpp

    r150784 r152203  
    157157    Node* target = event->target()->toNode();
    158158    ASSERT(target);
    159     if (!target->hasTagName(imgTag))
    160         return;
    161 
    162     HTMLImageElement* imageElement = static_cast<HTMLImageElement*>(event->target()->toNode());
     159    if (!isHTMLImageElement(target))
     160        return;
     161
     162    HTMLImageElement* imageElement = toHTMLImageElement(target);
    163163    if (!imageElement || !imageElement->isServerMap())
    164164        return;
  • trunk/Source/WebCore/html/HTMLImageElement.h

    r151282 r152203  
    113113};
    114114
     115inline bool isHTMLImageElement(Node* node)
     116{
     117    return node->hasTagName(HTMLNames::imgTag);
     118}
     119
     120inline HTMLImageElement* toHTMLImageElement(Node* node)
     121{
     122    ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLImageElement(node));
     123    return static_cast<HTMLImageElement*>(node);
     124}
     125
    115126} //namespace
    116127
  • trunk/Source/WebCore/html/HTMLMapElement.cpp

    r151996 r152203  
    8686    RefPtr<HTMLCollection> images = document()->images();
    8787    for (unsigned i = 0; Node* curr = images->item(i); i++) {
    88         if (!curr->hasTagName(imgTag))
     88        if (!isHTMLImageElement(curr))
    8989            continue;
    9090       
    9191        // The HTMLImageElement's useMap() value includes the '#' symbol at the beginning,
    9292        // which has to be stripped off.
    93         HTMLImageElement* imageElement = static_cast<HTMLImageElement*>(curr);
     93        HTMLImageElement* imageElement = toHTMLImageElement(curr);
    9494        String useMapName = imageElement->getAttribute(usemapAttr).string().substring(1);
    9595        if (equalIgnoringCase(useMapName, m_name))
  • trunk/Source/WebCore/html/HTMLNameCollection.cpp

    r151949 r152203  
    2727#include "HTMLDocument.h"
    2828#include "HTMLFormElement.h"
     29#include "HTMLImageElement.h"
    2930#include "HTMLNames.h"
    3031#include "HTMLObjectElement.h"
     
    5354bool WindowNameCollection::nodeMatchesIfNameAttributeMatch(Element* element)
    5455{
    55     return element->hasTagName(imgTag) || isHTMLFormElement(element) || element->hasTagName(appletTag)
     56    return isHTMLImageElement(element) || isHTMLFormElement(element) || element->hasTagName(appletTag)
    5657        || element->hasTagName(embedTag) || element->hasTagName(objectTag);
    5758}
     
    6970    // FIXME: we need to fix HTMLImageElement to update the hash map for us when name attribute has been removed.
    7071    return element->hasTagName(appletTag) || (element->hasTagName(objectTag) && toHTMLObjectElement(element)->isDocNamedItem())
    71         || (element->hasTagName(imgTag) && element->hasName());
     72        || (isHTMLImageElement(element) && element->hasName());
    7273}
    7374
     
    7677    return isHTMLFormElement(element) || element->hasTagName(embedTag) || element->hasTagName(iframeTag)
    7778        || element->hasTagName(appletTag) || (element->hasTagName(objectTag) && toHTMLObjectElement(element)->isDocNamedItem())
    78         || element->hasTagName(imgTag);
     79        || isHTMLImageElement(element);
    7980}
    8081
     
    8990    if (element->hasTagName(objectTag))
    9091        return (element->getNameAttribute() == name || element->getIdAttribute() == name) && toHTMLObjectElement(element)->isDocNamedItem();
    91     if (element->hasTagName(imgTag))
     92    if (isHTMLImageElement(element))
    9293        return element->getNameAttribute() == name || (element->getIdAttribute() == name && element->hasName());
    9394    return false;
  • trunk/Source/WebCore/page/DragController.cpp

    r151975 r152203  
    5252#include "FrameView.h"
    5353#include "HTMLAnchorElement.h"
     54#include "HTMLImageElement.h"
    5455#include "HTMLInputElement.h"
    5556#include "HTMLNames.h"
     
    660661            if (dragMode == DRAG_AUTO) {
    661662                if ((m_dragSourceAction & DragSourceActionImage)
    662                     && node->hasTagName(HTMLNames::imgTag)
     663                    && isHTMLImageElement(node)
    663664                    && sourceFrame->settings()
    664665                    && sourceFrame->settings()->loadsImagesAutomatically()) {
  • trunk/Source/WebCore/page/PageSerializer.cpp

    r151911 r152203  
    232232            retrieveResourcesForProperties(static_cast<StyledElement*>(element)->inlineStyle(), document);
    233233
    234         if (element->hasTagName(HTMLNames::imgTag)) {
    235             HTMLImageElement* imageElement = static_cast<HTMLImageElement*>(element);
     234        if (isHTMLImageElement(element)) {
     235            HTMLImageElement* imageElement = toHTMLImageElement(element);
    236236            KURL url = document->completeURL(imageElement->getAttribute(HTMLNames::srcAttr));
    237237            CachedImage* cachedImage = imageElement->cachedImage();
  • trunk/Source/WebCore/platform/gtk/PasteboardGtk.cpp

    r152149 r152203  
    2626#include "Editor.h"
    2727#include "Frame.h"
     28#include "HTMLImageElement.h"
    2829#include "HTMLInputElement.h"
    2930#include "HTMLNames.h"
     
    200201    // FIXME: Later this code should be shared with Chromium somehow. Chances are all platforms want it.
    201202    AtomicString urlString;
    202     if (node->hasTagName(HTMLNames::imgTag) || isHTMLInputElement(node))
     203    if (isHTMLImageElement(node) || isHTMLInputElement(node))
    203204        urlString = toElement(node)->getAttribute(HTMLNames::srcAttr);
    204205#if ENABLE(SVG)
  • trunk/Source/WebCore/platform/mac/HTMLConverter.mm

    r150525 r152203  
    4141#import "Frame.h"
    4242#import "FrameLoader.h"
     43#import "HTMLImageElement.h"
    4344#import "HTMLNames.h"
    4445#import "HTMLParserIdioms.h"
     
    16761677        if (startContainer == endContainer && (startOffset == endOffset - 1)) {
    16771678            Node* node = startContainer->childNode(startOffset);
    1678             if (node && node->hasTagName(imgTag)) {
     1679            if (node && isHTMLImageElement(node)) {
    16791680                NSFileWrapper* fileWrapper = fileWrapperForElement(toElement(node));
    16801681                NSTextAttachment* attachment = [[NSTextAttachment alloc] initWithFileWrapper:fileWrapper];
  • trunk/Source/WebCore/rendering/HitTestResult.cpp

    r152149 r152203  
    272272        return String();
    273273   
    274     if (m_innerNonSharedNode->hasTagName(imgTag)) {
    275         HTMLImageElement* image = static_cast<HTMLImageElement*>(m_innerNonSharedNode.get());
     274    if (isHTMLImageElement(m_innerNonSharedNode.get())) {
     275        HTMLImageElement* image = toHTMLImageElement(m_innerNonSharedNode.get());
    276276        return displayString(image->getAttribute(altAttr), m_innerNonSharedNode.get());
    277277    }
     
    317317    AtomicString urlString;
    318318    if (m_innerNonSharedNode->hasTagName(embedTag)
    319         || m_innerNonSharedNode->hasTagName(imgTag)
     319        || isHTMLImageElement(m_innerNonSharedNode.get())
    320320        || isHTMLInputElement(m_innerNonSharedNode.get())
    321321        || m_innerNonSharedNode->hasTagName(objectTag)
  • trunk/Source/WebCore/rendering/RenderImage.cpp

    r152149 r152203  
    472472        return;
    473473
    474     HTMLImageElement* imageElt = (node() && node()->hasTagName(imgTag)) ? static_cast<HTMLImageElement*>(node()) : 0;
     474    HTMLImageElement* imageElt = (node() && isHTMLImageElement(node())) ? toHTMLImageElement(node()) : 0;
    475475    CompositeOperator compositeOperator = imageElt ? imageElt->compositeOperator() : CompositeSourceOver;
    476476    Image* image = m_imageResource->image().get();
     
    525525HTMLMapElement* RenderImage::imageMap() const
    526526{
    527     HTMLImageElement* i = node() && node()->hasTagName(imgTag) ? static_cast<HTMLImageElement*>(node()) : 0;
     527    HTMLImageElement* i = node() && isHTMLImageElement(node()) ? toHTMLImageElement(node()) : 0;
    528528    return i ? i->treeScope()->getImageMap(i->fastGetAttribute(usemapAttr)) : 0;
    529529}
     
    560560    if (isHTMLInputElement(node()))
    561561        m_altText = toHTMLInputElement(node())->altText();
    562     else if (node()->hasTagName(imgTag))
    563         m_altText = static_cast<HTMLImageElement*>(node())->altText();
     562    else if (isHTMLImageElement(node()))
     563        m_altText = toHTMLImageElement(node())->altText();
    564564}
    565565
  • trunk/Source/WebCore/rendering/RenderObject.cpp

    r151975 r152203  
    4141#include "HTMLAnchorElement.h"
    4242#include "HTMLElement.h"
     43#include "HTMLImageElement.h"
    4344#include "HTMLNames.h"
    4445#include "HitTestResult.h"
     
    23292330        document()->isImageDocument() ||
    23302331#endif
    2331         (document()->settings() && document()->settings()->shouldRespectImageOrientation() && node() && node()->hasTagName(HTMLNames::imgTag)) ? RespectImageOrientation : DoNotRespectImageOrientation;
     2332        (document()->settings() && document()->settings()->shouldRespectImageOrientation() && node() && isHTMLImageElement(node())) ? RespectImageOrientation : DoNotRespectImageOrientation;
    23322333}
    23332334
  • trunk/Source/WebKit/blackberry/Api/WebPage.cpp

    r152149 r152203  
    21342134
    21352135    bool nodeAllowSelectionOverride = false;
    2136     bool nodeIsImage = node->isHTMLElement() && node->hasTagName(HTMLNames::imgTag);
     2136    bool nodeIsImage = node->isHTMLElement() && isHTMLImageElement(node);
    21372137    Node* linkNode = node->enclosingLinkEventParentOrSelf();
    21382138    // Set link url only when the node is linked image, or text inside anchor. Prevent CCM popup when long press non-link element(eg. button) inside an anchor.
     
    21622162        HTMLMediaElement* mediaElement = 0;
    21632163
    2164         if (node->hasTagName(HTMLNames::imgTag))
    2165             imageElement = static_cast<HTMLImageElement*>(node.get());
     2164        if (isHTMLImageElement(node))
     2165            imageElement = toHTMLImageElement(node.get());
    21662166        else if (isHTMLAreaElement(node))
    21672167            imageElement = toHTMLAreaElement(node.get())->imageElement();
     
    28322832    double blockExpansionRatio = 5.0 * blockToPageRatio * blockToPageRatio;
    28332833
    2834     if (!tnode->hasTagName(HTMLNames::imgTag) && !isHTMLInputElement(tnode) && !tnode->hasTagName(HTMLNames::textareaTag)) {
     2834    if (!isHTMLImageElement(tnode) && !isHTMLInputElement(tnode) && !tnode->hasTagName(HTMLNames::textareaTag)) {
    28352835        while ((tnode = tnode->parentNode())) {
    28362836            ASSERT(tnode);
     
    45004500        // Don't use a block if it is too close to the size of the actual contents.
    45014501        // We allow this for images only so that they can be zoomed tight to the screen.
    4502         if (!node->hasTagName(HTMLNames::imgTag)) {
     4502        if (!isHTMLImageElement(node)) {
    45034503            const IntRect tRect = viewportAccessor->roundToDocumentFromPixelContents(WebCore::FloatRect(blockRect));
    45044504            int blockArea = tRect.width() * tRect.height();
  • trunk/Source/WebKit/blackberry/ChangeLog

    r152149 r152203  
     12013-06-28  Kangil Han  <kangil.han@samsung.com>
     2
     3        Adopt is/toHTMLImageElement for code cleanup
     4        https://bugs.webkit.org/show_bug.cgi?id=118182
     5
     6        Reviewed by Andreas Kling.
     7
     8        To enhance readability, this patch adopts is/toHTMLImageElement.
     9        This also helps out to reduce duplicated use of static_cast.
     10
     11        * Api/WebPage.cpp:
     12        (BlackBerry::WebKit::WebPagePrivate::webContext):
     13        (BlackBerry::WebKit::WebPagePrivate::blockZoomRectForNode):
     14        (BlackBerry::WebKit::WebPage::blockZoom):
     15        * WebKitSupport/FatFingers.cpp:
     16        (BlackBerry::WebKit::FatFingers::isElementClickable):
     17
    1182013-06-27  Kangil Han  <kangil.han@samsung.com>
    219
  • trunk/Source/WebKit/blackberry/WebKitSupport/FatFingers.cpp

    r151975 r152203  
    9494        || element->isMediaControlElement()
    9595        || element->isContentEditable()
    96         || (element->hasTagName(HTMLNames::imgTag) && element->parentNode() && isHTMLAnchorElement(element->parentNode())))
     96        || (isHTMLImageElement(element) && element->parentNode() && isHTMLAnchorElement(element->parentNode())))
    9797        return true;
    9898
Note: See TracChangeset for help on using the changeset viewer.