1. 15 Jan, 2008 1 commit
    • weinig@apple.com's avatar
      JavaScriptCore: · 5902380f
      weinig@apple.com authored
              Reviewed by Geoffrey Garen.
      
              Fix <rdar://problem/5595552> r27608 introduced a 20% increase in JS binary size, 4% increase in WebCore binary size
      
              - This changes the way JS functions that use Lookup tables are handled.  Instead using
                one class per function, which allowed specialization of the virtual callAsFunction
                method, we now use on class, PrototypeFunction, which takes a pointer to a static
                function to use as the implementation.  This significantly decreases the binary size
                of JavaScriptCore (about 145k on an Intel only build) while still keeping some of the
                speedup r27608 garnered (SunSpider says this is 1.005x as slow, which should leave some
                wiggle room from the original 1% speedup) and keeps the functions implementations in separate
                functions to help with optimizations.
      
              * JavaScriptCore.exp:
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * kjs/array_object.cpp:
              (KJS::arrayProtoFuncToString):
              (KJS::arrayProtoFuncToLocaleString):
              (KJS::arrayProtoFuncJoin):
              (KJS::arrayProtoFuncConcat):
              (KJS::arrayProtoFuncPop):
              (KJS::arrayProtoFuncPush):
              (KJS::arrayProtoFuncReverse):
              (KJS::arrayProtoFuncShift):
              (KJS::arrayProtoFuncSlice):
              (KJS::arrayProtoFuncSort):
              (KJS::arrayProtoFuncSplice):
              (KJS::arrayProtoFuncUnShift):
              (KJS::arrayProtoFuncFilter):
              (KJS::arrayProtoFuncMap):
              (KJS::arrayProtoFuncEvery):
              (KJS::arrayProtoFuncForEach):
              (KJS::arrayProtoFuncSome):
              (KJS::arrayProtoFuncIndexOf):
              (KJS::arrayProtoFuncLastIndexOf):
              * kjs/array_object.h:
              * kjs/date_object.cpp:
              (KJS::DatePrototype::getOwnPropertySlot):
              (KJS::dateProtoFuncToString):
              (KJS::dateProtoFuncToUTCString):
              (KJS::dateProtoFuncToDateString):
              (KJS::dateProtoFuncToTimeString):
              (KJS::dateProtoFuncToLocaleString):
              (KJS::dateProtoFuncToLocaleDateString):
              (KJS::dateProtoFuncToLocaleTimeString):
              (KJS::dateProtoFuncValueOf):
              (KJS::dateProtoFuncGetTime):
              (KJS::dateProtoFuncGetFullYear):
              (KJS::dateProtoFuncGetUTCFullYear):
              (KJS::dateProtoFuncToGMTString):
              (KJS::dateProtoFuncGetMonth):
              (KJS::dateProtoFuncGetUTCMonth):
              (KJS::dateProtoFuncGetDate):
              (KJS::dateProtoFuncGetUTCDate):
              (KJS::dateProtoFuncGetDay):
              (KJS::dateProtoFuncGetUTCDay):
              (KJS::dateProtoFuncGetHours):
              (KJS::dateProtoFuncGetUTCHours):
              (KJS::dateProtoFuncGetMinutes):
              (KJS::dateProtoFuncGetUTCMinutes):
              (KJS::dateProtoFuncGetSeconds):
              (KJS::dateProtoFuncGetUTCSeconds):
              (KJS::dateProtoFuncGetMilliSeconds):
              (KJS::dateProtoFuncGetUTCMilliseconds):
              (KJS::dateProtoFuncGetTimezoneOffset):
              (KJS::dateProtoFuncSetTime):
              (KJS::dateProtoFuncSetMilliSeconds):
              (KJS::dateProtoFuncSetUTCMilliseconds):
              (KJS::dateProtoFuncSetSeconds):
              (KJS::dateProtoFuncSetUTCSeconds):
              (KJS::dateProtoFuncSetMinutes):
              (KJS::dateProtoFuncSetUTCMinutes):
              (KJS::dateProtoFuncSetHours):
              (KJS::dateProtoFuncSetUTCHours):
              (KJS::dateProtoFuncSetDate):
              (KJS::dateProtoFuncSetUTCDate):
              (KJS::dateProtoFuncSetMonth):
              (KJS::dateProtoFuncSetUTCMonth):
              (KJS::dateProtoFuncSetFullYear):
              (KJS::dateProtoFuncSetUTCFullYear):
              (KJS::dateProtoFuncSetYear):
              (KJS::dateProtoFuncGetYear):
              * kjs/date_object.h:
              * kjs/function.cpp:
              (KJS::PrototypeFunction::PrototypeFunction):
              (KJS::PrototypeFunction::callAsFunction):
              * kjs/function.h:
              * kjs/lookup.h:
              (KJS::HashEntry::):
              (KJS::staticFunctionGetter):
              * kjs/math_object.cpp:
              (KJS::mathProtoFuncAbs):
              (KJS::mathProtoFuncACos):
              (KJS::mathProtoFuncASin):
              (KJS::mathProtoFuncATan):
              (KJS::mathProtoFuncATan2):
              (KJS::mathProtoFuncCeil):
              (KJS::mathProtoFuncCos):
              (KJS::mathProtoFuncExp):
              (KJS::mathProtoFuncFloor):
              (KJS::mathProtoFuncLog):
              (KJS::mathProtoFuncMax):
              (KJS::mathProtoFuncMin):
              (KJS::mathProtoFuncPow):
              (KJS::mathProtoFuncRandom):
              (KJS::mathProtoFuncRound):
              (KJS::mathProtoFuncSin):
              (KJS::mathProtoFuncSqrt):
              (KJS::mathProtoFuncTan):
              * kjs/math_object.h:
              * kjs/string_object.cpp:
              (KJS::stringProtoFuncToString):
              (KJS::stringProtoFuncValueOf):
              (KJS::stringProtoFuncCharAt):
              (KJS::stringProtoFuncCharCodeAt):
              (KJS::stringProtoFuncConcat):
              (KJS::stringProtoFuncIndexOf):
              (KJS::stringProtoFuncLastIndexOf):
              (KJS::stringProtoFuncMatch):
              (KJS::stringProtoFuncSearch):
              (KJS::stringProtoFuncReplace):
              (KJS::stringProtoFuncSlice):
              (KJS::stringProtoFuncSplit):
              (KJS::stringProtoFuncSubstr):
              (KJS::stringProtoFuncSubstring):
              (KJS::stringProtoFuncToLowerCase):
              (KJS::stringProtoFuncToUpperCase):
              (KJS::stringProtoFuncToLocaleLowerCase):
              (KJS::stringProtoFuncToLocaleUpperCase):
              (KJS::stringProtoFuncLocaleCompare):
              (KJS::stringProtoFuncBig):
              (KJS::stringProtoFuncSmall):
              (KJS::stringProtoFuncBlink):
              (KJS::stringProtoFuncBold):
              (KJS::stringProtoFuncFixed):
              (KJS::stringProtoFuncItalics):
              (KJS::stringProtoFuncStrike):
              (KJS::stringProtoFuncSub):
              (KJS::stringProtoFuncSup):
              (KJS::stringProtoFuncFontcolor):
              (KJS::stringProtoFuncFontsize):
              (KJS::stringProtoFuncAnchor):
              (KJS::stringProtoFuncLink):
              * kjs/string_object.h:
      
      WebCore:
      
              Reviewed by Geoffrey Garen.
      
              Fix <rdar://problem/5595552> r27608 introduced a 20% increase in JS binary size, 4% increase in WebCore binary size
      
              - Update JS Function implementations to use a static function based method. This decreases
                the binary size of an Intel only build by 1013.5K.
      
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::customGetOwnPropertySlot):
              * bindings/js/JSEventTargetBase.cpp:
              (WebCore::jsEventTargetAddEventListener):
              (WebCore::jsEventTargetRemoveEventListener):
              (WebCore::jsEventTargetDispatchEvent):
              (WebCore::retrieveEventTargetAndCorrespondingNode):
              * bindings/js/JSEventTargetBase.h:
              * bindings/js/JSHTMLInputElementBase.cpp:
              (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
              (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
              * bindings/js/JSHTMLInputElementBase.h:
              * bindings/js/JSLocation.cpp:
              (WebCore::JSLocation::getOwnPropertySlot):
              (WebCore::jsLocationProtoFuncReplace):
              (WebCore::jsLocationProtoFuncReload):
              (WebCore::jsLocationProtoFuncAssign):
              (WebCore::jsLocationProtoFuncToString):
              * bindings/js/JSLocation.h:
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::jsXMLHttpRequestPrototypeFunctionAbort):
              (KJS::jsXMLHttpRequestPrototypeFunctionGetAllResponseHeaders):
              (KJS::jsXMLHttpRequestPrototypeFunctionGetResponseHeader):
              (KJS::jsXMLHttpRequestPrototypeFunctionOpen):
              (KJS::jsXMLHttpRequestPrototypeFunctionSend):
              (KJS::jsXMLHttpRequestPrototypeFunctionSetRequestHeader):
              (KJS::jsXMLHttpRequestPrototypeFunctionOverrideMIMEType):
              (KJS::jsXMLHttpRequestPrototypeFunctionAddEventListener):
              (KJS::jsXMLHttpRequestPrototypeFunctionRemoveEventListener):
              (KJS::jsXMLHttpRequestPrototypeFunctionDispatchEvent):
              * bindings/js/JSXMLHttpRequest.h:
              * bindings/js/JSXSLTProcessor.cpp:
              (KJS::jsXSLTProcessorPrototypeFunctionImportStylesheet):
              (KJS::jsXSLTProcessorPrototypeFunctionTransformToFragment):
              (KJS::jsXSLTProcessorPrototypeFunctionTransformToDocument):
              (KJS::jsXSLTProcessorPrototypeFunctionSetParameter):
              (KJS::jsXSLTProcessorPrototypeFunctionGetParameter):
              (KJS::jsXSLTProcessorPrototypeFunctionRemoveParameter):
              (KJS::jsXSLTProcessorPrototypeFunctionClearParameters):
              (KJS::jsXSLTProcessorPrototypeFunctionReset):
              * bindings/js/JSXSLTProcessor.h:
              * bindings/js/kjs_events.cpp:
              (WebCore::jsClipboardPrototypeFunctionClearData):
              (WebCore::jsClipboardPrototypeFunctionGetData):
              (WebCore::jsClipboardPrototypeFunctionSetData):
              (WebCore::jsClipboardPrototypeFunctionSetDragImage):
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_navigator.cpp:
              (KJS::pluginsFunctionRefresh):
              (KJS::navigatorProtoFuncJavaEnabled):
              * bindings/js/kjs_navigator.h:
              * bindings/js/kjs_window.cpp:
              (KJS::Window::getOwnPropertySlot):
              (KJS::windowProtoFuncAToB):
              (KJS::windowProtoFuncBToA):
              (KJS::windowProtoFuncOpen):
              (KJS::windowProtoFuncSetTimeout):
              (KJS::windowProtoFuncClearTimeout):
              (KJS::windowProtoFuncSetInterval):
              (KJS::windowProtoFuncAddEventListener):
              (KJS::windowProtoFuncRemoveEventListener):
              (KJS::windowProtoFuncShowModalDialog):
              (KJS::windowProtoFuncNotImplemented):
              * bindings/js/kjs_window.h:
              * bindings/scripts/CodeGenerator.pm:
              * bindings/scripts/CodeGeneratorJS.pm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@29508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5902380f
  2. 03 Jan, 2008 1 commit
    • weinig@apple.com's avatar
      Reviewed by Darin. · ff5b28bd
      weinig@apple.com authored
              Pass the prototype of WebCore JS objects up the constructor chain
              rather than explicitly setting using setPrototype.  This removes many
              redundant settings of the prototype on construction.  To avoid a CG 
              hazard, the prototype must be constructed before before calling the
              constructor of the JS object.
      
              - JS objects that inherit from DOMObject, which all bindings objects
                (except Window) do, now can't implicitly have a jsNull prototype, but
                must explicitly pass it up the construction chain.
      
              * bindings/js/JSCSSRuleCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSCSSValueCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSDocumentCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSEventCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSEventTargetNode.cpp:
              (WebCore::JSEventTargetNode::JSEventTargetNode):
              * bindings/js/JSEventTargetNode.h:
              * bindings/js/JSHTMLAllCollection.h:
              (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
              * bindings/js/JSHTMLAudioElementConstructor.cpp:
              (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor):
              * bindings/js/JSHTMLCollectionCustom.cpp:
              (WebCore::getNamedItems):
              (WebCore::toJS):
              * bindings/js/JSHTMLElementWrapperFactory.cpp:
              (WebCore::createJSHTMLWrapper):
              * bindings/js/JSHTMLFormElementCustom.cpp:
              (WebCore::JSHTMLFormElement::nameGetter):
              * bindings/js/JSHTMLInputElementBase.cpp:
              (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
              * bindings/js/JSHTMLInputElementBase.h:
              * bindings/js/JSHTMLOptionElementConstructor.cpp:
              (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
              * bindings/js/JSLocation.cpp:
              (WebCore::JSLocation::JSLocation):
              * bindings/js/JSLocation.h:
              * bindings/js/JSNamedNodesCollection.cpp:
              (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
              * bindings/js/JSNamedNodesCollection.h:
              * bindings/js/JSNodeCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSSVGElementWrapperFactory.cpp:
              (WebCore::createJSSVGWrapper):
              * bindings/js/JSSVGPathSegCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSStyleSheetCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
              (KJS::JSXMLHttpRequestConstructorImp::construct):
              (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
              * bindings/js/JSXMLHttpRequest.h:
              * bindings/js/JSXSLTProcessor.cpp:
              (KJS::JSXSLTProcessor::JSXSLTProcessor):
              (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
              (KJS::XSLTProcessorConstructorImp::implementsConstruct):
              (KJS::XSLTProcessorConstructorImp::construct):
              * bindings/js/JSXSLTProcessor.h:
              * bindings/js/kjs_binding.h:
              (KJS::DOMObject::DOMObject):
              (KJS::cacheDOMObject):
              (KJS::cacheSVGDOMObject):
              * bindings/js/kjs_css.cpp:
              (WebCore::JSRGBColor::JSRGBColor):
              (WebCore::getJSRGBColor):
              * bindings/js/kjs_css.h:
              * bindings/js/kjs_events.cpp:
              (WebCore::JSClipboard::JSClipboard):
              (WebCore::toJS):
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_html.cpp:
              (WebCore::ImageConstructorImp::ImageConstructorImp):
              * bindings/js/kjs_navigator.cpp:
              (KJS::Navigator::Navigator):
              (KJS::PluginBase::PluginBase):
              * bindings/js/kjs_navigator.h:
              * bindings/js/kjs_window.cpp:
              (KJS::Window::Window):
              (KJS::Window::location):
              (KJS::Window::getValueProperty):
              * bindings/js/kjs_window.h:
              * bindings/scripts/CodeGeneratorJS.pm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@29134 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ff5b28bd
  3. 12 Dec, 2007 1 commit
    • weinig@apple.com's avatar
      WebCore: · c5002665
      weinig@apple.com authored
              Reviewed by Darin Adler.
      
              Scrub URL out of the tree in preparation for renaming KURL to URL.
                  - Renames Document::URL() -> Document::url()
                  - Renames DocumentLoader::URL() -> DocumentLoader::url()
                  - Renames KURL::url() to KURL::string() and KURL::deprecatedString()
                  - Remove FrameLoader::URL()
                  - Various variable renames.
      
              The change from Document::URL() to Document::url() required changes
              to the bindings scripts as well, because URL() is the name of a DOM
              method.  The code generation scripts now have code to special case URL()
              to url().
      
              * WebCore.base.exp:
              * bindings/js/kjs_events.cpp:
              (WebCore::JSLazyEventListener::parseCode):
              * bindings/js/kjs_navigator.cpp:
              (KJS::Navigator::getValueProperty):
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::initScript):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::put):
              (KJS::Window::allowsAccessFrom):
              (KJS::Location::put):
              (KJS::LocationProtoFuncReplace::callAsFunction):
              (KJS::LocationProtoFuncReload::callAsFunction):
              (KJS::LocationProtoFuncAssign::callAsFunction):
              * bindings/scripts/CodeGenerator.pm:
              * bindings/scripts/CodeGeneratorCOM.pm:
              * bindings/scripts/CodeGeneratorJS.pm:
              * bindings/scripts/CodeGeneratorObjC.pm:
              * css/CSSImportRule.cpp:
              (WebCore::CSSImportRule::insertedIntoParent):
              * css/CSSParser.cpp:
              (WebCore::CSSParser::parseValue):
              (WebCore::CSSParser::parseContent):
              (WebCore::CSSParser::parseBackgroundImage):
              (WebCore::CSSParser::parseFontFaceSrc):
              (WebCore::CSSParser::parseBorderImage):
              (WebCore::CSSParser::createImportRule):
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::setEncodedURL):
              * dom/Document.cpp:
              (WebCore::Document::processHttpEquiv):
              (WebCore::Document::cookie):
              (WebCore::Document::setCookie):
              (WebCore::Document::domain):
              (WebCore::Document::setDomain):
              (WebCore::Document::getImageMap):
              (WebCore::Document::completeURL):
              * dom/Document.h:
              (WebCore::Document::url):
              (WebCore::Document::baseURL):
              * dom/Element.cpp:
              (WebCore::Element::baseURI):
              * dom/ProcessingInstruction.h:
              * dom/StyledElement.cpp:
              (WebCore::StyledElement::addCSSImageProperty):
              * dom/StyledElement.h:
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::endElementNs):
              (WebCore::XMLTokenizer::end):
              (WebCore::):
              * dom/XMLTokenizer.h:
              * editing/Editor.cpp:
              (WebCore::Editor::copy):
              * editing/markup.cpp:
              (WebCore::completeURLs):
              * history/CachedPage.h:
              (WebCore::CachedPage::url):
              * history/HistoryItem.cpp:
              (WebCore::HistoryItem::HistoryItem):
              (WebCore::HistoryItem::setURL):
              (WebCore::HistoryItem::isCurrentDocument):
              * html/HTMLBaseElement.cpp:
              (WebCore::HTMLBaseElement::process):
              * html/HTMLParser.cpp:
              (WebCore::HTMLParser::reportErrorToConsole):
              * html/HTMLScriptElement.cpp:
              (WebCore::HTMLScriptElement::childrenChanged):
              (WebCore::HTMLScriptElement::insertedIntoDocument):
              (WebCore::HTMLScriptElement::evaluateScript):
              * html/HTMLScriptElement.h:
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::scriptExecution):
              * loader/Cache.cpp:
              (WebCore::createResource):
              (WebCore::Cache::requestResource):
              * loader/CachedCSSStyleSheet.cpp:
              (WebCore::CachedCSSStyleSheet::checkNotify):
              * loader/CachedResource.cpp:
              (WebCore::CachedResource::CachedResource):
              * loader/CachedResource.h:
              (WebCore::CachedResource::):
              * loader/CachedScript.h:
              * loader/DocLoader.cpp:
              (WebCore::DocLoader::checkForReload):
              (WebCore::DocLoader::requestResource):
              * loader/DocumentLoader.cpp:
              (WebCore::DocumentLoader::url):
              (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
              (WebCore::DocumentLoader::setRequest):
              (WebCore::DocumentLoader::startLoadingMainResource):
              * loader/DocumentLoader.h:
              * loader/FrameLoader.cpp:
              (WebCore::FormSubmission::FormSubmission):
              (WebCore::ScheduledRedirection::ScheduledRedirection):
              (WebCore::FrameLoader::changeLocation):
              (WebCore::FrameLoader::urlSelected):
              (WebCore::FrameLoader::requestFrame):
              (WebCore::FrameLoader::loadSubframe):
              (WebCore::FrameLoader::submitFormAgain):
              (WebCore::FrameLoader::submitForm):
              (WebCore::FrameLoader::didExplicitOpen):
              (WebCore::FrameLoader::replaceContentsWithScriptResult):
              (WebCore::FrameLoader::executeScript):
              (WebCore::FrameLoader::receivedFirstData):
              (WebCore::FrameLoader::begin):
              (WebCore::FrameLoader::startIconLoader):
              (WebCore::FrameLoader::commitIconURLToIconDatabase):
              (WebCore::FrameLoader::scheduleRefresh):
              (WebCore::FrameLoader::redirectionTimerFired):
              (WebCore::FrameLoader::loadPlugin):
              (WebCore::FrameLoader::didNotOpenURL):
              (WebCore::FrameLoader::updatePolicyBaseURL):
              (WebCore::FrameLoader::scrollToAnchor):
              (WebCore::FrameLoader::startRedirectionTimer):
              (WebCore::FrameLoader::load):
              (WebCore::FrameLoader::canLoad):
              (WebCore::FrameLoader::shouldHideReferrer):
              (WebCore::FrameLoader::shouldAllowNavigation):
              (WebCore::FrameLoader::commitProvisionalLoad):
              (WebCore::FrameLoader::clientRedirected):
              (WebCore::FrameLoader::open):
              (WebCore::FrameLoader::didTellBridgeAboutLoad):
              (WebCore::FrameLoader::haveToldBridgeAboutLoad):
              (WebCore::FrameLoader::post):
              (WebCore::FrameLoader::loadResourceSynchronously):
              (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
              (WebCore::FrameLoader::shouldTreatURLAsSameAsCurrent):
              (WebCore::FrameLoader::createHistoryItem):
              (WebCore::FrameLoader::addBackForwardItemClippedAtTarget):
              (WebCore::FrameLoader::loadItem):
              (WebCore::FrameLoader::urlsMatchItem):
              (WebCore::FrameLoader::recursiveGoToItem):
              (WebCore::FrameLoader::updateHistoryForStandardLoad):
              (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory):
              * loader/FrameLoader.h:
              (WebCore::FrameLoader::url):
              * loader/ImageDocument.cpp:
              (WebCore::ImageDocument::createDocumentStructure):
              * loader/MainResourceLoader.cpp:
              (WebCore::shouldLoadAsEmptyDocument):
              (WebCore::MainResourceLoader::didFinishLoading):
              * loader/NavigationAction.cpp:
              (WebCore::NavigationAction::NavigationAction):
              * loader/NavigationAction.h:
              (WebCore::NavigationAction::url):
              * loader/PluginDocument.cpp:
              (WebCore::PluginTokenizer::createDocumentStructure):
              * loader/SubresourceLoader.cpp:
              (WebCore::SubresourceLoader::load):
              (WebCore::SubresourceLoader::create):
              * loader/icon/IconLoader.cpp:
              (WebCore::IconLoader::startLoading):
              (WebCore::IconLoader::finishLoading):
              * loader/loader.cpp:
              (WebCore::Loader::servePendingRequests):
              * loader/mac/LoaderNSURLExtras.m:
              (urlOriginalData):
              * page/Chrome.cpp:
              (WebCore::Chrome::setToolTip):
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::contextMenuItemSelected):
              * page/Frame.cpp:
              (WebCore::Frame::setUserStyleSheetLocation):
              * page/InspectorController.cpp:
              (WebCore::InspectorResource::type):
              (WebCore::addSourceToFrame):
              (WebCore::InspectorController::addScriptResource):
              (WebCore::InspectorController::updateScriptResourceRequest):
              (WebCore::InspectorController::didCommitLoad):
              * page/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge getData:andResponse:forURL:]):
              * platform/KURL.h:
              (WebCore::KURL::string):
              (WebCore::KURL::deprecatedString):
              * platform/mac/ClipboardMac.mm:
              (WebCore::ClipboardMac::getData):
              * platform/mac/CookieJar.mm:
              (WebCore::cookies):
              (WebCore::setCookies):
              * platform/mac/PasteboardMac.mm:
              (WebCore::Pasteboard::writeURL):
              (WebCore::fileWrapperForImage):
              (WebCore::Pasteboard::writeImage):
              (WebCore::Pasteboard::plainText):
              * platform/network/ResourceHandle.cpp:
              (WebCore::ResourceHandle::portAllowed):
              * platform/network/ResourceRequestBase.cpp:
              (WebCore::ResourceRequestBase::isNull):
              * platform/network/cf/ResourceHandleCFNet.cpp:
              (WebCore::willSendRequest):
              (WebCore::didReceiveResponse):
              (WebCore::didReceiveData):
              (WebCore::didFinishLoading):
              (WebCore::didFail):
              (WebCore::didReceiveChallenge):
              (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
              (WebCore::ResourceHandle::~ResourceHandle):
              (WebCore::ResourceHandle::start):
              * platform/win/ClipboardUtilitiesWin.cpp:
              (WebCore::createGlobalData):
              (WebCore::urlToMarkup):
              * platform/win/ClipboardWin.cpp:
              (WebCore::writeURL):
              (WebCore::writeImageToDataObject):
              (WebCore::ClipboardWin::writeURL):
              (WebCore::ClipboardWin::writeRange):
              * platform/win/PasteboardWin.cpp:
              (WebCore::Pasteboard::writeSelection):
              (WebCore::Pasteboard::writeURL):
              * plugins/win/PluginDatabaseWin.cpp:
              (WebCore::PluginDatabaseWin::findPlugin):
              * plugins/win/PluginStreamWin.cpp:
              (WebCore::PluginStreamWin::startStream):
              (WebCore::PluginStreamWin::destroyStream):
              * plugins/win/PluginViewWin.cpp:
              (WebCore::scriptStringIfJavaScriptURL):
              (WebCore::PluginViewWin::performRequest):
              * svg/SVGImageLoader.cpp:
              (WebCore::SVGImageLoader::updateFromElement):
              * xml/XMLHttpRequest.cpp:
              (WebCore::XMLHttpRequest::getResponseXML):
              (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
              * xml/XSLImportRule.cpp:
              (WebCore::XSLImportRule::loadSheet):
              * xml/XSLTProcessor.cpp:
              (WebCore::XSLTProcessor::createDocumentFromSource):
              (WebCore::xsltStylesheetPointer):
              (WebCore::xmlDocPtrFromNode):
      
      WebKit/mac:
      
              Reviewed by Darin Adler.
      
              Scrub URL out of the tree in preparation for renaming KURL to URL.
      
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (WebFrameLoaderClient::actionDictionary):
              * WebView/WebDataSource.mm:
              (-[WebDataSource _URL]):
              * WebView/WebView.mm:
              (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
      
      WebKit/win:
      
              Reviewed by Darin Adler.
      
              Scrub URL out of the tree in preparation for renaming KURL to URL.
      
              * WebFrame.cpp:
              (WebFrame::url):
              (WebFrame::dispatchWillPerformClientRedirect):
              (WebFrame::setTitle):
              (WebFrame::updateGlobalHistoryForStandardLoad):
              (WebFrame::updateGlobalHistoryForReload):
              (WebFrame::cancelledError):
              (WebFrame::blockedError):
              (WebFrame::interruptForPolicyChangeError):
              (WebFrame::createPlugin):
              * WebView.cpp:
              (WebView::notifyDidAddIcon):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28639 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c5002665
  4. 05 Dec, 2007 1 commit
    • ggaren@apple.com's avatar
      JavaScriptCore: · 1b4d90ba
      ggaren@apple.com authored
              Reviewed by Darin Adler.
      
              Third step in refactoring JSGlobalObject: Moved data members and 
              functions accessing data members from Interpreter to JSGlobalObject.
              Changed Interpreter member functions to static functions.
              
              This resolves a bug in global object bootstrapping, where the global
              ExecState could be used when uninitialized.
              
              This is a big change, but it's mostly code motion and renaming.
              
              Layout and JS tests, and testjsglue and testapi, pass. SunSpider reports
              a .7% regression, but Shark sees no difference related to this patch,
              and SunSpider reported a .7% speedup from an earlier step in this 
              refactoring, so I think it's fair to call that a wash.
      
      JavaScriptGlue:
      
              Reviewed by Darin Adler.
      
              Third step in refactoring JSGlobalObject: Moved data members and data
              member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
              subclass with JSGlobalObject subclass.
              
              * JSRun.cpp:
              (JSRun::JSRun):
              (JSRun::Evaluate):
              (JSRun::CheckSyntax):
              * JSRun.h:
              (JSGlueGlobalObject::JSGlueGlobalObject):
              * JSUtils.cpp:
              (KJSValueToCFTypeInternal):
              * JSValueWrapper.cpp:
              (getThreadGlobalExecState):
      
      WebCore:
      
              Reviewed by Darin Adler.
      
              Third step in refactoring JSGlobalObject: Moved data members and data
              member access from Interpreter to JSGlobalObject. Changed Interpreter
              member functions to static functions. Same for the subclass, 
              ScriptInterpreter.
              
              This is a big change, but it's mostly code motion and renaming.
      
      WebKit/mac:
      
              Reviewed by Darin Adler.
      
              Third step in refactoring JSGlobalObject: Moved data members and data
              member access from Interpreter to JSGlobalObject.
              
              * WebView/WebFrame.mm:
              (-[WebFrame _attachScriptDebugger]):
      
      WebKit/win:
      
              Reviewed by Darin Adler.
      
              Third step in refactoring JSGlobalObject: Moved data members and data
              member access from Interpreter to JSGlobalObject.
              
              * WebFrame.cpp:
              (WebFrame::globalContext):
              (WebFrame::attachScriptDebugger):
              (WebFrame::windowObjectCleared):
              * WebScriptDebugger.cpp:
              (WebScriptDebugger::WebScriptDebugger):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28468 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1b4d90ba
  5. 03 Dec, 2007 1 commit
    • ggaren@apple.com's avatar
      JavaScriptCore: · 66bf8cbb
      ggaren@apple.com authored
              Reviewed by Eric Seidel.
      
              Second step in refactoring JSGlobalObject: moved virtual functions from
              Interpreter to JSGlobalObject.
              
              Layout and JS tests pass. SunSpider reports a .7% speedup -- don't 
              believe his lies.
      
      JavaScriptGlue:
      
              Reviewed by Eric Seidel.
      
              Updated to match the JavaScriptCore change to move virtual methods from
              Interpreter to JSGlobalObject.
              
              * JSRun.cpp:
              * JSRun.h:
              * JSValueWrapper.cpp:
              (getThreadGlobalExecState):
              * JavaScriptGlue.cpp:
              (JSRunCopyGlobalObject):
              (JSRunEvaluate):
      
      WebCore:
      
              Reviewed by Eric Seidel.
      
              Updated to match the JavaScriptCore change to move virtual methods from
              Interpreter to JSGlobalObject.
              
              Moved virtual ScriptInterpreter functions to Window.
      
      WebKit/mac:
      
              Reviewed by Eric Seidel.
      
              Updated to match the JavaScriptCore change to move virtual methods from
              Interpreter to JSGlobalObject.
      
              * WebView/WebFrame.mm:
              (-[WebFrame globalContext]): Use the toRef function instead of manually
              casting.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28328 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      66bf8cbb
  6. 28 Nov, 2007 2 commits
    • mrowe@apple.com's avatar
      Roll out r28106 and r28108. These introduced a frequent assertion failure on... · 397036ad
      mrowe@apple.com authored
      Roll out r28106 and r28108.  These introduced a frequent assertion failure on page load and broke all non-Mac builds.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28110 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      397036ad
    • mjs@apple.com's avatar
      JavaScriptCore: · d342e879
      mjs@apple.com authored
              Reviewed by Darin and Geoff.
      
              - Fixed "Stack overflow crash in JavaScript garbage collector mark pass"
              http://bugs.webkit.org/show_bug.cgi?id=12216
              
              Implement mark stack. This version is not suitable for prime time because it makes a
              huge allocation on every collect, and potentially makes marking of detached subtrees
              slow. But it is an 0.4% SunSpider speedup even without much tweaking.
              
              The basic approach is to replace mark() methods with
              markChildren(MarkStack&) methods. Reachable references are pushed
              onto a mark stack (which encapsulates ignoring already-marked
              references). 
              
              Objects are no longer responsible for actually setting their own
              mark bits, the collector does that. This means that for objects on
              the number heap we don't have to call markChildren() at all since
              we know there aren't any.
              
              The mark phase of collect pushes roots onto the mark stack
              and drains it as often as possible.
              
              To make this approach viable requires a constant-size mark stack
              and a slow fallback approach for when the stack size is exceeded,
              plus optimizations to make the required stack small in common
              cases. This should be doable.
      
              * JavaScriptCore.exp: Export new symbols.
              * JavaScriptCore.xcodeproj/project.pbxproj: Add new file.
              * kjs/collector.cpp:
              (KJS::Collector::heapAllocate):
              (KJS::drainMarkStack): Helper for all of the below.
              (KJS::Collector::markStackObjectsConservatively): Use mark stack.
              (KJS::Collector::markCurrentThreadConservatively): ditto
              (KJS::Collector::markOtherThreadConservatively): ditto
              (KJS::Collector::markProtectedObjects): ditto
              (KJS::Collector::markMainThreadOnlyObjects): ditto
              (KJS::Collector::collect): ditto
              * kjs/collector.h:
              (KJS::Collector::cellMayHaveRefs): Helper for MarkStack.
      
              * kjs/MarkStack.h: Added. The actual mark stack implementation.
              (KJS::MarkStack::push):
              (KJS::MarkStack::pushAtom):
              (KJS::MarkStack::pop):
              (KJS::MarkStack::isEmpty):
              (KJS::MarkStack::reserveCapacity):
      
              Changed mark() methods to markChildren() methods:
              
              * kjs/ExecState.cpp:
              (KJS::ExecState::markChildren):
              * kjs/ExecState.h:
              * kjs/JSWrapperObject.cpp:
              (KJS::JSWrapperObject::markChildren):
              * kjs/JSWrapperObject.h:
              * kjs/array_instance.cpp:
              (KJS::ArrayInstance::markChildren):
              * kjs/array_instance.h:
              * kjs/bool_object.cpp:
              (BooleanInstance::markChildren):
              * kjs/bool_object.h:
              * kjs/error_object.cpp:
              * kjs/error_object.h:
              * kjs/function.cpp:
              (KJS::FunctionImp::markChildren):
              (KJS::Arguments::Arguments):
              (KJS::Arguments::markChildren):
              (KJS::ActivationImp::markChildren):
              * kjs/function.h:
              * kjs/internal.cpp:
              (KJS::GetterSetterImp::markChildren):
              * kjs/interpreter.cpp:
              (KJS::Interpreter::markRoots):
              * kjs/interpreter.h:
              * kjs/list.cpp:
              (KJS::List::markProtectedListsSlowCase):
              * kjs/list.h:
              (KJS::List::markProtectedLists):
              * kjs/object.cpp:
              (KJS::JSObject::markChildren):
              * kjs/object.h:
              (KJS::ScopeChain::markChildren):
              * kjs/property_map.cpp:
              (KJS::PropertyMap::markChildren):
              * kjs/property_map.h:
              * kjs/scope_chain.h:
              * kjs/string_object.cpp:
              (KJS::StringInstance::markChildren):
              * kjs/string_object.h:
      
      JavaScriptGlue:
      
              Reviewed by Darin and Geoff.
      
              Fixups for JavaScriptCore mark stack.
      
              * JSObject.cpp:
              (JSUserObject::Mark):
              * JSObject.h:
              * JSValueWrapper.cpp:
              (JSValueWrapper::JSObjectMark):
              * JSValueWrapper.h:
              * UserObjectImp.cpp:
              * UserObjectImp.h:
      
      WebCore:
      
              Reviewed by Darin and Geoff.
      
              Implement mark stack. This version is not suitable for prime time because it makes a
              huge allocation on every collect, and potentially makes marking of detached subtrees
              slow. But it is a .2% - .4% speedup even without much tweaking.
      
              I replaced mark() methods with markChildren() as usual. One
              optimization that is lost is avoiding walking detached DOM
              subtrees more than once to mark them; since marking is not
              recursive there's no obvious way to bracket operation on the tree
              any more.
      
              * bindings/js/JSDocumentCustom.cpp:
              (WebCore::JSDocument::markChildren):
              * bindings/js/JSNodeCustom.cpp:
              (WebCore::JSNode::markChildren):
              * bindings/js/JSNodeFilterCondition.cpp:
              * bindings/js/JSNodeFilterCondition.h:
              * bindings/js/JSNodeFilterCustom.cpp:
              (WebCore::JSNodeFilter::markChildren):
              * bindings/js/JSNodeIteratorCustom.cpp:
              (WebCore::JSNodeIterator::markChildren):
              * bindings/js/JSTreeWalkerCustom.cpp:
              (WebCore::JSTreeWalker::markChildren):
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::JSXMLHttpRequest::markChildren):
              * bindings/js/JSXMLHttpRequest.h:
              * bindings/js/kjs_binding.cpp:
              (KJS::ScriptInterpreter::markDOMNodesForDocument):
              * bindings/js/kjs_binding.h:
              * bindings/js/kjs_events.cpp:
              (WebCore::JSUnprotectedEventListener::markChildren):
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_window.cpp:
              (KJS::Window::markChildren):
              * bindings/js/kjs_window.h:
              * bindings/scripts/CodeGeneratorJS.pm:
              * dom/Node.cpp:
              (WebCore::Node::Node):
              * dom/Node.h:
              * dom/NodeFilter.h:
              * dom/NodeFilterCondition.h:
      
      LayoutTests:
      
              Not reviewed.
              
              - Test cases for "Stack overflow crash in JavaScript garbage collector mark pass"
              http://bugs.webkit.org/show_bug.cgi?id=12216
      
              I have fixed this with the mark stack work.
              
              * fast/js/gc-breadth-2-expected.txt: Added.
              * fast/js/gc-breadth-2.html: Added.
              * fast/js/gc-breadth-expected.txt: Added.
              * fast/js/gc-breadth.html: Added.
              * fast/js/gc-depth-expected.txt: Added.
              * fast/js/gc-depth.html: Added.
              * fast/js/resources/gc-breadth-2.js: Added.
              * fast/js/resources/gc-breadth.js: Added.
              * fast/js/resources/gc-depth.js: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28106 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d342e879
  7. 08 Nov, 2007 1 commit
    • weinig@apple.com's avatar
      JavaScriptCore: · a73c15f5
      weinig@apple.com authored
              Reviewed by Darin.
      
              Convert JavaScript internal function objects to use one class per
              function.  This avoids a switch statement inside what used to be
              the shared function classes and will allow Shark to better analyze
              the code.
      
              To make this switch, the value property of the HashEntry was changed
              to a union of an intptr_t (which is used to continue handle valueGetters)
              and function pointer which points to a static constructor for the
              individual new function objects.
      
              SunSpider claims this is a 0.5% speedup. 
      
              * kjs/array_object.cpp:
              (KJS::ArrayPrototype::getOwnPropertySlot):
              (KJS::getProperty):
              (KJS::ArrayProtoFuncToString::callAsFunction):
              (KJS::ArrayProtoFuncToLocaleString::callAsFunction):
              (KJS::ArrayProtoFuncJoin::callAsFunction):
              (KJS::ArrayProtoFuncConcat::callAsFunction):
              (KJS::ArrayProtoFuncPop::callAsFunction):
              (KJS::ArrayProtoFuncPush::callAsFunction):
              (KJS::ArrayProtoFuncReverse::callAsFunction):
              (KJS::ArrayProtoFuncShift::callAsFunction):
              (KJS::ArrayProtoFuncSlice::callAsFunction):
              (KJS::ArrayProtoFuncSort::callAsFunction):
              (KJS::ArrayProtoFuncSplice::callAsFunction):
              (KJS::ArrayProtoFuncUnShift::callAsFunction):
              (KJS::ArrayProtoFuncFilter::callAsFunction):
              (KJS::ArrayProtoFuncMap::callAsFunction):
              (KJS::ArrayProtoFuncEvery::callAsFunction):
              (KJS::ArrayProtoFuncForEach::callAsFunction):
              (KJS::ArrayProtoFuncSome::callAsFunction):
              (KJS::ArrayProtoFuncIndexOf::callAsFunction):
              (KJS::ArrayProtoFuncLastIndexOf::callAsFunction):
              * kjs/array_object.h:
              (KJS::ArrayPrototype::classInfo):
              * kjs/create_hash_table:
              * kjs/date_object.cpp:
              (KJS::DatePrototype::getOwnPropertySlot):
              (KJS::DateProtoFuncToString::callAsFunction):
              (KJS::DateProtoFuncToUTCString::callAsFunction):
              (KJS::DateProtoFuncToDateString::callAsFunction):
              (KJS::DateProtoFuncToTimeString::callAsFunction):
              (KJS::DateProtoFuncToLocaleString::callAsFunction):
              (KJS::DateProtoFuncToLocaleDateString::callAsFunction):
              (KJS::DateProtoFuncToLocaleTimeString::callAsFunction):
              (KJS::DateProtoFuncValueOf::callAsFunction):
              (KJS::DateProtoFuncGetTime::callAsFunction):
              (KJS::DateProtoFuncGetFullYear::callAsFunction):
              (KJS::DateProtoFuncGetUTCFullYear::callAsFunction):
              (KJS::DateProtoFuncToGMTString::callAsFunction):
              (KJS::DateProtoFuncGetMonth::callAsFunction):
              (KJS::DateProtoFuncGetUTCMonth::callAsFunction):
              (KJS::DateProtoFuncGetDate::callAsFunction):
              (KJS::DateProtoFuncGetUTCDate::callAsFunction):
              (KJS::DateProtoFuncGetDay::callAsFunction):
              (KJS::DateProtoFuncGetUTCDay::callAsFunction):
              (KJS::DateProtoFuncGetHours::callAsFunction):
              (KJS::DateProtoFuncGetUTCHours::callAsFunction):
              (KJS::DateProtoFuncGetMinutes::callAsFunction):
              (KJS::DateProtoFuncGetUTCMinutes::callAsFunction):
              (KJS::DateProtoFuncGetSeconds::callAsFunction):
              (KJS::DateProtoFuncGetUTCSeconds::callAsFunction):
              (KJS::DateProtoFuncGetMilliSeconds::callAsFunction):
              (KJS::DateProtoFuncGetUTCMilliseconds::callAsFunction):
              (KJS::DateProtoFuncGetTimezoneOffset::callAsFunction):
              (KJS::DateProtoFuncSetTime::callAsFunction):
              (KJS::DateProtoFuncSetMilliSeconds::callAsFunction):
              (KJS::DateProtoFuncSetUTCMilliseconds::callAsFunction):
              (KJS::DateProtoFuncSetSeconds::callAsFunction):
              (KJS::DateProtoFuncSetUTCSeconds::callAsFunction):
              (KJS::DateProtoFuncSetMinutes::callAsFunction):
              (KJS::DateProtoFuncSetUTCMinutes::callAsFunction):
              (KJS::DateProtoFuncSetHours::callAsFunction):
              (KJS::DateProtoFuncSetUTCHours::callAsFunction):
              (KJS::DateProtoFuncSetDate::callAsFunction):
              (KJS::DateProtoFuncSetUTCDate::callAsFunction):
              (KJS::DateProtoFuncSetMonth::callAsFunction):
              (KJS::DateProtoFuncSetUTCMonth::callAsFunction):
              (KJS::DateProtoFuncSetFullYear::callAsFunction):
              (KJS::DateProtoFuncSetUTCFullYear::callAsFunction):
              (KJS::DateProtoFuncSetYear::callAsFunction):
              (KJS::DateProtoFuncGetYear::callAsFunction):
              * kjs/date_object.h:
              * kjs/lookup.cpp:
              (KJS::Lookup::find):
              * kjs/lookup.h:
              (KJS::HashEntry::):
              (KJS::staticFunctionGetter):
              (KJS::staticValueGetter):
              (KJS::getStaticPropertySlot):
              (KJS::getStaticFunctionSlot):
              (KJS::lookupPut):
              * kjs/math_object.cpp:
              (KJS::MathObjectImp::getOwnPropertySlot):
              (KJS::MathProtoFuncAbs::callAsFunction):
              (KJS::MathProtoFuncACos::callAsFunction):
              (KJS::MathProtoFuncASin::callAsFunction):
              (KJS::MathProtoFuncATan::callAsFunction):
              (KJS::MathProtoFuncATan2::callAsFunction):
              (KJS::MathProtoFuncCeil::callAsFunction):
              (KJS::MathProtoFuncCos::callAsFunction):
              (KJS::MathProtoFuncExp::callAsFunction):
              (KJS::MathProtoFuncFloor::callAsFunction):
              (KJS::MathProtoFuncLog::callAsFunction):
              (KJS::MathProtoFuncMax::callAsFunction):
              (KJS::MathProtoFuncMin::callAsFunction):
              (KJS::MathProtoFuncPow::callAsFunction):
              (KJS::MathProtoFuncRandom::callAsFunction):
              (KJS::MathProtoFuncRound::callAsFunction):
              (KJS::MathProtoFuncSin::callAsFunction):
              (KJS::MathProtoFuncSqrt::callAsFunction):
              (KJS::MathProtoFuncTan::callAsFunction):
              * kjs/math_object.h:
              (KJS::MathObjectImp::classInfo):
              (KJS::MathObjectImp::):
              * kjs/string_object.cpp:
              (KJS::StringPrototype::getOwnPropertySlot):
              (KJS::StringProtoFuncToString::callAsFunction):
              (KJS::StringProtoFuncValueOf::callAsFunction):
              (KJS::StringProtoFuncCharAt::callAsFunction):
              (KJS::StringProtoFuncCharCodeAt::callAsFunction):
              (KJS::StringProtoFuncConcat::callAsFunction):
              (KJS::StringProtoFuncIndexOf::callAsFunction):
              (KJS::StringProtoFuncLastIndexOf::callAsFunction):
              (KJS::StringProtoFuncMatch::callAsFunction):
              (KJS::StringProtoFuncSearch::callAsFunction):
              (KJS::StringProtoFuncReplace::callAsFunction):
              (KJS::StringProtoFuncSlice::callAsFunction):
              (KJS::StringProtoFuncSplit::callAsFunction):
              (KJS::StringProtoFuncSubstr::callAsFunction):
              (KJS::StringProtoFuncSubstring::callAsFunction):
              (KJS::StringProtoFuncToLowerCase::callAsFunction):
              (KJS::StringProtoFuncToUpperCase::callAsFunction):
              (KJS::StringProtoFuncToLocaleLowerCase::callAsFunction):
              (KJS::StringProtoFuncToLocaleUpperCase::callAsFunction):
              (KJS::StringProtoFuncLocaleCompare::callAsFunction):
              (KJS::StringProtoFuncBig::callAsFunction):
              (KJS::StringProtoFuncSmall::callAsFunction):
              (KJS::StringProtoFuncBlink::callAsFunction):
              (KJS::StringProtoFuncBold::callAsFunction):
              (KJS::StringProtoFuncFixed::callAsFunction):
              (KJS::StringProtoFuncItalics::callAsFunction):
              (KJS::StringProtoFuncStrike::callAsFunction):
              (KJS::StringProtoFuncSub::callAsFunction):
              (KJS::StringProtoFuncSup::callAsFunction):
              (KJS::StringProtoFuncFontcolor::callAsFunction):
              (KJS::StringProtoFuncFontsize::callAsFunction):
              (KJS::StringProtoFuncAnchor::callAsFunction):
              (KJS::StringProtoFuncLink::callAsFunction):
              * kjs/string_object.h:
      
      WebCore:
      
              Reviewed by Darin.
      
              Convert JavaScript internal function objects to use one class per
              function.  This avoids a switch statement inside what used to be
              the shared function classes and will allow Shark to better analyze
              the code.
      
              To make this switch, the value property of the HashEntry was changed
              to a union of an intptr_t (which is used to continue handle valueGetters)
              and function pointer which points to a static constructor for the
              individual new function objects.
      
              SunSpider claims this is a 0.5% speedup.
      
              - On the WebCore side, I updated CodeGeneratorJS.pm to generate the
                new classes and hand updated the remain non-generated (groan) classes.
      
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::customGetOwnPropertySlot):
              * bindings/js/JSEventTargetNode.cpp:
              (WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
              (WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
              (WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
              * bindings/js/JSEventTargetNode.h:
              * bindings/js/JSHTMLInputElementBase.cpp:
              (WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
              (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
              * bindings/js/JSHTMLInputElementBase.h:
              (WebCore::JSHTMLInputElementBase::):
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
              * bindings/js/JSXMLHttpRequest.h:
              (KJS::JSXMLHttpRequest::impl):
              * bindings/js/JSXSLTProcessor.cpp:
              (KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
              * bindings/js/JSXSLTProcessor.h:
              * bindings/js/kjs_events.cpp:
              (WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
              (WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
              (WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
              (WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_navigator.cpp:
              (KJS::Plugins::):
              (KJS::Navigator::getOwnPropertySlot):
              (KJS::Plugins::getOwnPropertySlot):
              (KJS::PluginsFunctionRefresh::callAsFunction):
              (KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
              * bindings/js/kjs_navigator.h:
              (KJS::Navigator::):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::getOwnPropertySlot):
              (KJS::Window::put):
              (KJS::WindowProtoFuncAToB::callAsFunction):
              (KJS::WindowProtoFuncBToA::callAsFunction):
              (KJS::WindowProtoFuncOpen::callAsFunction):
              (KJS::WindowProtoFuncScrollBy::callAsFunction):
              (KJS::WindowProtoFuncScrollTo::callAsFunction):
              (KJS::WindowProtoFuncMoveBy::callAsFunction):
              (KJS::WindowProtoFuncMoveTo::callAsFunction):
              (KJS::WindowProtoFuncResizeBy::callAsFunction):
              (KJS::WindowProtoFuncResizeTo::callAsFunction):
              (KJS::WindowProtoFuncSetTimeout::callAsFunction):
              (KJS::WindowProtoFuncClearTimeout::callAsFunction):
              (KJS::WindowProtoFuncSetInterval::callAsFunction):
              (KJS::WindowProtoFuncAddEventListener::callAsFunction):
              (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
              (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
              (KJS::WindowProtoFuncNotImplemented::callAsFunction):
              (KJS::Location::getOwnPropertySlot):
              (KJS::Location::put):
              (KJS::LocationProtoFuncReplace::callAsFunction):
              (KJS::LocationProtoFuncReload::callAsFunction):
              (KJS::LocationProtoFuncAssign::callAsFunction):
              (KJS::LocationProtoFuncToString::callAsFunction):
              * bindings/js/kjs_window.h:
              (KJS::Window::):
              * bindings/scripts/CodeGeneratorJS.pm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27608 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a73c15f5
  8. 03 Nov, 2007 1 commit
    • weinig@apple.com's avatar
      JavaScriptCore: · a845d282
      weinig@apple.com authored
              Reviewed by Oliver.
      
              Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
              The variable had been kept around for binary compatibility, but since nothing
              else is there is no point in continuing to keep it around.
      
              * API/JSCallbackConstructor.cpp:
              (KJS::):
              * API/JSCallbackFunction.cpp:
              (KJS::):
              * API/JSCallbackObject.cpp:
              (KJS::):
              * bindings/objc/objc_runtime.mm:
              * bindings/runtime_array.cpp:
              * bindings/runtime_object.cpp:
              * kjs/array_instance.cpp:
              (KJS::):
              * kjs/array_object.cpp:
              (KJS::):
              * kjs/bool_object.cpp:
              * kjs/date_object.cpp:
              (KJS::):
              * kjs/error_object.cpp:
              * kjs/function.cpp:
              (KJS::):
              * kjs/internal.cpp:
              (KJS::):
              * kjs/lookup.h:
              * kjs/math_object.cpp:
              * kjs/number_object.cpp:
              * kjs/object.h:
              * kjs/regexp_object.cpp:
              * kjs/string_object.cpp:
              (KJS::):
      
      WebCore:
      
              Reviewed by Oliver.
      
              Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
              The variable had been kept around for binary compatibility, but since nothing
              else is there is no point in continuing to keep it around.
      
              * bindings/js/JSDOMExceptionConstructor.cpp:
              (WebCore::):
              * bindings/js/JSHTMLInputElementBase.cpp:
              (WebCore::):
              * bindings/js/JSNamedNodesCollection.cpp:
              (WebCore::):
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::):
              * bindings/js/JSXSLTProcessor.cpp:
              (KJS::):
              * bindings/js/kjs_css.cpp:
              (WebCore::):
              * bindings/js/kjs_events.cpp:
              (WebCore::):
              * bindings/js/kjs_navigator.cpp:
              (KJS::):
              * bindings/js/kjs_window.cpp:
              (KJS::):
              * bindings/scripts/CodeGeneratorJS.pm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27413 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a845d282
  9. 24 Oct, 2007 1 commit
  10. 20 Oct, 2007 1 commit
  11. 25 Sep, 2007 1 commit
    • ddkilzer's avatar
      JavaScriptCore: · c8eccecd
      ddkilzer authored
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * COPYING.LIB:
              * bindings/testbindings.cpp:
              * kjs/AllInOneFile.cpp:
              * kjs/DateMath.cpp:
              * kjs/PropertyNameArray.cpp:
              * kjs/PropertyNameArray.h:
              * kjs/config.h:
      
      WebCore:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * LICENSE-LGPL-2:
              * LICENSE-LGPL-2.1:
              * WebCorePrefix.h:
              * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
              * bindings/js/JSDOMWindowCustom.cpp:
              * bindings/js/JSDocumentCustom.cpp:
              * bindings/js/JSHTMLCollectionCustom.cpp:
              * bindings/js/JSHTMLElementWrapperFactory.cpp:
              * bindings/js/JSHTMLElementWrapperFactory.h:
              * bindings/js/JSHTMLInputElementBase.cpp:
              * bindings/js/JSHTMLInputElementBase.h:
              * bindings/js/JSHTMLOptionElementConstructor.cpp:
              * bindings/js/JSHTMLOptionElementConstructor.h:
              * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
              * bindings/js/JSHTMLSelectElementCustom.cpp:
              * bindings/js/JSNodeFilterCondition.cpp:
              * bindings/js/JSNodeFilterCondition.h:
              * bindings/js/JSNodeIteratorCustom.cpp:
              * bindings/js/JSSVGElementWrapperFactory.cpp:
              * bindings/js/JSSVGElementWrapperFactory.h:
              * bindings/js/JSSVGMatrixCustom.cpp:
              * bindings/js/JSSVGPathSegCustom.cpp:
              * bindings/js/JSSVGPathSegListCustom.cpp:
              * bindings/js/JSSVGPointListCustom.cpp:
              * bindings/js/JSTreeWalkerCustom.cpp:
              * bindings/js/JSXMLHttpRequest.cpp:
              * bindings/js/JSXMLHttpRequest.h:
              * bindings/js/kjs_binding.cpp:
              * bindings/js/kjs_binding.h:
              * bindings/js/kjs_css.cpp:
              * bindings/js/kjs_css.h:
              * bindings/js/kjs_dom.cpp:
              * bindings/js/kjs_dom.h:
              * bindings/js/kjs_events.cpp:
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_html.cpp:
              * bindings/js/kjs_html.h:
              * bindings/js/kjs_navigator.cpp:
              * bindings/js/kjs_navigator.h:
              * bindings/js/kjs_proxy.cpp:
              * bindings/js/kjs_proxy.h:
              * bindings/js/kjs_window.cpp:
              * bindings/js/kjs_window.h:
              * bindings/objc/DOMImplementationFront.cpp:
              * bindings/objc/DOMImplementationFront.h:
              * bindings/scripts/CodeGenerator.pm:
              * bindings/scripts/CodeGeneratorJS.pm:
              * bindings/scripts/CodeGeneratorObjC.pm:
              * bindings/scripts/IDLParser.pm:
              * bindings/scripts/IDLStructure.pm:
              * bindings/scripts/generate-bindings.pl:
              * config.h:
              * css/CSSBorderImageValue.cpp:
              * css/CSSBorderImageValue.h:
              * css/CSSCharsetRule.cpp:
              * css/CSSCharsetRule.h:
              * css/CSSCharsetRule.idl:
              * css/CSSComputedStyleDeclaration.cpp:
              * css/CSSComputedStyleDeclaration.h:
              * css/CSSCursorImageValue.cpp:
              * css/CSSCursorImageValue.h:
              * css/CSSFontFaceRule.cpp:
              * css/CSSFontFaceRule.h:
              * css/CSSFontFaceRule.idl:
              * css/CSSGrammar.y:
              * css/CSSHelper.cpp:
              * css/CSSHelper.h:
              * css/CSSImageValue.cpp:
              * css/CSSImageValue.h:
              * css/CSSImportRule.cpp:
              * css/CSSImportRule.h:
              * css/CSSImportRule.idl:
              * css/CSSInheritedValue.cpp:
              * css/CSSInheritedValue.h:
              * css/CSSInitialValue.cpp:
              * css/CSSInitialValue.h:
              * css/CSSMediaRule.cpp:
              * css/CSSMediaRule.h:
              * css/CSSMediaRule.idl:
              * css/CSSMutableStyleDeclaration.cpp:
              * css/CSSMutableStyleDeclaration.h:
              * css/CSSNamespace.h:
              * css/CSSPageRule.cpp:
              * css/CSSPageRule.h:
              * css/CSSPageRule.idl:
              * css/CSSParser.cpp:
              * css/CSSParser.h:
              * css/CSSPrimitiveValue.cpp:
              * css/CSSPrimitiveValue.h:
              * css/CSSPrimitiveValue.idl:
              * css/CSSProperty.cpp:
              * css/CSSProperty.h:
              * css/CSSQuirkPrimitiveValue.h:
              * css/CSSRule.cpp:
              * css/CSSRule.h:
              * css/CSSRule.idl:
              * css/CSSRuleList.cpp:
              * css/CSSRuleList.h:
              * css/CSSSelector.cpp:
              * css/CSSSelector.h:
              * css/CSSStyleDeclaration.cpp:
              * css/CSSStyleDeclaration.h:
              * css/CSSStyleDeclaration.idl:
              * css/CSSStyleRule.cpp:
              * css/CSSStyleRule.h:
              * css/CSSStyleRule.idl:
              * css/CSSStyleSelector.cpp:
              * css/CSSStyleSelector.h:
              * css/CSSStyleSheet.cpp:
              * css/CSSStyleSheet.h:
              * css/CSSStyleSheet.idl:
              * css/CSSUnknownRule.h:
              * css/CSSUnknownRule.idl:
              * css/CSSValue.h:
              * css/CSSValue.idl:
              * css/CSSValueList.cpp:
              * css/CSSValueList.h:
              * css/Counter.h:
              * css/Counter.idl:
              * css/DashboardRegion.h:
              * css/FontFamilyValue.cpp:
              * css/FontFamilyValue.h:
              * css/FontValue.cpp:
              * css/FontValue.h:
              * css/MediaFeatureNames.cpp:
              * css/MediaFeatureNames.h:
              * css/MediaList.cpp:
              * css/MediaList.h:
              * css/Pair.h:
              * css/RGBColor.idl:
              * css/Rect.h:
              * css/Rect.idl:
              * css/ShadowValue.cpp:
              * css/ShadowValue.h:
              * css/StyleBase.cpp:
              * css/StyleBase.h:
              * css/StyleList.cpp:
              * css/StyleList.h:
              * css/StyleSheet.cpp:
              * css/StyleSheet.h:
              * css/StyleSheet.idl:
              * css/StyleSheetList.cpp:
              * css/StyleSheetList.h:
              * css/StyleSheetList.idl:
              * css/html4.css:
              * css/make-css-file-arrays.pl:
              * css/makegrammar.pl:
              * css/makeprop.pl:
              * css/maketokenizer:
              * css/makevalues.pl:
              * css/quirks.css:
              * dom/AtomicStringList.h:
              * dom/Attr.cpp:
              * dom/Attr.h:
              * dom/Attr.idl:
              * dom/Attribute.cpp:
              * dom/Attribute.h:
              * dom/BeforeUnloadEvent.cpp:
              * dom/BeforeUnloadEvent.h:
              * dom/CDATASection.cpp:
              * dom/CDATASection.h:
              * dom/CDATASection.idl:
              * dom/CSSMappedAttributeDeclaration.cpp:
              * dom/CSSMappedAttributeDeclaration.h:
              * dom/CharacterData.cpp:
              * dom/CharacterData.h:
              * dom/CharacterData.idl:
              * dom/ChildNodeList.cpp:
              * dom/ChildNodeList.h:
              * dom/Clipboard.h:
              * dom/ClipboardEvent.cpp:
              * dom/ClipboardEvent.h:
              * dom/Comment.cpp:
              * dom/Comment.h:
              * dom/Comment.idl:
              * dom/ContainerNode.cpp:
              * dom/ContainerNode.h:
              * dom/DOMImplementation.cpp:
              * dom/DOMImplementation.h:
              * dom/DOMImplementation.idl:
              * dom/DocPtr.h:
              * dom/Document.cpp:
              * dom/Document.h:
              * dom/Document.idl:
              * dom/DocumentFragment.cpp:
              * dom/DocumentFragment.h:
              * dom/DocumentFragment.idl:
              * dom/DocumentMarker.h:
              * dom/DocumentType.cpp:
              * dom/DocumentType.h:
              * dom/DocumentType.idl:
              * dom/EditingText.cpp:
              * dom/EditingText.h:
              * dom/Element.cpp:
              * dom/Element.h:
              * dom/Element.idl:
              * dom/Entity.cpp:
              * dom/Entity.h:
              * dom/Entity.idl:
              * dom/EntityReference.cpp:
              * dom/EntityReference.h:
              * dom/EntityReference.idl:
              * dom/Event.cpp:
              * dom/Event.h:
              * dom/Event.idl:
              * dom/EventListener.h:
              * dom/EventListener.idl:
              * dom/EventNames.cpp:
              * dom/EventNames.h:
              * dom/EventTarget.idl:
              * dom/EventTargetNode.cpp:
              * dom/EventTargetNode.h:
              * dom/ExceptionCode.h:
              * dom/KeyboardEvent.cpp:
              * dom/KeyboardEvent.h:
              * dom/KeyboardEvent.idl:
              * dom/MappedAttribute.cpp:
              * dom/MappedAttribute.h:
              * dom/MappedAttributeEntry.h:
              * dom/MouseEvent.cpp:
              * dom/MouseEvent.h:
              * dom/MouseEvent.idl:
              * dom/MouseRelatedEvent.cpp:
              * dom/MouseRelatedEvent.h:
              * dom/MutationEvent.cpp:
              * dom/MutationEvent.h:
              * dom/MutationEvent.idl:
              * dom/NameNodeList.cpp:
              * dom/NameNodeList.h:
              * dom/NamedAttrMap.cpp:
              * dom/NamedAttrMap.h:
              * dom/NamedMappedAttrMap.cpp:
              * dom/NamedMappedAttrMap.h:
              * dom/NamedNodeMap.h:
              * dom/NamedNodeMap.idl:
              * dom/Node.cpp:
              * dom/Node.h:
              * dom/Node.idl:
              * dom/NodeFilter.cpp:
              * dom/NodeFilter.h:
              * dom/NodeFilter.idl:
              * dom/NodeFilterCondition.cpp:
              * dom/NodeFilterCondition.h:
              * dom/NodeIterator.cpp:
              * dom/NodeIterator.h:
              * dom/NodeIterator.idl:
              * dom/NodeList.cpp:
              * dom/NodeList.h:
              * dom/NodeList.idl:
              * dom/Notation.cpp:
              * dom/Notation.h:
              * dom/Notation.idl:
              * dom/ProcessingInstruction.cpp:
              * dom/ProcessingInstruction.h:
              * dom/ProcessingInstruction.idl:
              * dom/QualifiedName.cpp:
              * dom/QualifiedName.h:
              * dom/Range.cpp:
              * dom/Range.h:
              * dom/Range.idl:
              * dom/RangeException.h:
              * dom/RangeException.idl:
              * dom/RegisteredEventListener.cpp:
              * dom/RegisteredEventListener.h:
              * dom/StyleElement.cpp:
              * dom/StyleElement.h:
              * dom/StyledElement.cpp:
              * dom/StyledElement.h:
              * dom/Text.cpp:
              * dom/Text.h:
              * dom/Text.idl:
              * dom/Tokenizer.h:
              * dom/Traversal.cpp:
              * dom/Traversal.h:
              * dom/TreeWalker.cpp:
              * dom/TreeWalker.h:
              * dom/TreeWalker.idl:
              * dom/UIEvent.cpp:
              * dom/UIEvent.h:
              * dom/UIEvent.idl:
              * dom/UIEventWithKeyState.cpp:
              * dom/UIEventWithKeyState.h:
              * dom/WheelEvent.cpp:
              * dom/WheelEvent.h:
              * dom/WheelEvent.idl:
              * dom/XMLTokenizer.cpp:
              * dom/XMLTokenizer.h:
              * html/FormDataList.cpp:
              * html/FormDataList.h:
              * html/HTMLAnchorElement.cpp:
              * html/HTMLAnchorElement.h:
              * html/HTMLAnchorElement.idl:
              * html/HTMLAppletElement.cpp:
              * html/HTMLAppletElement.h:
              * html/HTMLAppletElement.idl:
              * html/HTMLAreaElement.cpp:
              * html/HTMLAreaElement.h:
              * html/HTMLAreaElement.idl:
              * html/HTMLBRElement.cpp:
              * html/HTMLBRElement.h:
              * html/HTMLBRElement.idl:
              * html/HTMLBaseElement.cpp:
              * html/HTMLBaseElement.h:
              * html/HTMLBaseElement.idl:
              * html/HTMLBaseFontElement.cpp:
              * html/HTMLBaseFontElement.h:
              * html/HTMLBaseFontElement.idl:
              * html/HTMLBlockquoteElement.cpp:
              * html/HTMLBlockquoteElement.h:
              * html/HTMLBlockquoteElement.idl:
              * html/HTMLBodyElement.cpp:
              * html/HTMLBodyElement.h:
              * html/HTMLBodyElement.idl:
              * html/HTMLButtonElement.cpp:
              * html/HTMLButtonElement.h:
              * html/HTMLButtonElement.idl:
              * html/HTMLCollection.cpp:
              * html/HTMLCollection.h:
              * html/HTMLCollection.idl:
              * html/HTMLDListElement.cpp:
              * html/HTMLDListElement.h:
              * html/HTMLDListElement.idl:
              * html/HTMLDirectoryElement.cpp:
              * html/HTMLDirectoryElement.h:
              * html/HTMLDirectoryElement.idl:
              * html/HTMLDivElement.cpp:
              * html/HTMLDivElement.h:
              * html/HTMLDivElement.idl:
              * html/HTMLDocument.cpp:
              * html/HTMLDocument.h:
              * html/HTMLDocument.idl:
              * html/HTMLElement.cpp:
              * html/HTMLElement.h:
              * html/HTMLElement.idl:
              * html/HTMLElementFactory.cpp:
              * html/HTMLElementFactory.h:
              * html/HTMLEmbedElement.cpp:
              * html/HTMLEmbedElement.h:
              * html/HTMLEmbedElement.idl:
              * html/HTMLEntityNames.gperf:
              * html/HTMLFieldSetElement.cpp:
              * html/HTMLFieldSetElement.h:
              * html/HTMLFieldSetElement.idl:
              * html/HTMLFontElement.cpp:
              * html/HTMLFontElement.h:
              * html/HTMLFontElement.idl:
              * html/HTMLFormCollection.cpp:
              * html/HTMLFormCollection.h:
              * html/HTMLFormElement.cpp:
              * html/HTMLFormElement.h:
              * html/HTMLFormElement.idl:
              * html/HTMLFrameElement.cpp:
              * html/HTMLFrameElement.h:
              * html/HTMLFrameElement.idl:
              * html/HTMLFrameElementBase.cpp:
              * html/HTMLFrameElementBase.h:
              * html/HTMLFrameOwnerElement.cpp:
              * html/HTMLFrameOwnerElement.h:
              * html/HTMLFrameSetElement.cpp:
              * html/HTMLFrameSetElement.h:
              * html/HTMLFrameSetElement.idl:
              * html/HTMLGenericFormElement.cpp:
              * html/HTMLGenericFormElement.h:
              * html/HTMLHRElement.cpp:
              * html/HTMLHRElement.h:
              * html/HTMLHRElement.idl:
              * html/HTMLHeadElement.cpp:
              * html/HTMLHeadElement.h:
              * html/HTMLHeadElement.idl:
              * html/HTMLHeadingElement.cpp:
              * html/HTMLHeadingElement.h:
              * html/HTMLHeadingElement.idl:
              * html/HTMLHtmlElement.cpp:
              * html/HTMLHtmlElement.h:
              * html/HTMLHtmlElement.idl:
              * html/HTMLIFrameElement.cpp:
              * html/HTMLIFrameElement.h:
              * html/HTMLIFrameElement.idl:
              * html/HTMLImageElement.cpp:
              * html/HTMLImageElement.h:
              * html/HTMLImageElement.idl:
              * html/HTMLImageLoader.cpp:
              * html/HTMLImageLoader.h:
              * html/HTMLInputElement.cpp:
              * html/HTMLInputElement.h:
              * html/HTMLInputElement.idl:
              * html/HTMLIsIndexElement.cpp:
              * html/HTMLIsIndexElement.h:
              * html/HTMLIsIndexElement.idl:
              * html/HTMLKeygenElement.cpp:
              * html/HTMLKeygenElement.h:
              * html/HTMLLIElement.cpp:
              * html/HTMLLIElement.h:
              * html/HTMLLIElement.idl:
              * html/HTMLLabelElement.cpp:
              * html/HTMLLabelElement.h:
              * html/HTMLLabelElement.idl:
              * html/HTMLLegendElement.cpp:
              * html/HTMLLegendElement.h:
              * html/HTMLLegendElement.idl:
              * html/HTMLLinkElement.cpp:
              * html/HTMLLinkElement.h:
              * html/HTMLLinkElement.idl:
              * html/HTMLMapElement.cpp:
              * html/HTMLMapElement.h:
              * html/HTMLMapElement.idl:
              * html/HTMLMarqueeElement.cpp:
              * html/HTMLMarqueeElement.h:
              * html/HTMLMarqueeElement.idl:
              * html/HTMLMenuElement.cpp:
              * html/HTMLMenuElement.h:
              * html/HTMLMenuElement.idl:
              * html/HTMLMetaElement.cpp:
              * html/HTMLMetaElement.h:
              * html/HTMLMetaElement.idl:
              * html/HTMLModElement.cpp:
              * html/HTMLModElement.h:
              * html/HTMLModElement.idl:
              * html/HTMLNameCollection.cpp:
              * html/HTMLNameCollection.h:
              * html/HTMLOListElement.cpp:
              * html/HTMLOListElement.h:
              * html/HTMLOListElement.idl:
              * html/HTMLObjectElement.cpp:
              * html/HTMLObjectElement.h:
              * html/HTMLObjectElement.idl:
              * html/HTMLOptGroupElement.cpp:
              * html/HTMLOptGroupElement.h:
              * html/HTMLOptGroupElement.idl:
              * html/HTMLOptionElement.cpp:
              * html/HTMLOptionElement.h:
              * html/HTMLOptionElement.idl:
              * html/HTMLOptionsCollection.cpp:
              * html/HTMLOptionsCollection.h:
              * html/HTMLOptionsCollection.idl:
              * html/HTMLParagraphElement.cpp:
              * html/HTMLParagraphElement.h:
              * html/HTMLParagraphElement.idl:
              * html/HTMLParamElement.cpp:
              * html/HTMLParamElement.h:
              * html/HTMLParamElement.idl:
              * html/HTMLParser.cpp:
              * html/HTMLParser.h:
              * html/HTMLPlugInElement.cpp:
              * html/HTMLPlugInElement.h:
              * html/HTMLPreElement.cpp:
              * html/HTMLPreElement.h:
              * html/HTMLPreElement.idl:
              * html/HTMLQuoteElement.cpp:
              * html/HTMLQuoteElement.h:
              * html/HTMLQuoteElement.idl:
              * html/HTMLScriptElement.cpp:
              * html/HTMLScriptElement.h:
              * html/HTMLScriptElement.idl:
              * html/HTMLSelectElement.cpp:
              * html/HTMLSelectElement.h:
              * html/HTMLSelectElement.idl:
              * html/HTMLStyleElement.cpp:
              * html/HTMLStyleElement.h:
              * html/HTMLStyleElement.idl:
              * html/HTMLTableCaptionElement.cpp:
              * html/HTMLTableCaptionElement.h:
              * html/HTMLTableCaptionElement.idl:
              * html/HTMLTableCellElement.cpp:
              * html/HTMLTableCellElement.h:
              * html/HTMLTableCellElement.idl:
              * html/HTMLTableColElement.cpp:
              * html/HTMLTableColElement.h:
              * html/HTMLTableColElement.idl:
              * html/HTMLTableElement.cpp:
              * html/HTMLTableElement.h:
              * html/HTMLTableElement.idl:
              * html/HTMLTablePartElement.cpp:
              * html/HTMLTablePartElement.h:
              * html/HTMLTableRowElement.cpp:
              * html/HTMLTableRowElement.h:
              * html/HTMLTableRowElement.idl:
              * html/HTMLTableSectionElement.cpp:
              * html/HTMLTableSectionElement.h:
              * html/HTMLTableSectionElement.idl:
              * html/HTMLTextAreaElement.cpp:
              * html/HTMLTextAreaElement.h:
              * html/HTMLTextAreaElement.idl:
              * html/HTMLTitleElement.cpp:
              * html/HTMLTitleElement.h:
              * html/HTMLTitleElement.idl:
              * html/HTMLTokenizer.cpp:
              * html/HTMLTokenizer.h:
              * html/HTMLUListElement.cpp:
              * html/HTMLUListElement.h:
              * html/HTMLUListElement.idl:
              * ksvg2/css/SVGCSSParser.cpp:
              * ksvg2/css/SVGCSSStyleSelector.cpp:
              * ksvg2/css/SVGRenderStyle.cpp:
              * ksvg2/css/SVGRenderStyle.h:
              * ksvg2/css/SVGRenderStyleDefs.cpp:
              * ksvg2/css/SVGRenderStyleDefs.h:
              * ksvg2/events/JSSVGLazyEventListener.cpp:
              * ksvg2/events/JSSVGLazyEventListener.h:
              * ksvg2/events/SVGZoomEvent.cpp:
              * ksvg2/events/SVGZoomEvent.h:
              * ksvg2/misc/KCanvasRenderingStyle.cpp:
              * ksvg2/misc/KCanvasRenderingStyle.h:
              * ksvg2/misc/PointerEventsHitRules.cpp:
              * ksvg2/misc/PointerEventsHitRules.h:
              * ksvg2/misc/SVGDocumentExtensions.cpp:
              * ksvg2/misc/SVGDocumentExtensions.h:
              * ksvg2/misc/SVGImageLoader.cpp:
              * ksvg2/misc/SVGImageLoader.h:
              * ksvg2/misc/SVGTimer.cpp:
              * ksvg2/misc/SVGTimer.h:
              * ksvg2/misc/TimeScheduler.cpp:
              * ksvg2/misc/TimeScheduler.h:
              * ksvg2/scripts/cssmakeprops:
              * ksvg2/scripts/cssmakevalues:
              * ksvg2/svg/ColorDistance.cpp:
              * ksvg2/svg/ColorDistance.h:
              * ksvg2/svg/GradientAttributes.h:
              * ksvg2/svg/LinearGradientAttributes.h:
              * ksvg2/svg/PatternAttributes.h:
              * ksvg2/svg/RadialGradientAttributes.h:
              * ksvg2/svg/SVGAElement.cpp:
              * ksvg2/svg/SVGAElement.h:
              * ksvg2/svg/SVGAngle.cpp:
              * ksvg2/svg/SVGAngle.h:
              * ksvg2/svg/SVGAngle.idl:
              * ksvg2/svg/SVGAnimateColorElement.cpp:
              * ksvg2/svg/SVGAnimateColorElement.h:
              * ksvg2/svg/SVGAnimateElement.cpp:
              * ksvg2/svg/SVGAnimateElement.h:
              * ksvg2/svg/SVGAnimateMotionElement.cpp:
              * ksvg2/svg/SVGAnimateMotionElement.h:
              * ksvg2/svg/SVGAnimateTransformElement.cpp:
              * ksvg2/svg/SVGAnimateTransformElement.h:
              * ksvg2/svg/SVGAnimatedPathData.cpp:
              * ksvg2/svg/SVGAnimatedPathData.h:
              * ksvg2/svg/SVGAnimatedPoints.cpp:
              * ksvg2/svg/SVGAnimatedPoints.h:
              * ksvg2/svg/SVGAnimatedTemplate.h:
              * ksvg2/svg/SVGAnimationElement.cpp:
              * ksvg2/svg/SVGAnimationElement.h:
              * ksvg2/svg/SVGCircleElement.cpp:
              * ksvg2/svg/SVGCircleElement.h:
              * ksvg2/svg/SVGClipPathElement.cpp:
              * ksvg2/svg/SVGClipPathElement.h:
              * ksvg2/svg/SVGColor.cpp:
              * ksvg2/svg/SVGColor.h:
              * ksvg2/svg/SVGColor.idl:
              * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
              * ksvg2/svg/SVGComponentTransferFunctionElement.h:
              * ksvg2/svg/SVGCursorElement.cpp:
              * ksvg2/svg/SVGCursorElement.h:
              * ksvg2/svg/SVGDefsElement.cpp:
              * ksvg2/svg/SVGDefsElement.h:
              * ksvg2/svg/SVGDescElement.cpp:
              * ksvg2/svg/SVGDescElement.h:
              * ksvg2/svg/SVGDocument.cpp:
              * ksvg2/svg/SVGDocument.h:
              * ksvg2/svg/SVGDocument.idl:
              * ksvg2/svg/SVGElement.cpp:
              * ksvg2/svg/SVGElement.h:
              * ksvg2/svg/SVGElement.idl:
              * ksvg2/svg/SVGElementInstance.cpp:
              * ksvg2/svg/SVGElementInstance.h:
              * ksvg2/svg/SVGElementInstanceList.cpp:
              * ksvg2/svg/SVGElementInstanceList.h:
              * ksvg2/svg/SVGEllipseElement.cpp:
              * ksvg2/svg/SVGEllipseElement.h:
              * ksvg2/svg/SVGException.h:
              * ksvg2/svg/SVGExternalResourcesRequired.cpp:
              * ksvg2/svg/SVGExternalResourcesRequired.h:
              * ksvg2/svg/SVGFEBlendElement.cpp:
              * ksvg2/svg/SVGFEBlendElement.h:
              * ksvg2/svg/SVGFEColorMatrixElement.cpp:
              * ksvg2/svg/SVGFEColorMatrixElement.h:
              * ksvg2/svg/SVGFEComponentTransferElement.cpp:
              * ksvg2/svg/SVGFEComponentTransferElement.h:
              * ksvg2/svg/SVGFECompositeElement.cpp:
              * ksvg2/svg/SVGFECompositeElement.h:
              * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
              * ksvg2/svg/SVGFEDiffuseLightingElement.h:
              * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
              * ksvg2/svg/SVGFEDisplacementMapElement.h:
              * ksvg2/svg/SVGFEDistantLightElement.cpp:
              * ksvg2/svg/SVGFEDistantLightElement.h:
              * ksvg2/svg/SVGFEFloodElement.cpp:
              * ksvg2/svg/SVGFEFloodElement.h:
              * ksvg2/svg/SVGFEFuncAElement.cpp:
              * ksvg2/svg/SVGFEFuncAElement.h:
              * ksvg2/svg/SVGFEFuncBElement.cpp:
              * ksvg2/svg/SVGFEFuncBElement.h:
              * ksvg2/svg/SVGFEFuncGElement.cpp:
              * ksvg2/svg/SVGFEFuncGElement.h:
              * ksvg2/svg/SVGFEFuncRElement.cpp:
              * ksvg2/svg/SVGFEFuncRElement.h:
              * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
              * ksvg2/svg/SVGFEGaussianBlurElement.h:
              * ksvg2/svg/SVGFEImageElement.cpp:
              * ksvg2/svg/SVGFEImageElement.h:
              * ksvg2/svg/SVGFELightElement.cpp:
              * ksvg2/svg/SVGFELightElement.h:
              * ksvg2/svg/SVGFEMergeElement.cpp:
              * ksvg2/svg/SVGFEMergeElement.h:
              * ksvg2/svg/SVGFEMergeNodeElement.cpp:
              * ksvg2/svg/SVGFEMergeNodeElement.h:
              * ksvg2/svg/SVGFEOffsetElement.cpp:
              * ksvg2/svg/SVGFEOffsetElement.h:
              * ksvg2/svg/SVGFEPointLightElement.cpp:
              * ksvg2/svg/SVGFEPointLightElement.h:
              * ksvg2/svg/SVGFESpecularLightingElement.cpp:
              * ksvg2/svg/SVGFESpecularLightingElement.h:
              * ksvg2/svg/SVGFESpotLightElement.cpp:
              * ksvg2/svg/SVGFESpotLightElement.h:
              * ksvg2/svg/SVGFETileElement.cpp:
              * ksvg2/svg/SVGFETileElement.h:
              * ksvg2/svg/SVGFETurbulenceElement.cpp:
              * ksvg2/svg/SVGFETurbulenceElement.h:
              * ksvg2/svg/SVGFilterElement.cpp:
              * ksvg2/svg/SVGFilterElement.h:
              * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
              * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
              * ksvg2/svg/SVGFitToViewBox.cpp:
              * ksvg2/svg/SVGFitToViewBox.h:
              * ksvg2/svg/SVGForeignObjectElement.cpp:
              * ksvg2/svg/SVGForeignObjectElement.h:
              * ksvg2/svg/SVGGElement.cpp:
              * ksvg2/svg/SVGGElement.h:
              * ksvg2/svg/SVGGradientElement.cpp:
              * ksvg2/svg/SVGGradientElement.h:
              * ksvg2/svg/SVGImageElement.cpp:
              * ksvg2/svg/SVGImageElement.h:
              * ksvg2/svg/SVGLangSpace.cpp:
              * ksvg2/svg/SVGLangSpace.h:
              * ksvg2/svg/SVGLength.cpp:
              * ksvg2/svg/SVGLength.h:
              * ksvg2/svg/SVGLength.idl:
              * ksvg2/svg/SVGLengthList.cpp:
              * ksvg2/svg/SVGLengthList.h:
              * ksvg2/svg/SVGLineElement.cpp:
              * ksvg2/svg/SVGLineElement.h:
              * ksvg2/svg/SVGLinearGradientElement.cpp:
              * ksvg2/svg/SVGLinearGradientElement.h:
              * ksvg2/svg/SVGList.h:
              * ksvg2/svg/SVGListTraits.h:
              * ksvg2/svg/SVGLocatable.cpp:
              * ksvg2/svg/SVGLocatable.h:
              * ksvg2/svg/SVGMPathElement.cpp:
              * ksvg2/svg/SVGMPathElement.h:
              * ksvg2/svg/SVGMarkerElement.cpp:
              * ksvg2/svg/SVGMarkerElement.h:
              * ksvg2/svg/SVGMaskElement.cpp:
              * ksvg2/svg/SVGMaskElement.h:
              * ksvg2/svg/SVGMatrix.idl:
              * ksvg2/svg/SVGMetadataElement.cpp:
              * ksvg2/svg/SVGMetadataElement.h:
              * ksvg2/svg/SVGMetadataElement.idl:
              * ksvg2/svg/SVGNumber.idl:
              * ksvg2/svg/SVGNumberList.cpp:
              * ksvg2/svg/SVGNumberList.h:
              * ksvg2/svg/SVGPaint.cpp:
              * ksvg2/svg/SVGPaint.h:
              * ksvg2/svg/SVGParserUtilities.cpp:
              * ksvg2/svg/SVGParserUtilities.h:
              * ksvg2/svg/SVGPathElement.cpp:
              * ksvg2/svg/SVGPathElement.h:
              * ksvg2/svg/SVGPathSeg.h:
              * ksvg2/svg/SVGPathSegArc.cpp:
              * ksvg2/svg/SVGPathSegArc.h:
              * ksvg2/svg/SVGPathSegClosePath.cpp:
              * ksvg2/svg/SVGPathSegClosePath.h:
              * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
              * ksvg2/svg/SVGPathSegCurvetoCubic.h:
              * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
              * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
              * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
              * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
              * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
              * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
              * ksvg2/svg/SVGPathSegLineto.cpp:
              * ksvg2/svg/SVGPathSegLineto.h:
              * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
              * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
              * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
              * ksvg2/svg/SVGPathSegLinetoVertical.h:
              * ksvg2/svg/SVGPathSegList.cpp:
              * ksvg2/svg/SVGPathSegList.h:
              * ksvg2/svg/SVGPathSegMoveto.cpp:
              * ksvg2/svg/SVGPathSegMoveto.h:
              * ksvg2/svg/SVGPatternElement.cpp:
              * ksvg2/svg/SVGPatternElement.h:
              * ksvg2/svg/SVGPoint.idl:
              * ksvg2/svg/SVGPointList.cpp:
              * ksvg2/svg/SVGPointList.h:
              * ksvg2/svg/SVGPolyElement.cpp:
              * ksvg2/svg/SVGPolyElement.h:
              * ksvg2/svg/SVGPolygonElement.cpp:
              * ksvg2/svg/SVGPolygonElement.h:
              * ksvg2/svg/SVGPolylineElement.cpp:
              * ksvg2/svg/SVGPolylineElement.h:
              * ksvg2/svg/SVGPreserveAspectRatio.cpp:
              * ksvg2/svg/SVGPreserveAspectRatio.h:
              * ksvg2/svg/SVGRadialGradientElement.cpp:
              * ksvg2/svg/SVGRadialGradientElement.h:
              * ksvg2/svg/SVGRect.idl:
              * ksvg2/svg/SVGRectElement.cpp:
              * ksvg2/svg/SVGRectElement.h:
              * ksvg2/svg/SVGRenderingIntent.h:
              * ksvg2/svg/SVGSVGElement.cpp:
              * ksvg2/svg/SVGSVGElement.h:
              * ksvg2/svg/SVGSVGElement.idl:
              * ksvg2/svg/SVGScriptElement.cpp:
              * ksvg2/svg/SVGScriptElement.h:
              * ksvg2/svg/SVGSetElement.cpp:
              * ksvg2/svg/SVGSetElement.h:
              * ksvg2/svg/SVGStopElement.cpp:
              * ksvg2/svg/SVGStopElement.h:
              * ksvg2/svg/SVGStringList.cpp:
              * ksvg2/svg/SVGStringList.h:
              * ksvg2/svg/SVGStylable.cpp:
              * ksvg2/svg/SVGStylable.h:
              * ksvg2/svg/SVGStyleElement.cpp:
              * ksvg2/svg/SVGStyleElement.h:
              * ksvg2/svg/SVGStyledElement.cpp:
              * ksvg2/svg/SVGStyledElement.h:
              * ksvg2/svg/SVGStyledLocatableElement.cpp:
              * ksvg2/svg/SVGStyledLocatableElement.h:
              * ksvg2/svg/SVGStyledTransformableElement.cpp:
              * ksvg2/svg/SVGStyledTransformableElement.h:
              * ksvg2/svg/SVGSwitchElement.cpp:
              * ksvg2/svg/SVGSwitchElement.h:
              * ksvg2/svg/SVGSymbolElement.cpp:
              * ksvg2/svg/SVGSymbolElement.h:
              * ksvg2/svg/SVGTRefElement.cpp:
              * ksvg2/svg/SVGTRefElement.h:
              * ksvg2/svg/SVGTSpanElement.cpp:
              * ksvg2/svg/SVGTSpanElement.h:
              * ksvg2/svg/SVGTests.cpp:
              * ksvg2/svg/SVGTests.h:
              * ksvg2/svg/SVGTextContentElement.cpp:
              * ksvg2/svg/SVGTextContentElement.h:
              * ksvg2/svg/SVGTextElement.cpp:
              * ksvg2/svg/SVGTextElement.h:
              * ksvg2/svg/SVGTextPositioningElement.cpp:
              * ksvg2/svg/SVGTextPositioningElement.h:
              * ksvg2/svg/SVGTitleElement.cpp:
              * ksvg2/svg/SVGTitleElement.h:
              * ksvg2/svg/SVGTransform.cpp:
              * ksvg2/svg/SVGTransform.h:
              * ksvg2/svg/SVGTransform.idl:
              * ksvg2/svg/SVGTransformDistance.cpp:
              * ksvg2/svg/SVGTransformDistance.h:
              * ksvg2/svg/SVGTransformList.cpp:
              * ksvg2/svg/SVGTransformList.h:
              * ksvg2/svg/SVGTransformable.cpp:
              * ksvg2/svg/SVGTransformable.h:
              * ksvg2/svg/SVGURIReference.cpp:
              * ksvg2/svg/SVGURIReference.h:
              * ksvg2/svg/SVGUnitTypes.h:
              * ksvg2/svg/SVGUseElement.cpp:
              * ksvg2/svg/SVGUseElement.h:
              * ksvg2/svg/SVGViewElement.cpp:
              * ksvg2/svg/SVGViewElement.h:
              * ksvg2/svg/SVGZoomAndPan.cpp:
              * ksvg2/svg/SVGZoomAndPan.h:
              * loader/Cache.cpp:
              * loader/Cache.h:
              * loader/CachedCSSStyleSheet.cpp:
              * loader/CachedCSSStyleSheet.h:
              * loader/CachedImage.cpp:
              * loader/CachedImage.h:
              * loader/CachedResource.cpp:
              * loader/CachedResource.h:
              * loader/CachedResourceClient.h:
              * loader/CachedResourceClientWalker.cpp:
              * loader/CachedResourceClientWalker.h:
              * loader/CachedScript.cpp:
              * loader/CachedScript.h:
              * loader/CachedXBLDocument.cpp:
              * loader/CachedXBLDocument.h:
              * loader/CachedXSLStyleSheet.cpp:
              * loader/CachedXSLStyleSheet.h:
              * loader/DocLoader.cpp:
              * loader/DocLoader.h:
              * loader/FTPDirectoryParser.cpp:
              * loader/FTPDirectoryParser.h:
              * loader/Request.cpp:
              * loader/Request.h:
              * loader/TextResourceDecoder.cpp:
              * loader/TextResourceDecoder.h:
              * loader/loader.cpp:
              * loader/loader.h:
              * page/Chrome.cpp:
              * page/Chrome.h:
              * page/ChromeClient.h:
              * page/Frame.cpp:
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/FrameTree.cpp:
              * page/FrameTree.h:
              * page/FrameView.cpp:
              * page/FrameView.h:
              * page/MouseEventWithHitTestResults.cpp:
              * page/MouseEventWithHitTestResults.h:
              * page/Page.cpp:
              * page/Page.h:
              * page/Plugin.h:
              * page/mac/ChromeMac.mm:
              * platform/Arena.cpp:
              * platform/Arena.h:
              * platform/AtomicString.cpp:
              * platform/AtomicString.h:
              * platform/AtomicStringImpl.h:
              * platform/BidiContext.cpp:
              * platform/BidiContext.h:
              * platform/BidiResolver.h:
              * platform/Font.cpp:
              * platform/Font.h:
              * platform/FontData.h:
              * platform/FontDescription.h:
              * platform/FontFallbackList.h:
              * platform/PlatformString.h:
              * platform/PopupMenu.h:
              * platform/PopupMenuClient.h:
              * platform/SearchPopupMenu.h:
              * platform/SegmentedString.cpp:
              * platform/SegmentedString.h:
              * platform/Shared.h:
              * platform/StaticConstructors.h:
              * platform/String.cpp:
              * platform/StringHash.h:
              * platform/StringImpl.cpp:
              * platform/StringImpl.h:
              * platform/TextBreakIterator.h:
              * platform/TextBreakIteratorICU.cpp:
              * platform/TextBreakIteratorInternalICU.h:
              * platform/TextStyle.h:
              * platform/UnicodeRange.cpp:
              * platform/UnicodeRange.h:
              * platform/cf/StringCF.cpp:
              * platform/cf/StringImplCF.cpp:
              * platform/graphics/FloatPoint3D.cpp:
              * platform/graphics/FloatPoint3D.h:
              * platform/graphics/Icon.h:
              * platform/graphics/IntSizeHash.h:
              * platform/graphics/PathTraversalState.cpp:
              * platform/graphics/cairo/CairoPath.h:
              * platform/graphics/cairo/PathCairo.cpp:
              * platform/graphics/mac/IconMac.mm:
              * platform/graphics/qt/IconQt.cpp:
              * platform/graphics/svg/SVGResourceFilter.cpp:
              * platform/graphics/svg/SVGResourceFilter.h:
              * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
              * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
              * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
              * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
              * platform/graphics/svg/filters/SVGDistantLightSource.h:
              * platform/graphics/svg/filters/SVGFEBlend.cpp:
              * platform/graphics/svg/filters/SVGFEBlend.h:
              * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
              * platform/graphics/svg/filters/SVGFEColorMatrix.h:
              * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
              * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
              * platform/graphics/svg/filters/SVGFEComposite.cpp:
              * platform/graphics/svg/filters/SVGFEComposite.h:
              * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
              * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
              * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
              * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
              * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
              * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
              * platform/graphics/svg/filters/SVGFEFlood.cpp:
              * platform/graphics/svg/filters/SVGFEFlood.h:
              * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
              * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
              * platform/graphics/svg/filters/SVGFEImage.cpp:
              * platform/graphics/svg/filters/SVGFEImage.h:
              * platform/graphics/svg/filters/SVGFEMerge.cpp:
              * platform/graphics/svg/filters/SVGFEMerge.h:
              * platform/graphics/svg/filters/SVGFEMorphology.cpp:
              * platform/graphics/svg/filters/SVGFEMorphology.h:
              * platform/graphics/svg/filters/SVGFEOffset.cpp:
              * platform/graphics/svg/filters/SVGFEOffset.h:
              * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
              * platform/graphics/svg/filters/SVGFESpecularLighting.h:
              * platform/graphics/svg/filters/SVGFETile.h:
              * platform/graphics/svg/filters/SVGFETurbulence.cpp:
              * platform/graphics/svg/filters/SVGFETurbulence.h:
              * platform/graphics/svg/filters/SVGFilterEffect.cpp:
              * platform/graphics/svg/filters/SVGFilterEffect.h:
              * platform/graphics/svg/filters/SVGLightSource.cpp:
              * platform/graphics/svg/filters/SVGLightSource.h:
              * platform/graphics/svg/filters/SVGPointLightSource.h:
              * platform/graphics/svg/filters/SVGSpotLightSource.h:
              * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
              * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
              * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm:
              * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm:
              * platform/graphics/svg/filters/cg/SVGFETileCg.mm:
              * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm:
              * platform/graphics/svg/qt/RenderPathQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
              * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
              * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
              * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
              * platform/graphics/win/IconWin.cpp:
              * platform/gtk/FontPlatformData.h:
              * platform/gtk/FontPlatformDataGtk.cpp:
              * platform/gtk/PopupMenuGtk.cpp:
              * platform/gtk/RenderThemeGtk.cpp:
              * platform/gtk/RenderThemeGtk.h:
              * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
              * platform/image-decoders/png/PNGImageDecoder.cpp:
              * platform/mac/FontMac.mm:
              * platform/mac/FontPlatformData.h:
              * platform/mac/LocalCurrentGraphicsContext.h:
              * platform/mac/LocalCurrentGraphicsContext.mm:
              * platform/mac/PopupMenuMac.mm:
              * platform/mac/SearchPopupMenuMac.mm:
              * platform/mac/StringImplMac.mm:
              * platform/mac/StringMac.mm:
              * platform/mac/TextBreakIteratorInternalICUMac.mm:
              * platform/network/FormData.cpp:
              * platform/network/FormData.h:
              * platform/qt/FileChooserQt.cpp:
              * platform/qt/FontQt.cpp:
              * platform/qt/MenuEventProxy.h:
              * platform/qt/PlugInInfoStoreQt.cpp:
              * platform/qt/PopupMenuQt.cpp:
              * platform/qt/QWebPopup.cpp:
              * platform/qt/QWebPopup.h:
              * platform/qt/RenderThemeQt.cpp:
              * platform/qt/RenderThemeQt.h:
              * platform/qt/SearchPopupMenuQt.cpp:
              * platform/qt/TextBreakIteratorQt.cpp:
              * platform/qt/WheelEventQt.cpp:
              * platform/win/FontPlatformData.h:
              * platform/win/FontPlatformDataWin.cpp:
              * platform/win/PopupMenuWin.cpp:
              * platform/win/SearchPopupMenuWin.cpp:
              * platform/win/TextBreakIteratorInternalICUWin.cpp:
              * rendering/AutoTableLayout.cpp:
              * rendering/AutoTableLayout.h:
              * rendering/CounterNode.cpp:
              * rendering/CounterNode.h:
              * rendering/DataRef.h:
              * rendering/EllipsisBox.cpp:
              * rendering/EllipsisBox.h:
              * rendering/FixedTableLayout.cpp:
              * rendering/FixedTableLayout.h:
              * rendering/GapRects.h:
              * rendering/HitTestRequest.h:
              * rendering/HitTestResult.cpp:
              * rendering/HitTestResult.h:
              * rendering/InlineBox.cpp:
              * rendering/InlineBox.h:
              * rendering/InlineFlowBox.cpp:
              * rendering/InlineFlowBox.h:
              * rendering/InlineRunBox.h:
              * rendering/InlineTextBox.cpp:
              * rendering/InlineTextBox.h:
              * rendering/Length.h:
              * rendering/ListMarkerBox.cpp:
              * rendering/ListMarkerBox.h:
              * rendering/RenderApplet.cpp:
              * rendering/RenderApplet.h:
              * rendering/RenderArena.cpp:
              * rendering/RenderArena.h:
              * rendering/RenderBR.cpp:
              * rendering/RenderBR.h:
              * rendering/RenderBlock.cpp:
              * rendering/RenderBlock.h:
              * rendering/RenderBox.cpp:
              * rendering/RenderBox.h:
              * rendering/RenderButton.cpp:
              * rendering/RenderButton.h:
              * rendering/RenderContainer.cpp:
              * rendering/RenderContainer.h:
              * rendering/RenderCounter.cpp:
              * rendering/RenderCounter.h:
              * rendering/RenderFieldset.cpp:
              * rendering/RenderFieldset.h:
              * rendering/RenderFileUploadControl.cpp:
              * rendering/RenderFileUploadControl.h:
              * rendering/RenderFlexibleBox.cpp:
              * rendering/RenderFlexibleBox.h:
              * rendering/RenderFlow.cpp:
              * rendering/RenderFlow.h:
              * rendering/RenderForeignObject.cpp:
              * rendering/RenderForeignObject.h:
              * rendering/RenderFrame.cpp:
              * rendering/RenderFrame.h:
              * rendering/RenderFrameSet.cpp:
              * rendering/RenderFrameSet.h:
              * rendering/RenderImage.cpp:
              * rendering/RenderImage.h:
              * rendering/RenderInline.cpp:
              * rendering/RenderInline.h:
              * rendering/RenderLayer.cpp:
              * rendering/RenderLayer.h:
              * rendering/RenderLegend.cpp:
              * rendering/RenderLegend.h:
              * rendering/RenderListItem.cpp:
              * rendering/RenderListItem.h:
              * rendering/RenderListMarker.cpp:
              * rendering/RenderListMarker.h:
              * rendering/RenderMenuList.cpp:
              * rendering/RenderMenuList.h:
              * rendering/RenderObject.cpp:
              * rendering/RenderObject.h:
              * rendering/RenderPart.cpp:
              * rendering/RenderPart.h:
              * rendering/RenderPartObject.cpp:
              * rendering/RenderPartObject.h:
              * rendering/RenderPath.cpp:
              * rendering/RenderPath.h:
              * rendering/RenderReplaced.cpp:
              * rendering/RenderReplaced.h:
              * rendering/RenderSVGBlock.cpp:
              * rendering/RenderSVGBlock.h:
              * rendering/RenderSVGContainer.cpp:
              * rendering/RenderSVGContainer.h:
              * rendering/RenderSVGGradientStop.cpp:
              * rendering/RenderSVGGradientStop.h:
              * rendering/RenderSVGHiddenContainer.cpp:
              * rendering/RenderSVGHiddenContainer.h:
              * rendering/RenderSVGImage.cpp:
              * rendering/RenderSVGImage.h:
              * rendering/RenderSVGInline.cpp:
              * rendering/RenderSVGInline.h:
              * rendering/RenderSVGInlineText.cpp:
              * rendering/RenderSVGInlineText.h:
              * rendering/RenderSVGTSpan.cpp:
              * rendering/RenderSVGTSpan.h:
              * rendering/RenderSVGText.cpp:
              * rendering/RenderSVGText.h:
              * rendering/RenderSlider.cpp:
              * rendering/RenderSlider.h:
              * rendering/RenderStyle.cpp:
              * rendering/RenderStyle.h:
              * rendering/RenderTable.cpp:
              * rendering/RenderTable.h:
              * rendering/RenderTableCell.cpp:
              * rendering/RenderTableCell.h:
              * rendering/RenderTableCol.cpp:
              * rendering/RenderTableCol.h:
              * rendering/RenderTableRow.cpp:
              * rendering/RenderTableRow.h:
              * rendering/RenderTableSection.cpp:
              * rendering/RenderTableSection.h:
              * rendering/RenderText.cpp:
              * rendering/RenderText.h:
              * rendering/RenderTextControl.cpp:
              * rendering/RenderTextControl.h:
              * rendering/RenderTextFragment.cpp:
              * rendering/RenderTextFragment.h:
              * rendering/RenderTheme.cpp:
              * rendering/RenderTheme.h:
              * rendering/RenderThemeMac.h:
              * rendering/RenderThemeMac.mm:
              * rendering/RenderThemeSafari.cpp:
              * rendering/RenderThemeSafari.h:
              * rendering/RenderThemeWin.cpp:
              * rendering/RenderThemeWin.h:
              * rendering/RenderView.cpp:
              * rendering/RenderView.h:
              * rendering/RenderWidget.cpp:
              * rendering/RenderWidget.h:
              * rendering/RootInlineBox.cpp:
              * rendering/RootInlineBox.h:
              * rendering/SVGInlineFlowBox.cpp:
              * rendering/SVGInlineFlowBox.h:
              * rendering/SVGInlineTextBox.cpp:
              * rendering/SVGInlineTextBox.h:
              * rendering/SVGRootInlineBox.cpp:
              * rendering/SVGRootInlineBox.h:
              * rendering/TableLayout.h:
              * rendering/bidi.cpp:
              * rendering/bidi.h:
              * rendering/break_lines.cpp:
              * rendering/break_lines.h:
              * xml/DOMParser.cpp:
              * xml/DOMParser.h:
              * xml/DOMParser.idl:
              * xml/XMLHttpRequest.cpp:
              * xml/XMLHttpRequest.h:
              * xml/XMLSerializer.cpp:
              * xml/XMLSerializer.h:
              * xml/XMLSerializer.idl:
              * xml/XPathEvaluator.idl:
              * xml/XPathExpression.idl:
              * xml/XPathNSResolver.idl:
              * xml/XPathResult.idl:
              * xml/XSLImportRule.cpp:
              * xml/XSLImportRule.h:
              * xml/XSLStyleSheet.cpp:
              * xml/XSLStyleSheet.h:
              * xml/XSLTProcessor.cpp:
              * xml/XSLTProcessor.h:
      
      WebKitQt:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * Api/qcookiejar.cpp:
              * Api/qcookiejar.h:
              * Api/qwebframe.cpp:
              * Api/qwebframe.h:
              * Api/qwebframe_p.h:
              * Api/qwebhistoryinterface.cpp:
              * Api/qwebhistoryinterface.h:
              * Api/qwebkitglobal.h:
              * Api/qwebnetworkinterface.cpp:
              * Api/qwebnetworkinterface.h:
              * Api/qwebnetworkinterface_p.h:
              * Api/qwebobjectplugin.cpp:
              * Api/qwebobjectplugin.h:
              * Api/qwebobjectpluginconnector.cpp:
              * Api/qwebobjectpluginconnector.h:
              * Api/qwebpage.cpp:
              * Api/qwebpage.h:
              * Api/qwebpage_p.h:
              * Api/qwebpagehistory.cpp:
              * Api/qwebpagehistory.h:
              * Api/qwebsettings.cpp:
              * Api/qwebsettings.h:
              * WebCoreSupport/EditCommandQt.cpp:
              * WebCoreSupport/EditCommandQt.h:
      
      WebKitSite:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * blog/wp-content/plugins/wp-cache/wp-cache.php:
              * blog/wp-includes/class-snoopy.php:
              * blog/wp-includes/gettext.php:
              * blog/wp-includes/js/tinymce/license.html:
              * blog/wp-includes/streams.php:
      
      WebKitTools:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * Drosera/config.h:
      
      LayoutTests:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * svg/carto.net/resources/button.js:
              * svg/carto.net/resources/colourPicker.js:
              * svg/carto.net/resources/comboBox.js:
              * svg/carto.net/resources/helper_functions.js:
              * svg/carto.net/resources/mapApp.js:
              * svg/carto.net/resources/scrollbar.js:
              * svg/carto.net/resources/selectionList.js:
              * svg/carto.net/resources/slider.js:
              * svg/carto.net/resources/tabgroup.js:
              * svg/carto.net/resources/textbox.js:
              * svg/carto.net/resources/window.js:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25754 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c8eccecd
  12. 12 Jul, 2007 1 commit
    • weinig's avatar
      LayoutTests: · 8c392cc4
      weinig authored
              Reviewed by Maciej.
      
              Test for <rdar://problem/5329841>
              Calling window.closed on a closed window causes Safari to crash
      
              * fast/dom/Window/window-closed-crash-expected.txt: Added.
              * fast/dom/Window/window-closed-crash.html: Added.
      
      WebCore:
      
              Reviewed by Maciej.
      
              Patch for <rdar://problem/5329841>
              Calling window.closed on a closed window causes Safari to crash
      
              - Replaces the Frame member variable in KJS::Window for more appropriate DOMWindow
              - Adds additional new null checks as necessary
              - Removes bogus toBoolean method
              - Removes unused scheduleClose method
      
              Test: fast/dom/Window/window-closed-crash.html
      
              * bindings/js/JSCustomXPathNSResolver.cpp:
              (WebCore::JSCustomXPathNSResolver::create):
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::customGetOwnPropertySlot):
              (WebCore::JSDOMWindow::customPut):
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):
              * bindings/js/kjs_events.cpp:
              (WebCore::JSAbstractEventListener::handleEvent):
              (WebCore::JSLazyEventListener::parseCode):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::Window):
              (KJS::Window::impl):
              (KJS::Window::interpreter):
              (KJS::Window::location):
              (KJS::Window::find):
              (KJS::allowPopUp):
              (KJS::createWindow):
              (KJS::canShowModalDialog):
              (KJS::canShowModalDialogNow):
              (KJS::showModalDialog):
              (KJS::Window::getValueProperty):
              (KJS::Window::childFrameGetter):
              (KJS::Window::indexGetter):
              (KJS::Window::namedItemGetter):
              (KJS::Window::getOwnPropertySlot):
              (KJS::Window::put):
              (KJS::Window::isSafeScript):
              (KJS::Window::setListener):
              (KJS::Window::getListener):
              (KJS::Window::clear):
              (KJS::WindowFunc::callAsFunction):
              (KJS::Window::updateLayout):
              (KJS::ScheduledAction::execute):
              (KJS::Window::disconnectFrame):
              (KJS::Location::put):
              (KJS::LocationFunc::callAsFunction):
              * bindings/js/kjs_window.h:
              * page/mac/WebCoreFrameBridge.mm:
              (updateRenderingForBindings):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24241 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8c392cc4
  13. 29 Jun, 2007 1 commit
    • weinig's avatar
      JavaScriptCore: · c475562b
      weinig authored
              Reviewed by Darin.
      
              Second pass at fixing implicit 64-32 bit conversion errors.
              <rdar://problem/5292262>
      
              - Add a toFloat() method to JSValue for float conversion.
      
              * JavaScriptCore.exp:
              * kjs/value.cpp:
              (KJS::JSValue::toFloat):
              * kjs/value.h:
      
      WebCore:
      
              Reviewed by Darin.
      
              Second pass at fixing implicit 64-32 bit conversion errors.
              <rdar://problem/5292262>
      
              - Use new JSValue::toFloat() method instead of toNumber() where
                appropriate.
      
              * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
              (WebCore::JSCanvasRenderingContext2D::setFillColor):
              (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
              (WebCore::JSCanvasRenderingContext2D::strokeRect):
              (WebCore::JSCanvasRenderingContext2D::drawImage):
              (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
              (WebCore::JSCanvasRenderingContext2D::setShadow):
              * bindings/js/JSHTMLSelectElementCustom.cpp:
              (WebCore::JSHTMLSelectElement::remove):
              * bindings/js/JSSVGMatrixCustom.cpp:
              (WebCore::JSSVGMatrix::rotateFromVector):
              * bindings/js/kjs_events.cpp:
              (KJS::JSClipboardPrototypeFunction::callAsFunction):
              * bindings/scripts/CodeGeneratorJS.pm:
              * ksvg2/svg/SVGScriptElement.cpp:
              (WebCore::SVGScriptElement::executeScript):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@23892 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c475562b
  14. 27 Jun, 2007 1 commit
    • weinig's avatar
      Reviewed by Maciej. · 8db24bf4
      weinig authored
              2nd patch for http://bugs.webkit.org/show_bug.cgi?id=14111
              Autogenerate Event JS binding
      
              - Cleanup kjs_events
      
              * bindings/js/kjs_events.cpp:
              (WebCore::JSAbstractEventListener::JSAbstractEventListener):
              (WebCore::JSAbstractEventListener::handleEvent):
              (WebCore::JSAbstractEventListener::isHTMLEventListener):
              (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
              (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
              (WebCore::JSUnprotectedEventListener::listenerObj):
              (WebCore::JSUnprotectedEventListener::windowObj):
              (WebCore::JSUnprotectedEventListener::clearWindowObj):
              (WebCore::JSUnprotectedEventListener::mark):
              (WebCore::JSEventListener::JSEventListener):
              (WebCore::JSEventListener::~JSEventListener):
              (WebCore::JSEventListener::listenerObj):
              (WebCore::JSEventListener::windowObj):
              (WebCore::JSEventListener::clearWindowObj):
              (WebCore::JSLazyEventListener::JSLazyEventListener):
              (WebCore::JSLazyEventListener::listenerObj):
              (WebCore::JSLazyEventListener::parseCode):
              (WebCore::getNodeEventListener):
              (WebCore::JSClipboard::JSClipboard):
              (WebCore::JSClipboard::getValueProperty):
              (WebCore::JSClipboard::putValueProperty):
              (WebCore::JSClipboardPrototypeFunction::callAsFunction):
              (WebCore::toJS):
              (WebCore::toClipboard):
              * bindings/js/kjs_events.h:
              (WebCore::JSClipboard::classInfo):
              (WebCore::JSClipboard::impl):
              * bindings/js/kjs_window.h:
              * ksvg2/events/JSSVGLazyEventListener.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@23841 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8db24bf4
  15. 26 Jun, 2007 1 commit
    • weinig's avatar
      LayoutTests: · a35854d8
      weinig authored
              Reviewed by Geoff.
      
              Update tests for http://bugs.webkit.org/show_bug.cgi?id=14111
              Autogenerate Event JS binding
      
              * fast/dom/prototype-chain-expected.txt: DOMEventPrototype is no longer
              in the prototype chain.
              * fast/dom/xmlhttprequest-get-expected.txt:
      
      WebCore:
      
              Reviewed by Geoff.
      
              Patch for http://bugs.webkit.org/show_bug.cgi?id=14111
              Autogenerate Event JS binding
      
              - Moves the dataTransfer method into MouseEvent where it should be.
      
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/JSEventCustom.cpp: Added.
              (WebCore::JSEvent::clipboardData):
              (WebCore::toJS):
              * bindings/js/JSEventTargetNode.cpp:
              * bindings/js/JSXMLHttpRequest.cpp:
              * bindings/js/kjs_events.cpp:
              * bindings/js/kjs_events.h:
              * bindings/objc/DOMUtility.mm:
              (KJS::createDOMWrapper):
              * bindings/scripts/CodeGeneratorJS.pm:
              * dom/Event.h:
              (WebCore::Event::returnValue):
              (WebCore::Event::setReturnValue):
              (WebCore::Event::clipboardData):
              * dom/Event.idl:
              * dom/MouseEvent.h:
              (WebCore::MouseEvent::dataTransfer):
              * dom/MouseEvent.idl:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@23795 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a35854d8
  16. 12 Jun, 2007 1 commit
    • weinig's avatar
      Reviewed by Oliver. · 950051b7
      weinig authored
              Patch for http://bugs.webkit.org/show_bug.cgi?id=14109
              Cleanup JSEvent and JSClipboard in preperation for autogeneration
      
              * bindings/js/kjs_events.cpp:
              (KJS::DOMEvent::DOMEvent):
              (KJS::DOMEvent::getValueProperty):
              (KJS::DOMEvent::put):
              (KJS::DOMEvent::putValueProperty):
              (KJS::DOMEventPrototypeFunction::callAsFunction):
              (KJS::toJS):
              (KJS::toEvent):
              (KJS::):
              (KJS::JSClipboard::JSClipboard):
              (KJS::JSClipboard::~JSClipboard):
              (KJS::JSClipboard::getOwnPropertySlot):
              (KJS::JSClipboard::getValueProperty):
              (KJS::JSClipboard::put):
              (KJS::JSClipboard::putValueProperty):
              (KJS::JSClipboardPrototypeFunction::callAsFunction):
              (KJS::toClipboard):
              * bindings/js/kjs_events.h:
              (KJS::DOMEvent::):
              (KJS::DOMEvent::impl):
              (KJS::JSClipboard::impl):
              * dom/ClipboardEvent.h:
              * dom/Event.h:
              (WebCore::Event::srcElement):
              (WebCore::Event::returnValue):
              (WebCore::Event::clipboardData):
              (WebCore::Event::dataTransfer):
              (WebCore::Event::clipboard):
              * dom/MouseEvent.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@23471 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      950051b7
  17. 06 Jun, 2007 1 commit
    • weinig's avatar
      LayoutTests: · 3843e438
      weinig authored
              Reviewed by Hyatt.
      
              Update tests for http://bugs.webkit.org/show_bug.cgi?id=13973
              Autogenerate most of the rest of kjs_dom.h/cpp
      
              * fast/dom/Window/window-properties-expected.txt:
              * fast/dom/prototype-chain-expected.txt:
      
      WebCore:
      
              Reviewed by Hyatt.
      
              Patch for http://bugs.webkit.org/show_bug.cgi?id=13973
              Autogenerate most of the rest of kjs_dom.h/cpp
      
              - Autogenerate JSNodeList and JSNamedNodeMap.
              - Move JSEventTargetNode, JSNamedNodesCollection, and JSDOMExceptionConstructor 
                into their own files.
              - Rename KJS::DOMEventTargeNode to WebCore::JSEventTargetNode to adhere
                to convention and allow easier code generation.
              - Add JS constructors for JSNodeList and JSNamedNodeMap.
              - Moved more toJS methods into the correct (corresponding) header files.
              - Cleaned up code in order for changes to work.
      
              * DerivedSources.make:
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/JSDOMExceptionConstructor.cpp: Added.
              (WebCore::):
              (WebCore::JSDOMExceptionConstructor::JSDOMExceptionConstructor):
              (WebCore::JSDOMExceptionConstructor::getOwnPropertySlot):
              (WebCore::JSDOMExceptionConstructor::getValueProperty):
              (WebCore::getDOMExceptionConstructor):
              * bindings/js/JSDOMExceptionConstructor.h: Added.
              (WebCore::JSDOMExceptionConstructor::classInfo):
              * bindings/js/JSDOMWindowCustom.cpp: Added.
              (WebCore::JSDOMWindow::customGetOwnPropertySlot):
              * bindings/js/JSDocumentCustom.cpp:
              (WebCore::JSDocument::mark):
              (WebCore::toJS):
              * bindings/js/JSEventTargetNode.cpp: Added.
              (WebCore::JSEventTargetNode::JSEventTargetNode):
              (WebCore::JSEventTargetNode::getOwnPropertySlot):
              (WebCore::JSEventTargetNode::getValueProperty):
              (WebCore::JSEventTargetNode::put):
              (WebCore::JSEventTargetNode::putValueProperty):
              (WebCore::JSEventTargetNode::setListener):
              (WebCore::JSEventTargetNode::getListener):
              (WebCore::JSEventTargetNode::pushEventHandlerScope):
              (WebCore::JSEventTargetNodePrototypeFunction::callAsFunction):
              (WebCore::toEventTargetNode):
              * bindings/js/JSEventTargetNode.h: Added.
              (WebCore::JSEventTargetNode::):
              * bindings/js/JSHTMLElementCustom.cpp:
              * bindings/js/JSHTMLFormElementCustom.cpp:
              (WebCore::JSHTMLFormElement::nameGetter):
              * bindings/js/JSHTMLOptionElementConstructor.cpp:
              * bindings/js/JSNamedNodeMapCustom.cpp: Added.
              (WebCore::JSNamedNodeMap::canGetItemsForName):
              (WebCore::JSNamedNodeMap::nameGetter):
              * bindings/js/JSNamedNodesCollection.cpp: Added.
              (WebCore::):
              (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
              (WebCore::JSNamedNodesCollection::lengthGetter):
              (WebCore::JSNamedNodesCollection::indexGetter):
              (WebCore::JSNamedNodesCollection::getOwnPropertySlot):
              * bindings/js/JSNamedNodesCollection.h: Added.
              (WebCore::JSNamedNodesCollection::classInfo):
              * bindings/js/JSNodeCustom.cpp: Added.
              (WebCore::toJS):
              * bindings/js/JSNodeListCustom.cpp: Added.
              (WebCore::JSNodeList::callAsFunction):
              (WebCore::JSNodeList::implementsCall):
              (WebCore::JSNodeList::canGetItemsForName):
              (WebCore::JSNodeList::nameGetter):
              * bindings/js/kjs_dom.cpp:
              * bindings/js/kjs_dom.h:
              * bindings/js/kjs_domnode.h:
              * bindings/js/kjs_events.cpp:
              (KJS::JSLazyEventListener::parseCode):
              * bindings/js/kjs_html.cpp:
              (KJS::JSHTMLCollection::getNamedItems):
              * bindings/js/kjs_html.h:
              * bindings/js/kjs_window.cpp:
              (WebCore::toJS):
              * bindings/js/kjs_window.h:
              * bindings/objc/DOMInternal.mm:
              (-[WebScriptObject _initializeScriptDOMNodeImp]):
              * bindings/objc/DOMUtility.mm:
              (KJS::createDOMWrapper):
              * bindings/scripts/CodeGeneratorJS.pm:
              * bridge/mac/WebCoreAXObject.mm:
              * dom/Attr.idl:
              * dom/CharacterData.idl:
              * dom/Document.idl:
              * dom/DocumentFragment.idl:
              * dom/DocumentType.idl:
              * dom/Element.idl:
              * dom/NamedNodeMap.idl:
              * dom/Node.idl:
              * dom/NodeList.idl:
              * page/DOMWindow.idl:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@22039 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3843e438
  18. 24 May, 2007 1 commit
    • aroben's avatar
      Made Chrome::addMessageToConsole more flexible · 377f2797
      aroben authored
      addMessageToConsole now takes two additional parameters to specify the
      message source (HTML, JS, CSS, XML) and level (error, warning, log). To
      maintain our old behavior, all current messages were given
      JSMessageSource and ErrorMessageLevel parameters. Messages matching
      these characteristics are passed up to the ChromeClient.
      
      Reviewed by Hyatt.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@21706 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      377f2797
  19. 14 May, 2007 1 commit
  20. 22 Apr, 2007 1 commit
    • mjs's avatar
      Reviewed by Darin and Geoff. · ddd250dd
      mjs authored
              - move most of Window's data members into a separate private object, to avoid needing
              to use the oversize allocator for it
              
              It was the only remaining JSObject subclass to use the oversize
              allocator on 32-bit platforms, and having oversize objects around
              makes garbage collection slower so this would hurt performance
              with many tabs/windows open.
              
              No significant effect on JS iBench.
      
              * bindings/js/kjs_events.cpp:
              (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener):
              (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener):
              (KJS::JSEventListener::JSEventListener):
              (KJS::JSEventListener::~JSEventListener):
              (KJS::JSLazyEventListener::parseCode):
              * bindings/js/kjs_window.cpp:
              (KJS::WindowPrivate::WindowPrivate):
              (KJS::Window::Window):
              (KJS::Window::~Window):
              (KJS::Window::location):
              (KJS::Window::selection):
              (KJS::Window::locationbar):
              (KJS::Window::menubar):
              (KJS::Window::personalbar):
              (KJS::Window::statusbar):
              (KJS::Window::toolbar):
              (KJS::Window::scrollbars):
              (KJS::Window::mark):
              (KJS::Window::getValueProperty):
              (KJS::Window::findJSEventListener):
              (KJS::Window::findJSUnprotectedEventListener):
              (KJS::Window::clearHelperObjectProperties):
              (KJS::Window::clear):
              (KJS::Window::setCurrentEvent):
              (KJS::Window::setReturnValueSlot):
              (KJS::Window::clearAllTimeouts):
              (KJS::Window::installTimeout):
              (KJS::Window::pauseTimeouts):
              (KJS::Window::resumeTimeouts):
              (KJS::Window::clearTimeout):
              (KJS::Window::timerFired):
              (KJS::Window::disconnectFrame):
              (KJS::Window::jsEventListeners):
              (KJS::Window::jsHTMLEventListeners):
              (KJS::Window::jsUnprotectedEventListeners):
              (KJS::Window::jsUnprotectedHTMLEventListeners):
              * bindings/js/kjs_window.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@21014 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ddd250dd
  21. 26 Mar, 2007 1 commit
  22. 18 Mar, 2007 1 commit
    • mjs's avatar
      JavaScriptCore: · 23fc88db
      mjs authored
              Reviewed by Mark.
              
              - avoid static construction (and global variable access) in a smarter, more portable way,
              to later enable MUTLI_THREAD mode to work on other platforms and compilers.
              
              * kjs/CommonIdentifiers.cpp: Added. New class to hold all the shared identifiers.
              (KJS::CommonIdentifiers::CommonIdentifiers):
              (KJS::CommonIdentifiers::shared):
              * kjs/CommonIdentifiers.h: Added.
      
              * kjs/ExecState.h:
              (KJS::ExecState::propertyNames): Hand the CommonIdentifiers instance here for easy access.
              (KJS::ExecState::ExecState):
      
              * API/JSObjectRef.cpp:
              (JSObjectMakeConstructor):
              * CMakeLists.txt:
              * JavaScriptCore.exp:
              * JavaScriptCore.pri:
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * JavaScriptCoreSources.bkl:
              * bindings/runtime_array.cpp:
              (RuntimeArray::getOwnPropertySlot):
              (RuntimeArray::put):
              * bindings/runtime_method.cpp:
              (RuntimeMethod::getOwnPropertySlot):
              * kjs/array_object.cpp:
              (ArrayInstance::getOwnPropertySlot):
              (ArrayInstance::put):
              (ArrayInstance::deleteProperty):
              (ArrayProtoFunc::ArrayProtoFunc):
              (ArrayProtoFunc::callAsFunction):
              (ArrayObjectImp::ArrayObjectImp):
              * kjs/bool_object.cpp:
              (BooleanPrototype::BooleanPrototype):
              (BooleanProtoFunc::BooleanProtoFunc):
              (BooleanProtoFunc::callAsFunction):
              (BooleanObjectImp::BooleanObjectImp):
              * kjs/completion.h:
              (KJS::Completion::Completion):
              * kjs/date_object.cpp:
              (KJS::DateProtoFunc::DateProtoFunc):
              (KJS::DateObjectImp::DateObjectImp):
              (KJS::DateObjectFuncImp::DateObjectFuncImp):
              * kjs/error_object.cpp:
              (ErrorPrototype::ErrorPrototype):
              (ErrorProtoFunc::ErrorProtoFunc):
              (ErrorProtoFunc::callAsFunction):
              (ErrorObjectImp::ErrorObjectImp):
              (ErrorObjectImp::construct):
              (NativeErrorPrototype::NativeErrorPrototype):
              (NativeErrorImp::NativeErrorImp):
              (NativeErrorImp::construct):
              (NativeErrorImp::callAsFunction):
              * kjs/function.cpp:
              (KJS::FunctionImp::getOwnPropertySlot):
              (KJS::FunctionImp::put):
              (KJS::FunctionImp::deleteProperty):
              (KJS::FunctionImp::getParameterName):
              (KJS::DeclaredFunctionImp::construct):
              (KJS::IndexToNameMap::unMap):
              (KJS::Arguments::Arguments):
              (KJS::ActivationImp::getOwnPropertySlot):
              (KJS::ActivationImp::deleteProperty):
              (KJS::GlobalFuncImp::GlobalFuncImp):
              * kjs/function_object.cpp:
              (FunctionPrototype::FunctionPrototype):
              (FunctionProtoFunc::FunctionProtoFunc):
              (FunctionProtoFunc::callAsFunction):
              (FunctionObjectImp::FunctionObjectImp):
              (FunctionObjectImp::construct):
              * kjs/grammar.y:
              * kjs/identifier.cpp:
              * kjs/identifier.h:
              * kjs/interpreter.cpp:
              (KJS::Interpreter::init):
              (KJS::Interpreter::initGlobalObject):
              * kjs/interpreter.h:
              * kjs/lookup.h:
              * kjs/math_object.cpp:
              (MathFuncImp::MathFuncImp):
              * kjs/nodes.cpp:
              (ArrayNode::evaluate):
              (FuncDeclNode::processFuncDecl):
              (FuncExprNode::evaluate):
              * kjs/number_object.cpp:
              (NumberPrototype::NumberPrototype):
              (NumberProtoFunc::NumberProtoFunc):
              (NumberObjectImp::NumberObjectImp):
              * kjs/object.cpp:
              (KJS::JSObject::put):
              (KJS::JSObject::defaultValue):
              (KJS::JSObject::hasInstance):
              * kjs/object.h:
              (KJS::JSObject::getOwnPropertySlot):
              * kjs/object_object.cpp:
              (ObjectPrototype::ObjectPrototype):
              (ObjectProtoFunc::ObjectProtoFunc):
              (ObjectObjectImp::ObjectObjectImp):
              * kjs/regexp_object.cpp:
              (RegExpPrototype::RegExpPrototype):
              (RegExpProtoFunc::RegExpProtoFunc):
              (RegExpObjectImp::RegExpObjectImp):
              * kjs/string_object.cpp:
              (KJS::StringInstance::getOwnPropertySlot):
              (KJS::StringInstance::put):
              (KJS::StringInstance::deleteProperty):
              (KJS::StringPrototype::StringPrototype):
              (KJS::StringProtoFunc::StringProtoFunc):
              (KJS::StringProtoFunc::callAsFunction):
              (KJS::StringObjectImp::StringObjectImp):
              (KJS::StringObjectFuncImp::StringObjectFuncImp):
              * kjs/testkjs.cpp:
              (TestFunctionImp::TestFunctionImp):
      
      WebCore:
      
              Reviewed by Mark.
      
              - avoid static construction (and global variable access) in a smarter, more portable way,
              to later enable MUTLI_THREAD mode to work on other platforms and compilers.
              
              * bindings/js/JSCustomXPathNSResolver.cpp:
              (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
              * bindings/js/JSHTMLInputElementBase.cpp:
              (WebCore::JSHTMLInputElementBaseFunction::JSHTMLInputElementBaseFunction):
              * bindings/js/JSHTMLOptionElementConstructor.cpp:
              (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
              * bindings/js/JSXSLTProcessor.cpp:
              (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
              * bindings/js/kjs_dom.cpp:
              (KJS::DOMNamedNodeMap::getOwnPropertySlot):
              (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
              * bindings/js/kjs_events.cpp:
              (KJS::JSAbstractEventListener::handleEvent):
              * bindings/js/kjs_html.cpp:
              (KJS::HTMLElementFunction::HTMLElementFunction):
              (KJS::JSHTMLCollection::getOwnPropertySlot):
              * bindings/js/kjs_window.cpp:
              (KJS::ScheduledAction::execute):
              * bindings/objc/WebScriptObject.mm:
              * bindings/scripts/CodeGeneratorJS.pm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@20310 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      23fc88db
  23. 22 Feb, 2007 1 commit
    • weinig's avatar
      LayoutTests: · bdab5e43
      weinig authored
              Reviewed by Maciej.
      
              - Test for http://bugs.webkit.org/show_bug.cgi?id=12850
                Leaks >10k objects
      
              * fast/events/remove-event-listener-expected.txt: Added.
              * fast/events/remove-event-listener.html: Added.
      
      WebCore:
      
              Reviewed by Maciej.
      
              - Patch for http://bugs.webkit.org/show_bug.cgi?id=12850
                Leaks >10k objects
      
              and
      
              - http://bugs.webkit.org/show_bug.cgi?id=12853
                add a EventListener leak counter
      
              Problem: RemoveEventListener leaks memory if the listener is not
              registered.
              Fix: Added Window::findJSEventListener function w/o creating a 
              JSEventListener; Renamed getJSEventListener to findOrCreateJSEventListener;
      
              As an enhancement, added a leak counter for EventListeners.
      
              Added a test case, LayoutTests/fast/events/remove-event-listener.html.
      
              * WebCore/bindings/js/kjs_dom.cpp:
              * WebCore/bindings/js/kjs_window.h:
              * WebCore/bindings/js/kjs_window.cpp:
              * WebCore/bindings/js/kjs_event.cpp: Add a leak counter.
              * WebCore/bindings/js/JSXMLHttpRequest.cpp:
              * LayoutTests/fast/events/remove-event-listener.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19820 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bdab5e43
  24. 09 Feb, 2007 1 commit
    • darin's avatar
      Reviewed by Adele. · a64faa8c
      darin authored
              - Add TextEvent to the DOM (based on the proposed DOM level 3)
                to be used to fix some international input bugs soon.
                At this point, we don't send any text events.
      
              - Remove some obsolete files.
      
              * CMakeLists.txt:
              * WebCore.pro:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
              Add new files, remove obsolete files.
      
              * DerivedSources.make: Add TextEvent to the Objective-C and JavaScript bindings lists.
              * WebCore.exp: Export DOMTextEvent Objective-C wrapper.
      
              * bindings/js/kjs_events.cpp: (KJS::toJS): Added TextEvent to the list of Event subclasses
              so we make the right kind of JS wrapper.
              * bindings/objc/DOMEvents.mm: (+[DOMEvent _eventWith:]): Same thing, for Objective-C.
      
              * bindings/objc/DOMInternal.h: Added DOMTextEventInternal.h.
      
              * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::hasFeature):
              Added "TextEvents", "3.0" to the list of things we'll answer true for
              (as specified in the DOM Level 3 documentation).
              This isn't so great until we actually send textInput events, but that's coming soon.
      
              * dom/Document.cpp: (WebCore::Document::createEvent): Add "TextEvent" as a way to make
              a TextEvent (as specified in the DOM Level 3 documentation).
      
              * dom/Event.h:
              * dom/Event.cpp: (WebCore::Event::isTextEvent): Added virtual function to be used
              for runtime type checking of Event objects (as for other event types).
      
              * dom/TextEvent.cpp: Added.
              * dom/TextEvent.h: Added.
              * dom/TextEvent.idl: Added.
      
              * platform/mac/WebCoreWidgetHolder.h: Removed.
              * rendering/CounterListItem.h: Removed.
              * rendering/CounterResetNode.cpp: Removed.
              * rendering/CounterResetNode.h: Removed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19538 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a64faa8c
  25. 17 Jan, 2007 1 commit
    • ap's avatar
      Reviewed by Maciej. · 26e78cb1
      ap authored
              http://bugs.webkit.org/show_bug.cgi?id=12268
              Give object prototypes their own names
      
      JavaScriptCore:
              * kjs/lookup.h: Append "Prototype" to ClassName in KJS_IMPLEMENT_PROTOTYPE.
      
      WebCore:
              * bindings/scripts/CodeGeneratorJS.pm: Append "Proto" to interface name for the prototype's ClassInfo.
      
              * bindings/js/JSHTMLInputElementBase.cpp:
              (WebCore::JSHTMLInputElementBasePrototypeFunction::callAsFunction):
              (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
              * bindings/js/JSHTMLInputElementBase.h:
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
              (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
              (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):
              * bindings/js/JSXMLHttpRequest.h:
              * bindings/js/JSXSLTProcessor.cpp:
              (KJS::JSXSLTProcessor::JSXSLTProcessor):
              (KJS::XSLTProcessorPrototypeFunction::callAsFunction):
              (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
              * bindings/js/kjs_css.cpp:
              (KJS::DOMCSSStyleDeclaration::DOMCSSStyleDeclaration):
              (KJS::DOMCSSStyleDeclarationPrototypeFunction::callAsFunction):
              (KJS::DOMMediaList::DOMMediaList):
              (KJS::KJS::DOMMediaListPrototypeFunction::callAsFunction):
              (KJS::DOMCSSStyleSheet::DOMCSSStyleSheet):
              (KJS::DOMCSSStyleSheetPrototypeFunction::callAsFunction):
              (KJS::DOMCSSValue::DOMCSSValue):
              (KJS::DOMCSSValuePrototypeFunction::callAsFunction):
              * bindings/js/kjs_css.h:
              * bindings/js/kjs_dom.cpp:
              (KJS::DOMNode::DOMNode):
              (KJS::DOMNodePrototypeFunction::callAsFunction):
              (KJS::DOMEventTargetNode::DOMEventTargetNode):
              (KJS::DOMEventTargetNodePrototypeFunction::callAsFunction):
              (KJS::DOMNamedNodeMap::DOMNamedNodeMap):
              (KJS::DOMNamedNodeMapPrototypeFunction::callAsFunction):
              * bindings/js/kjs_dom.h:
              * bindings/js/kjs_domnode.h:
              * bindings/js/kjs_events.cpp:
              (KJS::DOMEvent::DOMEvent):
              (KJS::DOMEventPrototypeFunction::callAsFunction):
              (KJS::Clipboard::Clipboard):
              (KJS::ClipboardPrototypeFunction::callAsFunction):
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_html.cpp:
              (KJS::JSHTMLDocumentPrototypeFunction::callAsFunction):
              (KJS::):
              (KJS::JSHTMLDocument::JSHTMLDocument):
              (KJS::JSHTMLElementPrototypeFunction::callAsFunction):
              (KJS::JSHTMLElement::JSHTMLElement):
              (KJS::JSHTMLCollection::JSHTMLCollection):
              (KJS::JSHTMLCollectionPrototypeFunction::callAsFunction):
              * bindings/js/kjs_html.h:
              * bindings/js/kjs_navigator.cpp:
              * bindings/js/kjs_traversal.cpp:
              (KJS::DOMNodeFilter::DOMNodeFilter):
              (KJS::DOMNodeFilterPrototypeFunction::callAsFunction):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::clear):
              Changed Proto to Prototype, and ProtoFunc to PrototypeFunction.
      
      LayoutTests:
              * fast/dom/Window/window-properties-expected.txt:
              * fast/dom/prototype-chain-expected.txt:
              * fast/events/event-view-toString-expected.txt:
              * fast/events/mouseclick-target-and-positioning-expected.txt:
              * fast/tokenizer/external-script-document-write-expected.checksum:
              * fast/tokenizer/external-script-document-write-expected.png:
              * fast/tokenizer/external-script-document-write-expected.txt:
              Updated the results.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@18912 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      26e78cb1
  26. 01 Dec, 2006 1 commit
    • darin's avatar
      WebCore: · f1bb004d
      darin authored
              Reviewed by Mitz.
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=11628
                REGRESSION (r17597): Command-return in native text fields doesn't open a new tab or window
      
              I couldn't think of an easy way to make a regression test for this, but maybe
              I'll get an idea later about how to do it.
      
              The main thing I did was add a concept of a DOM event having an "underlying event".
              That allows the DOM activate event to contain inside it the original keyboard event
              that triggered the form submission, and thus allows WebKit to see the modifier keys
              from that original event. The code that uses the underlying event is in WebKit, but
              the code to set it up is here in WebCore.
      
              - also do some clean-up to related event handling code
      
              * bindings/js/kjs_events.cpp: (KJS::DOMEvent::getValueProperty): Updated for the
              name change of cancelBubble.
      
              * dom/Event.h: Removed a useless comment. Fixed some whitespace and formatting.
              Renamed getCancelBubble to cancelBubble to match the DOM -- I suspect the old
              name predated the use of the m_ prefix on data members. Added the underlying event,
              and a getter and setter.
              * dom/Event.cpp:
              (WebCore::Event::setTarget): Updated to take a PassRefPtr.
              (WebCore::Event::setUnderlyingEvent): Added.
      
              * dom/EventTargetNode.h: Added an optional underlyingEvent parameter to
              dispatchUIEvent, one of the overloads of dispatchMouseEvent, and
              dispatchSimulatedMouseEvent. Added a new dispatchSimulatedClick function here that
              mostly replaces the click function in HTMLElement.
              * dom/EventTargetNode.cpp:
              (WebCore::EventTargetNode::dispatchGenericEvent): Updated for the name change
              of cancelBubble.
              (WebCore::EventTargetNode::dispatchUIEvent): Added an underlying event parameter,
              which gets attached to the UIEvent object after it's created.
              (WebCore::EventTargetNode::dispatchMouseEvent): Tweaked formatting and parameter
              name for the version that creates a mouse event for a real platform mouse event.
              Added an underlying event parameter to the main version, and attached it to all
              three of the events that can be dispatched.
              (WebCore::EventTargetNode::dispatchSimulatedMouseEvent): Added an underlying
              event parameter, passed it along to dispatchMouseEvent.
              (WebCore::EventTargetNode::dispatchSimulatedClick): Moved this here from HTMLElement
              and renamed it from click. Added an underlyingEvent parameter, and passed that along
              in all three of the calls to dispatchSimulatedMouseEvent.
      
              * bridge/mac/FrameMac.mm: (WebCore::FrameMac::shouldClose): Updated call to
              setTarget that no longer needs a get().
              * ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::sendSVGLoadEventIfPossible): Ditto.
      
              * html/HTMLAnchorElement.cpp:
              (WebCore::HTMLAnchorElement::defaultEventHandler): Converted a call to click
              to a call to dispatchSimulatedClick.
              (WebCore::HTMLAnchorElement::accessKeyAction): Ditto.
              * html/HTMLButtonElement.cpp:
              (WebCore::HTMLButtonElement::accessKeyAction): Ditto.
              * html/HTMLElement.h: Removed the parameters to click and made it non-virtual.
              We could move it down to the input and button elements, now that it's just
              a single function call, but it's also OK to just leave it here.
              * html/HTMLElement.cpp:
              (WebCore::HTMLElement::click): Removed the parameters and changed this to just
              call dispatchSimulatedClick. The real work is now in dispatchSimulatedClick.
              (WebCore::HTMLElement::accessKeyAction): Converted a call to click to a call to
              dispatchSimulatedClick.
              * html/HTMLFormElement.cpp:
              (WebCore::HTMLFormElement::submitClick): Ditto. But unlike accessKeyAction callers,
              pass the event along as the underlying event.
              * html/HTMLInputElement.h:
              * html/HTMLInputElement.cpp: Removed override of virtual click function. The
              special cases for the file control and hidden input elements aren't needed.
              (WebCore::HTMLInputElement::accessKeyAction): Converted a call to click to a call to
              dispatchSimulatedClick.
              (WebCore::HTMLInputElement::defaultEventHandler): Converted calls to click to calls to
              dispatchSimulatedClick, passing along the event as the underlying event.
              * html/HTMLLabelElement.cpp:
              (WebCore::HTMLLabelElement::defaultEventHandler): Converted a call to click to a call
              to dispatchSimulatedClick, passing the event along as the underlying event. Also
              changed the local variable for the element to a RefPtr since the code assumes it's
              still around after calling arbitrary JavaScript code.
              * html/HTMLSelectElement.cpp:
              (WebCore::HTMLSelectElement::accessKeyAction): Converted a call to click to a call to
              dispatchSimulatedClick.
      
              * rendering/RenderFileUploadControl.h:
              * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::click):
              Removed unneeded ignored parameter to the click function, and also made it non-virtual.
      
              * loader/NavigationAction.h: Removed unneeded includes.
              * loader/NavigationAction.cpp: Moved all the code here from NavigationActionMac.mm,
              since none of it is Mac-specific any more.
              * loader/mac/NavigationActionMac.mm: Removed.
              * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
      
              * ksvg2/svg/SVGAElement.cpp: Removed an unnecessary include.
      
              * loader/FrameLoader.cpp: Added a newly-needed incluude.
              * loader/mac/DocumentLoaderMac.mm: Ditto.
              * loader/mac/FrameLoaderMac.mm: Ditto.
              * rendering/RenderWidget.cpp: Ditto.
      
      WebKit:
      
              Reviewed by Mitz.
      
              - fix http://bugs.webkit.org/show_bug.cgi?id=11628
                REGRESSION (r17597): Command-return in native text fields doesn't open a new tab or window
      
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (findKeyStateEvent): Added. Helper that finds the mouse or keyboard event in a chain
              of events and their underlying events.
              (findMouseEvent): Added. Same, but specifically for mouse events.
              (WebFrameLoaderClient::actionDictionary): Rewrote to use the above functions. This means we
              use the modifiers from the underlying events rather than just the one from the event itself.
              So if the event is a DOM activate event, we can still see the modifiers from the original
              keyboard event that triggered it. Has no effect if the event is already the right type or
              if there is no underlying event.
      
              * WebView/WebFrame.mm: Added a newly-needed include.
      
              * WebKit.xcodeproj/project.pbxproj: Xcode wants what it wants.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17976 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f1bb004d
  27. 27 Nov, 2006 1 commit
    • andersca's avatar
      WebCore: · 8f521e29
      andersca authored
              Reviewed by Adam.
      
              Move addMessageToConsole to Chrome.
              
              * bindings/js/kjs_events.cpp:
              (KJS::JSAbstractEventListener::handleEvent):
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::evaluate):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::isSafeScript):
              (KJS::ScheduledAction::execute):
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm:
              * bridge/mac/WebCoreFrameBridge.h:
              * page/Chrome.cpp:
              (WebCore::Chrome::addMessageToConsole):
              * page/Chrome.h:
              * page/ChromeClient.h:
              * page/Frame.h:
      
      WebKit:
      
              Reviewed by Adam.
      
              Move addMessageToConsole to Chrome.
      
              * WebCoreSupport/WebChromeClient.h:
              * WebCoreSupport/WebChromeClient.mm:
              (WebChromeClient::addMessageToConsole):
              * WebCoreSupport/WebFrameBridge.mm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17886 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8f521e29
  28. 07 Nov, 2006 1 commit
    • darin's avatar
      WebCore: · c370e7e1
      darin authored
              Reviewed by Geoff.
      
              - moved loader code from Frame/FrameMac to FrameLoader
      
              * WebCore.exp:
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/JSXSLTProcessor.h:
              * bindings/js/kjs_events.cpp:
              (KJS::JSLazyEventListener::parseCode):
              * bindings/js/kjs_html.cpp:
              (KJS::JSHTMLDocument::putValueProperty):
              * bindings/js/kjs_navigator.cpp:
              (KJS::Navigator::getValueProperty):
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::initScriptIfNeeded):
              * bindings/js/kjs_window.cpp:
              (KJS::Screen::Screen):
              (KJS::createNewWindow):
              (KJS::Window::getValueProperty):
              (KJS::Window::put):
              (KJS::Window::isSafeScript):
              (KJS::WindowFunc::callAsFunction):
              (KJS::ScheduledAction::execute):
              (KJS::Location::getValueProperty):
              (KJS::Location::put):
              (KJS::Location::toString):
              (KJS::LocationFunc::callAsFunction):
              (KJS::History::getValueProperty):
              (KJS::HistoryFunc::callAsFunction):
              * bindings/objc/DOM.mm:
              (+[DOMNode _nodeWith:WebCore::]):
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::~FrameMac):
              (WebCore::FrameMac::setView):
              (WebCore::FrameMac::setStatusBarText):
              * bridge/mac/WebCoreFrameBridge.h:
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge close]):
              (-[WebCoreFrameBridge addData:]):
              (-[WebCoreFrameBridge createFrameViewWithNSView:marginWidth:marginHeight:]):
              (-[WebCoreFrameBridge reapplyStylesForDeviceType:]):
              (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
              (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
              (-[WebCoreFrameBridge baseURL]):
              (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
              (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]):
              (-[WebCoreFrameBridge canProvideDocumentSource]):
              (-[WebCoreFrameBridge receivedData:textEncodingName:]):
              * css/cssparser.cpp:
              (WebCore::CSSParser::parseContent):
              * dom/DOMImplementation.cpp:
              (WebCore::DOMImplementation::createDocument):
              (WebCore::DOMImplementation::createHTMLDocument):
              * dom/DOMImplementation.h:
              * dom/Document.cpp:
              (WebCore::Document::readyState):
              (WebCore::Document::updateTitle):
              (WebCore::Document::open):
              (WebCore::Document::close):
              (WebCore::Document::implicitClose):
              (WebCore::Document::processHttpEquiv):
              (WebCore::Document::referrer):
              (WebCore::Document::finishedParsing):
              * dom/ProcessingInstruction.cpp:
              (WebCore::ProcessingInstruction::checkStyleSheet):
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::endElementNs):
              (WebCore::ignorableWhitespaceHandler):
              (WebCore::XMLTokenizer::notifyFinished):
              * editing/TextIterator.cpp:
              (WebCore::TextIterator::rangeFromLocationAndLength):
              * html/HTMLAnchorElement.cpp:
              (WebCore::HTMLAnchorElement::defaultEventHandler):
              * html/HTMLBaseElement.cpp:
              (WebCore::HTMLBaseElement::process):
              * html/HTMLDocument.cpp:
              (WebCore::HTMLDocument::lastModified):
              * html/HTMLFormElement.cpp:
              (WebCore::HTMLFormElement::formData):
              (WebCore::HTMLFormElement::submit):
              * html/HTMLFrameElementBase.cpp:
              (WebCore::HTMLFrameElementBase::isURLAllowed):
              (WebCore::HTMLFrameElementBase::openURL):
              (WebCore::HTMLFrameElementBase::willRemove):
              * html/HTMLInputElement.cpp:
              (WebCore::HTMLInputElement::setValueFromRenderer):
              * html/HTMLLinkElement.cpp:
              (WebCore::HTMLLinkElement::process):
              * html/HTMLParser.cpp:
              (WebCore::HTMLParser::handleError):
              (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
              * html/HTMLPreElement.idl:
              * html/HTMLScriptElement.cpp:
              (WebCore::HTMLScriptElement::parseMappedAttribute):
              (WebCore::HTMLScriptElement::insertedIntoDocument):
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::scriptExecution):
              (WebCore::HTMLTokenizer::parseTag):
              (WebCore::HTMLTokenizer::write):
              (WebCore::HTMLTokenizer::stopParsing):
              (WebCore::HTMLTokenizer::timerFired):
              * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
              (WebCore::KCanvasFilterQuartz::prepareFilter):
              * ksvg2/svg/SVGAElement.cpp:
              (WebCore::SVGAElement::defaultEventHandler):
              * ksvg2/svg/SVGElement.cpp:
              (WebCore::SVGElement::sendSVGLoadEventIfPossible):
              * loader/DocLoader.cpp:
              (WebCore::DocLoader::setLoadInProgress):
              * loader/FrameLoader.cpp:
              (WebCore::FormSubmission::FormSubmission):
              (WebCore::ScheduledRedirection::):
              (WebCore::ScheduledRedirection::ScheduledRedirection):
              (WebCore::cancelAll):
              (WebCore::getString):
              (WebCore::isBackForwardLoadType):
              (WebCore::numRequests):
              (WebCore::FrameLoader::FrameLoader):
              (WebCore::FrameLoader::~FrameLoader):
              (WebCore::FrameLoader::createWindow):
              (WebCore::FrameLoader::changeLocation):
              (WebCore::FrameLoader::urlSelected):
              (WebCore::FrameLoader::requestFrame):
              (WebCore::FrameLoader::loadSubframe):
              (WebCore::FrameLoader::submitFormAgain):
              (WebCore::FrameLoader::submitForm):
              (WebCore::FrameLoader::stopLoading):
              (WebCore::FrameLoader::stop):
              (WebCore::FrameLoader::closeURL):
              (WebCore::FrameLoader::cancelRedirection):
              (WebCore::FrameLoader::iconURL):
              (WebCore::FrameLoader::didOpenURL):
              (WebCore::FrameLoader::didExplicitOpen):
              (WebCore::FrameLoader::replaceContentsWithScriptResult):
              (WebCore::FrameLoader::executeScript):
              (WebCore::FrameLoader::cancelAndClear):
              (WebCore::FrameLoader::clear):
              (WebCore::FrameLoader::receivedFirstData):
              (WebCore::FrameLoader::responseMIMEType):
              (WebCore::FrameLoader::setResponseMIMEType):
              (WebCore::FrameLoader::begin):
              (WebCore::FrameLoader::write):
              (WebCore::FrameLoader::end):
              (WebCore::FrameLoader::endIfNotLoading):
              (WebCore::FrameLoader::startIconLoader):
              (WebCore::FrameLoader::commitIconURLToIconDatabase):
              (WebCore::FrameLoader::gotoAnchor):
              (WebCore::FrameLoader::finishedParsing):
              (WebCore::FrameLoader::loadDone):
              (WebCore::FrameLoader::checkCompleted):
              (WebCore::FrameLoader::checkEmitLoadEvent):
              (WebCore::FrameLoader::baseURL):
              (WebCore::FrameLoader::baseTarget):
              (WebCore::FrameLoader::completeURL):
              (WebCore::FrameLoader::scheduleRedirection):
              (WebCore::FrameLoader::scheduleLocationChange):
              (WebCore::FrameLoader::scheduleRefresh):
              (WebCore::FrameLoader::isScheduledLocationChangePending):
              (WebCore::FrameLoader::scheduleHistoryNavigation):
              (WebCore::FrameLoader::redirectionTimerFired):
              (WebCore::FrameLoader::encoding):
              (WebCore::FrameLoader::requestObject):
              (WebCore::FrameLoader::shouldUsePlugin):
              (WebCore::FrameLoader::loadPlugin):
              (WebCore::FrameLoader::clearRecordedFormValues):
              (WebCore::FrameLoader::recordFormValue):
              (WebCore::FrameLoader::parentCompleted):
              (WebCore::FrameLoader::outgoingReferrer):
              (WebCore::FrameLoader::lastModified):
              (WebCore::FrameLoader::opener):
              (WebCore::FrameLoader::setOpener):
              (WebCore::FrameLoader::openedByJavaScript):
              (WebCore::FrameLoader::setOpenedByJavaScript):
              (WebCore::FrameLoader::handleFallbackContent):
              (WebCore::FrameLoader::provisionalLoadStarted):
              (WebCore::FrameLoader::userGestureHint):
              (WebCore::FrameLoader::didNotOpenURL):
              (WebCore::FrameLoader::resetMultipleFormSubmissionProtection):
              (WebCore::FrameLoader::setEncoding):
              (WebCore::FrameLoader::addData):
              (WebCore::FrameLoader::canCachePage):
              (WebCore::FrameLoader::updatePolicyBaseURL):
              (WebCore::FrameLoader::setPolicyBaseURL):
              (WebCore::FrameLoader::scrollToAnchor):
              (WebCore::FrameLoader::isComplete):
              (WebCore::FrameLoader::isLoadingMainResource):
              (WebCore::FrameLoader::url):
              (WebCore::FrameLoader::startRedirectionTimer):
              (WebCore::FrameLoader::stopRedirectionTimer):
              (WebCore::FrameLoader::updateBaseURLForEmptyDocument):
              (WebCore::FrameLoader::completed):
              (WebCore::FrameLoader::started):
              (WebCore::FrameLoader::containsPlugins):
              (WebCore::FrameLoader::prepareForLoadStart):
              (WebCore::FrameLoader::setupForReplace):
              (WebCore::FrameLoader::setupForReplaceByMIMEType):
              (WebCore::FrameLoader::finalSetupForReplace):
              (WebCore::FrameLoader::load):
              (WebCore::FrameLoader::canTarget):
              (WebCore::FrameLoader::stopLoadingPlugIns):
              (WebCore::FrameLoader::stopLoadingSubresources):
              (WebCore::FrameLoader::stopLoadingSubframes):
              (WebCore::FrameLoader::stopAllLoaders):
              (WebCore::FrameLoader::cancelMainResourceLoad):
              (WebCore::FrameLoader::cancelPendingArchiveLoad):
              (WebCore::FrameLoader::activeDocumentLoader):
              (WebCore::FrameLoader::addPlugInStreamLoader):
              (WebCore::FrameLoader::removePlugInStreamLoader):
              (WebCore::FrameLoader::hasMainResourceLoader):
              (WebCore::FrameLoader::isLoadingSubresources):
              (WebCore::FrameLoader::isLoadingPlugIns):
              (WebCore::FrameLoader::isLoading):
              (WebCore::FrameLoader::addSubresourceLoader):
              (WebCore::FrameLoader::removeSubresourceLoader):
              (WebCore::FrameLoader::releaseMainResourceLoader):
              (WebCore::FrameLoader::setDocumentLoader):
              (WebCore::FrameLoader::documentLoader):
              (WebCore::FrameLoader::setPolicyDocumentLoader):
              (WebCore::FrameLoader::provisionalDocumentLoader):
              (WebCore::FrameLoader::setProvisionalDocumentLoader):
              (WebCore::FrameLoader::state):
              (WebCore::FrameLoader::timeOfLastCompletedLoad):
              (WebCore::FrameLoader::setState):
              (WebCore::FrameLoader::clearProvisionalLoad):
              (WebCore::FrameLoader::markLoadComplete):
              (WebCore::FrameLoader::commitProvisionalLoad):
              (WebCore::FrameLoader::privateBrowsingEnabled):
              (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
              (WebCore::FrameLoader::clientRedirected):
              (WebCore::FrameLoader::shouldReload):
              (WebCore::FrameLoader::closeOldDataSources):
              (WebCore::FrameLoader::open):
              (WebCore::FrameLoader::isStopping):
              (WebCore::FrameLoader::finishedLoading):
              (WebCore::FrameLoader::URL):
              (WebCore::FrameLoader::isArchiveLoadPending):
              (WebCore::FrameLoader::isHostedByObjectElement):
              (WebCore::FrameLoader::isLoadingMainFrame):
              (WebCore::FrameLoader::canShowMIMEType):
              (WebCore::FrameLoader::representationExistsForURLScheme):
              (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
              (WebCore::FrameLoader::cancelContentPolicyCheck):
              (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
              (WebCore::FrameLoader::finishedLoadingDocument):
              (WebCore::FrameLoader::isReplacing):
              (WebCore::FrameLoader::setReplacing):
              (WebCore::FrameLoader::revertToProvisional):
              (WebCore::FrameLoader::subframeIsLoading):
              (WebCore::FrameLoader::willChangeTitle):
              (WebCore::FrameLoader::loadType):
              (WebCore::FrameLoader::stopPolicyCheck):
              (WebCore::FrameLoader::continueAfterContentPolicy):
              (WebCore::FrameLoader::continueAfterWillSubmitForm):
              (WebCore::FrameLoader::didFirstLayout):
              (WebCore::FrameLoader::frameLoadCompleted):
              (WebCore::FrameLoader::firstLayoutDone):
              (WebCore::FrameLoader::isQuickRedirectComing):
              (WebCore::FrameLoader::closeDocument):
              (WebCore::FrameLoader::detachChildren):
              (WebCore::FrameLoader::checkLoadComplete):
              (WebCore::FrameLoader::numPendingOrLoadingRequests):
              (WebCore::FrameLoader::setClient):
              (WebCore::FrameLoader::client):
              (WebCore::FrameLoader::userAgent):
              (WebCore::FrameLoader::createEmptyDocument):
              (WebCore::FrameLoader::tokenizerProcessedData):
              (WebCore::FrameLoader::didTellBridgeAboutLoad):
              (WebCore::FrameLoader::haveToldBridgeAboutLoad):
              (WebCore::FrameLoader::handledOnloadEvents):
              (WebCore::FrameLoader::frameDetached):
              (WebCore::FrameLoader::setTitle):
              (WebCore::FrameLoaderClient::~FrameLoaderClient):
              * loader/FrameLoader.h:
              (WebCore::):
              * loader/FrameLoaderClient.h:
              * loader/PluginDocument.cpp:
              (WebCore::PluginTokenizer::createDocumentStructure):
              (WebCore::PluginTokenizer::writeRawData):
              * loader/ResourceLoader.h:
              * loader/TextResourceDecoder.cpp:
              (WebCore::TextResourceDecoder::checkForHeadCharset):
              * loader/icon/IconLoader.cpp:
              (WebCore::IconLoader::startLoading):
              (WebCore::IconLoader::finishLoading):
              * loader/loader.cpp:
              (WebCore::Loader::didReceiveResponse):
              * loader/mac/DocumentLoaderMac.mm:
              (WebCore::DocumentLoader::~DocumentLoader):
              (WebCore::DocumentLoader::stopLoading):
              (WebCore::DocumentLoader::finishedLoading):
              (WebCore::DocumentLoader::setupForReplaceByMIMEType):
              (WebCore::DocumentLoader::setPrimaryLoadComplete):
              * loader/mac/FrameLoaderMac.mm:
              (WebCore::FrameLoader::load):
              (WebCore::FrameLoader::startLoading):
              (WebCore::FrameLoader::cancelMainResourceLoad):
              (WebCore::FrameLoader::receivedMainResourceError):
              (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
              (WebCore::FrameLoader::commitProvisionalLoad):
              (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
              (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
              (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
              (WebCore::FrameLoader::detachFromParent):
              (WebCore::FrameLoader::addExtraFieldsToRequest):
              (WebCore::FrameLoader::loadResourceSynchronously):
              (WebCore::FrameLoader::createFrame):
              (WebCore::FrameLoader::objectContentType):
              (WebCore::nsArray):
              (WebCore::FrameLoader::createPlugin):
              (WebCore::FrameLoader::redirectDataToPlugin):
              (WebCore::FrameLoader::createJavaAppletWidget):
              (WebCore::FrameLoader::partClearedInBegin):
              (WebCore::FrameLoader::saveDocumentState):
              (WebCore::FrameLoader::restoreDocumentState):
              (WebCore::FrameLoader::overrideMediaType):
              (WebCore::FrameLoader::mainResourceData):
              (WebCore::FrameLoader::canGoBackOrForward):
              (WebCore::FrameLoader::originalRequestURL):
              (WebCore::FrameLoader::getHistoryLength):
              (WebCore::FrameLoader::goBackOrForward):
              (WebCore::FrameLoader::historyURL):
              (WebCore::FrameLoader::didFinishLoad):
              * loader/mac/LoaderFunctionsMac.mm:
              (WebCore::ServeSynchronousRequest):
              (WebCore::CheckCacheObjectStatus):
              * loader/mac/ResourceLoaderMac.mm:
              (WebCore::ResourceLoader::cancel):
              * loader/mac/SubresourceLoaderMac.mm:
              (WebCore::SubresourceLoader::create):
              * loader/qt/FrameLoaderQt.cpp: Added.
              (WebCore::FrameLoader::submitForm):
              (WebCore::FrameLoader::urlSelected):
              (WebCore::FrameLoader::setTitle):
              (WebCore::FrameLoader::createFrame):
              (WebCore::FrameLoader::objectContentType):
              (WebCore::FrameLoader::createPlugin):
              (WebCore::FrameLoader::createJavaAppletWidget):
              (WebCore::FrameLoader::originalRequestURL):
              * page/DOMWindow.cpp:
              (WebCore::DOMWindow::document):
              * page/Frame.cpp:
              (WebCore::Frame::~Frame):
              (WebCore::Frame::reparseConfiguration):
              (WebCore::Frame::shouldDragAutoNode):
              (WebCore::Frame::prepareForUserAction):
              (WebCore::FramePrivate::FramePrivate):
              (WebCore::FramePrivate::~FramePrivate):
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/FrameView.cpp:
              (WebCore::FrameView::layout):
              (WebCore::FrameView::mediaType):
              * page/FrameView.h:
              * page/PageState.cpp:
              (WebCore::PageState::PageState):
              (WebCore::PageState::restoreJavaScriptState):
              * platform/mac/CookieJar.mm:
              (WebCore::setCookies):
              * platform/mac/TextCodecMac.cpp:
              * platform/mac/WebFontCache.mm:
              (+[WebFontCache fontWithFamily:traits:size:]):
              * platform/network/cf/ResourceHandleCFNet.cpp:
              (WebCore::ResourceHandle::start):
              * platform/network/mac/ResourceHandleMac.mm:
              (WebCore::ResourceHandle::start):
              * platform/qt/FrameQt.cpp:
              * platform/qt/FrameQt.h:
              * rendering/RenderApplet.cpp:
              (WebCore::RenderApplet::createWidgetIfNecessary):
              * rendering/RenderBlock.h:
              * rendering/RenderPartObject.cpp:
              (WebCore::isURLAllowed):
              (WebCore::RenderPartObject::updateWidget):
              * xml/DOMParser.cpp:
              (WebCore::DOMParser::parseFromString):
              * xml/XSLTProcessor.cpp:
              (WebCore::XSLTProcessor::createDocumentFromSource):
              * xml/xmlhttprequest.cpp:
              (WebCore::XMLHttpRequest::getResponseXML):
      
      WebKit:
      
              Reviewed by Geoff.
      
              - udpated for changes to move from Frame/FrameMac to FrameLoader
      
              * DefaultDelegates/WebDefaultContextMenuDelegate.m:
              (-[WebDefaultUIDelegate openNewWindowWithURL:element:]):
              * Misc/WebNSAttributedStringExtras.m:
              (+[NSAttributedString _web_attributedStringFromRange:]):
              * Plugins/WebBaseNetscapePluginView.mm:
              (-[WebBaseNetscapePluginView requestWithURLCString:]):
              * Plugins/WebNetscapePluginEmbeddedView.m:
              (-[WebNetscapePluginEmbeddedView didStart]):
              * Plugins/WebNetscapePluginStream.mm:
              * Plugins/WebPluginController.mm:
              (-[WebPluginController pluginView:receivedResponse:]):
              * WebCoreSupport/WebFrameBridge.mm:
              (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:DOMElement:loadManually:]):
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (WebFrameLoaderClient::provisionalLoadStarted):
              * WebView/WebFrame.mm:
              (-[WebFrame _canCachePage]):
              (+[WebFrame _timeOfLastCompletedLoad]):
              (-[WebFrame _loadItem:withLoadType:]):
              (-[WebFrame _reloadForPluginChanges]):
              (-[WebFrame stopLoading]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17652 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c370e7e1
  29. 05 Nov, 2006 1 commit
    • darin's avatar
      Reviewed by Geoff. · 647be15c
      darin authored
              - more preparation for splitting up Frame into sub-pieces
              - removed unnecessary includes from Frame.h
      
              * page/Frame.h: Removed unneeded includes and forward declarations.
              Added additional forward declarations. Removed the constant
              NoXPosForVerticalArrowNavigation, now moved inside SelectionController.
              Created sections of functions to be moved into Chrome, Editor,
              EventHandler, FrameLoader, SelectionController, and the Platform
              directory, as well as marking one function for deletion.
      
              * page/FramePrivate.h: Removed the definition of the constructor and
              destructor and removed unnecessary includes.
      
              * page/FrameView.h: Removed unneeded forward declarations and friend
              declarations. Created a section of functions and data to be moved into
              EventHandler.
      
              * bridge/mac/FrameMac.h: Removed unneeded forward declarations.
              Created sections of functions and data to be moved into Chrome,
              Editor, EventHandler, FrameLoader, and the Platform directory.
      
              * bridge/mac/WebCoreFrameBridge.h: Removed obsolete comment.
              Removed unused methods areScrollbarsVisible,
              nextValidKeyViewOutsideWebFrameViews, and fileWrapperForURL:.
      
              * page/Frame.cpp:
              (WebCore::Frame::begin): Added an overload, so Frame.h doesn't have
              to include KURL.h just for the KURL default constructor.
              (WebCore::FramePrivate::FramePrivate): Moved here from FramePrivate.h.
              (WebCore::FramePrivate::~FramePrivate): Ditto.
      
              * page/FrameView.cpp: Removed unused scrollbarMoved and scrollingSelf
              booleans, scrollbarMoved and cleared funcitons.
              (WebCore::FrameView::clear): Moved the code from the cleared
              function in here.
              (WebCore::FrameView::scrollTo): Removed code to set scrollingSelf.
      
              * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac): Updated
              for changes to header.
      
              * editing/SelectionController.cpp:
              (WebCore::SelectionController::setSelection):
              (WebCore::SelectionController::xPosForVerticalArrowNavigation):
              Moved NoXPosForVerticalArrowNavigation into this file.
      
              * bindings/js/kjs_events.cpp:
              * bindings/js/kjs_html.cpp:
              * bindings/js/kjs_window.cpp:
              * bridge/mac/WebCoreAXObject.mm:
              * bridge/mac/WebCoreFrameBridge.mm:
              * css/cssstyleselector.cpp:
              * dom/Document.cpp:
              * dom/Element.cpp:
              * dom/EventTargetNode.cpp:
              * dom/MouseRelatedEvent.cpp:
              * dom/XMLTokenizer.cpp:
              * html/HTMLBaseElement.cpp:
              * html/HTMLDocument.cpp:
              * html/HTMLEmbedElement.cpp:
              * html/HTMLFrameElementBase.cpp:
              * html/HTMLGenericFormElement.cpp:
              * html/HTMLObjectElement.cpp:
              * html/HTMLTokenizer.cpp:
              * loader/mac/FrameLoaderMac.mm:
              * page/PageState.cpp:
              * rendering/RenderApplet.cpp:
              * rendering/RenderBlock.cpp:
              * rendering/RenderLayer.cpp:
              * rendering/RenderObject.cpp:
              * rendering/RenderPartObject.cpp:
              * rendering/RenderTreeAsText.cpp:
              * xml/XSLTProcessor.cpp:
              Added includes as needed to keep compiling, since there are fewer
              includes in Frame.h.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      647be15c
  30. 29 Oct, 2006 1 commit
    • darin's avatar
      WebCore: · 5b2cbe11
      darin authored
              - did the do-webcore-rename renames, including a number of changes
                to the names of loader files (and WebResourceLoader -> ResourceLoader),
                jScript() to scriptProxy(), jScriptEnabled() to javaScriptEnabled(),
                and improvements to the names of decoder classes and their source
                files (Decoder -> TextResourceDecoder, StreamingTextDecoder -> TextCodec)
      
      WebKit:
      
              - update for the WebCore renames
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17431 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5b2cbe11
  31. 20 Sep, 2006 1 commit
    • andersca's avatar
      2006-09-20 Anders Carlsson <acarlsson@apple.com> · 506828fc
      andersca authored
              Reviewed by Darin.
      
              Add String::split which returns a Vector of Strings and use it instead of 
              DeprecatedStringList.
              
              * bindings/js/kjs_events.cpp:
              (KJS::Clipboard::getValueProperty):
              * bindings/js/kjs_window.cpp:
              (KJS::parseModalDialogFeatures):
              * css/MediaList.cpp:
              (WebCore::MediaList::setMediaText):
              * dom/Clipboard.h:
              * html/HTMLFormElement.cpp:
              (WebCore::HTMLFormElement::formData):
              * html/HTMLLinkElement.cpp:
              (WebCore::HTMLLinkElement::tokenizeRelAttribute):
              * platform/PlatformString.h:
              * platform/String.cpp:
              (WebCore::String::split):
              * platform/StringImpl.cpp:
              * platform/StringImpl.h:
              * platform/mac/ClipboardMac.h:
              * platform/mac/ClipboardMac.mm:
              (WebCore::ClipboardMac::types):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@16479 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      506828fc
  32. 17 Sep, 2006 1 commit
    • andersca's avatar
      2006-09-17 Anders Carlsson <acarlsson@apple.com> · 9cf539a5
      andersca authored
              Reviewed by Brady.
      
              Add simplifyWhiteSpace and stripWhiteSpace to the String class. 
              Change the XSLT Parameter Map to use Strings instead of StringImpls.
              General cleanup.
      
              * bindings/js/JSXSLTProcessor.cpp:
              (KJS::XSLTProcessorProtoFunc::callAsFunction):
              * bindings/js/kjs_events.cpp:
              (KJS::JSAbstractEventListener::handleEvent):
              * bindings/js/kjs_window.cpp:
              (KJS::ScheduledAction::execute):
              * css/MediaList.cpp:
              (WebCore::MediaList::setMediaText):
              * dom/Document.cpp:
              (WebCore::Document::processHttpEquiv):
              * editing/ApplyStyleCommand.cpp:
              (WebCore::StyleChange::init):
              * html/HTMLDocument.cpp:
              (WebCore::parseDocTypeDeclaration):
              * html/HTMLLinkElement.cpp:
              (WebCore::HTMLLinkElement::parseMappedAttribute):
              * html/HTMLObjectElement.cpp:
              (WebCore::HTMLObjectElement::HTMLObjectElement):
              (WebCore::HTMLObjectElement::parseMappedAttribute):
              (WebCore::HTMLObjectElement::attach):
              (WebCore::HTMLObjectElement::setComplete):
              (WebCore::HTMLObjectElement::detach):
              (WebCore::HTMLObjectElement::recalcStyle):
              (WebCore::HTMLObjectElement::childrenChanged):
              (WebCore::HTMLObjectElement::isImageType):
              * html/HTMLObjectElement.h:
              * html/HTMLOptionElement.cpp:
              (WebCore::HTMLOptionElement::value):
              * html/HTMLSelectElement.cpp:
              (WebCore::HTMLSelectElement::appendFormData):
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::parseTag):
              * ksvg2/svg/SVGColor.cpp:
              (WebCore::SVGColor::setRGBColor):
              * ksvg2/svg/SVGDescElement.cpp:
              (WebCore::SVGDescElement::description):
              * platform/PlatformString.h:
              * platform/String.cpp:
              (WebCore::String::stripWhiteSpace):
              (WebCore::String::simplifyWhiteSpace):
              * platform/StringImpl.cpp:
              (WebCore::isSpace):
              (WebCore::parseLength):
              (WebCore::StringImpl::stripWhiteSpace):
              (WebCore::StringImpl::simplifyWhiteSpace):
              (WebCore::StringImpl::toInt):
              * platform/StringImpl.h:
              * platform/mac/ClipboardMac.mm:
              (WebCore::cocoaTypeFromMIMEType):
              * rendering/RenderPartObject.cpp:
              (WebCore::RenderPartObject::updateWidget):
              * xml/XPathFunctions.cpp:
              (WebCore::XPath::FunNormalizeSpace::doEvaluate):
              * xml/XPathGrammar.y:
              * xml/XPathStep.cpp:
              (WebCore::XPath::Step::nodeTestMatches):
              * xml/XSLStyleSheet.cpp:
              (WebCore::XSLStyleSheet::loadChildSheets):
              (WebCore::XSLStyleSheet::locateStylesheetSubResource):
              * xml/XSLTProcessor.cpp:
              (WebCore::xsltParamArrayFromParameterMap):
              (WebCore::XSLTProcessor::setParameter):
              (WebCore::XSLTProcessor::getParameter):
              (WebCore::XSLTProcessor::removeParameter):
              * xml/XSLTProcessor.h:
              * xml/xmlhttprequest.cpp:
              (WebCore::XMLHttpRequest::getStatusText):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@16405 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9cf539a5
  33. 13 Aug, 2006 1 commit
    • mjs's avatar
      JavaScriptCore: · 308be5ab
      mjs authored
              Reviewed (and tweaked a little) by Maciej.
              
              - shrank the size of JSObject by 8 bytes and made the corresponding reduction to the cell size, resulting
              in a 1.2% speed improvement on JS iBench (and probably overall memory savings).
      
              This was done by removing _scope and _internalValue data members
              from JSObject and moving them only to the subclasses that actually
              make use of them.
              
              * kjs/object.cpp: 
              (KJS::JSObject::mark): No need to mark scope or internal value here.
              * kjs/object.h:
              (KJS::JSObject::JSObject): Don't initialize them.
              * kjs/JSWrapperObject.cpp: Added. New base class for object types that
              wrap primitive values (Number, String, Boolean, Date).
              (KJS::JSWrapperObject::mark): 
              * kjs/JSWrapperObject.h: Added.
              (KJS::JSWrapperObject::JSWrapperObject):
              (KJS::JSWrapperObject::internalValue):
              (KJS::JSWrapperObject::setInternalValue):
              * kjs/array_object.cpp:
              (ArrayPrototype::ArrayPrototype): Don't set useless internal value.
              * kjs/bool_object.cpp:
              (BooleanInstance::BooleanInstance): Inherit from JSWrapperObject.
              (BooleanProtoFunc::callAsFunction): Fixed to account for fact that not all
              JSObjects have an internal value.
              (BooleanObjectImp::construct): ditto.
              * kjs/bool_object.h:
              * kjs/collector.cpp: Lowered cell size to 48.
              (KJS::Collector::allocate): meaningless whitespace change
              * kjs/date_object.cpp:
              (KJS::DateInstance::DateInstance): Inherit from JSWrapperObject.
              (KJS::DateProtoFunc::callAsFunction): adjusted for move of internalValue
              (KJS::DateObjectImp::construct): ditto
              * kjs/date_object.h:
              * kjs/error_object.cpp:
              (ErrorPrototype::ErrorPrototype): don't set internal value
              * kjs/function.cpp: move _scope and related handling here
              (KJS::FunctionImp::mark): mark scope
              * kjs/function.h:
              (KJS::FunctionImp::scope): moved here from JSObject
              (KJS::FunctionImp::setScope): ditto
              * kjs/number_object.cpp:
              (NumberInstance::NumberInstance): inherit from JSWrapperObject
              (NumberProtoFunc::callAsFunction): adjusted
              (NumberObjectImp::construct): adjusted
              * kjs/number_object.h: shring RegExp-related objects a little
              * kjs/regexp_object.cpp:
              (RegExpPrototype::RegExpPrototype): Adjust for size tweaks
              (RegExpObjectImp::RegExpObjectImp): ditto
              * kjs/regexp_object.h:
              * kjs/string_object.cpp:
              (StringInstance::StringInstance): inherit from JSWrapperObject
              (StringProtoFunc::callAsFunction): adjusted
              * kjs/string_object.h:
              * JavaScriptCore.exp: Exported new methods as needed.
              * JavaScriptCore.xcodeproj/project.pbxproj: Added new files to build.
      
      WebCore:
      
              Reviewed (and tweaked a little) by Maciej.
              
              - shrank the size of JSObject by 8 bytes and made the corresponding reduction to the cell size, resulting
              in a 1.2% speed improvement on JS iBench (and probably overall memory savings).
      
              The WebCore part of this is to expect only FunctionImp to have a scope, not all JSObjects.
              
              * bindings/js/kjs_events.cpp:
              (KJS::JSLazyEventListener::parseCode):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15846 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      308be5ab
  34. 09 Jul, 2006 1 commit
    • darin's avatar
      Reviewed by Tim Hatcher. · f4b05b29
      darin authored
              - put more into the WebCore namespace
              - removed unused code for plain text fields
      
              Put more classes, class templates, enums, functions, and constants into
              the WebCore namespace, including all the headers in the platform directory.
      
              Removed lots of unneeded "WebCore::" qualifiers and "using" directives.
      
              Added some "WebCore::" qualifiers in a few places.
      
              Removed "uses WebCore::" in headers that we said we'd remove "when
              everything is in the WebCore namespace".
      
              * bindings/js/JSDOMParser.cpp:
              * bindings/js/JSHTMLElementWrapperFactory.cpp:
              * bindings/js/JSXSLTProcessor.cpp:
              * bindings/js/kjs_binding.cpp:
              * bindings/js/kjs_css.cpp:
              * bindings/js/kjs_dom.cpp:
              * bindings/js/kjs_dom.h:
              * bindings/js/kjs_events.cpp:
              * bindings/js/kjs_proxy.h:
              * bindings/js/kjs_window.h:
              * bindings/objc/DOM.mm:
              * bridge/History.h:
              * bridge/JavaAppletWidget.h:
              * bridge/mac/FormDataMac.h:
              * bridge/mac/FormDataMac.mm:
              * bridge/mac/WebCoreAXObject.mm:
              * bridge/mac/WebCoreEncodings.mm:
              * bridge/mac/WebCoreFrameBridge.h:
              * bridge/mac/WebCoreIconDatabaseBridge.mm:
              * bridge/mac/WebCorePageState.h:
              * bridge/mac/WebCoreScriptDebugger.mm:
              * bridge/mac/WebCoreSettings.h:
              * css/CSSGrammar.y:
              * css/CSSPageRule.cpp:
              * css/CSSPageRule.h:
              * css/MediaList.cpp:
              * css/cssstyleselector.h:
              * dom/Clipboard.h:
              * dom/Document.cpp:
              * dom/Document.h:
              * dom/EventTargetNode.h:
              * dom/Node.cpp:
              * dom/Node.h:
              * dom/Position.h:
              * dom/Range.cpp:
              * dom/XMLTokenizer.cpp:
              * editing/AppendNodeCommand.h:
              * editing/ApplyStyleCommand.cpp:
              * editing/BreakBlockquoteCommand.cpp:
              * editing/BreakBlockquoteCommand.h:
              * editing/CompositeEditCommand.cpp:
              * editing/CompositeEditCommand.h:
              * editing/CreateLinkCommand.h:
              * editing/DeleteFromTextNodeCommand.h:
              * editing/DeleteSelectionCommand.h:
              * editing/FormatBlockCommand.h:
              * editing/HTMLInterchange.cpp:
              * editing/HTMLInterchange.h:
              * editing/IndentOutdentCommand.h:
              * editing/InsertIntoTextNodeCommand.h:
              * editing/InsertLineBreakCommand.h:
              * editing/InsertListCommand.h:
              * editing/InsertNodeBeforeCommand.h:
              * editing/InsertTextCommand.cpp:
              * editing/InsertTextCommand.h:
              * editing/JSEditor.cpp:
              * editing/JSEditor.h:
              * editing/JoinTextNodesCommand.h:
              * editing/MergeIdenticalElementsCommand.cpp:
              * editing/MergeIdenticalElementsCommand.h:
              * editing/ModifySelectionListLevel.h:
              * editing/MoveSelectionCommand.h:
              * editing/RebalanceWhitespaceCommand.h:
              * editing/RemoveNodeAttributeCommand.h:
              * editing/RemoveNodeCommand.h:
              * editing/RemoveNodePreservingChildrenCommand.h:
              * editing/ReplaceSelectionCommand.h:
              * editing/SetNodeAttributeCommand.h:
              * editing/SplitElementCommand.cpp:
              * editing/SplitElementCommand.h:
              * editing/SplitTextNodeCommand.cpp:
              * editing/SplitTextNodeCommand.h:
              * editing/SplitTextNodeContainingElementCommand.h:
              * editing/TypingCommand.cpp:
              * editing/TypingCommand.h:
              * editing/UnlinkCommand.h:
              * editing/VisiblePosition.cpp:
              * editing/WrapContentsInDummySpanCommand.cpp:
              * editing/WrapContentsInDummySpanCommand.h:
              * editing/markup.cpp:
              * editing/markup.h:
              * html/HTMLAnchorElement.cpp:
              * html/HTMLBodyElement.cpp:
              * html/HTMLButtonElement.h:
              * html/HTMLCollection.h:
              * html/HTMLDocument.h:
              * html/HTMLEmbedElement.cpp:
              * html/HTMLFormElement.cpp:
              * html/HTMLFormElement.h:
              * html/HTMLFrameElement.cpp:
              * html/HTMLFrameSetElement.cpp:
              * html/HTMLKeygenElement.cpp:
              * html/HTMLLabelElement.cpp:
              * html/HTMLObjectElement.cpp:
              * html/HTMLObjectElement.h:
              * html/HTMLTableElement.cpp:
              * html/HTMLTablePartElement.cpp:
              * icon/IconDatabase.h:
              * kcanvas/KCanvasPath.h:
              * kcanvas/KCanvasResources.cpp:
              * kcanvas/KCanvasResources.h:
              * kcanvas/KCanvasTreeDebug.cpp:
              * kcanvas/KCanvasTreeDebug.h:
              * kcanvas/RenderSVGContainer.cpp:
              * kcanvas/RenderSVGText.h:
              * kcanvas/device/KRenderingPaintServer.h:
              * kcanvas/device/KRenderingPaintServerGradient.h:
              * kcanvas/device/KRenderingPaintServerSolid.cpp:
              * ksvg2/misc/SVGImageLoader.cpp:
              * ksvg2/svg/SVGElement.cpp:
              * ksvg2/svg/SVGElement.h:
              * ksvg2/svg/SVGForeignObjectElement.cpp:
              * ksvg2/svg/SVGForeignObjectElement.h:
              * ksvg2/svg/SVGImageElement.cpp:
              * ksvg2/svg/SVGPoint.h:
              * ksvg2/svg/SVGStylable.h:
              * ksvg2/svg/SVGTRefElement.cpp:
              * ksvg2/svg/SVGTRefElement.h:
              * ksvg2/svg/SVGTSpanElement.cpp:
              * ksvg2/svg/SVGTSpanElement.h:
              * ksvg2/svg/SVGTextElement.h:
              * ksvg2/svg/svgpathparser.cpp:
              * ksvg2/svg/svgpathparser.h:
              * loader/Cache.h:
              * loader/DocLoader.h:
              * loader/LoaderFunctions.h:
              * loader/mac/LoaderFunctionsMac.mm:
              * page/Frame.h:
              * page/FrameView.h:
              * page/Page.h:
              * page/Settings.h:
              * platform/AffineTransform.cpp:
              * platform/AffineTransform.h:
              * platform/Arena.cpp:
              * platform/Arena.h:
              * platform/CookieJar.h:
              * platform/DeprecatedCString.cpp:
              * platform/DeprecatedCString.h:
              * platform/DeprecatedPtrList.h:
              * platform/DeprecatedPtrListImpl.cpp:
              * platform/DeprecatedPtrListImpl.h:
              * platform/DeprecatedPtrQueue.h:
              * platform/DeprecatedString.cpp:
              * platform/DeprecatedString.h:
              * platform/DeprecatedStringList.cpp:
              * platform/DeprecatedStringList.h:
              * platform/DeprecatedValueList.h:
              * platform/DeprecatedValueListImpl.cpp:
              * platform/DeprecatedValueListImpl.h:
              * platform/FileButton.h:
              * platform/FloatPoint.h:
              * platform/FloatRect.h:
              * platform/FloatSize.h:
              * platform/FontData.h:
              * platform/FontFallbackList.h:
              * platform/GraphicsContext.h:
              * platform/IntPoint.h:
              * platform/IntRect.h:
              * platform/IntSize.h:
              * platform/KURL.cpp:
              * platform/KURL.h:
              * platform/ListBox.h:
              * platform/Logging.cpp:
              * platform/Logging.h:
              * platform/Pen.h:
              * platform/PopUpButton.h:
              * platform/RegularExpression.cpp:
              * platform/RegularExpression.h:
              * platform/SSLKeyGenerator.h:
              * platform/ScrollBar.h:
              * platform/SegmentedString.h:
              * platform/Shared.h:
              * platform/Slider.h:
              * platform/StringImpl.h:
              * platform/TextBox.h:
              * platform/TextField.h:
              * platform/TextStream.cpp:
              * platform/TextStream.h:
              * platform/TransferJob.h:
              * platform/TransferJobClient.h:
              * platform/Widget.h:
              * platform/cg/AffineTransformCG.cpp:
              * platform/mac/ClipboardMac.h:
              * platform/mac/ClipboardMac.mm:
              * platform/mac/DeprecatedStringListMac.mm:
              * platform/mac/FontCacheMac.mm:
              * platform/mac/KURLMac.mm:
              * platform/mac/ListBoxMac.mm:
              * platform/mac/PopUpButtonMac.mm:
              * platform/mac/SSLKeyGeneratorMac.mm:
              * platform/mac/TextBoxMac.mm:
              * platform/mac/TextFieldMac.mm:
              * platform/mac/WebCoreTextArea.h:
              * platform/mac/WebCoreTextArea.mm:
              * platform/mac/WebCoreTextField.h:
              * platform/mac/WebCoreTextField.mm:
              * rendering/DeprecatedRenderSelect.h:
              * rendering/RenderArena.cpp:
              * rendering/RenderArena.h:
              * rendering/RenderBlock.cpp:
              * rendering/RenderBox.cpp:
              * rendering/RenderContainer.cpp:
              * rendering/RenderFlexibleBox.cpp:
              * rendering/RenderFlow.cpp:
              * rendering/RenderLayer.cpp:
              * rendering/RenderLineEdit.cpp:
              * rendering/RenderObject.h:
              * rendering/RenderStyle.cpp:
              * rendering/RenderStyle.h:
              * rendering/RenderText.cpp:
              * rendering/RenderTextFragment.cpp:
              * rendering/RenderTheme.h:
              * rendering/RenderTreeAsText.cpp:
              * rendering/RenderTreeAsText.h:
              * rendering/RenderView.h:
              * rendering/bidi.h:
              * xml/XSLStyleSheet.cpp:
              * xml/XSLTProcessor.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15286 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f4b05b29
  35. 06 Jul, 2006 1 commit
    • andersca's avatar
      WebCore: · 0afc15f0
      andersca authored
      2006-07-06  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Maciej.
      
              <rdar://problem/4610891> Support overflow events
              
              * DerivedSources.make:
              Add generated sources.
              
              * WebCore.xcodeproj/project.pbxproj:
              Add new files.
              
              * bindings/js/kjs_events.cpp:
              (KJS::toJS):
              Support creating wrappers for overflow events..
              
              * bindings/objc/DOMEvents.h:
              * bindings/objc/DOMEvents.mm:
              (+[DOMEvent _eventWith:]):
              (-[DOMOverflowEvent _overflowEvent]):
              (-[DOMOverflowEvent orient]):
              (-[DOMOverflowEvent horizontalOverflow]):
              (-[DOMOverflowEvent verticalOverflow]):
              Add Objective-C wrapper for overflow events.
              
              * dom/Event.cpp:
              (WebCore::Event::isOverflowEvent):        
              * dom/Event.h:
              * dom/EventNames.h:
              * dom/OverflowEvent.cpp: Added.
              (WebCore::OverflowEvent::OverflowEvent):
              (WebCore::OverflowEvent::isOverflowEvent):
              * dom/OverflowEvent.h: Added.
              (WebCore::OverflowEvent::):
              (WebCore::OverflowEvent::orient):
              (WebCore::OverflowEvent::horizontalOverflow):
              (WebCore::OverflowEvent::verticalOverflow):
              * dom/OverflowEvent.idl: Added.
              Add overflow events.
              
              * page/FrameView.cpp:
              (WebCore::FrameViewPrivate::FrameViewPrivate):
              (WebCore::FrameView::applyOverflowToViewport):        
              (WebCore::FrameView::layout):
              Dispatch any scheduled events when layout is done.
              
              (WebCore::FrameView::scheduleEvent):
              New function which schedules an event.
              
              (WebCore::FrameView::updateOverflowStatus):
              Update overflow status for the viewport.
              
              (WebCore::FrameView::dispatchScheduledEvents):
              New function which dispatches all scheduled events.
              
              * page/FrameView.h:
              Add declarations.
              
              * rendering/RenderLayer.cpp:
              (WebCore::RenderLayer::RenderLayer):
              (WebCore::RenderLayer::updateOverflowStatus):
              (WebCore::RenderLayer::updateScrollInfoAfterLayout):
              * rendering/RenderLayer.h:
              Schedule overflow events when overflow status changes.
      
      LayoutTests:
      
      2006-07-06  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Maciej.
      
              <rdar://problem/4610891> Support overflow events
              
              * fast/events/overflow-events-expected.txt: Added.
              * fast/events/overflow-events.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15191 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0afc15f0
  36. 19 Jun, 2006 1 commit
  37. 18 Jun, 2006 1 commit
    • andersca's avatar
      JavaScriptCore: · db812fdd
      andersca authored
      2006-06-18  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Geoff.
      
              * kjs/interpreter.cpp:
              (KJS::TimeoutChecker::pauseTimeoutCheck):
              Do nothing if the timeout check hasn't been started.
              
              (KJS::TimeoutChecker::resumeTimeoutCheck):
              Do nothing if the timeout check hasn't been started.
              Use the right signal handler when unblocking.
              
              (KJS::Interpreter::handleTimeout):
              pause/resume the timeout check around the call to
              shouldInterruptScript().
              
      WebCore:
      
      2006-06-17  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Geoff.
      
              * bindings/js/kjs_binding.cpp:
              (KJS::ScriptInterpreter::ScriptInterpreter):
              Set the default script timeout.
              
              (KJS::ScriptInterpreter::shouldInterruptScript):
              New function which asks the frame if the script should be interrupted.
              
              * bindings/js/kjs_binding.h:
                      
              * bindings/js/kjs_events.cpp:
              (KJS::JSAbstractEventListener::handleEvent):
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::evaluate):
              Add calls to startTimeoutCheck/stopTimeoutCheck
              
              * bindings/js/kjs_window.cpp:
              (KJS::WindowFunc::callAsFunction):
              Add calls to pauseTimeoutCheck/unpauseTimeoutCheck 
              
              (KJS::ScheduledAction::execute):
              Add calls to startTimeoutCheck/stopTimeoutCheck
              
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::shouldInterruptJavaScript):
              New function which asks the bridge if the script should be interrupted.
              
              * bridge/mac/WebCoreFrameBridge.h:
              * page/Frame.h:
              Add function declarations.
              
      WebKit:
      
      2006-06-18  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Geoff.
      
              * WebCoreSupport/WebFrameBridge.m:
              (-[WebFrameBridge shouldInterruptJavaScript]):
              Ask the UI delegate if the script should be interrupted.
              
              * WebView/WebUIDelegatePrivate.h:
              Declare webViewShouldInterruptJavaScript: delegate method
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14904 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      db812fdd
  38. 13 Jun, 2006 1 commit
    • darin's avatar
      LayoutTests: · cc6c79f2
      darin authored
              Reviewed by Geoff.
      
              - test for <rdar://problem/4585333> Changing location for weather on yahoo.com home page redirects to another page
      
              * fast/events/event-listener-html-non-html-confusion-expected.txt: Added.
              * fast/events/event-listener-html-non-html-confusion.html: Added.
      
      WebCore:
      
              Reviewed by Geoff.
      
              - fix <rdar://problem/4585333> Changing location for weather on yahoo.com home page redirects to another page
      
              This patch fixes a bug where the event listener cache does not distinguish
              HTML and non-HTML listeners. Incorrect behavior where stopPropagation also
              prevented default masked a case of this bug on the yahoo.com home page until
              we fixed bug 5180 on 2005-10-03.
      
              Test: fast/events/event-listener-html-non-html-confusion.html
      
              * bindings/js/kjs_window.h: Add additional listener maps for HTML event listeners.
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::~Window): Go through the additional maps when clearing the window object
              pointer in event listeners.
              (KJS::Window::getJSEventListener): Look in the HTML or non-HTML map depending on the
              argument passed.
              (KJS::Window::getJSUnprotectedEventListener): Ditto.
      
              * bindings/js/kjs_events.cpp:
              (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener): Add to either the HTML
              or non-HTML map depending on the argument passed.
              (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener): Remove from either the
              HTML or non-HTML map depending on whether the HTML flag is set.
              (KJS::JSEventListener::JSEventListener): More of the same.
              (KJS::JSEventListener::~JSEventListener): Ditto.
              (KJS::JSLazyEventListener::parseCode): Same thing here. In a lazy event listener there
              is not a listener at construction time, thus the code here to put the listener into a
              map needs the HTML vs. non-HTML logic.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14856 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cc6c79f2
  39. 15 May, 2006 1 commit
    • eseidel's avatar
      2006-05-15 Eric Seidel <eseidel@apple.com> · 8494362c
      eseidel authored
              Reviewed by Tim Hatcher.
      
              Split html_imageimpl.* into separate files (one per class).
              http://bugzilla.opendarwin.org/show_bug.cgi?id=8929
      
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/JSCanvasRenderingContext2DBase.cpp:
              * bindings/js/kjs_events.cpp:
              * bindings/js/kjs_html.cpp:
              * bindings/objc/DOMHTML.mm:
              * bridge/mac/WebCoreFrameBridge.mm:
              * dom/Document.cpp:
              * editing/JSEditor.cpp:
              * html/CanvasRenderingContext2D.cpp:
              * html/HTMLAnchorElement.cpp:
              * html/HTMLAreaElement.cpp: Added.
              (WebCore::HTMLAreaElement::HTMLAreaElement):
              (WebCore::HTMLAreaElement::mapMouseEvent):
              (WebCore::HTMLAreaElement::getRect):
              (WebCore::HTMLAreaElement::getRegion):
              * html/HTMLAreaElement.h: Added.
              * html/HTMLCanvasElement.h:
              * html/HTMLDocument.cpp:
              * html/HTMLElementFactory.cpp:
              * html/HTMLFormCollection.cpp:
              * html/HTMLFormElement.cpp:
              * html/HTMLImageElement.cpp: Added.
              (WebCore::HTMLImageElement::HTMLImageElement):
              * html/HTMLImageElement.h: Added.
              * html/HTMLImageLoader.cpp: Added.
              (WebCore::HTMLImageLoader::HTMLImageLoader):
              * html/HTMLImageLoader.h: Added.
              * html/HTMLInputElement.cpp:
              * html/HTMLMapElement.cpp: Added.
              (WebCore::HTMLMapElement::mapMouseEvent):
              (WebCore::HTMLMapElement::parseMappedAttribute):
              * html/HTMLMapElement.h: Added.
              * html/HTMLObjectElement.cpp:
              * html/HTMLParser.cpp:
              * html/html_imageimpl.cpp: Removed.
              * html/html_imageimpl.h: Removed.
              * ksvg2/misc/SVGImageLoader.h:
              * kwq/WebCoreAXObject.mm:
              (-[WebCoreAXObject addChildrenToArray:]):
              * page/Frame.cpp:
              * rendering/RenderImage.cpp:
              (WebCore::RenderImage::RenderImage):
              (WebCore::RenderImage::nodeAtPoint):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14393 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8494362c