| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2001 Peter Kelly (pmk@post.com) | 4 * (C) 2001 Peter Kelly (pmk@post.com) |
| 5 * (C) 2001 Dirk Mueller (mueller@kde.org) | 5 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2013 Appl
e Inc. All rights reserved. | 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2013 Appl
e Inc. All rights reserved. |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 68 AffectedSelectorVisited = 1 << 6 | 68 AffectedSelectorVisited = 1 << 6 |
| 69 }; | 69 }; |
| 70 typedef int AffectedSelectorMask; | 70 typedef int AffectedSelectorMask; |
| 71 | 71 |
| 72 enum SpellcheckAttributeState { | 72 enum SpellcheckAttributeState { |
| 73 SpellcheckAttributeTrue, | 73 SpellcheckAttributeTrue, |
| 74 SpellcheckAttributeFalse, | 74 SpellcheckAttributeFalse, |
| 75 SpellcheckAttributeDefault | 75 SpellcheckAttributeDefault |
| 76 }; | 76 }; |
| 77 | 77 |
| 78 enum ElementFlags { |
| 79 TabIndexWasSetExplicitly = 1 << 0, |
| 80 NeedsFocusAppearanceUpdateSoonAfterAttach = 1 << 1, |
| 81 StyleAffectedByEmpty = 1 << 2, |
| 82 IsInCanvasSubtree = 1 << 3, |
| 83 ContainsFullScreenElement = 1 << 4, |
| 84 IsInTopLayer = 1 << 5, |
| 85 HasPendingResources = 1 << 6, |
| 86 ChildrenAffectedByFocus = 1 << 7, |
| 87 ChildrenAffectedByHover = 1 << 8, |
| 88 ChildrenAffectedByActive = 1 << 9, |
| 89 ChildrenAffectedByDrag = 1 << 10, |
| 90 ChildrenAffectedByFirstChildRules = 1 << 11, |
| 91 ChildrenAffectedByLastChildRules = 1 << 12, |
| 92 ChildrenAffectedByDirectAdjacentRules = 1 << 13, |
| 93 ChildrenAffectedByForwardPositionalRules = 1 << 14, |
| 94 ChildrenAffectedByBackwardPositionalRules = 1 << 15, |
| 95 |
| 96 // If any of these flags are set we cannot share style. |
| 97 ElementFlagsPreventingStyleSharing = |
| 98 ChildrenAffectedByFocus |
| 99 | ChildrenAffectedByHover |
| 100 | ChildrenAffectedByActive |
| 101 | ChildrenAffectedByDrag |
| 102 | ChildrenAffectedByFirstChildRules |
| 103 | ChildrenAffectedByLastChildRules |
| 104 | ChildrenAffectedByDirectAdjacentRules |
| 105 | ChildrenAffectedByForwardPositionalRules |
| 106 | ChildrenAffectedByBackwardPositionalRules, |
| 107 }; |
| 108 |
| 78 class Element : public ContainerNode { | 109 class Element : public ContainerNode { |
| 79 public: | 110 public: |
| 80 static PassRefPtr<Element> create(const QualifiedName&, Document*); | 111 static PassRefPtr<Element> create(const QualifiedName&, Document*); |
| 81 virtual ~Element(); | 112 virtual ~Element(); |
| 82 | 113 |
| 83 DEFINE_ATTRIBUTE_EVENT_LISTENER(beforecopy); | 114 DEFINE_ATTRIBUTE_EVENT_LISTENER(beforecopy); |
| 84 DEFINE_ATTRIBUTE_EVENT_LISTENER(beforecut); | 115 DEFINE_ATTRIBUTE_EVENT_LISTENER(beforecut); |
| 85 DEFINE_ATTRIBUTE_EVENT_LISTENER(beforepaste); | 116 DEFINE_ATTRIBUTE_EVENT_LISTENER(beforepaste); |
| 86 DEFINE_ATTRIBUTE_EVENT_LISTENER(copy); | 117 DEFINE_ATTRIBUTE_EVENT_LISTENER(copy); |
| 87 DEFINE_ATTRIBUTE_EVENT_LISTENER(cut); | 118 DEFINE_ATTRIBUTE_EVENT_LISTENER(cut); |
| (...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 320 | 351 |
| 321 bool hasAuthorShadowRoot() const { return shadowRoot(); } | 352 bool hasAuthorShadowRoot() const { return shadowRoot(); } |
| 322 virtual void didAddShadowRoot(ShadowRoot&); | 353 virtual void didAddShadowRoot(ShadowRoot&); |
| 323 ShadowRoot* userAgentShadowRoot() const; | 354 ShadowRoot* userAgentShadowRoot() const; |
| 324 ShadowRoot& ensureUserAgentShadowRoot(); | 355 ShadowRoot& ensureUserAgentShadowRoot(); |
| 325 bool isInDescendantTreeOf(const Element* shadowHost) const; | 356 bool isInDescendantTreeOf(const Element* shadowHost) const; |
| 326 | 357 |
| 327 RenderStyle* computedStyle(PseudoId = NOPSEUDO); | 358 RenderStyle* computedStyle(PseudoId = NOPSEUDO); |
| 328 | 359 |
| 329 // Methods for indicating the style is affected by dynamic updates (e.g., ch
ildren changing, our position changing in our sibling list, etc.) | 360 // Methods for indicating the style is affected by dynamic updates (e.g., ch
ildren changing, our position changing in our sibling list, etc.) |
| 330 bool styleAffectedByEmpty() const { return hasRareData() && rareDataStyleAff
ectedByEmpty(); } | 361 bool styleAffectedByEmpty() const { return hasElementFlag(StyleAffectedByEmp
ty); } |
| 331 bool childrenAffectedByFocus() const { return hasRareData() && rareDataChild
renAffectedByFocus(); } | 362 void setStyleAffectedByEmpty() { setElementFlag(StyleAffectedByEmpty); } |
| 332 bool childrenAffectedByHover() const { return hasRareData() && rareDataChild
renAffectedByHover(); } | 363 |
| 333 bool childrenAffectedByActive() const { return hasRareData() && rareDataChil
drenAffectedByActive(); } | 364 bool childrenAffectedByFocus() const { return hasElementFlag(ChildrenAffecte
dByFocus); } |
| 334 bool childrenAffectedByDrag() const { return hasRareData() && rareDataChildr
enAffectedByDrag(); } | 365 void setChildrenAffectedByFocus() { setElementFlag(ChildrenAffectedByFocus);
} |
| 335 bool childrenAffectedByPositionalRules() const { return hasRareData() && (ra
reDataChildrenAffectedByForwardPositionalRules() || rareDataChildrenAffectedByBa
ckwardPositionalRules()); } | 366 |
| 336 bool childrenAffectedByFirstChildRules() const { return hasRareData() && rar
eDataChildrenAffectedByFirstChildRules(); } | 367 bool childrenAffectedByHover() const { return hasElementFlag(ChildrenAffecte
dByHover); } |
| 337 bool childrenAffectedByLastChildRules() const { return hasRareData() && rare
DataChildrenAffectedByLastChildRules(); } | 368 void setChildrenAffectedByHover() { setElementFlag(ChildrenAffectedByHover);
} |
| 338 bool childrenAffectedByDirectAdjacentRules() const { return hasRareData() &&
rareDataChildrenAffectedByDirectAdjacentRules(); } | 369 |
| 339 bool childrenAffectedByForwardPositionalRules() const { return hasRareData()
&& rareDataChildrenAffectedByForwardPositionalRules(); } | 370 bool childrenAffectedByActive() const { return hasElementFlag(ChildrenAffect
edByActive); } |
| 340 bool childrenAffectedByBackwardPositionalRules() const { return hasRareData(
) && rareDataChildrenAffectedByBackwardPositionalRules(); } | 371 void setChildrenAffectedByActive() { setElementFlag(ChildrenAffectedByActive
); } |
| 372 |
| 373 bool childrenAffectedByDrag() const { return hasElementFlag(ChildrenAffected
ByDrag); } |
| 374 void setChildrenAffectedByDrag() { setElementFlag(ChildrenAffectedByDrag); } |
| 375 |
| 376 bool childrenAffectedByPositionalRules() const { return hasElementFlag(Child
renAffectedByForwardPositionalRules) || hasElementFlag(ChildrenAffectedByBackwar
dPositionalRules); } |
| 377 |
| 378 bool childrenAffectedByFirstChildRules() const { return hasElementFlag(Child
renAffectedByFirstChildRules); } |
| 379 void setChildrenAffectedByFirstChildRules() { setElementFlag(ChildrenAffecte
dByFirstChildRules); } |
| 380 |
| 381 bool childrenAffectedByLastChildRules() const { return hasElementFlag(Childr
enAffectedByLastChildRules); } |
| 382 void setChildrenAffectedByLastChildRules() { setElementFlag(ChildrenAffected
ByLastChildRules); } |
| 383 |
| 384 bool childrenAffectedByDirectAdjacentRules() const { return hasElementFlag(C
hildrenAffectedByDirectAdjacentRules); } |
| 385 void setChildrenAffectedByDirectAdjacentRules() { setElementFlag(ChildrenAff
ectedByDirectAdjacentRules); } |
| 386 |
| 387 bool childrenAffectedByForwardPositionalRules() const { return hasElementFla
g(ChildrenAffectedByForwardPositionalRules); } |
| 388 void setChildrenAffectedByForwardPositionalRules() { setElementFlag(Children
AffectedByForwardPositionalRules); } |
| 389 |
| 390 bool childrenAffectedByBackwardPositionalRules() const { return hasElementFl
ag(ChildrenAffectedByBackwardPositionalRules); } |
| 391 void setChildrenAffectedByBackwardPositionalRules() { setElementFlag(Childre
nAffectedByBackwardPositionalRules); } |
| 392 |
| 393 void setIsInCanvasSubtree(bool value) { setElementFlag(IsInCanvasSubtree, va
lue); } |
| 394 bool isInCanvasSubtree() const { return hasElementFlag(IsInCanvasSubtree); } |
| 395 |
| 341 unsigned childIndex() const { return hasRareData() ? rareDataChildIndex() :
0; } | 396 unsigned childIndex() const { return hasRareData() ? rareDataChildIndex() :
0; } |
| 342 | |
| 343 bool childrenSupportStyleSharing() const; | |
| 344 | |
| 345 void setStyleAffectedByEmpty(); | |
| 346 void setChildrenAffectedByFocus(); | |
| 347 void setChildrenAffectedByHover(); | |
| 348 void setChildrenAffectedByActive(); | |
| 349 void setChildrenAffectedByDrag(); | |
| 350 void setChildrenAffectedByFirstChildRules(); | |
| 351 void setChildrenAffectedByLastChildRules(); | |
| 352 void setChildrenAffectedByDirectAdjacentRules(); | |
| 353 void setChildrenAffectedByForwardPositionalRules(); | |
| 354 void setChildrenAffectedByBackwardPositionalRules(); | |
| 355 void setChildIndex(unsigned); | 397 void setChildIndex(unsigned); |
| 356 | 398 |
| 357 void setIsInCanvasSubtree(bool); | 399 bool childrenSupportStyleSharing() const { return !hasElementFlag(ElementFla
gsPreventingStyleSharing); } |
| 358 bool isInCanvasSubtree() const; | |
| 359 | 400 |
| 360 bool isUpgradedCustomElement() { return customElementState() == Upgraded; } | 401 bool isUpgradedCustomElement() { return customElementState() == Upgraded; } |
| 361 bool isUnresolvedCustomElement() { return customElementState() == WaitingFor
Upgrade; } | 402 bool isUnresolvedCustomElement() { return customElementState() == WaitingFor
Upgrade; } |
| 362 | 403 |
| 363 AtomicString computeInheritedLanguage() const; | 404 AtomicString computeInheritedLanguage() const; |
| 364 Locale& locale() const; | 405 Locale& locale() const; |
| 365 | 406 |
| 366 virtual void accessKeyAction(bool /*sendToAnyEvent*/) { } | 407 virtual void accessKeyAction(bool /*sendToAnyEvent*/) { } |
| 367 | 408 |
| 368 virtual bool isURLAttribute(const Attribute&) const { return false; } | 409 virtual bool isURLAttribute(const Attribute&) const { return false; } |
| 369 virtual bool isHTMLContentAttribute(const Attribute&) const { return false;
} | 410 virtual bool isHTMLContentAttribute(const Attribute&) const { return false;
} |
| 370 | 411 |
| 371 KURL getURLAttribute(const QualifiedName&) const; | 412 KURL getURLAttribute(const QualifiedName&) const; |
| 372 KURL getNonEmptyURLAttribute(const QualifiedName&) const; | 413 KURL getNonEmptyURLAttribute(const QualifiedName&) const; |
| 373 | 414 |
| 374 virtual const AtomicString imageSourceURL() const; | 415 virtual const AtomicString imageSourceURL() const; |
| 375 virtual Image* imageContents() { return 0; } | 416 virtual Image* imageContents() { return 0; } |
| 376 | 417 |
| 377 virtual void focus(bool restorePreviousSelection = true, FocusType = FocusTy
peNone); | 418 virtual void focus(bool restorePreviousSelection = true, FocusType = FocusTy
peNone); |
| 378 virtual void updateFocusAppearance(bool restorePreviousSelection); | 419 virtual void updateFocusAppearance(bool restorePreviousSelection); |
| 379 virtual void blur(); | 420 virtual void blur(); |
| 380 // Whether this element can receive focus at all. Most elements are not | 421 // Whether this element can receive focus at all. Most elements are not |
| 381 // focusable but some elements, such as form controls and links, are. Unlike | 422 // focusable but some elements, such as form controls and links, are. Unlike |
| 382 // rendererIsFocusable(), this method may be called when layout is not up to | 423 // rendererIsFocusable(), this method may be called when layout is not up to |
| 383 // date, so it must not use the renderer to determine focusability. | 424 // date, so it must not use the renderer to determine focusability. |
| 384 virtual bool supportsFocus() const; | 425 virtual bool supportsFocus() const { return hasElementFlag(TabIndexWasSetExp
licitly); } |
| 385 // Whether the node can actually be focused. | 426 // Whether the node can actually be focused. |
| 386 bool isFocusable() const; | 427 bool isFocusable() const; |
| 387 virtual bool isKeyboardFocusable() const; | 428 virtual bool isKeyboardFocusable() const; |
| 388 virtual bool isMouseFocusable() const; | 429 virtual bool isMouseFocusable() const; |
| 389 virtual void dispatchFocusEvent(Element* oldFocusedElement, FocusType); | 430 virtual void dispatchFocusEvent(Element* oldFocusedElement, FocusType); |
| 390 virtual void dispatchBlurEvent(Element* newFocusedElement); | 431 virtual void dispatchBlurEvent(Element* newFocusedElement); |
| 391 void dispatchFocusInEvent(const AtomicString& eventType, Element* oldFocused
Element); | 432 void dispatchFocusInEvent(const AtomicString& eventType, Element* oldFocused
Element); |
| 392 void dispatchFocusOutEvent(const AtomicString& eventType, Element* newFocuse
dElement); | 433 void dispatchFocusOutEvent(const AtomicString& eventType, Element* newFocuse
dElement); |
| 393 | 434 |
| 394 String innerText(); | 435 String innerText(); |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 463 virtual bool isFrameElementBase() const { return false; } | 504 virtual bool isFrameElementBase() const { return false; } |
| 464 virtual bool isPasswordGeneratorButtonElement() const { return false; } | 505 virtual bool isPasswordGeneratorButtonElement() const { return false; } |
| 465 virtual bool isClearButtonElement() const { return false; } | 506 virtual bool isClearButtonElement() const { return false; } |
| 466 | 507 |
| 467 virtual bool canContainRangeEndPoint() const OVERRIDE { return true; } | 508 virtual bool canContainRangeEndPoint() const OVERRIDE { return true; } |
| 468 | 509 |
| 469 // Used for disabled form elements; if true, prevents mouse events from bein
g dispatched | 510 // Used for disabled form elements; if true, prevents mouse events from bein
g dispatched |
| 470 // to event listeners, and prevents DOMActivate events from being sent at al
l. | 511 // to event listeners, and prevents DOMActivate events from being sent at al
l. |
| 471 virtual bool isDisabledFormControl() const { return false; } | 512 virtual bool isDisabledFormControl() const { return false; } |
| 472 | 513 |
| 473 bool hasPendingResources() const; | 514 bool hasPendingResources() const { return hasElementFlag(HasPendingResources
); } |
| 474 void setHasPendingResources(); | 515 void setHasPendingResources() { setElementFlag(HasPendingResources); } |
| 475 void clearHasPendingResources(); | 516 void clearHasPendingResources() { clearElementFlag(HasPendingResources); } |
| 476 virtual void buildPendingResource() { }; | 517 virtual void buildPendingResource() { }; |
| 477 | 518 |
| 478 enum { | 519 enum { |
| 479 ALLOW_KEYBOARD_INPUT = 1 << 0, | 520 ALLOW_KEYBOARD_INPUT = 1 << 0, |
| 480 LEGACY_MOZILLA_REQUEST = 1 << 1, | 521 LEGACY_MOZILLA_REQUEST = 1 << 1, |
| 481 }; | 522 }; |
| 482 | 523 |
| 483 void webkitRequestFullScreen(unsigned short flags); | 524 void webkitRequestFullScreen(unsigned short flags); |
| 484 bool containsFullScreenElement() const; | 525 bool containsFullScreenElement() const { return hasElementFlag(ContainsFullS
creenElement); } |
| 485 void setContainsFullScreenElement(bool); | 526 void setContainsFullScreenElement(bool); |
| 486 void setContainsFullScreenElementOnAncestorsCrossingFrameBoundaries(bool); | 527 void setContainsFullScreenElementOnAncestorsCrossingFrameBoundaries(bool); |
| 487 | 528 |
| 488 // W3C API | 529 // W3C API |
| 489 void webkitRequestFullscreen(); | 530 void webkitRequestFullscreen(); |
| 490 | 531 |
| 491 bool isInTopLayer() const; | 532 bool isInTopLayer() const { return hasElementFlag(IsInTopLayer); } |
| 492 void setIsInTopLayer(bool); | 533 void setIsInTopLayer(bool); |
| 493 | 534 |
| 494 void webkitRequestPointerLock(); | 535 void webkitRequestPointerLock(); |
| 495 | 536 |
| 496 bool isSpellCheckingEnabled() const; | 537 bool isSpellCheckingEnabled() const; |
| 497 | 538 |
| 498 // FIXME: public for RenderTreeBuilder, we shouldn't expose this though. | 539 // FIXME: public for RenderTreeBuilder, we shouldn't expose this though. |
| 499 PassRefPtr<RenderStyle> styleForRenderer(); | 540 PassRefPtr<RenderStyle> styleForRenderer(); |
| 500 | 541 |
| 501 bool hasID() const; | 542 bool hasID() const; |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 558 // classAttributeChanged() exists to share code between | 599 // classAttributeChanged() exists to share code between |
| 559 // parseAttribute (called via setAttribute()) and | 600 // parseAttribute (called via setAttribute()) and |
| 560 // svgAttributeChanged (called when element.className.baseValue is set) | 601 // svgAttributeChanged (called when element.className.baseValue is set) |
| 561 void classAttributeChanged(const AtomicString& newClassString); | 602 void classAttributeChanged(const AtomicString& newClassString); |
| 562 | 603 |
| 563 PassRefPtr<RenderStyle> originalStyleForRenderer(); | 604 PassRefPtr<RenderStyle> originalStyleForRenderer(); |
| 564 | 605 |
| 565 Node* insertAdjacent(const String& where, Node* newChild, ExceptionState&); | 606 Node* insertAdjacent(const String& where, Node* newChild, ExceptionState&); |
| 566 | 607 |
| 567 private: | 608 private: |
| 609 bool hasElementFlag(ElementFlags mask) const { return hasRareData() && hasEl
ementFlagInternal(mask); } |
| 610 void setElementFlag(ElementFlags, bool value = true); |
| 611 void clearElementFlag(ElementFlags); |
| 612 bool hasElementFlagInternal(ElementFlags) const; |
| 613 |
| 568 void styleAttributeChanged(const AtomicString& newStyleString, AttributeModi
ficationReason); | 614 void styleAttributeChanged(const AtomicString& newStyleString, AttributeModi
ficationReason); |
| 569 | 615 |
| 570 void updatePresentationAttributeStyle(); | 616 void updatePresentationAttributeStyle(); |
| 571 | 617 |
| 572 void inlineStyleChanged(); | 618 void inlineStyleChanged(); |
| 573 PropertySetCSSStyleDeclaration* inlineStyleCSSOMWrapper(); | 619 PropertySetCSSStyleDeclaration* inlineStyleCSSOMWrapper(); |
| 574 void setInlineStyleFromString(const AtomicString&); | 620 void setInlineStyleFromString(const AtomicString&); |
| 575 | 621 |
| 576 StyleRecalcChange recalcOwnStyle(StyleRecalcChange); | 622 StyleRecalcChange recalcOwnStyle(StyleRecalcChange); |
| 577 void recalcChildStyle(StyleRecalcChange); | 623 void recalcChildStyle(StyleRecalcChange); |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 630 inline void updateCallbackSelectors(RenderStyle* oldStyle, RenderStyle* newS
tyle); | 676 inline void updateCallbackSelectors(RenderStyle* oldStyle, RenderStyle* newS
tyle); |
| 631 inline void removeCallbackSelectors(); | 677 inline void removeCallbackSelectors(); |
| 632 inline void addCallbackSelectors(); | 678 inline void addCallbackSelectors(); |
| 633 | 679 |
| 634 // cloneNode is private so that non-virtual cloneElementWithChildren and clo
neElementWithoutChildren | 680 // cloneNode is private so that non-virtual cloneElementWithChildren and clo
neElementWithoutChildren |
| 635 // are used instead. | 681 // are used instead. |
| 636 virtual PassRefPtr<Node> cloneNode(bool deep) OVERRIDE; | 682 virtual PassRefPtr<Node> cloneNode(bool deep) OVERRIDE; |
| 637 virtual PassRefPtr<Element> cloneElementWithoutAttributesAndChildren(); | 683 virtual PassRefPtr<Element> cloneElementWithoutAttributesAndChildren(); |
| 638 | 684 |
| 639 QualifiedName m_tagName; | 685 QualifiedName m_tagName; |
| 640 bool rareDataStyleAffectedByEmpty() const; | 686 |
| 641 bool rareDataChildrenAffectedByFocus() const; | |
| 642 bool rareDataChildrenAffectedByHover() const; | |
| 643 bool rareDataChildrenAffectedByActive() const; | |
| 644 bool rareDataChildrenAffectedByDrag() const; | |
| 645 bool rareDataChildrenAffectedByFirstChildRules() const; | |
| 646 bool rareDataChildrenAffectedByLastChildRules() const; | |
| 647 bool rareDataChildrenAffectedByDirectAdjacentRules() const; | |
| 648 bool rareDataChildrenAffectedByForwardPositionalRules() const; | |
| 649 bool rareDataChildrenAffectedByBackwardPositionalRules() const; | |
| 650 unsigned rareDataChildIndex() const; | 687 unsigned rareDataChildIndex() const; |
| 651 | 688 |
| 652 SpellcheckAttributeState spellcheckAttributeState() const; | 689 SpellcheckAttributeState spellcheckAttributeState() const; |
| 653 | 690 |
| 654 void updateNamedItemRegistration(const AtomicString& oldName, const AtomicSt
ring& newName); | 691 void updateNamedItemRegistration(const AtomicString& oldName, const AtomicSt
ring& newName); |
| 655 void updateExtraNamedItemRegistration(const AtomicString& oldName, const Ato
micString& newName); | 692 void updateExtraNamedItemRegistration(const AtomicString& oldName, const Ato
micString& newName); |
| 656 | 693 |
| 657 void createUniqueElementData(); | 694 void createUniqueElementData(); |
| 658 | 695 |
| 659 bool shouldInvalidateDistributionWhenAttributeChanged(ElementShadow*, const
QualifiedName&, const AtomicString&); | 696 bool shouldInvalidateDistributionWhenAttributeChanged(ElementShadow*, const
QualifiedName&, const AtomicString&); |
| (...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 894 template <> inline bool isElementOfType<const thisType>(const Element& eleme
nt) { return element.predicate; } \ | 931 template <> inline bool isElementOfType<const thisType>(const Element& eleme
nt) { return element.predicate; } \ |
| 895 DEFINE_NODE_TYPE_CASTS(thisType, predicate) | 932 DEFINE_NODE_TYPE_CASTS(thisType, predicate) |
| 896 | 933 |
| 897 #define DEFINE_ELEMENT_TYPE_CASTS_WITH_FUNCTION(thisType) \ | 934 #define DEFINE_ELEMENT_TYPE_CASTS_WITH_FUNCTION(thisType) \ |
| 898 template <> inline bool isElementOfType<const thisType>(const Element& eleme
nt) { return is##thisType(element); } \ | 935 template <> inline bool isElementOfType<const thisType>(const Element& eleme
nt) { return is##thisType(element); } \ |
| 899 DEFINE_NODE_TYPE_CASTS_WITH_FUNCTION(thisType) | 936 DEFINE_NODE_TYPE_CASTS_WITH_FUNCTION(thisType) |
| 900 | 937 |
| 901 } // namespace | 938 } // namespace |
| 902 | 939 |
| 903 #endif | 940 #endif |
| OLD | NEW |