Changeset 152353 in webkit


Ignore:
Timestamp:
Jul 3, 2013 7:18:34 AM (11 years ago)
Author:
kangil.han@samsung.com
Message:

Append overloading function for isFooElement
https://bugs.webkit.org/show_bug.cgi?id=118334

Reviewed by Antti Koivisto.

Node::hasTagName needs additional isElementNode() check when it is triggered.
So conversion from Element* to Node* in isFooElement should be avoided.
Therefore, to support both Node* and Element* as an argument of isFooElement,
this patch appends overloading inline function.

  • css/CSSStyleSheet.cpp:

(WebCore::isAcceptableCSSStyleSheetParent):

  • css/StyleScopeResolver.cpp:

(WebCore::StyleScopeResolver::scopeFor):

  • dom/Node.cpp:

(WebCore::Node::numberOfScopedHTMLStyleChildren):

  • html/HTMLAnchorElement.h:

(WebCore::isHTMLAnchorElement):

  • html/HTMLAreaElement.h:

(WebCore::isHTMLAreaElement):

  • html/HTMLAudioElement.h:

(WebCore::isHTMLAudioElement):

  • html/HTMLFormElement.h:

(WebCore::isHTMLFormElement):

  • html/HTMLImageElement.h:

(WebCore::isHTMLImageElement):

  • html/HTMLInputElement.h:

(WebCore::isHTMLInputElement):

  • html/HTMLLabelElement.h:

(WebCore::isHTMLLabelElement):

  • html/HTMLOptGroupElement.h:

(WebCore::isHTMLOptGroupElement):

  • html/HTMLOptionElement.h:

(WebCore::isHTMLOptionElement):

  • html/HTMLStyleElement.h:

(WebCore::isHTMLStyleElement):
(WebCore::toHTMLStyleElement):

  • html/HTMLTextAreaElement.h:

(WebCore::isHTMLTextAreaElement):

