Show
Ignore:
Timestamp:
03/29/06 01:38:54 (3 years ago)
Author:
mjs
Message:

LayoutTests:

Reviewed by Anders.


Test cases for Element.contains, including testing fix for
<rdar://problem/4405353> JavaScript flickers popups onmouseover

  • fast/dom/Element/contains-method-expected.txt: Added.
  • fast/dom/Element/contains-method.html: Added.
  • fast/dom/Element/resources/contains-method.js: Added.
  • fast/events/capture-on-target.html:

WebCore:

Reviewed by Anders.


  • fixed <rdar://problem/4454976> repro crash in -[NSTextView(NSSharing) setSelectedRanges:affinity:stillSelecting:] when navigating


Also fixed other issues with contains. The problem that caused the bug was:

  • contains should return true for the element itself, unlike isAncestor


Other problems I fixed:

  • contains shouldn't be present on non-Element nodes
  • contains should return false when passed a non-Element node
  • contains should return false when passed a non-Node
  • bindings/scripts/CodeGeneratorJS.pm: Handle Element as a parameter.
  • dom/Element.cpp: (WebCore::Element::contains): Added new implementation.
  • dom/Element.h: Added prototype for contains.
  • dom/Element.idl: Added IDL declaration for contains.
  • khtml/ecma/kjs_dom.cpp: (KJS::DOMNodeProtoFunc::callAsFunction): Added old wrong contains().
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/dom/Element.h

    r13492 r13555  
    144144 
    145145    Node* insertAdjacentElement(const String& where, Node* newChild, int& exception); 
     146    bool contains(const Element*) const; 
    146147  
    147148protected: