Skip to content
  • weinig@apple.com's avatar
    WebCore: · 97b2d1e7
    weinig@apple.com authored
            Reviewed by Darin.
    
            Patch for http://bugs.webkit.org/show_bug.cgi?id=16691
            Use real JS objects for the rest of the DOMExceptions (EventException, RangeException, etc)
    
            - Create JS objects for all the different types of exceptions, each with there own prototype and constructor.
            - Abstract all the logic and storage for exception classes in to an ExceptionBase class.
            - Move specialized ExceptionCodes into the exception classes. (ie. the EventExceptionCode enum is now in EventException).
    
            Tests: fast/dom/DOMException/EventException.html
                   fast/dom/DOMException/RangeException.html
                   fast/dom/DOMException/XPathException.html
                   http/tests/xmlhttprequest/XMLHttpRequestException.html
                   svg/custom/SVGException.html
    
            * DerivedSources.make:
            * WebCore.pro:
            * WebCore.vcproj/WebCore.vcproj:
            * WebCore.xcodeproj/project.pbxproj:
            * WebCoreSources.bkl:
            * bindings/js/JSSVGMatrixCustom.cpp:
            (WebCore::JSSVGMatrix::inverse):
            (WebCore::JSSVGMatrix::rotateFromVector):
            * bindings/js/kjs_binding.cpp:
            (KJS::setDOMException):
            * bindings/scripts/CodeGeneratorJS.pm: Use the constant values defined
            in the IDL as the ObjC bindings do.
            * bindings/scripts/CodeGeneratorObjC.pm:
            * dom/DOMCoreException.cpp: Removed.
            * dom/DOMCoreException.h:
            (WebCore::DOMCoreException::DOMCoreException):
            * dom/DOMCoreException.idl:
            * dom/Event.h:
            * dom/EventException.h: Copied from WebCore/dom/DOMCoreException.h.
            (WebCore::EventException::EventException):
            (WebCore::EventException::):
            * dom/EventException.idl: Copied from WebCore/dom/DOMCoreException.idl.
            * dom/EventTargetNode.cpp:
            (WebCore::EventTargetNode::dispatchEvent):
            * dom/ExceptionBase.cpp: Copied from WebCore/dom/DOMCoreException.cpp.
            (WebCore::ExceptionBase::ExceptionBase):
            (WebCore::ExceptionBase::toString):
            * dom/ExceptionBase.h: Copied from WebCore/dom/DOMCoreException.h.
            (WebCore::ExceptionBase::code):
            * dom/ExceptionCode.cpp:
            (WebCore::getExceptionCodeDescription):
            * dom/ExceptionCode.h:
            (WebCore::):
            * dom/Range.cpp:
            (WebCore::Range::insertNode):
            (WebCore::Range::checkNodeWOffset):
            (WebCore::Range::checkNodeBA):
            (WebCore::Range::selectNode):
            (WebCore::Range::selectNodeContents):
            (WebCore::Range::surroundContents):
            * dom/RangeException.h:
            (WebCore::RangeException::RangeException):
            (WebCore::RangeException::):
            * dom/RangeException.idl:
            * page/DOMWindow.idl:
            * svg/SVGColor.cpp:
            (WebCore::SVGColor::setRGBColor):
            * svg/SVGException.h:
            (WebCore::SVGException::SVGException):
            (WebCore::SVGException::):
            * svg/SVGException.idl:
            * svg/SVGLocatable.cpp:
            (WebCore::SVGLocatable::getTransformToElement):
            * xml/XMLHttpRequest.cpp:
            (WebCore::XMLHttpRequest::dispatchEvent):
            (WebCore::XMLHttpRequest::open):
            (WebCore::XMLHttpRequest::send):
            * xml/XMLHttpRequest.h:
            * xml/XMLHttpRequestException.h: Copied from WebCore/dom/DOMCoreException.h.
            (WebCore::XMLHttpRequestException::XMLHttpRequestException):
            (WebCore::XMLHttpRequestException::):
            * xml/XMLHttpRequestException.idl: Copied from WebCore/dom/DOMCoreException.idl.
            * xml/XPathEvaluator.h:
            * xml/XPathException.h: Copied from WebCore/dom/DOMCoreException.h.
            (WebCore::XPathException::XPathException):
            (WebCore::XPathException::):
            * xml/XPathException.idl: Copied from WebCore/dom/DOMCoreException.idl.
            * xml/XPathParser.cpp:
            (WebCore::XPath::Parser::parseStatement):
            * xml/XPathResult.cpp:
            (WebCore::XPathResult::convertTo):
            (WebCore::XPathResult::numberValue):
            (WebCore::XPathResult::stringValue):
            (WebCore::XPathResult::booleanValue):
            (WebCore::XPathResult::singleNodeValue):
            (WebCore::XPathResult::snapshotLength):
            (WebCore::XPathResult::iterateNext):
            (WebCore::XPathResult::snapshotItem):
    
    LayoutTests:
    
            Reviewed by Darin.
    
            Tests for http://bugs.webkit.org/show_bug.cgi?id=16691
            Use real JS objects for the rest of the DOMExceptions (EventException, RangeException, etc)
    
            * fast/dom/DOMException/EventException-expected.txt: Added.
            * fast/dom/DOMException/EventException.html: Copied from LayoutTests/fast/dom/DOMException/prototype-object.html.
            * fast/dom/DOMException/RangeException-expected.txt: Added.
            * fast/dom/DOMException/RangeException.html: Copied from LayoutTests/fast/dom/DOMException/prototype-object.html.
            * fast/dom/DOMException/XPathException-expected.txt: Added.
            * fast/dom/DOMException/XPathException.html: Copied from LayoutTests/fast/dom/DOMException/prototype-object.html.
            * fast/dom/DOMException/resources/EventException.js: Copied from LayoutTests/fast/dom/DOMException/resources/prototype-object.js.
            * fast/dom/DOMException/resources/RangeException.js: Copied from LayoutTests/fast/dom/DOMException/resources/prototype-object.js.
            * fast/dom/DOMException/resources/XPathException.js: Copied from LayoutTests/fast/dom/DOMException/resources/prototype-object.js.
            * fast/dom/Window/window-properties-expected.txt:
            * http/tests/xmlhttprequest/XMLHttpRequestException-expected.txt: Added.
            * http/tests/xmlhttprequest/XMLHttpRequestException.html: Added.
            * svg/custom/SVGException-expected.txt: Added.
            * svg/custom/SVGException.html: Copied from LayoutTests/fast/dom/DOMException/prototype-object.html.
            * svg/custom/resources/SVGException.js: Copied from LayoutTests/fast/dom/DOMException/resources/prototype-object.js.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@29073 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    97b2d1e7