Location:
trunk/Source/WebCore
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r152352 r152353  
     12013-07-03  Kangil Han  <kangil.han@samsung.com>
     2
     3        Append overloading function for isFooElement
     4        https://bugs.webkit.org/show_bug.cgi?id=118334
     5
     6        Reviewed by Antti Koivisto.
     7
     8        Node::hasTagName needs additional isElementNode() check when it is triggered.
     9        So conversion from Element* to Node* in isFooElement should be avoided.
     10        Therefore, to support both Node* and Element* as an argument of isFooElement,
     11        this patch appends overloading inline function.
     12
     13        * css/CSSStyleSheet.cpp:
     14        (WebCore::isAcceptableCSSStyleSheetParent):
     15        * css/StyleScopeResolver.cpp:
     16        (WebCore::StyleScopeResolver::scopeFor):
     17        * dom/Node.cpp:
     18        (WebCore::Node::numberOfScopedHTMLStyleChildren):
     19        * html/HTMLAnchorElement.h:
     20        (WebCore::isHTMLAnchorElement):
     21        * html/HTMLAreaElement.h:
     22        (WebCore::isHTMLAreaElement):
     23        * html/HTMLAudioElement.h:
     24        (WebCore::isHTMLAudioElement):
     25        * html/HTMLFormElement.h:
     26        (WebCore::isHTMLFormElement):
     27        * html/HTMLImageElement.h:
     28        (WebCore::isHTMLImageElement):
     29        * html/HTMLInputElement.h:
     30        (WebCore::isHTMLInputElement):
     31        * html/HTMLLabelElement.h:
     32        (WebCore::isHTMLLabelElement):
     33        * html/HTMLOptGroupElement.h:
     34        (WebCore::isHTMLOptGroupElement):
     35        * html/HTMLOptionElement.h:
     36        (WebCore::isHTMLOptionElement):
     37        * html/HTMLStyleElement.h:
     38        (WebCore::isHTMLStyleElement):
     39        (WebCore::toHTMLStyleElement):
     40        * html/HTMLTextAreaElement.h:
     41        (WebCore::isHTMLTextAreaElement):
     42
    1432013-07-03  Balazs Kelemen  <b.kelemen@samsung.com>
    244
  • trunk/Source/WebCore/css/CSSStyleSheet.cpp

    r152290 r152353  
    6666        || parentNode->isDocumentNode()
    6767        || parentNode->hasTagName(HTMLNames::linkTag)
    68         || (parentNode->isElementNode() && isHTMLStyleElement(toElement(parentNode)))
     68        || isHTMLStyleElement(parentNode)
    6969#if ENABLE(SVG)
    7070        || parentNode->hasTagName(SVGNames::styleTag)
  • trunk/Source/WebCore/css/StyleScopeResolver.cpp

    r152290 r152353  
    6161        return 0;
    6262    Node* ownerNode = sheet->ownerNode();
    63     if (!ownerNode || !ownerNode->isHTMLElement() || !isHTMLStyleElement(toElement(ownerNode)))
    64         return 0;
    65 
    66     HTMLStyleElement* styleElement = toHTMLStyleElement(toElement(ownerNode));
     63    if (!ownerNode || !ownerNode->isHTMLElement() || !isHTMLStyleElement(ownerNode))
     64        return 0;
     65
     66    HTMLStyleElement* styleElement = toHTMLStyleElement(ownerNode);
    6767    if (!styleElement->scoped())
    6868        return styleElement->isInShadowTree() ? styleElement->containingShadowRoot() : 0;
  • trunk/Source/WebCore/dom/Node.cpp

    r152320 r152353  
    25372537{
    25382538    size_t count = 0;
    2539     for (Element* element = ElementTraversal::firstWithin(this); element; element = ElementTraversal::next(element, this)) {
     2539    for (Element* element = ElementTraversal::firstWithin(this); element; element = ElementTraversal::next(element, this))
    25402540        if (isHTMLStyleElement(element) && toHTMLStyleElement(element)->isRegisteredAsScoped())
    25412541            count++;
    2542     }
    25432542
    25442543    return count;
  • trunk/Source/WebCore/html/HTMLAnchorElement.h

    r151975 r152353  
    160160}
    161161
     162inline bool isHTMLAnchorElement(Element* element)
     163{
     164    return element->hasTagName(HTMLNames::aTag);
     165}
     166
    162167inline HTMLAnchorElement* toHTMLAnchorElement(Node* node)
    163168{
  • trunk/Source/WebCore/html/HTMLAreaElement.h

    r151996 r152353  
    8181}
    8282
     83inline bool isHTMLAreaElement(Element* element)
     84{
     85    return element->hasTagName(HTMLNames::areaTag);
     86}
     87
    8388inline HTMLAreaElement* toHTMLAreaElement(Node* node)
    8489{
  • trunk/Source/WebCore/html/HTMLAudioElement.h

    r152150 r152353  
    4949}
    5050
     51inline bool isHTMLAudioElement(Element* element)
     52{
     53    return element->hasTagName(HTMLNames::audioTag);
     54}
     55
    5156inline HTMLAudioElement* toHTMLAudioElement(Node* node)
    5257{
  • trunk/Source/WebCore/html/HTMLFormElement.h

    r151949 r152353  
    167167}
    168168
     169inline bool isHTMLFormElement(Element* element)
     170{
     171    return element->hasTagName(HTMLNames::formTag);
     172}
     173
    169174inline HTMLFormElement* toHTMLFormElement(Node* node)
    170175{
  • trunk/Source/WebCore/html/HTMLImageElement.h

    r152203 r152353  
    118118}
    119119
     120inline bool isHTMLImageElement(Element* element)
     121{
     122    return element->hasTagName(HTMLNames::imgTag);
     123}
     124
    120125inline HTMLImageElement* toHTMLImageElement(Node* node)
    121126{
  • trunk/Source/WebCore/html/HTMLInputElement.h

    r152149 r152353  
    445445}
    446446
     447inline bool isHTMLInputElement(Element* element)
     448{
     449    return element->hasTagName(HTMLNames::inputTag);
     450}
     451
    447452inline HTMLInputElement* toHTMLInputElement(Node* node)
    448453{
  • trunk/Source/WebCore/html/HTMLLabelElement.h

    r152088 r152353  
    6161}
    6262
     63inline bool isHTMLLabelElement(Element* element)
     64{
     65    return element->hasTagName(HTMLNames::labelTag);
     66}
     67
    6368inline HTMLLabelElement* toHTMLLabelElement(Node* node)
    6469{
  • trunk/Source/WebCore/html/HTMLOptGroupElement.h

    r152211 r152353  
    6969}
    7070
     71inline bool isHTMLOptGroupElement(Element* element)
     72{
     73    return element->hasTagName(HTMLNames::optgroupTag);
     74}
     75
    7176inline HTMLOptGroupElement* toHTMLOptGroupElement(Node* node)
    7277{
  • trunk/Source/WebCore/html/HTMLOptionElement.h

    r152208 r152353  
    101101}
    102102
     103inline bool isHTMLOptionElement(Element* element)
     104{
     105    return element->hasTagName(HTMLNames::optionTag);
     106}
     107
    103108inline HTMLOptionElement* toHTMLOptionElement(Node* node)
    104109{
  • trunk/Source/WebCore/html/HTMLStyleElement.h

    r152290 r152353  
    9898};
    9999
     100inline bool isHTMLStyleElement(Node* node)
     101{
     102    return node->hasTagName(HTMLNames::styleTag);
     103}
     104
    100105inline bool isHTMLStyleElement(Element* element)
    101106{
     
    103108}
    104109
    105 inline HTMLStyleElement* toHTMLStyleElement(Element* element)
     110inline HTMLStyleElement* toHTMLStyleElement(Node* node)
    106111{
    107     ASSERT_WITH_SECURITY_IMPLICATION(!element || isHTMLStyleElement(element));
    108     return static_cast<HTMLStyleElement*>(element);
     112    ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLStyleElement(node));
     113    return static_cast<HTMLStyleElement*>(node);
    109114}
    110115
  • trunk/Source/WebCore/html/HTMLTextAreaElement.h

    r152218 r152353  
    133133}
    134134
     135inline bool isHTMLTextAreaElement(Element* element)
     136{
     137    return element->hasTagName(HTMLNames::textareaTag);
     138}
     139
    135140inline HTMLTextAreaElement* toHTMLTextAreaElement(Node* node)
    136141{
Note: See TracChangeset for help on using the changeset viewer.