1. 07 Apr, 2013 1 commit
    • ddkilzer@apple.com's avatar
      Remove the rest of SVG_DOM_OBJC_BINDINGS · 0cd46787
      ddkilzer@apple.com authored
      <http://webkit.org/b/114112>
      
      Reviewed by Geoffrey Garen.
      
      .:
      
      * Source/autotools/SetupWebKitFeatures.m4:
      * Source/cmake/WebKitFeatures.cmake:
      * Source/cmakeconfig.h.cmake:
      - Remove references to ENABLE_SVG_DOM_OBJC_BINDINGS.
      
      Source/JavaScriptCore:
      
      * Configurations/FeatureDefines.xcconfig:
      - Remove ENABLE_SVG_DOM_OBJC_BINDINGS macro.
      
      Source/WebCore:
      
      * Configurations/WebCore.xcconfig:
      - Remove EXCLUDED_SOURCE_FILE_NAMES_SVG_DOM_OBJC_BINDINGS.  Note
        that DOMHTMLIFrameElementPrivate.h should not have been in
        this list because the class contained methods other than just
        -getSVGDocument.
      
      * WebCore.xcodeproj/project.pbxproj:
      - Remove DOMHTMLFrameElementPrivate.h since the only method it
        contained was -[DOMHTMLFrameElement getSVGDocument], which was
        part of the SVG DOM Objective-C bindings.
      
      * bindings/objc/DOM.mm:
      (kitClass):
      * bindings/objc/DOMEvents.mm:
      (kitClass):
      * bindings/objc/ExceptionHandlers.mm:
      (WebCore::raiseDOMException):
      - Remove code in ENABLE(SVG_DOM_OBJC_BINDINGS).
      
      Source/WebKit/blackberry:
      
      * WebCoreSupport/AboutDataEnableFeatures.in:
      - Remove reference to SVG_DOM_OBJC_BINDINGS.
      
      Source/WebKit2:
      
      * Configurations/FeatureDefines.xcconfig:
      - Remove ENABLE_SVG_DOM_OBJC_BINDINGS macro.
      
      Source/WTF:
      
      * wtf/FeatureDefines.h:
      - Remove ENABLE_SVG_DOM_OBJC_BINDINGS macro.
      
      Tools:
      
      * Scripts/webkitperl/FeatureList.pm:
      - Remove --svg-dom-objc-bindings switch.
      * qmake/mkspecs/features/features.pri:
      - Remove reference to ENABLE_SVG_DOM_OBJC_BINDINGS.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147878 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0cd46787
  2. 05 Apr, 2013 1 commit
    • andersca@apple.com's avatar
      Stop building Objective-C bindings for the SVG DOM · 8b914b1d
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=114076
      
      Reviewed by Geoffrey Garen.
      
      The DOM SVG Objective-C bindings have never been exposed as API, and not building them cuts WebCore build by 10%.
      
      Source/WebCore:
      
      * Configurations/FeatureDefines.xcconfig:
      * Configurations/WebCore.xcconfig:
      * WebCore.exp.in:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/objc/DOM.mm:
      (WebCore::createElementClassMap):
      (kitClass):
      * bindings/objc/DOMCSS.mm:
      (kitClass):
      * bindings/objc/DOMEvents.mm:
      * bindings/objc/DOMSVG.h: Removed.
      * bindings/objc/DOMSVGException.h: Removed.
      * bindings/objc/DOMSVGPathSegInternal.mm: Removed.
      * bindings/objc/ExceptionHandlers.mm:
      * html/HTMLEmbedElement.idl:
      * html/HTMLFrameElement.idl:
      * html/HTMLIFrameElement.idl:
      * html/HTMLObjectElement.idl:
      
      Source/WebKit/mac:
      
      * Configurations/FeatureDefines.xcconfig:
      * MigrateHeaders.make:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147822 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8b914b1d
  3. 12 Mar, 2013 1 commit
    • inferno@chromium.org's avatar
      Replace static_casts with to* functions. · 371c01a4
      inferno@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=112072
      
      Reviewed by Philip Rogers.
      
      to* functions are preferred over static_cast calls since they
      help to catch bad casts easily on the testing infrastructure.
      
      Source/WebCore:
      
      * accessibility/AccessibilityMenuList.cpp:
      (WebCore::AccessibilityMenuList::canSetFocusAttribute):
      * bindings/objc/DOM.mm:
      (kitClass):
      * bindings/v8/V8LazyEventListener.cpp:
      (WebCore::V8LazyEventListener::prepareListenerObject):
      * css/SelectorChecker.cpp:
      (WebCore::SelectorChecker::checkOne):
      * editing/ApplyStyleCommand.cpp:
      (WebCore::isLegacyAppleStyleSpan):
      (WebCore::isEmptyFontTag):
      (WebCore::ApplyStyleCommand::applyBlockStyle):
      * editing/FormatBlockCommand.cpp:
      (WebCore::isElementForFormatBlock):
      * editing/ReplaceSelectionCommand.cpp:
      (WebCore::isMailPasteAsQuotationNode):
      (WebCore::haveSameTagName):
      (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
      (WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):
      * history/CachedPage.cpp:
      (WebCore::CachedPage::restore):
      * html/ColorInputType.cpp:
      (WebCore::ColorInputType::suggestions):
      * html/HTMLTableRowsCollection.cpp:
      (WebCore::isInHead):
      (WebCore::isInBody):
      (WebCore::isInFoot):
      * inspector/DOMPatchSupport.cpp:
      (WebCore::DOMPatchSupport::innerPatchNode):
      * page/PageSerializer.cpp:
      (WebCore::SerializerMarkupAccumulator::appendCustomAttributes):
      * plugins/PluginView.cpp:
      (WebCore::PluginView::getValue):
      * rendering/RenderEmbeddedObject.cpp:
      (WebCore::RenderEmbeddedObject::paintContents):
      (WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::name):
      * rendering/RenderMedia.cpp:
      (WebCore::RenderMedia::mediaElement):
      * rendering/RenderSearchField.cpp:
      (WebCore::RenderSearchField::autosaveName):
      * rendering/RenderTextControl.cpp:
      (WebCore::RenderTextControl::textFormControlElement):
      (WebCore::updateUserModifyProperty):
      * rendering/mathml/RenderMathMLFenced.cpp:
      (WebCore::RenderMathMLFenced::updateFromElement):
      * rendering/mathml/RenderMathMLFraction.cpp:
      (WebCore::RenderMathMLFraction::updateFromElement):
      * xml/parser/XMLDocumentParserLibxml2.cpp:
      (WebCore::XMLDocumentParser::XMLDocumentParser):
      (WebCore::XMLDocumentParser::endElementNs):
      
      Source/WebKit/chromium:
      
      * src/ChromeClientImpl.cpp:
      (WebKit::ChromeClientImpl::focusedNodeChanged):
      * src/ContextMenuClientImpl.cpp:
      (WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):
      * src/DOMUtilitiesPrivate.cpp:
      (WebCore::toHTMLElement):
      * src/WebSearchableFormData.cpp:
      (HTMLNames::IsSelectInDefaultState):
      
      Source/WebKit/mac:
      
      * WebView/WebView.mm:
      (-[WebView _enterFullscreenForNode:WebCore::]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145562 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      371c01a4
  4. 11 Mar, 2013 2 commits
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r145462. · 879eeb59
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/145462
      https://bugs.webkit.org/show_bug.cgi?id=112097
      
      Compilation failure in PluginView.cpp (Requested by jamesr_ on
      #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-11
      
      Source/WebCore:
      
      * accessibility/AccessibilityMenuList.cpp:
      (WebCore::AccessibilityMenuList::canSetFocusAttribute):
      * bindings/objc/DOM.mm:
      (kitClass):
      * bindings/v8/V8LazyEventListener.cpp:
      (WebCore::V8LazyEventListener::prepareListenerObject):
      * css/SelectorChecker.cpp:
      (WebCore::SelectorChecker::checkOne):
      * editing/ApplyStyleCommand.cpp:
      (WebCore::isLegacyAppleStyleSpan):
      (WebCore::isEmptyFontTag):
      (WebCore::ApplyStyleCommand::applyBlockStyle):
      * editing/FormatBlockCommand.cpp:
      (WebCore::isElementForFormatBlock):
      * editing/ReplaceSelectionCommand.cpp:
      (WebCore::isMailPasteAsQuotationNode):
      (WebCore::haveSameTagName):
      (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
      (WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):
      * history/CachedPage.cpp:
      (WebCore::CachedPage::restore):
      * html/ColorInputType.cpp:
      (WebCore::ColorInputType::suggestions):
      * html/HTMLTableRowsCollection.cpp:
      (WebCore::isInHead):
      (WebCore::isInBody):
      (WebCore::isInFoot):
      * inspector/DOMPatchSupport.cpp:
      (WebCore::DOMPatchSupport::innerPatchNode):
      * page/PageSerializer.cpp:
      (WebCore::SerializerMarkupAccumulator::appendCustomAttributes):
      * plugins/PluginView.cpp:
      (WebCore::PluginView::getValue):
      * rendering/RenderEmbeddedObject.cpp:
      (WebCore::RenderEmbeddedObject::paintContents):
      (WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::name):
      * rendering/RenderMedia.cpp:
      (WebCore::RenderMedia::mediaElement):
      * rendering/RenderSearchField.cpp:
      (WebCore::RenderSearchField::autosaveName):
      * rendering/RenderTextControl.cpp:
      (WebCore::RenderTextControl::textFormControlElement):
      (WebCore::updateUserModifyProperty):
      * rendering/mathml/RenderMathMLFenced.cpp:
      (WebCore::RenderMathMLFenced::updateFromElement):
      * rendering/mathml/RenderMathMLFraction.cpp:
      (WebCore::RenderMathMLFraction::updateFromElement):
      * xml/parser/XMLDocumentParserLibxml2.cpp:
      (WebCore::XMLDocumentParser::XMLDocumentParser):
      (WebCore::XMLDocumentParser::endElementNs):
      
      Source/WebKit/chromium:
      
      * src/ChromeClientImpl.cpp:
      (WebKit::ChromeClientImpl::focusedNodeChanged):
      * src/ContextMenuClientImpl.cpp:
      (WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):
      * src/DOMUtilitiesPrivate.cpp:
      (WebCore::toHTMLElement):
      * src/WebSearchableFormData.cpp:
      (HTMLNames::IsSelectInDefaultState):
      
      Source/WebKit/mac:
      
      * WebView/WebView.mm:
      (-[WebView _enterFullscreenForNode:WebCore::]):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145471 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      879eeb59
    • inferno@chromium.org's avatar
      Replace static_casts with to* functions. · 228bd363
      inferno@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=112072
      
      Reviewed by Philip Rogers.
      
      to* functions are preferred over static_cast calls since they
      help to catch bad casts easily on the testing infrastructure.
      
      Source/WebCore:
      
      * accessibility/AccessibilityMenuList.cpp:
      (WebCore::AccessibilityMenuList::canSetFocusAttribute):
      * bindings/objc/DOM.mm:
      (kitClass):
      * bindings/v8/V8LazyEventListener.cpp:
      (WebCore::V8LazyEventListener::prepareListenerObject):
      * css/SelectorChecker.cpp:
      (WebCore::SelectorChecker::checkOne):
      * editing/ApplyStyleCommand.cpp:
      (WebCore::isLegacyAppleStyleSpan):
      (WebCore::isEmptyFontTag):
      (WebCore::ApplyStyleCommand::applyBlockStyle):
      * editing/FormatBlockCommand.cpp:
      (WebCore::isElementForFormatBlock):
      * editing/ReplaceSelectionCommand.cpp:
      (WebCore::isMailPasteAsQuotationNode):
      (WebCore::haveSameTagName):
      (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
      (WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):
      * history/CachedPage.cpp:
      (WebCore::CachedPage::restore):
      * html/ColorInputType.cpp:
      (WebCore::ColorInputType::suggestions):
      * html/HTMLTableRowsCollection.cpp:
      (WebCore::isInHead):
      (WebCore::isInBody):
      (WebCore::isInFoot):
      * inspector/DOMPatchSupport.cpp:
      (WebCore::DOMPatchSupport::innerPatchNode):
      * page/PageSerializer.cpp:
      (WebCore::SerializerMarkupAccumulator::appendCustomAttributes):
      * plugins/PluginView.cpp:
      (WebCore::PluginView::getValue):
      * rendering/RenderEmbeddedObject.cpp:
      (WebCore::RenderEmbeddedObject::paintContents):
      (WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::name):
      * rendering/RenderMedia.cpp:
      (WebCore::RenderMedia::mediaElement):
      * rendering/RenderSearchField.cpp:
      (WebCore::RenderSearchField::autosaveName):
      * rendering/RenderTextControl.cpp:
      (WebCore::RenderTextControl::textFormControlElement):
      (WebCore::updateUserModifyProperty):
      * rendering/mathml/RenderMathMLFenced.cpp:
      (WebCore::RenderMathMLFenced::updateFromElement):
      * rendering/mathml/RenderMathMLFraction.cpp:
      (WebCore::RenderMathMLFraction::updateFromElement):
      * xml/parser/XMLDocumentParserLibxml2.cpp:
      (WebCore::XMLDocumentParser::XMLDocumentParser):
      (WebCore::XMLDocumentParser::endElementNs):
      
      Source/WebKit/chromium:
      
      * src/ChromeClientImpl.cpp:
      (WebKit::ChromeClientImpl::focusedNodeChanged):
      * src/ContextMenuClientImpl.cpp:
      (WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):
      * src/DOMUtilitiesPrivate.cpp:
      (WebCore::toHTMLElement):
      * src/WebSearchableFormData.cpp:
      (HTMLNames::IsSelectInDefaultState):
      
      Source/WebKit/mac:
      
      * WebView/WebView.mm:
      (-[WebView _enterFullscreenForNode:WebCore::]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145462 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      228bd363
  5. 03 Mar, 2013 2 commits
    • abarth@webkit.org's avatar
      Unreviewed attempted build fix. Adds back some includes removed in · 401a3791
      abarth@webkit.org authored
      http://trac.webkit.org/changeset/144565.
      
      Source/WebCore: 
      
      * Modules/mediastream/RTCPeerConnection.cpp:
      * bindings/ScriptControllerBase.cpp:
      * bindings/objc/DOM.mm:
      * bindings/v8/ScriptController.cpp:
      * bindings/v8/V8DOMWindowShell.cpp:
      * bindings/v8/custom/V8DOMWindowCustom.cpp:
      * css/CSSFontSelector.cpp:
      * css/WebKitCSSSVGDocumentValue.cpp:
      * dom/DOMImplementation.cpp:
      * dom/PendingScript.h:
      * dom/ScriptElement.cpp:
      * dom/ScriptElement.h:
      * history/CachedFrame.cpp:
      * html/DOMURL.cpp:
      * html/HTMLAnchorElement.cpp:
      * html/HTMLAppletElement.cpp:
      * html/HTMLElement.cpp:
      * html/HTMLEmbedElement.cpp:
      * html/HTMLFrameSetElement.cpp:
      * html/HTMLHtmlElement.cpp:
      * html/HTMLImageElement.cpp:
      * html/HTMLObjectElement.cpp:
      * html/HTMLPlugInElement.cpp:
      * html/ImageDocument.cpp:
      * html/ImageInputType.cpp:
      * html/MediaDocument.cpp:
      * html/PluginDocument.cpp:
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore):
      * html/parser/HTMLConstructionSite.cpp:
      * html/parser/HTMLParserOptions.cpp:
      * html/parser/XSSAuditorDelegate.cpp:
      * inspector/InspectorDebuggerAgent.cpp:
      * inspector/InspectorFileSystemAgent.cpp:
      * inspector/InspectorFrontendHost.cpp:
      * inspector/InspectorInstrumentation.h:
      * inspector/InspectorPageAgent.cpp:
      * inspector/NetworkResourcesData.cpp:
      * inspector/NetworkResourcesData.h:
      (WebCore):
      * loader/CookieJar.cpp:
      * loader/CrossOriginAccessControl.cpp:
      * loader/FrameLoader.cpp:
      * loader/MainResourceLoader.cpp:
      * loader/MixedContentChecker.cpp:
      * loader/PingLoader.cpp:
      * loader/SubframeLoader.cpp:
      * loader/SubresourceLoader.cpp:
      * loader/appcache/ApplicationCacheGroup.cpp:
      * loader/appcache/ApplicationCacheHost.cpp:
      * loader/cache/CachedResource.cpp:
      * loader/icon/IconController.cpp:
      * page/DOMWindowExtension.cpp:
      * page/Frame.cpp:
      * page/PerformanceTiming.cpp:
      * page/PointerLockController.cpp:
      * page/animation/CSSPropertyAnimation.cpp:
      * platform/chromium/PasteboardChromium.cpp:
      * platform/efl/ErrorsEfl.cpp:
      * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
      * platform/gtk/ErrorsGtk.cpp:
      * platform/gtk/PasteboardGtk.cpp:
      * platform/gtk/PasteboardHelper.h:
      * platform/mac/ClipboardMac.mm:
      * platform/mac/HTMLConverter.mm:
      * platform/qt/PasteboardQt.cpp:
      * plugins/DOMMimeType.cpp:
      * plugins/PluginView.cpp:
      * rendering/HitTestResult.cpp:
      * rendering/RenderImage.cpp:
      * rendering/RenderImageResource.cpp:
      * rendering/RenderImageResourceStyleImage.cpp:
      * rendering/RenderLayer.cpp:
      * rendering/RenderLayerBacking.cpp:
      * svg/SVGImageLoader.cpp:
      * svg/SVGUseElement.cpp:
      * testing/MockPagePopupDriver.cpp:
      * xml/XSLStyleSheet.h:
      (WebCore):
      
      Source/WebKit/chromium: 
      
      * src/ApplicationCacheHost.cpp:
      * src/AssociatedURLLoader.cpp:
      * src/EditorClientImpl.cpp:
      * src/SharedWorkerRepository.cpp:
      * src/WebDataSourceImpl.cpp:
      * src/WebFrameImpl.h:
      (WebCore):
      * src/WebNode.cpp:
      * src/WebSharedWorkerImpl.cpp:
      * tests/FrameLoaderClientImplTest.cpp:
      
      Source/WebKit/efl: 
      
      * WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
      * ewk/ewk_frame.cpp:
      
      Source/WebKit/mac: 
      
      * DOM/WebDOMOperations.mm:
      * Misc/WebNSPasteboardExtras.mm:
      * WebCoreSupport/WebFrameNetworkingContext.mm:
      * WebView/WebRenderLayer.mm:
      * WebView/WebRenderNode.mm:
      
      Source/WebKit/qt: 
      
      * WebCoreSupport/NotificationPresenterClientQt.cpp:
      * WebCoreSupport/QWebPageAdapter.cpp:
      
      Source/WebKit2: 
      
      * Shared/WebRenderLayer.cpp:
      * Shared/WebRenderObject.cpp:
      * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
      * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
      * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
      * WebProcess/InjectedBundle/InjectedBundle.cpp:
      * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
      * WebProcess/Plugins/PDF/PDFPlugin.mm:
      * WebProcess/Plugins/PluginView.cpp:
      * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
      * WebProcess/WebCoreSupport/WebEditorClient.cpp:
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
      * WebProcess/WebPage/mac/WebPageMac.mm:
      * WebProcess/WebProcess.cpp:
      * WebProcess/soup/WebProcessSoup.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144568 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      401a3791
    • abarth@webkit.org's avatar
      Unreviewed rollout of http://trac.webkit.org/r144530 · fa616dd3
      abarth@webkit.org authored
      As described in https://bugs.webkit.org/show_bug.cgi?id=111167 and
      https://bugs.webkit.org/show_bug.cgi?id=111035, this patch caused a
      large number of ASSERTs in chromium-win.
      
      Source/WebCore: 
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Modules/mediastream/RTCPeerConnection.cpp:
      * Modules/notifications/Notification.cpp:
      * Target.pri:
      * WebCore.exp.in:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/ScriptControllerBase.cpp:
      * bindings/js/JSNodeCustom.cpp:
      * bindings/js/ScriptController.cpp:
      * bindings/js/ScriptSourceCode.h:
      (WebCore):
      * bindings/objc/DOM.mm:
      * bindings/v8/ScriptController.cpp:
      * bindings/v8/V8DOMWindowShell.cpp:
      * bindings/v8/custom/V8DOMWindowCustom.cpp:
      * css/CSSCrossfadeValue.h:
      (WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
      (WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
      * css/CSSFontFaceSource.h:
      * css/CSSFontSelector.cpp:
      * css/WebKitCSSSVGDocumentValue.cpp:
      * css/WebKitCSSSVGDocumentValue.h:
      (WebCore):
      * dom/Clipboard.cpp:
      (WebCore::Clipboard::Clipboard):
      * dom/ContainerNode.cpp:
      * dom/DOMImplementation.cpp:
      * dom/PendingScript.h:
      * dom/ScriptElement.cpp:
      * dom/ScriptElement.h:
      * history/CachedFrame.cpp:
      * html/DOMURL.cpp:
      * html/HTMLAnchorElement.cpp:
      * html/HTMLAppletElement.cpp:
      * html/HTMLElement.cpp:
      * html/HTMLEmbedElement.cpp:
      * html/HTMLFrameSetElement.cpp:
      * html/HTMLHtmlElement.cpp:
      * html/HTMLImageElement.cpp:
      * html/HTMLObjectElement.cpp:
      * html/HTMLPlugInElement.cpp:
      * html/ImageDocument.cpp:
      * html/ImageInputType.cpp:
      * html/MediaDocument.cpp:
      * html/PluginDocument.cpp:
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore):
      * html/parser/HTMLConstructionSite.cpp:
      * html/parser/HTMLParserOptions.cpp:
      * html/parser/HTMLScriptRunner.h:
      * html/parser/XSSAuditor.cpp:
      * html/parser/XSSAuditorDelegate.cpp:
      * inspector/InspectorDebuggerAgent.cpp:
      * inspector/InspectorFileSystemAgent.cpp:
      * inspector/InspectorFrontendHost.cpp:
      * inspector/InspectorInstrumentation.h:
      (WebCore):
      * inspector/InspectorPageAgent.cpp:
      * inspector/NetworkResourcesData.cpp:
      * inspector/NetworkResourcesData.h:
      (WebCore):
      * loader/CookieJar.cpp:
      * loader/CrossOriginAccessControl.cpp:
      * loader/CrossOriginAccessControl.h:
      (WebCore):
      * loader/CrossOriginPreflightResultCache.h:
      * loader/DocumentThreadableLoader.h:
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::FrameLoader):
      * loader/FrameLoader.h:
      (WebCore):
      (WebCore::FrameLoader::policyChecker):
      * loader/ImageLoader.cpp:
      * loader/ImageLoader.h:
      * loader/LinkLoader.h:
      (WebCore):
      * loader/MainResourceLoader.cpp:
      * loader/MainResourceLoader.h:
      (WebCore):
      * loader/MixedContentChecker.cpp:
      * loader/PingLoader.cpp:
      * loader/PolicyChecker.h:
      (WebCore):
      * loader/ProgressTracker.cpp:
      * loader/SubframeLoader.cpp:
      * loader/SubresourceLoader.cpp:
      * loader/TextTrackLoader.cpp:
      * loader/TextTrackLoader.h:
      (WebCore):
      * loader/ThreadableLoader.h:
      * loader/appcache/ApplicationCacheGroup.cpp:
      * loader/appcache/ApplicationCacheGroup.h:
      (WebCore):
      * loader/appcache/ApplicationCacheHost.cpp:
      * loader/archive/cf/LegacyWebArchive.cpp:
      * loader/cache/CachedFont.cpp:
      * loader/cache/CachedFont.h:
      (CachedFontClient):
      (WebCore::CachedFontClient::~CachedFontClient):
      (WebCore::CachedFontClient::expectedType):
      (WebCore::CachedFontClient::resourceClientType):
      (WebCore::CachedFontClient::fontLoaded):
      (WebCore):
      * loader/cache/CachedFontClient.h: Removed.
      * loader/cache/CachedImage.cpp:
      * loader/cache/CachedRawResource.cpp:
      * loader/cache/CachedRawResource.h:
      (WebCore):
      (CachedRawResourceClient):
      (WebCore::CachedRawResourceClient::~CachedRawResourceClient):
      (WebCore::CachedRawResourceClient::expectedType):
      (WebCore::CachedRawResourceClient::resourceClientType):
      (WebCore::CachedRawResourceClient::dataSent):
      (WebCore::CachedRawResourceClient::responseReceived):
      (WebCore::CachedRawResourceClient::dataReceived):
      (WebCore::CachedRawResourceClient::redirectReceived):
      (WebCore::CachedRawResourceClient::dataDownloaded):
      * loader/cache/CachedRawResourceClient.h: Removed.
      * loader/cache/CachedResource.cpp:
      * loader/cache/CachedResourceHandle.cpp:
      (WebCore):
      * loader/cache/CachedResourceHandle.h:
      (WebCore):
      (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
      (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
      * loader/cache/CachedSVGDocument.h:
      (CachedSVGDocumentClient):
      (WebCore::CachedSVGDocumentClient::~CachedSVGDocumentClient):
      (WebCore::CachedSVGDocumentClient::expectedType):
      (WebCore::CachedSVGDocumentClient::resourceClientType):
      (WebCore):
      * loader/cache/CachedSVGDocumentClient.h: Removed.
      * loader/cache/CachedSVGDocumentReference.cpp: Removed.
      * loader/cache/CachedSVGDocumentReference.h:
      (WebCore):
      (WebCore::CachedSVGDocumentReference::CachedSVGDocumentReference):
      (WebCore::CachedSVGDocumentReference::~CachedSVGDocumentReference):
      * loader/cache/CachedStyleSheetClient.h:
      (WebCore):
      * loader/cache/MemoryCache.h:
      (WebCore):
      (MemoryCache):
      * loader/chromium/CachedRawResourceChromium.cpp:
      * loader/icon/IconController.cpp:
      * loader/icon/IconLoader.h:
      * loader/mac/ResourceLoaderMac.mm:
      * page/DOMWindowExtension.cpp:
      * page/Frame.cpp:
      (WebCore::Frame::Frame):
      (WebCore):
      (WebCore::Frame::reportMemoryUsage):
      * page/Frame.h:
      (WebCore):
      (Frame):
      (WebCore::Frame::init):
      (WebCore::Frame::loader):
      * page/PerformanceNavigation.cpp:
      * page/PerformanceTiming.cpp:
      * page/PointerLockController.cpp:
      * page/Settings.cpp:
      * page/animation/CSSPropertyAnimation.cpp:
      * platform/chromium/PasteboardChromium.cpp:
      * platform/efl/ErrorsEfl.cpp:
      * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
      * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
      * platform/graphics/filters/FilterOperation.cpp:
      (WebCore):
      * platform/graphics/filters/FilterOperation.h:
      (WebCore):
      (WebCore::FilterOperation::ReferenceFilterOperation::setCachedSVGDocumentReference):
      (WebCore::FilterOperation::ReferenceFilterOperation::ReferenceFilterOperation):
      * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
      * platform/gtk/ErrorsGtk.cpp:
      * platform/gtk/PasteboardGtk.cpp:
      * platform/gtk/PasteboardHelper.h:
      * platform/mac/ClipboardMac.h:
      * platform/mac/ClipboardMac.mm:
      * platform/mac/HTMLConverter.mm:
      * platform/mac/PasteboardMac.mm:
      * platform/network/AuthenticationChallengeBase.cpp:
      * platform/network/cf/CookieJarCFNet.cpp:
      * platform/network/cf/ResourceRequestCFNet.cpp:
      * platform/network/mac/CookieStorageMac.mm:
      * platform/qt/PasteboardQt.cpp:
      * plugins/DOMMimeType.cpp:
      * plugins/PluginRequest.h: Removed.
      * plugins/PluginStream.h:
      (PluginStreamClient):
      (WebCore::PluginStreamClient::~PluginStreamClient):
      (WebCore::PluginStreamClient::streamDidFinishLoading):
      (WebCore):
      * plugins/PluginStreamClient.h: Removed.
      * plugins/PluginView.cpp:
      * plugins/PluginView.h:
      (WebCore):
      (PluginRequest):
      (WebCore::PluginRequest::PluginRequest):
      (WebCore::PluginRequest::frameLoadRequest):
      (WebCore::PluginRequest::notifyData):
      (WebCore::PluginRequest::sendNotification):
      (WebCore::PluginRequest::shouldAllowPopups):
      * rendering/HitTestResult.cpp:
      * rendering/InlineFlowBox.cpp:
      * rendering/RenderBox.cpp:
      * rendering/RenderEmbeddedObject.cpp:
      * rendering/RenderImage.cpp:
      * rendering/RenderImageResource.cpp:
      (WebCore::RenderImageResource::RenderImageResource):
      (WebCore):
      * rendering/RenderImageResource.h:
      (WebCore::RenderImageResource::image):
      (WebCore::RenderImageResource::errorOccurred):
      (WebCore::RenderImageResource::usesImageContainerSize):
      (WebCore::RenderImageResource::imageHasRelativeWidth):
      (WebCore::RenderImageResource::imageHasRelativeHeight):
      (WebCore::RenderImageResource::imageSize):
      * rendering/RenderImageResourceStyleImage.cpp:
      * rendering/RenderLayer.cpp:
      * rendering/RenderLayerBacking.cpp:
      * rendering/RenderLayerFilterInfo.h:
      (WebCore):
      * rendering/RenderListItem.cpp:
      * rendering/RenderListMarker.cpp:
      * rendering/RenderSnapshottedPlugIn.cpp:
      * rendering/RenderTableCol.cpp:
      * rendering/RenderTableRow.cpp:
      * rendering/RenderTableSection.cpp:
      * rendering/style/StyleCachedShader.h:
      * rendering/style/StyleCustomFilterProgram.cpp: Removed.
      * rendering/style/StyleCustomFilterProgram.h:
      (WebCore):
      (WebCore::StyleCustomFilterProgram::vertexShaderString):
      (StyleCustomFilterProgram):
      (WebCore::StyleCustomFilterProgram::fragmentShaderString):
      (WebCore::StyleCustomFilterProgram::isLoaded):
      (WebCore::StyleCustomFilterProgram::willHaveClients):
      (WebCore::StyleCustomFilterProgram::didRemoveLastClient):
      (WebCore::StyleCustomFilterProgram::notifyFinished):
      * svg/SVGFEImageElement.h:
      * svg/SVGFontFaceUriElement.h:
      (SVGFontFaceUriElement):
      * svg/SVGImageLoader.cpp:
      * svg/SVGUseElement.cpp:
      * svg/SVGUseElement.h:
      * svg/graphics/SVGImageCache.cpp:
      * testing/MockPagePopupDriver.cpp:
      * xml/XSLStyleSheet.h:
      (WebCore):
      * xml/XSLTProcessorLibxslt.cpp:
      * xml/parser/XMLDocumentParser.cpp:
      * xml/parser/XMLDocumentParser.h:
      * xml/parser/XMLDocumentParserLibxml2.cpp:
      
      Source/WebKit/chromium: 
      
      * src/ApplicationCacheHost.cpp:
      * src/AssociatedURLLoader.cpp:
      * src/EditorClientImpl.cpp:
      * src/SharedWorkerRepository.cpp:
      * src/WebDataSourceImpl.cpp:
      * src/WebFrameImpl.h:
      (WebCore):
      * src/WebNode.cpp:
      * src/WebSharedWorkerImpl.cpp:
      * tests/FrameLoaderClientImplTest.cpp:
      
      Source/WebKit/efl: 
      
      * WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
      * ewk/ewk_frame.cpp:
      
      Source/WebKit/gtk: 
      
      * webkit/webkitwebpolicydecision.cpp:
      
      Source/WebKit/mac: 
      
      * DOM/WebDOMOperations.mm:
      * Misc/WebNSPasteboardExtras.mm:
      * WebCoreSupport/WebFrameNetworkingContext.mm:
      * WebView/WebRenderLayer.mm:
      * WebView/WebRenderNode.mm:
      
      Source/WebKit/qt: 
      
      * WebCoreSupport/NotificationPresenterClientQt.cpp:
      * WebCoreSupport/QWebPageAdapter.cpp:
      
      Source/WebKit2: 
      
      * NetworkProcess/HostRecord.h:
      * NetworkProcess/NetworkResourceLoadScheduler.h:
      * NetworkProcess/NetworkResourceLoader.h:
      (WebCore):
      * Shared/WebRenderLayer.cpp:
      * Shared/WebRenderObject.cpp:
      * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
      * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
      * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
      * WebProcess/InjectedBundle/InjectedBundle.cpp:
      * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
      * WebProcess/Plugins/PDF/PDFPlugin.mm:
      * WebProcess/Plugins/PluginView.cpp:
      * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
      * WebProcess/WebCoreSupport/WebEditorClient.cpp:
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
      * WebProcess/WebPage/mac/WebPageMac.mm:
      * WebProcess/WebProcess.cpp:
      * WebProcess/soup/WebProcessSoup.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144565 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fa616dd3
  6. 01 Mar, 2013 3 commits
    • ap@apple.com's avatar
      Reduce amount of rebuilding when touching networking headers · fc363ce1
      ap@apple.com authored
              https://bugs.webkit.org/show_bug.cgi?id=111035
      
              Reviewed by Eric Seidel.
      
              This uses a number of common unsurprising techniques. One interesting observation
              is that including CachedResource related headers is very expensive. We can usually
              get away with their Client counterparts, and with CachedResourceHandle.
      
              * page/Frame.cpp:
              * page/Frame.h:
              Don't include FrameLoader, greatly reducing include graph for most non-loader files.
              This required making Frame::init() non-inline - I'm not sure why it ever was.
      
              * loader/FrameLoader.cpp:
              * loader/FrameLoader.h:
              Even though FrameLoader is logically on loading side of WebCore, it's included in
              too many places. Not including PolicyChecker.h and ResourceHandle.h was among the
              largest wins. As a future improvement, we should probably convert other members
              to OwnPtrs.
      
              * css/CSSCrossfadeValue.h: Initializing CachedResourceHandle with 0 requires a
              definition of a class it holds, but default construction does not.
      
              * loader/CrossOriginAccessControl.h: This file among others only needs ResourceHandleTypes.h,
              not ResourceHandle.h. This header is semi-recent, so not all include sites were updated.
      
              * loader/cache/CachedFont.h:
              * loader/cache/CachedFontClient.h: Added.
              * loader/cache/CachedRawResource.h:
              * loader/cache/CachedRawResourceClient.h: Added.
              * loader/cache/CachedSVGDocument.h:
              * loader/cache/CachedSVGDocumentClient.h: Added.
              These types were defining client types in the same headers, making it impossible
              to avoid including networking headers through CachedResource. Moved clients into
              separate files.
      
              * plugins/PluginStream.h:
              * plugins/PluginStreamClient.h: Added.
              Similar situation here.
      
              * loader/cache/CachedResourceHandle.cpp:
              * loader/cache/CachedResourceHandle.h:
              Moved functions that need to know about CachedResource to .cpp file. This is another
              huge win. Added a destructor, so that CachedResource woudn't be needed in all files
              that include CachedResourceHandle.
      
              * loader/cache/CachedSVGDocumentReference.cpp: Added.
              * loader/cache/CachedSVGDocumentReference.h:
              Moved constructor and virtual function implementations to a .cpp file - they need
              not inlining, and this lets us avoid including CachedSVGDocument.h in the header.
      
              * platform/graphics/filters/FilterOperation.cpp:
              * platform/graphics/filters/FilterOperation.h:
              Avoid including CachedSVGDocumentReference.h. This is not such a big win now that
              CachedSVGDocumentReference.h itself is smaller, but FilterOperation is so clearly
              rendering code that it seems best to cut any ties with resources and loading.
              Added a virtual destrutor in .cpp file, because inline destructors in polymorphic
              classes are generally harmful (due to code bloat).
      
              * plugins/PluginRequest.h: Added.
              * plugins/PluginView.h:
              Moved PluginRequest into a separate file, it was out of place in a view hierarchy
              class file.
      
              * rendering/RenderImageResource.cpp:
              * rendering/RenderImageResource.h:
              Moved definitions of virtual functions to a .cpp file. Thre is no win from having
              them inline, and now we don't need CachedImage.h in the header.
      
              * rendering/style/StyleCustomFilterProgram.cpp: Added.
              * rendering/style/StyleCustomFilterProgram.h:
              Ditto.
      
              * CMakeLists.txt:
              * GNUmakefile.list.am:
              * Modules/mediastream/RTCPeerConnection.cpp:
              * Modules/notifications/Notification.cpp:
              * Target.pri:
              * WebCore.exp.in:
              * WebCore.gypi:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.vcxproj/WebCore.vcxproj:
              * WebCore.vcxproj/WebCore.vcxproj.filters:
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/ScriptControllerBase.cpp:
              * bindings/js/JSNodeCustom.cpp:
              * bindings/js/ScriptController.cpp:
              * bindings/js/ScriptSourceCode.h:
              * bindings/objc/DOM.mm:
              * bindings/v8/ScriptController.cpp:
              * bindings/v8/V8DOMWindowShell.cpp:
              * bindings/v8/custom/V8DOMWindowCustom.cpp:
              * css/CSSFontFaceSource.h:
              * css/CSSFontSelector.cpp:
              * css/WebKitCSSSVGDocumentValue.cpp:
              * css/WebKitCSSSVGDocumentValue.h:
              * dom/Clipboard.cpp:
              * dom/ContainerNode.cpp:
              * dom/DOMImplementation.cpp:
              * dom/PendingScript.h:
              * dom/ScriptElement.cpp:
              * dom/ScriptElement.h:
              * history/CachedFrame.cpp:
              * html/DOMURL.cpp:
              * html/HTMLAnchorElement.cpp:
              * html/HTMLAppletElement.cpp:
              * html/HTMLElement.cpp:
              * html/HTMLEmbedElement.cpp:
              * html/HTMLFrameSetElement.cpp:
              * html/HTMLHtmlElement.cpp:
              * html/HTMLImageElement.cpp:
              * html/HTMLObjectElement.cpp:
              * html/HTMLPlugInElement.cpp:
              * html/ImageDocument.cpp:
              * html/ImageInputType.cpp:
              * html/MediaDocument.cpp:
              * html/PluginDocument.cpp:
              * html/canvas/WebGLRenderingContext.cpp:
              * html/parser/HTMLConstructionSite.cpp:
              * html/parser/HTMLParserOptions.cpp:
              * html/parser/HTMLScriptRunner.h:
              * html/parser/XSSAuditor.cpp:
              * html/parser/XSSAuditorDelegate.cpp:
              * inspector/InspectorDebuggerAgent.cpp:
              * inspector/InspectorFileSystemAgent.cpp:
              * inspector/InspectorFrontendHost.cpp:
              * inspector/InspectorInstrumentation.h:
              * inspector/InspectorPageAgent.cpp:
              * inspector/NetworkResourcesData.cpp:
              * inspector/NetworkResourcesData.h:
              * loader/CookieJar.cpp:
              * loader/CrossOriginAccessControl.cpp:
              * loader/CrossOriginPreflightResultCache.h:
              * loader/DocumentThreadableLoader.h:
              * loader/ImageLoader.cpp:
              * loader/ImageLoader.h:
              * loader/LinkLoader.h:
              * loader/MainResourceLoader.cpp:
              * loader/MainResourceLoader.h:
              * loader/MixedContentChecker.cpp:
              * loader/PingLoader.cpp:
              * loader/PolicyChecker.h:
              * loader/ProgressTracker.cpp:
              * loader/SubframeLoader.cpp:
              * loader/SubresourceLoader.cpp:
              * loader/TextTrackLoader.cpp:
              * loader/TextTrackLoader.h:
              * loader/ThreadableLoader.h:
              * loader/appcache/ApplicationCacheGroup.cpp:
              * loader/appcache/ApplicationCacheGroup.h:
              * loader/appcache/ApplicationCacheHost.cpp:
              * loader/archive/cf/LegacyWebArchive.cpp:
              * loader/cache/CachedFont.cpp:
              * loader/cache/CachedImage.cpp:
              * loader/cache/CachedRawResource.cpp:
              * loader/cache/CachedResource.cpp:
              * loader/cache/CachedStyleSheetClient.h:
              * loader/cache/MemoryCache.cpp:
              * loader/cache/MemoryCache.h:
              * loader/chromium/CachedRawResourceChromium.cpp:
              * loader/icon/IconController.cpp:
              * loader/icon/IconLoader.h:
              * loader/mac/ResourceLoaderMac.mm:
              * page/DOMWindowExtension.cpp:
              * page/DragController.cpp:
              * page/PerformanceNavigation.cpp:
              * page/PerformanceTiming.cpp:
              * page/PointerLockController.cpp:
              * page/Settings.cpp:
              * page/animation/CSSPropertyAnimation.cpp:
              * platform/chromium/PasteboardChromium.cpp:
              * platform/efl/ErrorsEfl.cpp:
              * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
              * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
              * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
              * platform/gtk/ErrorsGtk.cpp:
              * platform/gtk/PasteboardGtk.cpp:
              * platform/gtk/PasteboardHelper.h:
              * platform/mac/ClipboardMac.h:
              * platform/mac/ClipboardMac.mm:
              * platform/mac/HTMLConverter.mm:
              * platform/mac/PasteboardMac.mm:
              * platform/network/AuthenticationChallengeBase.cpp:
              * platform/network/cf/CookieJarCFNet.cpp:
              * platform/network/cf/ResourceRequestCFNet.cpp:
              * platform/network/mac/CookieStorageMac.mm:
              * platform/qt/PasteboardQt.cpp:
              * plugins/DOMMimeType.cpp:
              * plugins/PluginView.cpp:
              * rendering/HitTestResult.cpp:
              * rendering/InlineFlowBox.cpp:
              * rendering/RenderBox.cpp:
              * rendering/RenderEmbeddedObject.cpp:
              * rendering/RenderImage.cpp:
              * rendering/RenderImageResourceStyleImage.cpp:
              * rendering/RenderLayer.cpp:
              * rendering/RenderLayerBacking.cpp:
              * rendering/RenderLayerFilterInfo.h:
              * rendering/RenderListItem.cpp:
              * rendering/RenderListMarker.cpp:
              * rendering/RenderSnapshottedPlugIn.cpp:
              * rendering/RenderTableCol.cpp:
              * rendering/RenderTableRow.cpp:
              * rendering/RenderTableSection.cpp:
              * rendering/style/StyleCachedShader.h:
              * svg/SVGFEImageElement.h:
              * svg/SVGFontFaceUriElement.h:
              * svg/SVGImageLoader.cpp:
              * svg/SVGUseElement.cpp:
              * svg/SVGUseElement.h:
              * svg/graphics/SVGImageCache.cpp:
              * testing/MockPagePopupDriver.cpp:
              * xml/XSLStyleSheet.h:
              * xml/XSLTProcessorLibxslt.cpp:
              * xml/parser/XMLDocumentParser.cpp:
              * xml/parser/XMLDocumentParser.h:
              * xml/parser/XMLDocumentParserLibxml2.cpp:
              Many self-evident changes - removing unnecessary header includes, adding smaller
              more local ones that are now necessary.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144530 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fc363ce1
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r144422 and r144424. · 0b87a6c7
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/144422
      http://trac.webkit.org/changeset/144424
      https://bugs.webkit.org/show_bug.cgi?id=111167
      
      Caused over 20 tests to fail assertion on Chromium Win port as
      ASSERTION FAILED: m_platformRequestUpdated (Requested by
      toyoshim on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-01
      
      Source/WebCore:
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Modules/mediastream/RTCPeerConnection.cpp:
      * Modules/notifications/Notification.cpp:
      * Target.pri:
      * WebCore.exp.in:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/ScriptControllerBase.cpp:
      * bindings/js/JSNodeCustom.cpp:
      * bindings/js/ScriptController.cpp:
      * bindings/js/ScriptSourceCode.h:
      * bindings/objc/DOM.mm:
      * bindings/v8/ScriptController.cpp:
      * bindings/v8/V8DOMWindowShell.cpp:
      * bindings/v8/custom/V8DOMWindowCustom.cpp:
      * css/CSSCrossfadeValue.h:
      (WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
      (WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
      * css/CSSFontFaceSource.h:
      * css/CSSFontSelector.cpp:
      * css/WebKitCSSSVGDocumentValue.cpp:
      * css/WebKitCSSSVGDocumentValue.h:
      (WebCore):
      * dom/Clipboard.cpp:
      (WebCore::Clipboard::Clipboard):
      * dom/ContainerNode.cpp:
      * dom/DOMImplementation.cpp:
      * dom/PendingScript.h:
      * dom/ScriptElement.cpp:
      * dom/ScriptElement.h:
      * history/CachedFrame.cpp:
      * html/DOMURL.cpp:
      * html/HTMLAnchorElement.cpp:
      * html/HTMLAppletElement.cpp:
      * html/HTMLElement.cpp:
      * html/HTMLEmbedElement.cpp:
      * html/HTMLFrameSetElement.cpp:
      * html/HTMLHtmlElement.cpp:
      * html/HTMLImageElement.cpp:
      * html/HTMLObjectElement.cpp:
      * html/HTMLPlugInElement.cpp:
      * html/ImageDocument.cpp:
      * html/ImageInputType.cpp:
      * html/MediaDocument.cpp:
      * html/PluginDocument.cpp:
      * html/canvas/WebGLRenderingContext.cpp:
      (WebCore):
      * html/parser/HTMLConstructionSite.cpp:
      * html/parser/HTMLParserOptions.cpp:
      * html/parser/HTMLScriptRunner.h:
      * html/parser/XSSAuditor.cpp:
      * html/parser/XSSAuditorDelegate.cpp:
      * inspector/InspectorDebuggerAgent.cpp:
      * inspector/InspectorFileSystemAgent.cpp:
      * inspector/InspectorFrontendHost.cpp:
      * inspector/InspectorInstrumentation.h:
      (WebCore):
      * inspector/InspectorPageAgent.cpp:
      * inspector/NetworkResourcesData.cpp:
      * inspector/NetworkResourcesData.h:
      (WebCore):
      * loader/CookieJar.cpp:
      * loader/CrossOriginAccessControl.cpp:
      * loader/CrossOriginAccessControl.h:
      (WebCore):
      * loader/CrossOriginPreflightResultCache.h:
      * loader/DocumentThreadableLoader.h:
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::FrameLoader):
      * loader/FrameLoader.h:
      (WebCore):
      (WebCore::FrameLoader::policyChecker):
      * loader/ImageLoader.cpp:
      * loader/ImageLoader.h:
      * loader/LinkLoader.h:
      * loader/MainResourceLoader.cpp:
      * loader/MainResourceLoader.h:
      * loader/MixedContentChecker.cpp:
      * loader/PingLoader.cpp:
      * loader/PolicyChecker.h:
      (WebCore):
      * loader/ProgressTracker.cpp:
      * loader/SubframeLoader.cpp:
      * loader/SubresourceLoader.cpp:
      * loader/TextTrackLoader.cpp:
      * loader/TextTrackLoader.h:
      * loader/ThreadableLoader.h:
      * loader/appcache/ApplicationCacheGroup.cpp:
      * loader/appcache/ApplicationCacheGroup.h:
      (WebCore):
      * loader/appcache/ApplicationCacheHost.cpp:
      * loader/archive/cf/LegacyWebArchive.cpp:
      * loader/cache/CachedFont.cpp:
      * loader/cache/CachedFont.h:
      (CachedFontClient):
      (WebCore::CachedFontClient::~CachedFontClient):
      (WebCore::CachedFontClient::expectedType):
      (WebCore::CachedFontClient::resourceClientType):
      (WebCore::CachedFontClient::fontLoaded):
      (WebCore):
      * loader/cache/CachedFontClient.h: Removed.
      * loader/cache/CachedImage.cpp:
      * loader/cache/CachedRawResource.cpp:
      * loader/cache/CachedRawResource.h:
      (WebCore):
      (CachedRawResourceClient):
      (WebCore::CachedRawResourceClient::~CachedRawResourceClient):
      (WebCore::CachedRawResourceClient::expectedType):
      (WebCore::CachedRawResourceClient::resourceClientType):
      (WebCore::CachedRawResourceClient::dataSent):
      (WebCore::CachedRawResourceClient::responseReceived):
      (WebCore::CachedRawResourceClient::dataReceived):
      (WebCore::CachedRawResourceClient::redirectReceived):
      (WebCore::CachedRawResourceClient::dataDownloaded):
      * loader/cache/CachedRawResourceClient.h: Removed.
      * loader/cache/CachedResource.cpp:
      * loader/cache/CachedResourceHandle.cpp:
      * loader/cache/CachedResourceHandle.h:
      (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
      (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
      * loader/cache/CachedSVGDocument.h:
      (CachedSVGDocumentClient):
      (WebCore::CachedSVGDocumentClient::~CachedSVGDocumentClient):
      (WebCore::CachedSVGDocumentClient::expectedType):
      (WebCore::CachedSVGDocumentClient::resourceClientType):
      (WebCore):
      * loader/cache/CachedSVGDocumentClient.h: Removed.
      * loader/cache/CachedSVGDocumentReference.cpp: Removed.
      * loader/cache/CachedSVGDocumentReference.h:
      (WebCore::CachedSVGDocumentReference::CachedSVGDocumentReference):
      (WebCore::CachedSVGDocumentReference::~CachedSVGDocumentReference):
      * loader/cache/CachedStyleSheetClient.h:
      * loader/cache/MemoryCache.cpp:
      * loader/cache/MemoryCache.h:
      (WebCore):
      (MemoryCache):
      * loader/chromium/CachedRawResourceChromium.cpp:
      * loader/icon/IconController.cpp:
      * loader/icon/IconLoader.h:
      * loader/mac/ResourceLoaderMac.mm:
      * page/DOMWindowExtension.cpp:
      * page/DragController.cpp:
      * page/Frame.cpp:
      (WebCore::Frame::Frame):
      (WebCore::Frame::reportMemoryUsage):
      * page/Frame.h:
      (WebCore):
      (Frame):
      (WebCore::Frame::init):
      (WebCore::Frame::loader):
      * page/PerformanceNavigation.cpp:
      * page/PerformanceTiming.cpp:
      * page/PointerLockController.cpp:
      * page/Settings.cpp:
      * page/animation/CSSPropertyAnimation.cpp:
      * platform/chromium/PasteboardChromium.cpp:
      * platform/efl/ErrorsEfl.cpp:
      * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
      * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
      * platform/graphics/filters/FilterOperation.cpp:
      * platform/graphics/filters/FilterOperation.h:
      (WebCore::FilterOperation::ReferenceFilterOperation::setCachedSVGDocumentReference):
      (WebCore::FilterOperation::ReferenceFilterOperation::ReferenceFilterOperation):
      * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
      * platform/gtk/ErrorsGtk.cpp:
      * platform/gtk/PasteboardGtk.cpp:
      * platform/gtk/PasteboardHelper.h:
      * platform/mac/ClipboardMac.h:
      * platform/mac/ClipboardMac.mm:
      * platform/mac/HTMLConverter.mm:
      * platform/mac/PasteboardMac.mm:
      * platform/network/AuthenticationChallengeBase.cpp:
      * platform/network/cf/CookieJarCFNet.cpp:
      * platform/network/cf/ResourceRequestCFNet.cpp:
      * platform/network/mac/CookieStorageMac.mm:
      * platform/qt/PasteboardQt.cpp:
      * plugins/DOMMimeType.cpp:
      * plugins/PluginRequest.h: Removed.
      * plugins/PluginStream.h:
      (PluginStreamClient):
      (WebCore::PluginStreamClient::~PluginStreamClient):
      (WebCore::PluginStreamClient::streamDidFinishLoading):
      (WebCore):
      * plugins/PluginStreamClient.h: Removed.
      * plugins/PluginView.cpp:
      * plugins/PluginView.h:
      (WebCore):
      (PluginRequest):
      (WebCore::PluginRequest::PluginRequest):
      (WebCore::PluginRequest::frameLoadRequest):
      (WebCore::PluginRequest::notifyData):
      (WebCore::PluginRequest::sendNotification):
      (WebCore::PluginRequest::shouldAllowPopups):
      * rendering/HitTestResult.cpp:
      * rendering/InlineFlowBox.cpp:
      * rendering/RenderBox.cpp:
      * rendering/RenderEmbeddedObject.cpp:
      * rendering/RenderImage.cpp:
      * rendering/RenderImageResource.cpp:
      (WebCore::RenderImageResource::RenderImageResource):
      * rendering/RenderImageResource.h:
      (WebCore::RenderImageResource::image):
      (WebCore::RenderImageResource::errorOccurred):
      (WebCore::RenderImageResource::usesImageContainerSize):
      (WebCore::RenderImageResource::imageHasRelativeWidth):
      (WebCore::RenderImageResource::imageHasRelativeHeight):
      (WebCore::RenderImageResource::imageSize):
      * rendering/RenderImageResourceStyleImage.cpp:
      * rendering/RenderLayer.cpp:
      * rendering/RenderLayerBacking.cpp:
      * rendering/RenderLayerFilterInfo.h:
      * rendering/RenderListItem.cpp:
      * rendering/RenderListMarker.cpp:
      * rendering/RenderSnapshottedPlugIn.cpp:
      * rendering/RenderTableCol.cpp:
      * rendering/RenderTableRow.cpp:
      * rendering/RenderTableSection.cpp:
      * rendering/style/StyleCachedShader.h:
      * rendering/style/StyleCustomFilterProgram.cpp: Removed.
      * rendering/style/StyleCustomFilterProgram.h:
      (WebCore):
      (WebCore::StyleCustomFilterProgram::vertexShaderString):
      (StyleCustomFilterProgram):
      (WebCore::StyleCustomFilterProgram::fragmentShaderString):
      (WebCore::StyleCustomFilterProgram::isLoaded):
      (WebCore::StyleCustomFilterProgram::willHaveClients):
      (WebCore::StyleCustomFilterProgram::didRemoveLastClient):
      (WebCore::StyleCustomFilterProgram::notifyFinished):
      * svg/SVGFEImageElement.h:
      * svg/SVGFontFaceUriElement.h:
      (SVGFontFaceUriElement):
      * svg/SVGImageLoader.cpp:
      * svg/SVGUseElement.cpp:
      * svg/SVGUseElement.h:
      * svg/graphics/SVGImageCache.cpp:
      * testing/MockPagePopupDriver.cpp:
      * xml/XSLStyleSheet.h:
      * xml/XSLTProcessorLibxslt.cpp:
      * xml/parser/XMLDocumentParser.cpp:
      * xml/parser/XMLDocumentParser.h:
      * xml/parser/XMLDocumentParserLibxml2.cpp:
      
      Source/WebKit/chromium:
      
      * src/ApplicationCacheHost.cpp:
      * src/AssociatedURLLoader.cpp:
      * src/EditorClientImpl.cpp:
      * src/SharedWorkerRepository.cpp:
      * src/WebDataSourceImpl.cpp:
      * src/WebFrameImpl.h:
      (WebCore):
      * src/WebNode.cpp:
      * src/WebSharedWorkerImpl.cpp:
      * tests/FrameLoaderClientImplTest.cpp:
      
      Source/WebKit/efl:
      
      * WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
      * ewk/ewk_frame.cpp:
      
      Source/WebKit/gtk:
      
      * webkit/webkitwebpolicydecision.cpp:
      
      Source/WebKit/mac:
      
      * DOM/WebDOMOperations.mm:
      * Misc/WebNSPasteboardExtras.mm:
      * WebCoreSupport/WebFrameNetworkingContext.mm:
      * WebView/WebRenderLayer.mm:
      * WebView/WebRenderNode.mm:
      
      Source/WebKit/qt:
      
      * WebCoreSupport/NotificationPresenterClientQt.cpp:
      * WebCoreSupport/QWebPageAdapter.cpp:
      
      Source/WebKit2:
      
      * NetworkProcess/HostRecord.h:
      * NetworkProcess/NetworkResourceLoadScheduler.h:
      * NetworkProcess/NetworkResourceLoader.h:
      (WebCore):
      * Shared/WebRenderLayer.cpp:
      * Shared/WebRenderObject.cpp:
      * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
      * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
      * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
      * WebProcess/InjectedBundle/InjectedBundle.cpp:
      * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
      * WebProcess/Plugins/PDF/PDFPlugin.mm:
      * WebProcess/Plugins/PluginView.cpp:
      * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
      * WebProcess/WebCoreSupport/WebEditorClient.cpp:
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
      * WebProcess/WebPage/mac/WebPageMac.mm:
      * WebProcess/WebProcess.cpp:
      * WebProcess/soup/WebProcessSoup.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144446 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0b87a6c7
    • ap@apple.com's avatar
      Reduce amount of rebuilding when touching networking headers · b2f13721
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=111035
      
      Reviewed by Eric Seidel.
      
      Source/WebCore:
      
      This uses a number of common unsurprising techniques. One interesting observation
      is that including CachedResource related headers is very expensive. We can usually
      get away with their Client counterparts, and with CachedResourceHandle.
      
      * page/Frame.cpp:
      * page/Frame.h:
      Don't include FrameLoader, greatly reducing include graph for most non-loader files.
      This required making Frame::init() non-inline - I'm not sure why it ever was.
      
      * loader/FrameLoader.cpp:
      * loader/FrameLoader.h:
      Even though FrameLoader is logically on loading side of WebCore, it's included in
      too many places. Not including PolicyChecker.h and ResourceHandle.h was among the
      largest wins. As a future improvement, we should probably convert other members
      to OwnPtrs.
      
      * css/CSSCrossfadeValue.h: Initializing CachedResourceHandle with 0 requires a
      definition of a class it holds, but default construction does not.
      
      * loader/CrossOriginAccessControl.h: This file among others only needs ResourceHandleTypes.h,
      not ResourceHandle.h. This header is semi-recent, so not all include sites were updated.
      
      * loader/cache/CachedFont.h:
      * loader/cache/CachedFontClient.h: Added.
      * loader/cache/CachedRawResource.h:
      * loader/cache/CachedRawResourceClient.h: Added.
      * loader/cache/CachedSVGDocument.h:
      * loader/cache/CachedSVGDocumentClient.h: Added.
      These types were defining client types in the same headers, making it impossible
      to avoid including networking headers through CachedResource. Moved clients into
      separate files.
      
      * plugins/PluginStream.h:
      * plugins/PluginStreamClient.h: Added.
      Similar situation here.
      
      * loader/cache/CachedResourceHandle.cpp:
      * loader/cache/CachedResourceHandle.h:
      Moved functions that need to know about CachedResource to .cpp file. This is another
      huge win. Added a destructor, so that CachedResource woudn't be needed in all files
      that include CachedResourceHandle.
      
      * loader/cache/CachedSVGDocumentReference.cpp: Added.
      * loader/cache/CachedSVGDocumentReference.h:
      Moved constructor and virtual function implementations to a .cpp file - they need
      not inlining, and this lets us avoid including CachedSVGDocument.h in the header.
      
      * platform/graphics/filters/FilterOperation.cpp:
      * platform/graphics/filters/FilterOperation.h:
      Avoid including CachedSVGDocumentReference.h. This is not such a big win now that
      CachedSVGDocumentReference.h itself is smaller, but FilterOperation is so clearly
      rendering code that it seems best to cut any ties with resources and loading.
      Added a virtual destrutor in .cpp file, because inline destructors in polymorphic
      classes are generally harmful (due to code bloat).
      
      * plugins/PluginRequest.h: Added.
      * plugins/PluginView.h:
      Moved PluginRequest into a separate file, it was out of place in a view hierarchy
      class file.
      
      * rendering/RenderImageResource.cpp:
      * rendering/RenderImageResource.h:
      Moved definitions of virtual functions to a .cpp file. Thre is no win from having
      them inline, and now we don't need CachedImage.h in the header.
      
      * rendering/style/StyleCustomFilterProgram.cpp: Added.
      * rendering/style/StyleCustomFilterProgram.h:
      Ditto.
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Modules/mediastream/RTCPeerConnection.cpp:
      * Modules/notifications/Notification.cpp:
      * Target.pri:
      * WebCore.exp.in:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/ScriptControllerBase.cpp:
      * bindings/js/JSNodeCustom.cpp:
      * bindings/js/ScriptController.cpp:
      * bindings/js/ScriptSourceCode.h:
      * bindings/objc/DOM.mm:
      * bindings/v8/ScriptController.cpp:
      * bindings/v8/V8DOMWindowShell.cpp:
      * bindings/v8/custom/V8DOMWindowCustom.cpp:
      * css/CSSFontFaceSource.h:
      * css/CSSFontSelector.cpp:
      * css/WebKitCSSSVGDocumentValue.cpp:
      * css/WebKitCSSSVGDocumentValue.h:
      * dom/Clipboard.cpp:
      * dom/ContainerNode.cpp:
      * dom/DOMImplementation.cpp:
      * dom/PendingScript.h:
      * dom/ScriptElement.cpp:
      * dom/ScriptElement.h:
      * history/CachedFrame.cpp:
      * html/DOMURL.cpp:
      * html/HTMLAnchorElement.cpp:
      * html/HTMLAppletElement.cpp:
      * html/HTMLElement.cpp:
      * html/HTMLEmbedElement.cpp:
      * html/HTMLFrameSetElement.cpp:
      * html/HTMLHtmlElement.cpp:
      * html/HTMLImageElement.cpp:
      * html/HTMLObjectElement.cpp:
      * html/HTMLPlugInElement.cpp:
      * html/ImageDocument.cpp:
      * html/ImageInputType.cpp:
      * html/MediaDocument.cpp:
      * html/PluginDocument.cpp:
      * html/canvas/WebGLRenderingContext.cpp:
      * html/parser/HTMLConstructionSite.cpp:
      * html/parser/HTMLParserOptions.cpp:
      * html/parser/HTMLScriptRunner.h:
      * html/parser/XSSAuditor.cpp:
      * html/parser/XSSAuditorDelegate.cpp:
      * inspector/InspectorDebuggerAgent.cpp:
      * inspector/InspectorFileSystemAgent.cpp:
      * inspector/InspectorFrontendHost.cpp:
      * inspector/InspectorInstrumentation.h:
      * inspector/InspectorPageAgent.cpp:
      * inspector/NetworkResourcesData.cpp:
      * inspector/NetworkResourcesData.h:
      * loader/CookieJar.cpp:
      * loader/CrossOriginAccessControl.cpp:
      * loader/CrossOriginPreflightResultCache.h:
      * loader/DocumentThreadableLoader.h:
      * loader/ImageLoader.cpp:
      * loader/ImageLoader.h:
      * loader/LinkLoader.h:
      * loader/MainResourceLoader.cpp:
      * loader/MainResourceLoader.h:
      * loader/MixedContentChecker.cpp:
      * loader/PingLoader.cpp:
      * loader/PolicyChecker.h:
      * loader/ProgressTracker.cpp:
      * loader/SubframeLoader.cpp:
      * loader/SubresourceLoader.cpp:
      * loader/TextTrackLoader.cpp:
      * loader/TextTrackLoader.h:
      * loader/ThreadableLoader.h:
      * loader/appcache/ApplicationCacheGroup.cpp:
      * loader/appcache/ApplicationCacheGroup.h:
      * loader/appcache/ApplicationCacheHost.cpp:
      * loader/archive/cf/LegacyWebArchive.cpp:
      * loader/cache/CachedFont.cpp:
      * loader/cache/CachedImage.cpp:
      * loader/cache/CachedRawResource.cpp:
      * loader/cache/CachedResource.cpp:
      * loader/cache/CachedStyleSheetClient.h:
      * loader/cache/MemoryCache.cpp:
      * loader/cache/MemoryCache.h:
      * loader/chromium/CachedRawResourceChromium.cpp:
      * loader/icon/IconController.cpp:
      * loader/icon/IconLoader.h:
      * loader/mac/ResourceLoaderMac.mm:
      * page/DOMWindowExtension.cpp:
      * page/DragController.cpp:
      * page/PerformanceNavigation.cpp:
      * page/PerformanceTiming.cpp:
      * page/PointerLockController.cpp:
      * page/Settings.cpp:
      * page/animation/CSSPropertyAnimation.cpp:
      * platform/chromium/PasteboardChromium.cpp:
      * platform/efl/ErrorsEfl.cpp:
      * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
      * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
      * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
      * platform/gtk/ErrorsGtk.cpp:
      * platform/gtk/PasteboardGtk.cpp:
      * platform/gtk/PasteboardHelper.h:
      * platform/mac/ClipboardMac.h:
      * platform/mac/ClipboardMac.mm:
      * platform/mac/HTMLConverter.mm:
      * platform/mac/PasteboardMac.mm:
      * platform/network/AuthenticationChallengeBase.cpp:
      * platform/network/cf/CookieJarCFNet.cpp:
      * platform/network/cf/ResourceRequestCFNet.cpp:
      * platform/network/mac/CookieStorageMac.mm:
      * platform/qt/PasteboardQt.cpp:
      * plugins/DOMMimeType.cpp:
      * plugins/PluginView.cpp:
      * rendering/HitTestResult.cpp:
      * rendering/InlineFlowBox.cpp:
      * rendering/RenderBox.cpp:
      * rendering/RenderEmbeddedObject.cpp:
      * rendering/RenderImage.cpp:
      * rendering/RenderImageResourceStyleImage.cpp:
      * rendering/RenderLayer.cpp:
      * rendering/RenderLayerBacking.cpp:
      * rendering/RenderLayerFilterInfo.h:
      * rendering/RenderListItem.cpp:
      * rendering/RenderListMarker.cpp:
      * rendering/RenderSnapshottedPlugIn.cpp:
      * rendering/RenderTableCol.cpp:
      * rendering/RenderTableRow.cpp:
      * rendering/RenderTableSection.cpp:
      * rendering/style/StyleCachedShader.h:
      * svg/SVGFEImageElement.h:
      * svg/SVGFontFaceUriElement.h:
      * svg/SVGImageLoader.cpp:
      * svg/SVGUseElement.cpp:
      * svg/SVGUseElement.h:
      * svg/graphics/SVGImageCache.cpp:
      * testing/MockPagePopupDriver.cpp:
      * xml/XSLStyleSheet.h:
      * xml/XSLTProcessorLibxslt.cpp:
      * xml/parser/XMLDocumentParser.cpp:
      * xml/parser/XMLDocumentParser.h:
      * xml/parser/XMLDocumentParserLibxml2.cpp:
      Many self-evident changes - removing unnecessary header includes, adding smaller
      more local ones that are now necessary.
      
      Source/WebKit/chromium:
      
      Adding includes that are now necessary because WebCore headers don't have them
      any more.
      
      * src/ApplicationCacheHost.cpp:
      * src/AssociatedURLLoader.cpp:
      * src/EditorClientImpl.cpp:
      * src/SharedWorkerRepository.cpp:
      * src/WebDataSourceImpl.cpp:
      * src/WebFrameImpl.h:
      * src/WebNode.cpp:
      * src/WebSharedWorkerImpl.cpp:
      * tests/FrameLoaderClientImplTest.cpp:
      
      Source/WebKit/efl:
      
      Adding includes that are now necessary because WebCore headers don't have them
      any more.
      
      * WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
      * ewk/ewk_frame.cpp:
      
      Source/WebKit/gtk:
      
      Adding includes that are now necessary because WebCore headers don't have them
      any more.
      
      * webkit/webkitwebpolicydecision.cpp:
      
      Source/WebKit/mac:
      
      Adding includes that are now necessary because WebCore headers don't have them
      any more.
      
      * DOM/WebDOMOperations.mm:
      * Misc/WebNSPasteboardExtras.mm:
      * WebCoreSupport/WebFrameNetworkingContext.mm:
      * WebView/WebRenderLayer.mm:
      * WebView/WebRenderNode.mm:
      
      Source/WebKit/qt:
      
      Adding includes that are now necessary because WebCore headers don't have them
      any more.
      
      * WebCoreSupport/NotificationPresenterClientQt.cpp:
      * WebCoreSupport/QWebPageAdapter.cpp:
      
      Source/WebKit2:
      
      Adding includes that are now necessary because WebCore headers don't have them
      any more.
      
      * NetworkProcess/HostRecord.h:
      * NetworkProcess/NetworkResourceLoadScheduler.h:
      * NetworkProcess/NetworkResourceLoader.h:
      * Shared/WebRenderLayer.cpp:
      * Shared/WebRenderObject.cpp:
      * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
      * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
      * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
      * WebProcess/InjectedBundle/InjectedBundle.cpp:
      * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
      * WebProcess/Plugins/PDF/PDFPlugin.mm:
      * WebProcess/Plugins/PluginView.cpp:
      * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
      * WebProcess/WebCoreSupport/WebEditorClient.cpp:
      * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
      * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
      * WebProcess/WebPage/mac/WebPageMac.mm:
      * WebProcess/WebProcess.cpp:
      * WebProcess/soup/WebProcessSoup.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144422 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b2f13721
  7. 04 Jan, 2013 1 commit
  8. 03 Jan, 2013 1 commit
    • mitz@apple.com's avatar
      No way to obtain a DOMNode given a JS wrapper for a Node · 79076e69
      mitz@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=106033
      
      Source/WebCore: 
      
      Reviewed by Sam Weinig.
      
      Test: TestWebKitAPI/Tests/mac/DOMNodeFromJSObject.mm.
      
      * bindings/objc/DOM.mm:
      (+[DOMNode _nodeFromJSWrapper:]): Added. If the given JSObjectRef is a wrapper for a Node,
      returns the Objective-C wrapper for that node. Note that Objective-C wrappers are always
      for the main world, regardless of which world the given JS wrapper comes from.
      * bindings/objc/DOMPrivate.h: Added declaration of the above.
      
      Tools: 
      
      Added a test for +[DOMNode _nodeFromJSWrapper:].
      
      Reviewed by Sam Weinig.
      
      * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
      * TestWebKitAPI/Tests/mac/DOMNodeFromJSObject.mm: Added.
      (TestWebKitAPI):
      (TestWebKitAPI::TEST):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@138747 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      79076e69
  9. 23 Oct, 2012 1 commit
    • aestes@apple.com's avatar
      [WebKit2 API] Add properties to get textRects from a WKDOMRange or WKDOMNode · 5991ca5b
      aestes@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=100162
      
      Reviewed by Sam Weinig.
      
      Source/WebCore:
      
      * WebCore.exp.in: Exported symbols needed by WebKit2.
      * bindings/objc/DOM.mm:
      (-[DOMNode textRects]): Moved some logic into Node::textRects()
      (everything but the call to updateLayoutIgnorePendingStylesheets()).
      * dom/Node.cpp:
      (WebCore::Node::textRects):
      * dom/Node.h:
      
      Source/WebKit2:
      
      * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
      * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
      (WebKit::toNSArray): Added a helper function to convert a Vector of IntRects to an NSArray.
      * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
      * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
      (-[WKDOMNode textRects]):
      * WebProcess/InjectedBundle/API/mac/WKDOMRange.h:
      * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
      (-[WKDOMRange textRects]):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132282 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5991ca5b
  10. 22 Aug, 2012 1 commit
    • commit-queue@webkit.org's avatar
      Reduce Font.h includes across project -- improves RenderObject.h compile time · d0c076d4
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93629
      
      Patch by Nikhil Bhargava <nbhargava@google.com> on 2012-08-22
      Reviewed by Eric Seidel.
      
      Source/WebCore:
      
      RenderStyle.h no longer depends on Font.h. The files that transitively
      need to be updated with proper includes are fixed.
      
      No new tests. Functionality should remain the same.
      
      * accessibility/gtk/WebKitAccessibleInterfaceText.cpp:
      * accessibility/mac/WebAccessibilityObjectWrapper.mm:
      * bindings/objc/DOM.mm:
      * css/CSSComputedStyleDeclaration.cpp:
      * css/CSSPrimitiveValue.cpp:
      * css/StyleResolver.h:
      * dom/CharacterData.cpp:
      * dom/ElementRareData.h:
      * dom/NodeRenderingContext.cpp:
      * dom/Text.cpp:
      * editing/TextIterator.cpp:
      * editing/mac/EditorMac.mm:
      * html/HTMLTitleElement.cpp:
      * html/shadow/TextControlInnerElements.cpp:
      * inspector/InspectorOverlay.cpp:
      * page/ContextMenuController.cpp:
      * page/PrintContext.cpp:
      * platform/efl/RenderThemeEfl.cpp:
      * platform/graphics/FontMetrics.h:
      * platform/gtk/RenderThemeGtk.cpp:
      * platform/gtk/RenderThemeGtk2.cpp:
      * platform/mac/HTMLConverter.mm:
      * rendering/EllipsisBox.cpp:
      * rendering/FlowThreadController.cpp:
      * rendering/InlineBox.cpp:
      * rendering/InlineFlowBox.cpp:
      * rendering/InlineFlowBox.h:
      (WebCore):
      * rendering/RenderButton.cpp:
      * rendering/RenderCombineText.cpp:
      * rendering/RenderCombineText.h:
      * rendering/RenderDeprecatedFlexibleBox.cpp:
      * rendering/RenderEmbeddedObject.h:
      (WebCore):
      * rendering/RenderFileUploadControl.cpp:
      * rendering/RenderFullScreen.h:
      * rendering/RenderImage.cpp:
      * rendering/RenderInline.cpp:
      * rendering/RenderListItem.cpp:
      * rendering/RenderListMarker.cpp:
      * rendering/RenderMultiColumnBlock.cpp:
      * rendering/RenderRegion.h:
      * rendering/RenderRuby.cpp:
      * rendering/RenderRubyRun.cpp:
      * rendering/RenderScrollbar.cpp:
      * rendering/RenderTable.cpp:
      * rendering/RenderTableCell.cpp:
      * rendering/RenderTableRow.cpp:
      * rendering/RenderTableSection.cpp:
      * rendering/RenderTextControl.cpp:
      * rendering/RenderTextControlMultiLine.cpp:
      * rendering/RenderThemeChromiumSkia.cpp:
      * rendering/RenderView.cpp:
      * rendering/TextAutosizer.cpp:
      * rendering/mathml/RenderMathMLBlock.h:
      * rendering/style/KeyframeList.h:
      * rendering/style/RenderStyle.cpp:
      * rendering/style/RenderStyle.h:
      (WebCore):
      * rendering/style/StyleInheritedData.cpp:
      * rendering/svg/RenderSVGBlock.cpp:
      * rendering/svg/RenderSVGInlineText.h:
      * svg/SVGLengthContext.cpp:
      * svg/SVGTRefElement.cpp:
      
      Source/WebKit/chromium:
      
      Adds includes due to change in RenderStyle.h
      
      * src/WebFrameImpl.cpp:
      * src/mac/WebSubstringUtil.mm:
      
      Source/WebKit/win:
      
      Adds includes due to change in RenderStyle.h
      
      * DOMCoreClasses.cpp:
      
      Source/WebKit2:
      
      Adds includes due to change in RenderStyle.h
      
      * WebProcess/WebPage/mac/WebPageMac.mm:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126359 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d0c076d4
  11. 28 Mar, 2012 1 commit
    • commit-queue@webkit.org's avatar
      <http://webkit.org/b/82419> Web Inspector: Create -[DOMNode inspect] from IDL · a34ace4b
      commit-queue@webkit.org authored
      Source/WebCore:
      
      Instead of manually creating the method in DOM.mm we can specify it in
      Node.idl and autogenerate part of the interface.
      
      Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-03-28
      Reviewed by Timothy Hatcher.
      
      * bindings/objc/DOM.mm:
      * bindings/objc/DOMPrivate.h:
      Move the call to InspectorController::inspect from here ...
      
      * dom/Node.h:
      * dom/Node.idl: IDL only in an ObjC block.
      * dom/Node.cpp:
      (WebCore::Node::inspect):
      ... to here.
      
      * WebCore.xcodeproj/project.pbxproj:
      Add the new generated file so we can Copy it in the build phase.
      
      Source/WebKit/mac:
      
      Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-03-28
      Reviewed by Timothy Hatcher.
      
      * MigrateHeaders.make: Copy DOMNodePrivate.h to PrivateHeaders.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@112424 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a34ace4b
  12. 27 Mar, 2012 1 commit
  13. 03 Mar, 2012 1 commit
    • andersca@apple.com's avatar
      Fix build with newer versions of clang. · 43578ad3
      andersca@apple.com authored
      Source/WebCore:
      
      * bindings/objc/DOM.mm:
      (-[DOMNode description]):
      Remove an unused parameter.
      
      * bridge/objc/objc_instance.mm:
      (ObjcInstance::getClass):
      Use object_getClass instead of accessing isa directly.
      
      * platform/LocalizedStrings.cpp:
      (WebCore::formatLocalizedString):
      Disable the -Wformat-nonliteral warning around the call to CFStringCreateWithFormatAndArguments.
      
      * platform/graphics/mac/WebLayer.mm:
      (-[CALayer _descriptionWithPrefix:]):
      Use %p for the CALayer pointer, and use %lu for the number of sublayers.
      
      * platform/mac/HTMLConverter.mm:
      (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
      Cast the NSAttachmentCharacte enum to unichar.
      
      Source/WebKit/mac:
      
      * Panels/WebAuthenticationPanel.m:
      (-[WebAuthenticationPanel setUpForChallenge:]):
      Use %ld and cast to long.
      
      * Plugins/WebNetscapePluginView.mm:
      (-[WebNetscapePluginView getVariable:value:]):
      Cast the switch parameter to unsigned to prevent warnings about case values not being part of the enum type.
      
      Source/WebKit2:
      
      * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
      (WebKit::NPN_GetValue):
      Cast the switch parameter to unsigned to prevent warnings about case values not being part of the enum type.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@109663 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      43578ad3
  14. 14 Feb, 2012 2 commits
    • hayato@chromium.org's avatar
      Make ShadowRoot.nodeType return DOCUMENT_FRAGMENT_NODE. · 14993e0b
      hayato@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=77514
      
      Reviewed by Dimitri Glazkov.
      
      NodeType.SHADOW_ROOT_NODE type is finally gone.
      
      Source/WebCore:
      
      * bindings/js/JSNodeCustom.cpp:
      (WebCore::createWrapperInline):
      * bindings/objc/DOM.mm:
      (kitClass):
      * bindings/v8/custom/V8NodeCustom.cpp:
      (WebCore::toV8Slow):
      * dom/ContainerNode.cpp:
      (WebCore::collectTargetNodes):
      (WebCore::ContainerNode::replaceChild):
      * dom/Document.cpp:
      (WebCore::Document::importNode):
      (WebCore::Document::childTypeAllowed):
      (WebCore::Document::canReplaceChild):
      * dom/Node.cpp:
      (WebCore::Node::dumpStatistics):
      (WebCore::Node::isDefaultNamespace):
      (WebCore::Node::lookupPrefix):
      (WebCore::Node::lookupNamespaceURI):
      (WebCore::appendTextContent):
      (WebCore::Node::setTextContent):
      * dom/Node.h:
      * dom/Range.cpp:
      (WebCore::lengthOfContentsInNode):
      (WebCore::Range::processContentsBetweenOffsets):
      (WebCore::Range::insertNode):
      (WebCore::Range::checkNodeWOffset):
      (WebCore::Range::checkNodeBA):
      (WebCore::Range::selectNode):
      (WebCore::Range::selectNodeContents):
      (WebCore::Range::surroundContents):
      * dom/ShadowRoot.cpp:
      * dom/ShadowRoot.h:
      (ShadowRoot):
      (WebCore::toShadowRoot):
      * editing/FrameSelection.cpp:
      (WebCore::nodeIsDetachedFromDocument):
      (WebCore):
      (WebCore::FrameSelection::textWillBeReplaced):
      * editing/MarkupAccumulator.cpp:
      (WebCore::MarkupAccumulator::appendStartMarkup):
      * html/parser/HTMLElementStack.cpp:
      (WebCore::HTMLNames::isRootNode):
      (WebCore::HTMLElementStack::pushRootNode):
      * html/parser/HTMLElementStack.h:
      (WebCore::isInHTMLNamespace):
      * inspector/InspectorDOMAgent.cpp:
      (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
      (WebCore::InspectorDOMAgent::buildObjectForNode):
      * xml/XPathUtil.cpp:
      (WebCore::XPath::isValidContextNode):
      
      Source/WebKit/chromium:
      
      * src/WebPageSerializerImpl.cpp:
      (WebKit::WebPageSerializerImpl::buildContentForNode):
      
      LayoutTests:
      
      * fast/dom/shadow/nodetype-expected.txt:
      * fast/dom/shadow/nodetype.html:
      * resources/dump-as-markup.js:
      (Markup._get):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@107700 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      14993e0b
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r107661. · c38205f7
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/107661
      https://bugs.webkit.org/show_bug.cgi?id=78591
      
      crash on lion/qt bots (Requested by hayato on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-02-14
      
      Source/WebCore:
      
      * bindings/js/JSNodeCustom.cpp:
      (WebCore::createWrapperInline):
      * bindings/objc/DOM.mm:
      (kitClass):
      * bindings/v8/custom/V8NodeCustom.cpp:
      (WebCore::toV8Slow):
      * dom/ContainerNode.cpp:
      (WebCore::collectTargetNodes):
      (WebCore::ContainerNode::replaceChild):
      * dom/Document.cpp:
      (WebCore::Document::importNode):
      (WebCore::Document::childTypeAllowed):
      (WebCore::Document::canReplaceChild):
      * dom/Node.cpp:
      (WebCore::Node::dumpStatistics):
      (WebCore::Node::isDefaultNamespace):
      (WebCore::Node::lookupPrefix):
      (WebCore::Node::lookupNamespaceURI):
      (WebCore::appendTextContent):
      (WebCore::Node::setTextContent):
      * dom/Node.h:
      * dom/Range.cpp:
      (WebCore::lengthOfContentsInNode):
      (WebCore::Range::processContentsBetweenOffsets):
      (WebCore::Range::insertNode):
      (WebCore::Range::checkNodeWOffset):
      (WebCore::Range::checkNodeBA):
      (WebCore::Range::selectNode):
      (WebCore::Range::selectNodeContents):
      (WebCore::Range::surroundContents):
      * dom/ShadowRoot.cpp:
      (WebCore::ShadowRoot::nodeType):
      (WebCore):
      * dom/ShadowRoot.h:
      (ShadowRoot):
      (WebCore::toShadowRoot):
      * editing/FrameSelection.cpp:
      (WebCore::FrameSelection::textWillBeReplaced):
      * editing/MarkupAccumulator.cpp:
      (WebCore::MarkupAccumulator::appendStartMarkup):
      * html/parser/HTMLElementStack.cpp:
      (WebCore::HTMLNames::isRootNode):
      (WebCore::HTMLElementStack::pushRootNode):
      * html/parser/HTMLElementStack.h:
      (WebCore::isInHTMLNamespace):
      * inspector/InspectorDOMAgent.cpp:
      (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
      (WebCore::InspectorDOMAgent::buildObjectForNode):
      * xml/XPathUtil.cpp:
      (WebCore::XPath::isValidContextNode):
      
      Source/WebKit/chromium:
      
      * src/WebPageSerializerImpl.cpp:
      (WebKit::WebPageSerializerImpl::buildContentForNode):
      
      LayoutTests:
      
      * fast/dom/shadow/nodetype-expected.txt:
      * fast/dom/shadow/nodetype.html:
      * resources/dump-as-markup.js:
      (Markup._get):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@107691 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c38205f7
  15. 13 Feb, 2012 1 commit
    • hayato@chromium.org's avatar
      Make ShadowRoot.nodeType return DOCUMENT_FRAGMENT_NODE. · 99e95281
      hayato@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=77514
      
      Reviewed by Dimitri Glazkov.
      
      NodeType.SHADOW_ROOT_NODE type is finally gone.
      
      Source/WebCore:
      
      * bindings/js/JSNodeCustom.cpp:
      (WebCore::createWrapperInline):
      * bindings/objc/DOM.mm:
      (kitClass):
      * bindings/v8/custom/V8NodeCustom.cpp:
      (WebCore::toV8Slow):
      * dom/ContainerNode.cpp:
      (WebCore::collectTargetNodes):
      (WebCore::ContainerNode::replaceChild):
      * dom/Document.cpp:
      (WebCore::Document::importNode):
      (WebCore::Document::childTypeAllowed):
      (WebCore::Document::canReplaceChild):
      * dom/Node.cpp:
      (WebCore::Node::dumpStatistics):
      (WebCore::Node::isDefaultNamespace):
      (WebCore::Node::lookupPrefix):
      (WebCore::Node::lookupNamespaceURI):
      (WebCore::appendTextContent):
      (WebCore::Node::setTextContent):
      * dom/Node.h:
      * dom/Range.cpp:
      (WebCore::lengthOfContentsInNode):
      (WebCore::Range::processContentsBetweenOffsets):
      (WebCore::Range::insertNode):
      (WebCore::Range::checkNodeWOffset):
      (WebCore::Range::checkNodeBA):
      (WebCore::Range::selectNode):
      (WebCore::Range::selectNodeContents):
      (WebCore::Range::surroundContents):
      * dom/ShadowRoot.cpp:
      * dom/ShadowRoot.h:
      (ShadowRoot):
      (WebCore::toShadowRoot):
      * editing/FrameSelection.cpp:
      (WebCore::nodeIsDetachedFromDocument):
      (WebCore):
      (WebCore::FrameSelection::textWillBeReplaced):
      * editing/MarkupAccumulator.cpp:
      (WebCore::MarkupAccumulator::appendStartMarkup):
      * html/parser/HTMLElementStack.cpp:
      (WebCore::HTMLNames::isRootNode):
      (WebCore::HTMLElementStack::pushRootNode):
      * html/parser/HTMLElementStack.h:
      (WebCore::isInHTMLNamespace):
      * inspector/InspectorDOMAgent.cpp:
      (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
      (WebCore::InspectorDOMAgent::buildObjectForNode):
      * xml/XPathUtil.cpp:
      (WebCore::XPath::isValidContextNode):
      
      Source/WebKit/chromium:
      
      * src/WebPageSerializerImpl.cpp:
      (WebKit::WebPageSerializerImpl::buildContentForNode):
      
      LayoutTests:
      
      * fast/dom/shadow/nodetype-expected.txt:
      * fast/dom/shadow/nodetype.html:
      * resources/dump-as-markup.js:
      (Markup._get):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@107661 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      99e95281
  16. 31 Jan, 2012 1 commit
    • eric@webkit.org's avatar
      HTMLIsIndexElement should not expose HTMLInputElement properties · c00f0a0c
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=76095
      
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      document.createElement("isindex") should produce an HTMLUnknownElement
      per the HTML5 spec.  The parser automagically translates <isindex> into
      a whole dom tree roughly representing what <isindex> used to do 15 years ago. :)
      
      This patch just removes our support for HTMLIsIndexElement.  The parser
      support was already in.  Having support for HTMLIsIndexElement was causing
      one of the IE TestCenter tests to fail.
      
      Test: fast/dom/HTMLIsIndexElement/prototype-chain.html
      
      * DerivedSources.cpp:
      * DerivedSources.make:
      * DerivedSources.pri:
      * GNUmakefile.list.am:
      * Target.pri:
      * WebCore.exp.in:
      * WebCore.gypi:
      * WebCore.order:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/gobject/GNUmakefile.am:
      * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
      (WebKit::createHTMLElementWrapper):
      * bindings/objc/DOM.mm:
      (WebCore::createElementClassMap):
      * bindings/objc/DOMHTML.h:
      * bindings/objc/PublicDOMInterfaces.h:
      * html/HTMLElementsAllInOne.cpp:
      * html/HTMLIsIndexElement.cpp: Removed.
      * html/HTMLIsIndexElement.h: Removed.
      * html/HTMLIsIndexElement.idl: Removed.
      * html/HTMLTagNames.in:
      * page/DOMWindow.idl:
      
      Source/WebKit/mac:
      
      * MigrateHeaders.make:
      
      LayoutTests:
      
      * fast/dom/HTMLIsIndexElement/prototype-chain-expected.txt: Added.
      * fast/dom/HTMLIsIndexElement/prototype-chain.html: Added.
      * fast/dom/HTMLIsIndexElement/script-tests/prototype-chain.js: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@106373 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c00f0a0c
  17. 02 Nov, 2011 1 commit
    • mitz@apple.com's avatar
      <rdar://problem/10336700> Add API to get rendered text image without having to select it · ea2b2379
      mitz@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=71407
      
      Reviewed by Simon Fraser.
      
      Source/WebCore: 
      
      Test: TestWebKitAPI/Tests/mac/RenderedImageFromDOMRange.mm
      
      * bindings/objc/DOM.mm:
      (-[DOMRange renderedImageForcingBlackText:]): Added.
      * bindings/objc/DOMPrivate.h:
      * page/Frame.h:
      * page/mac/FrameMac.mm:
      (WebCore::Frame::rangeImage): Added. Sets the selection in the RenderView (only) based on the
      given range and gets a selection-only rendering of the view, then restores the selection.
      * rendering/RenderView.cpp:
      (WebCore::RenderView::setSelection): Skip all invalidation if the repaint behavior is RepaintNothing.
      (WebCore::RenderView::getSelection): Added this getter.
      * rendering/RenderView.h:
      
      Tools: 
      
      * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
      * TestWebKitAPI/Tests/mac/RenderedImageFromDOMRange.mm: Added.
      (-[RenderedImageFromDOMRangeFrameLoadDelegate webView:didFinishLoadForFrame:]):
      (TestWebKitAPI::TEST):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@99099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ea2b2379
  18. 25 Oct, 2011 1 commit
    • abarth@webkit.org's avatar
      EventTarget.h shouldn't need to know about every feature and ifdef · 8233b467
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=70659
      
      Reviewed by Darin Adler.
      
      Source/WebCore: 
      
      This patch follows the approach of Event.h and introduces an
      interfaceName virtual function that returns the name of the DOM
      interface for the concrete type of the object.  This function lets us
      remove a large number of fake dynamic casts.
      
      * CMakeLists.txt:
      * CodeGenerators.pri:
      * DerivedSources.make:
      * GNUmakefile.am:
      * WebCore.gyp/WebCore.gyp:
      * WebCore.gyp/scripts/action_makenames.py:
          - Teach action_makenames how to handle the new "in" file.
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/js/JSEventTarget.cpp:
      (WebCore::toJS):
          - Use the new autogenerated macro to remove a large amount of
            feature-specific code.
      * bindings/js/WorkerScriptController.cpp:
      (WebCore::WorkerScriptController::initScript):
      * bindings/objc/DOM.mm:
      (kit):
          - The SVGElementInstance branch was never taken previously because
            SVGElementInstance::toNode returns a non-NULL value. This code
            was introduced in http://trac.webkit.org/changeset/42618 and
            doesn't appear to have ever worked as the author intended.
      * bindings/v8/V8DOMWrapper.cpp:
      (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
          - Use the new autogenerated macro to remove a large amount of
            feature-specific code.
      * dom/EventNames.cpp:
      (WebCore::EventNames::EventNames):
      * dom/EventNames.h:
      * dom/EventTarget.cpp:
      * dom/EventTarget.h:
      * dom/EventTargetFactory.in: Added.
          - Add a new "in" file that lists all the EventTargets.
      * dom/LocalMediaStream.cpp:
      (WebCore::LocalMediaStream::interfaceName):
      * dom/LocalMediaStream.h:
      * dom/MediaStream.cpp:
      (WebCore::MediaStream::interfaceName):
      * dom/MediaStream.h:
      * dom/MessagePort.cpp:
      (WebCore::MessagePort::interfaceName):
      * dom/MessagePort.h:
      * dom/Node.cpp:
      (WebCore::Node::toNode):
      (WebCore::Node::interfaceName):
      * dom/Node.h:
      * dom/make_event_factory.pl:
          - Generalize make_event_factory.pl to be able to generate
            interfaces for different namespaces.
      * fileapi/FileReader.cpp:
      (WebCore::FileReader::interfaceName):
      * fileapi/FileReader.h:
      * fileapi/FileWriter.cpp:
      (WebCore::FileWriter::interfaceName):
      * fileapi/FileWriter.h:
      * loader/appcache/DOMApplicationCache.cpp:
      (WebCore::DOMApplicationCache::interfaceName):
      * loader/appcache/DOMApplicationCache.h:
      * notifications/Notification.cpp:
      (WebCore::Notification::interfaceName):
      * notifications/Notification.h:
      (WebCore::Notification::scriptExecutionContext):
      * p2p/PeerConnection.cpp:
      (WebCore::PeerConnection::interfaceName):
      * p2p/PeerConnection.h:
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::interfaceName):
      (WebCore::DOMWindow::toDOMWindow):
      * page/DOMWindow.h:
      * page/EventSource.cpp:
      (WebCore::EventSource::interfaceName):
      * page/EventSource.h:
      * storage/IDBDatabase.cpp:
      (WebCore::IDBDatabase::interfaceName):
      * storage/IDBDatabase.h:
      * storage/IDBRequest.cpp:
      (WebCore::IDBRequest::interfaceName):
      * storage/IDBRequest.h:
      * storage/IDBTransaction.cpp:
      (WebCore::IDBTransaction::interfaceName):
      * storage/IDBTransaction.h:
      * storage/IDBVersionChangeRequest.cpp:
      (WebCore::IDBVersionChangeRequest::interfaceName):
      * storage/IDBVersionChangeRequest.h:
      * svg/SVGElementInstance.cpp:
      (WebCore::SVGElementInstance::interfaceName):
      * svg/SVGElementInstance.h:
      (WebCore::SVGElementInstance::toNode):
      * webaudio/AudioContext.cpp:
      (WebCore::AudioContext::interfaceName):
      (WebCore::AudioContext::scriptExecutionContext):
      * webaudio/AudioContext.h:
      * webaudio/JavaScriptAudioNode.cpp:
      (WebCore::JavaScriptAudioNode::interfaceName):
      * webaudio/JavaScriptAudioNode.h:
      * websockets/WebSocket.cpp:
      (WebCore::WebSocket::interfaceName):
      * websockets/WebSocket.h:
      * workers/DedicatedWorkerContext.cpp:
      (WebCore::DedicatedWorkerContext::interfaceName):
      * workers/DedicatedWorkerContext.h:
      * workers/DefaultSharedWorkerRepository.cpp:
      (WebCore::SharedWorkerConnectTask::performTask):
      * workers/SharedWorker.cpp:
      (WebCore::SharedWorker::interfaceName):
      * workers/SharedWorker.h:
      * workers/SharedWorkerContext.cpp:
      (WebCore::SharedWorkerContext::interfaceName):
      * workers/SharedWorkerContext.h:
      * workers/Worker.cpp:
      (WebCore::Worker::interfaceName):
      * workers/Worker.h:
      * xml/XMLHttpRequest.cpp:
      (WebCore::XMLHttpRequest::interfaceName):
      * xml/XMLHttpRequest.h:
      * xml/XMLHttpRequestUpload.cpp:
      (WebCore::XMLHttpRequestUpload::interfaceName):
      * xml/XMLHttpRequestUpload.h:
      
      Source/WebKit/chromium: 
      
      This cast isn't needed because dispatchEvent is a virtual function.
      
      * src/WebSharedWorkerImpl.cpp:
      (WebKit::WebSharedWorkerImpl::connectTask):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@98388 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8233b467
  19. 14 Oct, 2011 1 commit
    • zimmermann@webkit.org's avatar
      2011-10-13 Nikolas Zimmermann <nzimmermann@rim.com> · 8cf217f7
      zimmermann@webkit.org authored
              Prepare SVGImage intrinsic size negotiation: Introduce an IntSize <-> SVGImage cache in CachedImage
              https://bugs.webkit.org/show_bug.cgi?id=69416
      
              Reviewed by Antti Koivisto.
      
              Refactor ImageBySizeCache out of CSSImageGeneratorValue as CachedImage wants to use the same type of cache for its purposes.
              When introducing the SVGImage intrinsic size negotiation the container size of an SVGImage is dependant on the place where
              it gets embedded (eg width/height attributes of host documents <img> force a certain size).
      
              Currently CachedImage only contains a single RefPtr<Image>, which it constructs out of the decoded data.
              Multiple RenderObjects share the same CachedImages, when embedding eg. a SVG document in a <html:img> or using it in a background-image for a <div>.
              Consider the case where two RenderObjects use the same CachedImage, each with a different container size (200x100 vs 100x200) and the embedded
              document contains a viewBox and some arbitary preserveAspectRatio settings. To honour these we have to relayout the document with the desired
              size (percentual unit resolving etc, all depend on the RenderSVGRoots size).
      
              With the current design this is hard to realize, w/o requring to relayout the embedded document for each embedder that uses an SVGImage.
              This patch introduces a cache right within CachedImage, which manages a map of images to certain sizes, by utilizing the new ImageBySizeCache.
      
              CachedImage::imageForRenderer() takes a RenderObject* parameter, which it uses to look up the last set image container size for a renderer.
              Using that size it queries the cache whether it already has an SVGImage for that size, if not it gets created, by creating a whole
              new instance of SVGImage, filling it with the already decoded data, and passing on a fixed image container size, which overrides the
              size that RenderSVGRoot reports, when computeReplacedLogicalWidth/Height is called and thus laying out the document at the desired size.
              This image is then put in the cache for further reusability.
      
              Likewise CachedImage::setContainerSizeForRenderer() now takes a RenderObject* parameter and stores that in the cache with an associated container size.
              It requires to touch several files which use CachedImage throughout WebCore/WebKit/WebKit2.
      
              The actual cache is not yet turned on yet, so this is not a functional change so far, as it needs some other changes to SVGImage,
              which will come with the master patch in bug 47156.
      
              No new tests yet, as the new cache isn't turned on yet.
      
              * CMakeLists.txt: Add rendering/ImageBySizeCache.* to build.
              * GNUmakefile.list.am: Ditto.
              * WebCore.gypi: Ditto.
              * WebCore.pro: Ditto.
              * WebCore.vcproj/WebCore.vcproj: Ditto.
              * WebCore.xcodeproj/project.pbxproj: Ditto.
              * accessibility/AccessibilityRenderObject.cpp:
              (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): Use new CachedImage::imageSizeForRenderer(RenderObject*) method.
              * bindings/objc/DOM.mm: Ditto (for CachedImage::image()).
              (-[DOMElement image]):
              (-[DOMElement _imageTIFFRepresentation]):
              * bridge/qt/qt_pixmapruntime.cpp:
              (JSC::Bindings::QtPixmapInstance::variantFromObject): Ditto (for CachedImage::image()).
              * css/CSSCanvasValue.cpp: s/m_clients/clients()/, which now live in the ImageBySizeCache instead of CSSImageGeneratorValue.
              (WebCore::CSSCanvasValue::canvasChanged):
              (WebCore::CSSCanvasValue::canvasResized):
              (WebCore::CSSCanvasValue::image):
              * css/CSSGradientValue.cpp: Ditto.
              (WebCore::CSSGradientValue::image):
              * css/CSSImageGeneratorValue.cpp: Move the sizes/clients/images cache into a new ImageBySizeCache class, to make it usable for CachedImage as well.
              (WebCore::CSSImageGeneratorValue::addClient): Adapt to move.
              (WebCore::CSSImageGeneratorValue::removeClient): Ditto.
              (WebCore::CSSImageGeneratorValue::getImage): Ditto.
              (WebCore::CSSImageGeneratorValue::putImage): Ditto.
              * css/CSSImageGeneratorValue.h:
              (WebCore::CSSImageGeneratorValue::clients): Forwarded to the ImageBySizeCache.
              * editing/DeleteButtonController.cpp: 
              (WebCore::isDeletableElement): CachedImage::canRender() now takes a RenderObject* parameter.
              * html/HTMLImageElement.cpp:
              (WebCore::HTMLImageElement::width): Use new CachedImage::imageSizeForRenderer(RenderObject*) method.
              (WebCore::HTMLImageElement::height): Ditto.
              (WebCore::HTMLImageElement::naturalWidth): Ditto.
              (WebCore::HTMLImageElement::naturalHeight): Ditto.
              * html/ImageDocument.cpp:
              (WebCore::ImageDocumentParser::finish): Ditto.
              (WebCore::ImageDocument::scale): Ditto.
              (WebCore::ImageDocument::resizeImageToFit): Ditto.
              (WebCore::ImageDocument::imageUpdated): Ditto.
              (WebCore::ImageDocument::restoreImageSize): Ditto.
              (WebCore::ImageDocument::imageFitsInWindow): Ditto.
              * html/canvas/CanvasRenderingContext.cpp:
              (WebCore::CanvasRenderingContext::wouldTaintOrigin): Use new CachedImage::imageForRenderer(RenderObject*) method.
              * html/canvas/CanvasRenderingContext2D.cpp:
              (WebCore::isOriginClean): Ditto.
              (WebCore::size): Ditto (for CachedImage::imageSizeForRenderer()).
              (WebCore::CanvasRenderingContext2D::drawImage): Ditto.
              (WebCore::CanvasRenderingContext2D::createPattern): Ditto.
              * html/canvas/WebGLRenderingContext.cpp:
              (WebCore::WebGLRenderingContext::texImage2D): Ditto.
              (WebCore::WebGLRenderingContext::texSubImage2D): Ditto.
              * loader/cache/CachedImage.cpp: Add currently _disabled_ cache for SVGImages. The intrinsic size negotiation will need to use multiple SVGImages
              for each requested size (equal to the size of the embedding place for the image) - make it possible to cache these SVGImages, and maintain a cache
              for them. The hash code is a 1:1 refactoring from the already present code in CSSImageGeneratorValue, now named 'ImageBySizeCache'.
              (WebCore::CachedImage::lookupImageForSize): Looks up an Image from the cache for a given IntSize. Currently turned off.
              (WebCore::CachedImage::lookupImageForRenderer): Looks up an Image from the cache for a given renderer. Currently turned off.
              (WebCore::CachedImage::lookupOrCreateImageForRenderer): Looks up an Image from the cache or creates a new SVGImage for a given size and caches it, if possible. Currently turned off.
              All following changes share this: Don't operate on m_image directly, instead always look up one from the cache for a given size or renderer - if that's not present fallback to m_image.
              When an SVGImage is first created by CachedImage::createImage() and stored in m_image, the cache remains empty.
      
              If eg. <img width="30" height="70" src="foo.svg"> is used which implies a container size of 30x70 a new SVGImage is created with the additional information of a 30x70 container size
              which is immediately passed to the SVGImage after its creation. This SVGImage is put in the ImageBySizeCache associated with a container size of 30x70.
              We now have two SVGImage objects present, one living in CachedImage::m_image, created by createImage() during data decoding, and one living in the ImageBySizeCache
              created by lookupOrCreateImageForRenderer() associated with the 30x70 container. The first SVGImage::size() will return a value as defined in the referenced foo.svg,
              whereas the SVGImage::size() call of the new SVGImage living in the cache reports 30x70 and renders according to that.
      
              Whenever any method of CachedImage is called with a RenderObject* or IntSize, we can't just operate on m_image anymore but instead have to lookup the right
              images for a certain renderer/size from the cache and operate on these. When calling eg. CachedImage::image() with a null renderer, m_image is returned.
              When passing with a valid renderer only cache lookups are done if the m_image is actually a SVGImage, otherwhise lookupImageForSize/Renderer will just return the m_image.
              There is no logical change induced for non-SVGImage derived images.
      
              CachedImage::image() of course needs a RenderObject* parameter now, to identify which of the images from the cache to use, if the underlying image is a SVGImage.
              Luckily these information are already present in StyleCachedImage/StyleImage & friends and only need to be added for some additional methods.
              (WebCore::CachedImage::image): FIXME
              (WebCore::CachedImage::imageForRenderer): Call lookupOrCreateImageForRenderer() instead of returning m_image, if it's not null. Its a no-op for non SVGImage derived objects.
              (WebCore::CachedImage::setContainerSizeForRenderer): For non-SVGImages, just pass on the size to the m_image. For SVGImages, associate the passed in renderer with the IntSize in the cache.
                                                                   This does NOT create the SVGImage yet, this is delayed until imageForRenderer() is called for a given renderer that wants this size.
              (WebCore::CachedImage::imageSize): Don't operate on m_image, ask lookupImageForRenderer() with the incoming renderer.
              (WebCore::CachedImage::imageRect): Ditto.
              (WebCore::CachedImage::clear): Force clearing the m_svgImageCache.
              (WebCore::CachedImage::data): Call m_image->size() instead of imageSize(), to avoid having to pass a null renderer to imageSize() as here no renderer is available yet.
              (WebCore::CachedImage::destroyDecodedData): Don't destroy decoded data for SVG images, as m_data needs to be accessable at any time to construct a cloned SVGImage.
                                                          In future we don't need this anymore if we make sure multiple SVGImages share the same trees, but that's for a follow-up patch.
              (WebCore::CachedImage::decodedSizeChanged): Don't operate on m_image, ask lookupImageForRenderer() with the incoming renderer.
              (WebCore::CachedImage::didDraw): Ditto.
              (WebCore::CachedImage::shouldPauseAnimation): Ditto.
              (WebCore::CachedImage::animationAdvanced): Ditto.
              (WebCore::CachedImage::changedInRect): Ditto. (eg. when leaving out this change animated SVG images wouldn't update anymore, as the animation didn't happen on m_image!)
              * loader/cache/CachedImage.h: imageForRenderer/canRender/setContainerSizeForRenderer/imageSizeForRenderer now all take a RenderObject* parameter to identifiy the current user of the image.
              (WebCore::CachedImage::canRender): Pass on the incoming renderer to imageSizeForRenderer().
              * page/DragController.cpp:
              (WebCore::getImage): Use new CachedImage::imageForRenderer(RenderObject*) method.
              * page/EventHandler.cpp:
              (WebCore::EventHandler::selectCursor): Ditto.
              * page/PageSerializer.cpp:
              (WebCore::PageSerializer::serializeFrame): Ditto.
              (WebCore::PageSerializer::addImageToResources): Ditto.
              (WebCore::PageSerializer::retrieveResourcesForCSSDeclaration): Ditto.
              * page/PageSerializer.h:
              * platform/chromium/ClipboardChromium.cpp:
              (WebCore::writeImageToDataObject): Ditto.
              * platform/chromium/PasteboardChromium.cpp:
              (WebCore::Pasteboard::writeImage): Ditto.
              * platform/graphics/Image.h:
              (WebCore::Image::isSVGImage): Add boolean helper to identify SVGImages, just like isBitmapImage().
              * platform/gtk/ClipboardGtk.cpp:
              (WebCore::ClipboardGtk::declareAndWriteDragImage): Use new CachedImage::imageForRenderer(RenderObject*) method.
              * platform/gtk/PasteboardGtk.cpp:
              (WebCore::Pasteboard::writeImage): Ditto.
              * platform/mac/HTMLConverter.mm:
              (fileWrapperForElement): Ditto.
              * platform/mac/PasteboardMac.mm:
              (WebCore::Pasteboard::writeImage): Ditto.
              * platform/qt/ClipboardQt.cpp:
              (WebCore::ClipboardQt::declareAndWriteDragImage): Ditto.
              * platform/qt/PasteboardQt.cpp:
              (WebCore::Pasteboard::writeImage): Ditto.
              * platform/win/ClipboardWin.cpp:
              (WebCore::writeImageToDataObject): Ditto.
              * platform/win/PasteboardWin.cpp:
              (WebCore::Pasteboard::writeImage): Ditto.
              * platform/wince/PasteboardWinCE.cpp:
              (WebCore::Pasteboard::writeImage): Ditto.
              * rendering/HitTestResult.cpp:
              (WebCore::HitTestResult::image): Ditto.
              * rendering/ImageBySizeCache.cpp: Copied from WebCore/css/CSSImageGeneratorValue.cpp, to preserve history for the original cache code.
              (WebCore::ImageBySizeCache::ImageBySizeCache): Straight copy from CSSImageGeneratorValue, renamed to ImageBySizeCache, removing all but the cache relevant code.
              (WebCore::ImageBySizeCache::addClient): Ditto.
              (WebCore::ImageBySizeCache::removeClient): Ditto.
              (WebCore::ImageBySizeCache::getImage): Ditto.
              (WebCore::ImageBySizeCache::putImage): Ditto.
              (WebCore::ImageBySizeCache::clear): New function, that clears the cache, introduced for the needs of CachedImage.
              (WebCore::ImageBySizeCache::imageForSize): New function to query an Image* for a given IntSize, introduced for the needs of CachedImage.
              (WebCore::ImageBySizeCache::sizeForClient): New function to query an IntSize for a given renderer.
              * rendering/ImageBySizeCache.h: Copied from WebCore/css/CSSImageGeneratorValue.h.
              (WebCore::ImageBySizeCache::clients):
              * rendering/InlineFlowBox.cpp:
              (WebCore::InlineFlowBox::paintFillLayer): CachedImage::canRender() now takes a RenderObject* parameter.
              (WebCore::InlineFlowBox::paintBoxDecorations): Ditto.
              (WebCore::InlineFlowBox::paintMask): Ditto.
              * rendering/RenderBox.cpp:
              (WebCore::RenderBox::paintMaskImages): Ditto.
              (WebCore::RenderBox::repaintLayerRectsForImage): Ditto.
              * rendering/RenderBoxModelObject.cpp:
              (WebCore::RenderBoxModelObject::paintFillLayerExtended): Ditto.
              (WebCore::RenderBoxModelObject::calculateFillTileSize): Ditto (for CachedImage::setContainerSizeForRenderer()).
              (WebCore::RenderBoxModelObject::paintNinePieceImage): Ditto.
              * rendering/RenderImage.cpp:
              (WebCore::RenderImage::imageSizeForError): Use new CachedImage::imageForRenderer(RenderObject*) method.
              (WebCore::RenderImage::setImageSizeForAltText): Ditto.
              (WebCore::RenderImage::computeReplacedLogicalWidth): FIXME
              * rendering/RenderImageResource.cpp:
              (WebCore::RenderImageResource::setContainerSizeForRenderer): Pass on m_renderer to CachedImage::setContainerSizeForRenderer().
              * rendering/RenderImageResource.h: Remove constness from setContainerSizeForRenderer.
              (WebCore::RenderImageResource::image): Pass on m_renderer to CachedImage::image().
              (WebCore::RenderImageResource::imageSize): Pass on m_renderer to CachedImage::imageSizeForRenderer().
              * rendering/RenderImageResourceStyleImage.h:
              (WebCore::RenderImageResourceStyleImage::setContainerSizeForRenderer): Remove constness, pass on m_renderer to StyleImage::setContainerSizeForRenderer().
              * rendering/RenderLayerBacking.cpp:
              (WebCore::RenderLayerBacking::isDirectlyCompositedImage): Use new CachedImage::imageForRenderer(RenderObject*) method.
              (WebCore::RenderLayerBacking::updateImageContents): Ditto.
              * rendering/RenderListMarker.cpp:
              (WebCore::RenderListMarker::computePreferredLogicalWidths): CachedImage::setContainerSizeForRenderer() now takes a RenderObject* parameter.
              * rendering/RenderObject.cpp:
              (WebCore::mustRepaintFillLayers): CachedImage::canRender() now takes a RenderObject* parameter.
              (WebCore::RenderObject::borderImageIsLoadedAndCanBeRendered): Ditto.
              * rendering/style/StyleCachedImage.cpp:
              (WebCore::StyleCachedImage::canRender): Pass on incoming renderer to CachedImage::canRender().
              (WebCore::StyleCachedImage::imageSize): Pass on incoming renderer to CachedImage::imageSizeForRenderer().
              (WebCore::StyleCachedImage::setContainerSizeForRenderer): Pass on incoming renderer to CachedImage::setContainerSizeForRenderer().
              (WebCore::StyleCachedImage::addClient): Remove unneeded return statment in void method.
              (WebCore::StyleCachedImage::removeClient): Ditto.
              (WebCore::StyleCachedImage::image): Pass on incoming renderer to CachedImage::image().
              * rendering/style/StyleCachedImage.h: Add RenderObject* parameter to canRender()/setContainerSizeForRenderer(). image() already has one, that was unused so far.
              * rendering/style/StyleGeneratedImage.cpp: Inlined setContainerSizeForRenderer.
              * rendering/style/StyleGeneratedImage.h: 
              (WebCore::StyleGeneratedImage::setContainerSizeForRenderer): Add RenderObject* parameter.
              * rendering/style/StyleImage.h:
              (WebCore::StyleImage::canRender): Ditto.
              * rendering/style/StylePendingImage.h:
              (WebCore::StylePendingImage::setContainerSizeForRenderer): Ditto.
              * svg/SVGFEImageElement.cpp:
              (WebCore::SVGFEImageElement::build): Use new CachedImage::imageForRenderer(RenderObject*) method.
              * svg/graphics/SVGImage.cpp: Cleanup file, the include hack seems not needed anymore.
              (WebCore::SVGImage::setContainerSize): s/LayoutSize/IntSize/ to match the code in platform/.
              * svg/graphics/SVGImage.h: Ditto.
              (WebCore::SVGImage::isSVGImage): Return true.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@97448 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8cf217f7
  20. 15 Sep, 2011 1 commit
    • eric@webkit.org's avatar
      Remove ENABLE_SVG_ANIMATION as all major ports have it on by default · bb92e948
      eric@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=68022
      
      Reviewed by Ryosuke Niwa.
      
      .:
      
      * Source/cmake/OptionsEfl.cmake:
      * Source/cmake/OptionsWinCE.cmake:
      * Source/cmakeconfig.h.cmake:
      * configure.ac:
      
      Source/JavaScriptCore:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      * Configurations/FeatureDefines.xcconfig:
      * DerivedSources.make:
      * GNUmakefile.am:
      * features.pri:
      * page/DOMWindow.idl:
      * svg/svgtags.in:
      
      Source/WebKit/chromium:
      
      * features.gypi:
      
      Source/WebKit/mac:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/FeatureDefines.xcconfig:
      
      Tools:
      
      * Scripts/build-webkit:
      * waf/build/settings.py:
      
      WebKitLibraries:
      
      * win/tools/vsprops/FeatureDefines.vsprops:
      * win/tools/vsprops/FeatureDefinesCairo.vsprops:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95216 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bb92e948
  21. 19 Jul, 2011 1 commit
    • leo.yang@torchmobile.com.cn's avatar
      SVG: Missing implementation of <altGlyphDef>, <altGlyphItem> and <glyphRef> · 4e9a267a
      leo.yang@torchmobile.com.cn authored
      https://bugs.webkit.org/show_bug.cgi?id=60850
      
      Reviewed by Nikolas Zimmermann.
      
      SVG spec: http://www.w3.org/TR/SVG/text.html#AlternateGlyphDefinitions.
      This patch is to implement SVG <altGlyphDef>, <altGlyphItem> and <glyphRef>
      elements for alternative glyph features.
      
      Source/WebCore: 
      
      NOTE: x, y, dx, dy, format and glyphRef attributes on <glyphRef> are not
      honored yet, so neither are the reaction of dynamic change of them. They
      will be honored in separated patches.
      
      Test: svg/W3C-SVG-1.1/text-altglyph-01-b.svg
      With this patch this test works as expected.
      
      * CMakeLists.txt:
      * CodeGenerators.pri:
      * DerivedSources.cpp:
      * DerivedSources.make:
      * GNUmakefile.list.am:
      * WebCore.exp.in:
      * WebCore.gypi:
      * WebCore.pro:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/objc/DOM.mm:
      (WebCore::createElementClassMap):
      * bindings/objc/DOMSVG.h:
      * page/DOMWindow.idl:
      * svg/SVGAllInOne.cpp:
      * svg/SVGAltGlyphDefElement.cpp: Added.
      (WebCore::SVGAltGlyphDefElement::SVGAltGlyphDefElement):
      (WebCore::SVGAltGlyphDefElement::create):
      (WebCore::SVGAltGlyphDefElement::hasValidGlyphElements):
      * svg/SVGAltGlyphDefElement.h: Added.
      * svg/SVGAltGlyphDefElement.idl: Added.
      * svg/SVGAltGlyphElement.cpp:
      (WebCore::SVGAltGlyphElement::hasValidGlyphElements):
      * svg/SVGAltGlyphElement.h:
      * svg/SVGAltGlyphItemElement.cpp: Added.
      (WebCore::SVGAltGlyphItemElement::SVGAltGlyphItemElement):
      (WebCore::SVGAltGlyphItemElement::create):
      (WebCore::SVGAltGlyphItemElement::hasValidGlyphElements):
      * svg/SVGAltGlyphItemElement.h: Added.
      * svg/SVGAltGlyphItemElement.idl: Added.
      * svg/SVGFontData.cpp:
      (WebCore::SVGFontData::applySVGGlyphSelection):
      * svg/SVGGlyphRefElement.cpp: Added.
      (WebCore::SVGGlyphRefElement::SVGGlyphRefElement):
      (WebCore::SVGGlyphRefElement::create):
      (WebCore::SVGGlyphRefElement::hasValidGlyphElement):
      (WebCore::SVGGlyphRefElement::parseMappedAttribute):
      (WebCore::SVGGlyphRefElement::glyphRef):
      (WebCore::SVGGlyphRefElement::setGlyphRef):
      (WebCore::SVGGlyphRefElement::setX):
      (WebCore::SVGGlyphRefElement::setY):
      (WebCore::SVGGlyphRefElement::setDx):
      (WebCore::SVGGlyphRefElement::setDy):
      * svg/SVGGlyphRefElement.h: Added.
      * svg/SVGGlyphRefElement.idl: Added.
      * svg/svgtags.in:
      
      Source/WebKit/mac: 
      
      * MigrateHeaders.make:
      
      LayoutTests: 
      
      Updated test expectation.
      
      * platform/chromium-linux/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@91331 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4e9a267a
  22. 10 May, 2011 1 commit
  23. 21 Apr, 2011 2 commits
    • krit@webkit.org's avatar
      2011-04-21 Dirk Schulze <krit@webkit.org> · c08f88a4
      krit@webkit.org authored
              Reviewed by Nikolas Zimmermann.
      
              SVG feDropShadow implementation of SVG Filters 1.2
              https://bugs.webkit.org/show_bug.cgi?id=52513
      
              Added dynamic update tests for FEDropShadow as well as a basic pixel test.
      
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.png: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.checksum: Added.
              * platform/mac/svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.png: Added.
              * platform/mac/svg/filters/feDropShadow-expected.checksum: Added.
              * platform/mac/svg/filters/feDropShadow-expected.png: Added.
              * platform/mac/svg/filters/feDropShadow-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.html: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop-expected.txt: Added.
              * svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop.html: Added.
              * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html:
              * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html:
              * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html:
              * svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html:
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-dx-attr.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-dy-attr.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-in-attr.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-shadow-color-attr.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-shadow-opacity-attr.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-dom-stdDeviation-attr.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-dx-prop.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-dy-prop.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-in-prop.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-shadow-color-prop.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.js: Added.
              (executeTest):
              * svg/dynamic-updates/script-tests/SVGFEDropShadowElement-svgdom-stdDeviation-prop.js: Added.
              (executeTest):
              * svg/filters/feDropShadow.svg: Added.
      2011-04-21  Dirk Schulze  <krit@webkit.org>
      
              Reviewed by Nikolas Zimmermann.
      
              SVG feDropShadow implementation of SVG Filters 1.2
              https://bugs.webkit.org/show_bug.cgi?id=52513
      
              * MigrateHeaders.make:
      2011-04-21  Dirk Schulze  <krit@webkit.org>
      
              Reviewed by Nikolas Zimmermann.
      
              SVG feDropShadow implementation of SVG Filters 1.2
              https://bugs.webkit.org/show_bug.cgi?id=52513
      
              This is the implementation of feDropShadow, a shorthand filter and a combination of feGaussianBlur,
              feOffset, feFlood and feComposite to create a drop shadow of an input effect.
              Creating this new filter effect makes it possible to optimize the often used workflow. ShadowBlur, with its
              fast blurring algorithm, is used to blur the shadow and composite operators are responsible for combining the
              source with different colored shadows.
              Shadow color and opacity can be set with the properties flood-color and flood-opacity.
      
              Tests: svg/dynamic-updates/SVGFEDropShadowElement-dom-dx-attr.html
                     svg/dynamic-updates/SVGFEDropShadowElement-dom-dy-attr.html
                     svg/dynamic-updates/SVGFEDropShadowElement-dom-in-attr.html
                     svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-color-attr.html
                     svg/dynamic-updates/SVGFEDropShadowElement-dom-shadow-opacity-attr.html
                     svg/dynamic-updates/SVGFEDropShadowElement-dom-stdDeviation-attr.html
                     svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dx-prop.html
                     svg/dynamic-updates/SVGFEDropShadowElement-svgdom-dy-prop.html
                     svg/dynamic-updates/SVGFEDropShadowElement-svgdom-in-prop.html
                     svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-color-prop.html
                     svg/dynamic-updates/SVGFEDropShadowElement-svgdom-shadow-opacity-prop.html
                     svg/dynamic-updates/SVGFEDropShadowElement-svgdom-stdDeviation-prop.html
                     svg/filters/feDropShadow.svg
      
              * Android.mk:
              * CMakeLists.txt:
              * DerivedSources.cpp:
              * DerivedSources.make:
              * GNUmakefile.list.am:
              * WebCore.exp.in:
              * WebCore.gypi:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/objc/DOM.mm:
              (WebCore::createElementClassMap):
              * bindings/objc/DOMSVG.h:
              * page/DOMWindow.idl:
              * platform/graphics/ShadowBlur.cpp: Added missing copyright after r84410.
              * platform/graphics/ShadowBlur.h: Made blurLayerImage public.
              * platform/graphics/filters/FEDropShadow.cpp: Added.
              (WebCore::FEDropShadow::FEDropShadow):
              (WebCore::FEDropShadow::create):
              (WebCore::FEDropShadow::determineAbsolutePaintRect):
              (WebCore::FEDropShadow::apply):
              (WebCore::FEDropShadow::dump):
              (WebCore::FEDropShadow::externalRepresentation):
              * platform/graphics/filters/FEDropShadow.h: Added.
              (WebCore::FEDropShadow::stdDeviationX):
              (WebCore::FEDropShadow::setStdDeviationX):
              (WebCore::FEDropShadow::stdDeviationY):
              (WebCore::FEDropShadow::setStdDeviationY):
              (WebCore::FEDropShadow::dx):
              (WebCore::FEDropShadow::setDx):
              (WebCore::FEDropShadow::dy):
              (WebCore::FEDropShadow::setDy):
              (WebCore::FEDropShadow::shadowColor):
              (WebCore::FEDropShadow::setShadowColor):
              (WebCore::FEDropShadow::shadowOpacity):
              (WebCore::FEDropShadow::setShadowOpacity):
              * platform/graphics/filters/FEGaussianBlur.cpp:
              (WebCore::FEGaussianBlur::calculateKernelSize): Make kernel calculations accessible for feDropShadow.
              * platform/graphics/filters/FEGaussianBlur.h:
              * svg/SVGAllInOne.cpp:
              * svg/SVGFEDropShadowElement.cpp: Added.
              (WebCore::SVGFEDropShadowElement::SVGFEDropShadowElement):
              (WebCore::SVGFEDropShadowElement::create):
              (WebCore::SVGFEDropShadowElement::stdDeviationXIdentifier):
              (WebCore::SVGFEDropShadowElement::stdDeviationYIdentifier):
              (WebCore::SVGFEDropShadowElement::setStdDeviation):
              (WebCore::SVGFEDropShadowElement::parseMappedAttribute):
              (WebCore::SVGFEDropShadowElement::svgAttributeChanged):
              (WebCore::SVGFEDropShadowElement::synchronizeProperty):
              (WebCore::SVGFEDropShadowElement::build):
              * svg/SVGFEDropShadowElement.h: Added.
              * svg/SVGFEDropShadowElement.idl: Added.
              * svg/svgtags.in:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84522 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c08f88a4
    • rolandsteiner@chromium.org's avatar
      2011-04-20 Roland Steiner <rolandsteiner@chromium.org> · 6d944b84
      rolandsteiner@chromium.org authored
              Reviewed by Dimitri Glazkov.
      
              Bug 58704 - Decide on node type for ShadowRoot
              https://bugs.webkit.org/show_bug.cgi?id=58704
      
              Test node types of shadow host, shadow root and first shadow child.
      
              * fast/dom/shadow/nodetype-expected.txt: Added.
              * fast/dom/shadow/nodetype.html: Added.
      2011-04-21  Roland Steiner  <rolandsteiner@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              Bug 58704 - Decide on node type for ShadowRoot
              https://bugs.webkit.org/show_bug.cgi?id=58704
      
              Add a new node type SHADOW_ROOT_NODE.
              Adapt all calling sites of nodeType().
      
              Test: fast/dom/shadow/nodetype.html
      
              * bindings/js/JSNodeCustom.cpp:
              (WebCore::createWrapperInline):
              * bindings/objc/DOM.mm:
              (kitClass):
              * bindings/v8/custom/V8NodeCustom.cpp:
              (WebCore::toV8Slow):
              * dom/Document.cpp:
              (WebCore::Document::importNode):
              (WebCore::Document::childTypeAllowed):
              (WebCore::Document::canReplaceChild):
              * dom/Node.cpp:
              (WebCore::Node::dumpStatistics):
              (WebCore::Node::isDefaultNamespace):
              (WebCore::Node::lookupPrefix):
              (WebCore::Node::lookupNamespaceURI):
              (WebCore::appendTextContent):
              (WebCore::Node::setTextContent):
              * dom/Node.h:
              * dom/Range.cpp:
              (WebCore::lengthOfContentsInNode):
              (WebCore::Range::processContentsBetweenOffsets):
              (WebCore::Range::insertNode):
              (WebCore::Range::checkNodeWOffset):
              (WebCore::Range::checkNodeBA):
              (WebCore::Range::selectNode):
              (WebCore::Range::selectNodeContents):
              (WebCore::Range::surroundContents):
              * dom/ShadowRoot.cpp:
              (WebCore::ShadowRoot::nodeType):
              * dom/Traversal.cpp:
              (WebCore::Traversal::acceptNode):
              * editing/MarkupAccumulator.cpp:
              (WebCore::MarkupAccumulator::appendStartMarkup):
              * html/parser/HTMLElementStack.cpp:
              (WebCore::HTMLNames::isRootNode):
              (WebCore::HTMLElementStack::pushRootNode):
              * html/parser/HTMLElementStack.h:
              (WebCore::isInHTMLNamespace):
              * xml/XPathUtil.cpp:
              (WebCore::XPath::isValidContextNode):
      2011-04-21  Roland Steiner  <rolandsteiner@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              Bug 58704 - Decide on node type for ShadowRoot
              https://bugs.webkit.org/show_bug.cgi?id=58704
      
              Add a new enum entry to WebNode::NodeType for shadow roots.
              Adapt calling sites for new SHADOW_ROOT_NODE node type.
      
              * public/WebNode.h:
              * src/WebPageSerializerImpl.cpp:
              (WebKit::WebPageSerializerImpl::buildContentForNode):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84520 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6d944b84
  24. 19 Jan, 2011 1 commit
    • tkent@chromium.org's avatar
      2011-01-19 Dominic Cooney <dominicc@google.com> · 8c57bf5d
      tkent@chromium.org authored
              Reviewed by Kent Tamura.
      
              Make <keygen> no longer appear to be a <select> element to script.
              https://bugs.webkit.org/show_bug.cgi?id=52557
      
              The intent is to put <keygen> options into shadow DOM. This change
              takes the first step by hiding the <select> element from
              JavaScript.
      
              Test: fast/dom/HTMLKeygenElement/keygen.html
      
              * CMakeLists.txt: Adds new IDL-derived wrapper.
              * DerivedSources.cpp:
              * DerivedSources.make:
              * GNUmakefile.am:
              * WebCore.gypi:
              * WebCore.pri:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/gobject/GNUmakefile.am:
              * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
              (WebKit::createKeygenWrapper):
              (WebKit::createHTMLElementWrapper):
              * bindings/objc/DOM.mm:
              (WebCore::createElementClassMap): Keygen no longer DOMHTMLSelectElement
              * html/HTMLKeygenElement.h:
              (WebCore::HTMLKeygenElement::willValidate): Now public.
              * html/HTMLKeygenElement.idl: Added.
              * html/HTMLTagNames.in: Keygen's wrapper is HTMLKeygenElement.
              * page/DOMWindow.idl: Add HTMLKeygenElement constructor.
      
      2011-01-19  Dominic Cooney  <dominicc@google.com>
      
              Reviewed by Kent Tamura.
      
              Make <keygen> no longer appear to be a <select> element to script.
      
              https://bugs.webkit.org/show_bug.cgi?id=52557
      
              * fast/dom/HTMLKeygenElement/keygen-expected.txt: Added.
              * fast/dom/HTMLKeygenElement/keygen-option-select-expected.txt: Removed.
              * fast/dom/HTMLKeygenElement/keygen-option-select.html: Removed.
              * fast/dom/HTMLKeygenElement/keygen.html: Added.
              * fast/dom/Window/window-properties-expected.txt:
              * fast/dom/Window/window-property-descriptors-expected.txt:
              * fast/dom/prototype-inheritance-2-expected.txt:
              * fast/dom/prototype-inheritance-expected.txt:
              * fast/dom/wrapper-classes-expected.txt:
              * fast/dom/wrapper-classes.html:
              * fast/js/global-constructors-expected.txt:
              * platform/mac/fast/dom/wrapper-classes-objc-expected.txt:
              * platform/mac/fast/dom/wrapper-classes-objc.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76208 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8c57bf5d
  25. 08 Jan, 2011 1 commit
  26. 30 Sep, 2010 1 commit
    • darin@apple.com's avatar
      2010-09-30 Darin Adler <darin@apple.com> · 7b7981bb
      darin@apple.com authored
              Reviewed by Sam Weinig.
      
              Remove remaining calls to deprecatedParseURL
              https://bugs.webkit.org/show_bug.cgi?id=26599
      
              * WebCoreSupport/WebFrameLoaderClient.cpp:
              (WebFrameLoaderClient::dispatchDidFailToStartPlugin):
              Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
      2010-09-30  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam Weinig.
      
              Remove remaining calls to deprecatedParseURL
              https://bugs.webkit.org/show_bug.cgi?id=26599
      
              * DOM/WebDOMOperations.mm:
              (-[DOMDocument URLWithAttributeString:]):
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (WebFrameLoaderClient::createPlugin):
              Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
      2010-09-30  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam Weinig.
      
              Remove remaining calls to deprecatedParseURL
              https://bugs.webkit.org/show_bug.cgi?id=26599
      
              Test: fast/replaced/object-param-spaces.html
      
              * css/CSSHelper.cpp: Removed.
              * css/CSSHelper.h: Removed deprecatedParseURL.
      
              * html/parser/HTMLParserIdioms.cpp:
              (WebCore::stripLeadingAndTrailingHTMLSpaces):
              Fixed bug where the function would turn the null string into the empty string.
              Fixed bug where the function would not strip all trailing spaces.
      
              * html/parser/CSSPreloadScanner.cpp:
              (WebCore::CSSPreloadScanner::CSSPreloadScanner): Initialize m_state
              instead of calling the reset function.
              (WebCore::CSSPreloadScanner::scan): Tweaked coding style.
              (WebCore::CSSPreloadScanner::tokenize): Use isHTMLSpace instead of
              an identical local function named isWhitespace.
              (WebCore::parseCSSStringOrURL): Added. This function does what
              deprecatedParseURL did before, and this is the only place in WebKit
              that needs it. The code implements the rules for a string or URL
              token. The real CSS parser does this with flex and the code to hook
              flex up to yacc, so the function is not needed there.
              (WebCore::CSSPreloadScanner::emitRule): Streamlined the code a bit
              and mae it call parseCSSStringOrURL.
      
              * bindings/generic/BindingSecurity.h:
              (WebCore::::allowSettingFrameSrcToJavascriptUrl):
              * bindings/js/JSDOMBinding.cpp:
              (WebCore::allowSettingSrcToJavascriptURL):
              * bindings/js/JSHTMLFrameElementCustom.cpp:
              (WebCore::allowSettingJavascriptURL):
              * bindings/objc/DOM.mm:
              (-[DOMElement _getURLAttribute:]):
              * bindings/objc/DOMHTML.mm:
              (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
              * dom/Document.cpp:
              (WebCore::Document::processBaseElement):
              * dom/Element.cpp:
              (WebCore::isAttributeToRemove):
              (WebCore::Element::getURLAttribute):
              (WebCore::Element::getNonEmptyURLAttribute):
              * html/HTMLAnchorElement.cpp:
              (WebCore::HTMLAnchorElement::defaultEventHandler):
              (WebCore::HTMLAnchorElement::parseMappedAttribute):
              (WebCore::HTMLAnchorElement::href):
              * html/HTMLBodyElement.cpp:
              (WebCore::HTMLBodyElement::parseMappedAttribute):
              * html/HTMLEmbedElement.cpp:
              (WebCore::HTMLEmbedElement::parseMappedAttribute):
              * html/HTMLFrameElementBase.cpp:
              (WebCore::HTMLFrameElementBase::parseMappedAttribute):
              * html/HTMLImageElement.cpp:
              (WebCore::HTMLImageElement::parseMappedAttribute):
              * html/HTMLImageLoader.cpp:
              (WebCore::HTMLImageLoader::sourceURI):
              * html/HTMLLinkElement.cpp:
              (WebCore::HTMLLinkElement::parseMappedAttribute):
              * html/HTMLMediaElement.cpp:
              * html/HTMLObjectElement.cpp:
              (WebCore::HTMLObjectElement::parseMappedAttribute):
              (WebCore::HTMLObjectElement::parametersForPlugin):
              * html/HTMLTableElement.cpp:
              (WebCore::HTMLTableElement::parseMappedAttribute):
              * html/HTMLTablePartElement.cpp:
              (WebCore::HTMLTablePartElement::parseMappedAttribute):
              * html/parser/HTMLPreloadScanner.cpp:
              (WebCore::HTMLNames::PreloadTask::setUrlToLoad):
              * loader/FormSubmission.cpp:
              (WebCore::FormSubmission::Attributes::parseAction):
              * platform/chromium/ClipboardChromium.cpp:
              (WebCore::ClipboardChromium::declareAndWriteDragImage):
              * platform/chromium/PasteboardChromium.cpp:
              (WebCore::Pasteboard::writeImage):
              * platform/qt/ClipboardQt.cpp:
              (WebCore::ClipboardQt::declareAndWriteDragImage):
              * platform/win/ClipboardWin.cpp:
              (WebCore::ClipboardWin::declareAndWriteDragImage):
              * rendering/HitTestResult.cpp:
              (WebCore::HitTestResult::absoluteImageURL):
              (WebCore::HitTestResult::absoluteMediaURL):
              (WebCore::HitTestResult::absoluteLinkURL):
              * svg/SVGAElement.cpp:
              (WebCore::SVGAElement::defaultEventHandler):
              * svg/SVGImageLoader.cpp:
              (WebCore::SVGImageLoader::sourceURI):
              * wml/WMLAElement.cpp:
              (WebCore::WMLAElement::defaultEventHandler):
              * wml/WMLImageLoader.cpp:
              (WebCore::WMLImageLoader::sourceURI):
              Call stripLeadingAndTrailingHTMLSpaces instead of deprecatedParseURL.
      
              * WebCore.exp.in: Updated.
      
              * Android.mk: Removed CSSHelper.cpp.
              * CMakeLists.txt: Ditto.
              * GNUmakefile.am: Ditto.
              * WebCore.gypi: Ditto.
              * WebCore.pro: Ditto.
              * WebCore.vcproj/WebCore.vcproj: Ditto.
              * WebCore.xcodeproj/project.pbxproj: Ditto.
      
              * bindings/js/JSAttrCustom.cpp:
              * bindings/js/JSElementCustom.cpp:
              * bindings/v8/custom/V8ElementCustom.cpp:
              * bindings/v8/custom/V8LocationCustom.cpp:
              * css/CSSParser.cpp:
              * html/HTMLMediaElement.cpp:
              * html/HTMLVideoElement.cpp:
              * loader/ImageLoader.cpp:
              * rendering/style/RenderStyle.h:
              Removed unneeded include of CSSHelper.h.
      2010-09-30  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam Weinig.
      
              Remove remaining calls to deprecatedParseURL
              https://bugs.webkit.org/show_bug.cgi?id=26599
      
              * fast/replaced/object-param-spaces-expected.txt: Copied from
              LayoutTests/fast/replaced/object-param-url-control-char-expected.txt.
              * fast/replaced/object-param-spaces.html: Copied from
              LayoutTests/fast/replaced/object-param-url-control-char.html.
              * fast/replaced/object-param-url-control-char-expected.txt: Removed.
              * fast/replaced/object-param-url-control-char.html: Removed.
              Changed this test to expect HTML standard space trimming, but not the WebKit-only
              control character stripping we had historically.
      
              * fast/url/query-expected.txt: Updated to expect the test to pass.
      
              * fast/url/script-tests/segments-from-data-url.js: Changed expected result to not
              expect stripping of newline characters.
              * fast/url/script-tests/segments.js: Ditto.
              * fast/url/segments-expected.txt: Updated results.
              * fast/url/segments-from-data-url-expected.txt: Ditto.
      
              * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt:
              * http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt:
              These tests had multiple test cases with embedded control characters. These URLs no
              longer qualify as javascript URLs, so there are no longer any unsafe JavaScript log
              messages for them. The test cases themselves need not be changed at this time.
      
              * http/tests/security/xssAuditor/embed-tag-control-char-expected.txt:
              * http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt:
              Updated expected results to reflect the fact that the control character is no longer
              stripped from the URL in these cases. The test is still valid, but these are not as
              interesting test cases any more since control characters do not have special handling.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@68854 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7b7981bb
  27. 24 Aug, 2010 1 commit
    • commit-queue@webkit.org's avatar
      2010-08-24 Daniel Cheng <dcheng@chromium.org> · 14df318e
      commit-queue@webkit.org authored
              Reviewed by Eric Seidel.
      
              [chromium] Generate drag images for HTML elements and selections.
              https://bugs.webkit.org/show_bug.cgi?id=43449
      
              We weren't properly generating drag images if an HTML element was set
              as the drag feedback image. I also implemented dragImageForSelection
              while I was working on this part of the code.
      
              No new tests.
      
              * WebCore.exp.in:
              * bindings/objc/DOM.mm:
              (-[DOMNode renderedImage]):
              * page/Frame.h:
              * page/brew/FrameBrew.cpp:
              (WebCore::Frame::nodeImage):
              * page/chromium/FrameChromium.cpp:
              (WebCore::):
              (WebCore::Frame::nodeImage):
              (WebCore::Frame::dragImageForSelection):
              * page/efl/FrameEfl.cpp:
              (WebCore::Frame::nodeImage):
              * page/gtk/FrameGtk.cpp:
              (WebCore::Frame::nodeImage):
              * page/haiku/FrameHaiku.cpp:
              (WebCore::Frame::nodeImage):
              * page/mac/FrameMac.mm:
              (WebCore::Frame::nodeImage):
              (WebCore::Frame::dragImageForSelection):
              * page/qt/FrameQt.cpp:
              (WebCore::Frame::nodeImage):
              (WebCore::Frame::dragImageForSelection):
              * page/win/FrameCGWin.cpp:
              (WebCore::Frame::nodeImage):
              * page/win/FrameCairoWin.cpp:
              (WebCore::Frame::nodeImage):
              * page/wince/FrameWince.cpp:
              (WebCore::Frame::nodeImage):
              * page/wx/FrameWx.cpp:
              (WebCore::Frame::nodeImage):
              * platform/chromium/ClipboardChromium.cpp:
              (WebCore::ClipboardChromium::createDragImage):
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::selectionForegroundColor):
      2010-08-24  Daniel Cheng  <dcheng@chromium.org>
      
              Reviewed by Eric Seidel.
      
              [chromium] Generate drag images for HTML elements and selections.
              https://bugs.webkit.org/show_bug.cgi?id=43449
      
              Fix up calls to Frame::nodeImage, which has a new signature.
      
              * Plugins/WebBaseNetscapePluginView.mm:
              (-[WebBaseNetscapePluginView halt]):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65904 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      14df318e
  28. 29 Jun, 2010 1 commit
    • zherczeg@webkit.org's avatar
      WebCore: Add ConvolveMatrix SVG filter effect · e4b0f76a
      zherczeg@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=5861
      
      Reviewed by Nikolas Zimmermann.
      
      The patch was originally started by Dirk Schulze,
      and the .cpp and .h files are mostly his work.
      I updated the build systems and do some minor updates
      to the source files as well. The patch does not contain
      the implementation of the filter: this is intended,
      and will be landed in a follow-up patch.
      
      * Android.derived.jscbindings.mk:
      * Android.derived.v8bindings.mk:
      * Android.mk:
      * CMakeLists.txt:
      * DerivedSources.cpp:
      * DerivedSources.make:
      * GNUmakefile.am:
      * WebCore.gypi:
      * WebCore.pri:
      * WebCore.pro:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/objc/DOM.mm:
      (WebCore::createElementClassMap):
      * bindings/objc/DOMSVG.h:
      * page/DOMWindow.idl:
      * svg/SVGAllInOne.cpp:
      * svg/SVGFEConvolveMatrixElement.cpp: Added.
      (WebCore::SVGFEConvolveMatrixElement::SVGFEConvolveMatrixElement):
      (WebCore::SVGFEConvolveMatrixElement::~SVGFEConvolveMatrixElement):
      (WebCore::SVGFEConvolveMatrixElement::parseMappedAttribute):
      (WebCore::SVGFEConvolveMatrixElement::setOrder):
      (WebCore::SVGFEConvolveMatrixElement::setKernelUnitLength):
      (WebCore::SVGFEConvolveMatrixElement::build):
      * svg/SVGFEConvolveMatrixElement.h: Added.
      * svg/SVGFEConvolveMatrixElement.idl: Added.
      * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
      (WebCore::FEConvolveMatrix::FEConvolveMatrix):
      (WebCore::FEConvolveMatrix::create):
      (WebCore::FEConvolveMatrix::kernelSize):
      (WebCore::FEConvolveMatrix::setKernelSize):
      (WebCore::FEConvolveMatrix::targetOffset):
      (WebCore::FEConvolveMatrix::setTargetOffset):
      (WebCore::operator<<):
      (WebCore::FEConvolveMatrix::externalRepresentation):
      * svg/graphics/filters/SVGFEConvolveMatrix.h:
      (WebCore::):
      * svg/svgattrs.in:
      * svg/svgtags.in:
      
      WebKit/mac: Add ConvolveMatrixElement to MigrateHeaders.make
      https://bugs.webkit.org/show_bug.cgi?id=5861
      
      Reviewed by Nikolas Zimmermann.
      
      * MigrateHeaders.make:
      
      LayoutTests: Updating expected values for convolve matrix filter
      https://bugs.webkit.org/show_bug.cgi?id=5861
      
      Reviewed by Nikolas Zimmermann.
      
      * platform/mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
      * svg/custom/global-constructors-expected.txt:
      * svg/custom/js-svg-constructors-expected.txt:
      * svg/custom/js-svg-constructors.svg:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@62092 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e4b0f76a
  29. 07 Mar, 2010 1 commit
    • mrowe@apple.com's avatar
      Remove unnecessary includes from header files, adding them to the handful of... · d48fd2e5
      mrowe@apple.com authored
      Remove unnecessary includes from header files, adding them to the handful of implementation files that need them.
      
      Rubber-stamped by Cameron Zwarich.
      
      WebCore:
      
      * bindings/objc/DOM.mm:
      * loader/CachedImage.h:
      * loader/EmptyClients.h:
      * platform/graphics/GlyphPageTreeNode.cpp:
      * platform/text/CString.h:
      * platform/text/String.cpp:
      * platform/text/mac/TextCodecMac.cpp:
      * svg/graphics/SVGResourceFilter.h:
      * svg/graphics/filters/SVGFEImage.h:
      
      WebKit/mac:
      
      * Misc/WebNSPasteboardExtras.mm:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55639 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d48fd2e5
  30. 09 Oct, 2009 1 commit
    • krit@webkit.org's avatar
      2009-10-08 Dirk Schulze <krit@webkit.org> · 5a9a31fc
      krit@webkit.org authored
              Reviewed by Nikolas Zimmermann.
      
              feMorphology filter is not implemented
              [https://bugs.webkit.org/show_bug.cgi?id=5863]
      
              Adds SVGFEMorphologyElement, for the SVG filter. It also fixes a bug
              with the attribute "operator". It was only accessible via "_operator" 
              on JavaScript.
      
              Test: svg/dom/operatorAttribute.xhtml
      
              * DerivedSources.cpp:
              * DerivedSources.make:
              * GNUmakefile.am:
              * WebCore.SVG.Filters.exp:
              * WebCore.gypi:
              * WebCore.pro:
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/objc/DOM.mm:
              (WebCore::createElementClassMap):
              * bindings/objc/DOMSVG.h:
              * bindings/scripts/CodeGeneratorJS.pm:
              * bindings/scripts/CodeGeneratorObjC.pm:
              * page/DOMWindow.idl:
              * svg/SVGAllInOne.cpp:
              * svg/SVGFECompositeElement.idl:
              * svg/SVGFEMorphologyElement.cpp: Added.
              (WebCore::SVGFEMorphologyElement::SVGFEMorphologyElement):
              (WebCore::SVGFEMorphologyElement::~SVGFEMorphologyElement):
              (WebCore::SVGFEMorphologyElement::setRadius):
              (WebCore::SVGFEMorphologyElement::parseMappedAttribute):
              (WebCore::SVGFEMorphologyElement::build):
              * svg/SVGFEMorphologyElement.h: Added.
              * svg/SVGFEMorphologyElement.idl: Added.
              * svg/graphics/filters/SVGFEMorphology.cpp:
              (WebCore::operator<<):
              * svg/graphics/filters/SVGFEMorphology.h:
              (WebCore::):
              * svg/svgtags.in:
      
              Reviewed by Nikolas Zimmermann.
      
              Attribute "operator" schould only be accessible by "operator", not by "_operator"
      
              * svg/dom/operatorAttribute-expected.txt: Added.
              * svg/dom/operatorAttribute.html: Added.
              * svg/dom/script-tests/operatorAttribute.js: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49400 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5a9a31fc
  31. 06 Oct, 2009 1 commit
  32. 06 Sep, 2009 1 commit
    • eric@webkit.org's avatar
      2009-09-06 Cameron McCormack <cam@mcc.id.au> · 7735642f
      eric@webkit.org authored
              Reviewed by Eric Seidel.
      
              Drop <definition-src> support
              https://bugs.webkit.org/show_bug.cgi?id=28991
      
              Update test not to expect a <definition-src> element to be of type
              SVGDefinitionSrcElement.
      
              * svg/dom/font-face-elements-expected.txt:
              * svg/dom/font-face-elements.html:
      2009-09-06  Cameron McCormack  <cam@mcc.id.au>
      
              Reviewed by Eric Seidel.
      
              Drop <definition-src> support
              https://bugs.webkit.org/show_bug.cgi?id=28991
      
              http://dev.w3.org/SVG/profiles/1.1F2/publish/changes.html#FontsChapter
      
              * DerivedSources.cpp: Remove references to definition-src.
              * DerivedSources.make: Ditto.
              * GNUmakefile.am: Ditto.
              * WebCore.gypi: Ditto.
              * WebCore.pro: Ditto.
              * WebCore.vcproj/WebCore.vcproj: Ditto.
              * WebCore.xcodeproj/project.pbxproj: Ditto.
              * bindings/objc/DOM.mm:
              (WebCore::createElementClassMap): Ditto.
              * bindings/objc/DOMSVG.h: Ditto.
              * bindings/v8/DerivedSourcesAllInOne.cpp: Ditto.
              * bindings/v8/V8DOMWrapper.cpp: Ditto.
              * bindings/v8/V8Index.cpp: Ditto.
              * bindings/v8/V8Index.h: Ditto.
              * svg/SVGAllInOne.cpp: Ditto.
              * svg/SVGDefinitionSrcElement.cpp: Removed.
              * svg/SVGDefinitionSrcElement.h: Removed.
              * svg/SVGDefinitionSrcElement.idl: Removed.
              * svg/SVGFontFaceElement.cpp:
              (WebCore::SVGFontFaceElement::rebuildFontFace): Don't search for
              definition-src child.
              * svg/svgtags.in: Remove definition-src.
      2009-09-06  Cameron McCormack  <cam@mcc.id.au>
      
              Reviewed by Eric Seidel.
      
              Drop <definition-src> support
              https://bugs.webkit.org/show_bug.cgi?id=28991
      
              * MigrateHeaders.make: Remove reference to ObjC definition-src
              binding class.
      2009-09-06  Cameron McCormack  <cam@mcc.id.au>
      
              Reviewed by Eric Seidel.
      
              Drop <definition-src> support
              https://bugs.webkit.org/show_bug.cgi?id=28991
      
              When SVG 1.1 Second Edition is a Recommendation we can remove the
              entry altogether.
      
              * projects/svg/status.xml: Update page to state that <definition-src>
              is not supported.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7735642f
  33. 23 Aug, 2009 1 commit
    • darin@apple.com's avatar
      Make DOM classes start with a reference count of 1, like all other RefCounted · cf9dd0fa
      darin@apple.com authored
              
      Patch by Darin Adler <darin@apple.com> on 2009-08-22
      Reviewed by Oliver Hunt.
      
      Next step: Element, HTMLElement, HTMLAnchorElement, HTMLAppletElement,
      HTMLAreaElement, HTMLEmbedElement, HTMLFrameElement, HTMLIFrameElement,
      HTMLObjectElement, HTMLPlugInElement, HTMLPlugInImageElement.
      
      * DerivedSources.make: Fix error seen every time we build by escaping the $
      in the build rule, since you have to use $$ for that in make.
      
      * WebCore.base.exp: Updated.
      
      * bindings/objc/DOM.mm:
      Added now-needed include of SVGNames.h.
      
      * dom/Document.cpp: Added now-needed include of SVGNames.h.
      (WebCore::Document::createElement): Use create instead of new.
      
      * dom/Element.cpp:
      (WebCore::Element::Element): Added ConstructionType argument so the caller
      can determine whether this starts with a reference count of either 0 or 1.
      Later we will remove this again once they are all 1.
      (WebCore::Element::create): Added.
      
      * dom/Element.h: Added create and made constructor protected.
      
      * dom/StyledElement.cpp:
      (WebCore::StyledElement::StyledElement): Added ConstructionType argument.
      * dom/StyledElement.h: Made many functions protected or private, including
      the constructor.
      
      * dom/make_names.pl: Use create to create the base elements HTMLElement,
      SVGElement, and WMLElement.
      
      * editing/CreateLinkCommand.cpp:
      (WebCore::CreateLinkCommand::doApply): Use create instead of new.
      * editing/UnlinkCommand.cpp:
      (WebCore::UnlinkCommand::doApply): Ditto.
      
      * html/HTMLAnchorElement.cpp:
      (WebCore::HTMLAnchorElement::create): Added.
      * html/HTMLAnchorElement.h: Made constructor protected and added create.
      Also made m_rootEditableElementForSelectionOnMouseDown a RefPtr.
      
      * html/HTMLAppletElement.cpp:
      (WebCore::HTMLAppletElement::create): Added.
      * html/HTMLAppletElement.h: Made constructor private and added create.
      
      * html/HTMLAreaElement.cpp:
      (WebCore::HTMLAreaElement::create): Added.
      * html/HTMLAreaElement.h: Made constructor private and added create.
      
      * html/HTMLElement.cpp:
      (WebCore::HTMLElement::create): Added.
      * html/HTMLElement.h: Made constructor protected and added create.
      Made other functions protected and private. Also added inline
      definition of constructor.
      
      * html/HTMLEmbedElement.cpp:
      (WebCore::HTMLEmbedElement::create): Added.
      * html/HTMLEmbedElement.h: Made constructor private and added create.
      Made other functions private.
      
      * html/HTMLFrameElement.cpp:
      (WebCore::HTMLFrameElement::create): Added.
      (WebCore::HTMLFrameElement::parseMappedAttribute):
      * html/HTMLFrameElement.h: Made constructor private and added create.
      Made other functions private.
      
      * html/HTMLFrameElementBase.h: Made functions protected and private.
      
      * html/HTMLFrameOwnerElement.cpp:
      (WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement): Pass
      CreateElement so reference count starts at 1.
      
      * html/HTMLFrameOwnerElement.h: Made functions protected and private.
      
      * html/HTMLIFrameElement.cpp:
      (WebCore::HTMLIFrameElement::create): Added.
      * html/HTMLIFrameElement.h: Made constructor private and added create.
      Made other functions private.
      
      * html/HTMLObjectElement.cpp:
      (WebCore::HTMLObjectElement::create): Added.
      (WebCore::HTMLObjectElement::containsJavaApplet): Changed while loop
      into a for loop and tweaked formatting.
      
      * html/HTMLObjectElement.h: Made constructor private and added create.
      Made other functions private.
      
      * html/HTMLPlugInElement.h: Made constructor protected.
      Made other functions protected and private.
      
      * html/HTMLPlugInImageElement.h: Made constructor and another function
      protected.
      
      * html/HTMLTagNames.in: Removed createWithNew from all classes that
      now have create functions. Moved conditional noscript to a separate
      paragraph.
      
      * html/HTMLViewSourceDocument.cpp:
      (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Use create.
      (WebCore::HTMLViewSourceDocument::addLink): Ditto.
      * page/DragController.cpp:
      (WebCore::documentFragmentFromDragData): Ditto.
      
      * svg/SVGElement.cpp:
      (WebCore::SVGElement::SVGElement): Pass CreateElementZeroRefCount
      so reference count still starts at 0. Will change this class later.
      (WebCore::SVGElement::create): Added.
      * svg/SVGElement.h: Added create, made constructor protected, and
      made other functions protected and private. Removed unneeded
      SVGNames.h include.
      
      * svg/SVGExternalResourcesRequired.h: Added now-needed SVGNames.h
      include.
      
      * svg/SVGStopElement.h: Added now-needed SVGNames.h include.
      Made functions private.
      
      * wml/WMLElement.cpp:
      (WebCore::WMLElement::WMLElement): Pass CreateElementZeroRefCount
      so reference count still starts at 0. Will change this class later.
      (WebCore::WMLElement::create): Added.
      * wml/WMLElement.h: Added create and made constructor protected.
      
      * wml/WMLTagNames.in: Removed createWithNew from WMLElement.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47688 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cf9dd0fa
  34. 18 Aug, 2009 1 commit
    • darin@apple.com's avatar
      More work on making DOM classes start with reference count of 1 · 3a3edd48
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=28068
      
      Patch by Darin Adler <darin@apple.com> on 2009-08-18
      Reviewed by Sam Weinig.
      
      Some related clean-up and preparation steps so the subsequent
      patches will be as small as possible.
      
      * WebCore.base.exp: Sorted this file.
      
      * accessibility/AccessibilityRenderObject.cpp:
      (WebCore::AccessibilityRenderObject::accessibilityDescription):
      Use nameAttr instead of the name function.
      
      * bindings/js/JSHTMLFrameElementCustom.cpp:
      (WebCore::JSHTMLFrameElement::setSrc):
      Use srcAttr instead of the src function.
      
      * bindings/js/JSHTMLIFrameElementCustom.cpp:
      (WebCore::JSHTMLIFrameElement::setSrc):
      Use srcAttr instead of the src function.
      
      * bindings/objc/DOM.mm: Sorted includes.
      * dom/Document.cpp: Ditto.
      
      * dom/StyledElement.cpp: Made invalidateStyleAttribute inline.
      * dom/StyledElement.h: Ditto.
      
      * dom/make_names.pl: Changed default of createWithNew to 0.
      Eventually all elements will be created with create instead of new.
      
      * html/HTMLTagNames.in:
      * svg/svgtags.in:
      * wml/WMLTagNames.in:
      Added createWithNew for every tag. We'll remove it as we convert
      element classes to use create.
      
      * html/HTMLAppletElement.h: Removed unneeded forward declarations.
      * html/HTMLFrameElement.h: Ditto.
      
      * html/HTMLEmbedElement.cpp: Removed many attribute get and
      set functions.
      * html/HTMLEmbedElement.h: Ditto.
      * html/HTMLIFrameElement.cpp: Ditto.
      * html/HTMLIFrameElement.h: Ditto.
      * html/HTMLObjectElement.cpp: Ditto.
      * html/HTMLObjectElement.h: Ditto.
      * html/HTMLPlugInElement.cpp: Ditto.
      * html/HTMLPlugInElement.h: Ditto.
      
      * html/HTMLFrameElementBase.cpp: Removed many attribute get and
      set functions.
      (WebCore::HTMLFrameElementBase::location): Changed to use
      srcAttr instead of src.
      * html/HTMLFrameElementBase.h: Removed many attribute get and set
      functions.
      
      * loader/MediaDocument.cpp:
      (WebCore::MediaDocument::replaceMediaElementTimerFired):
      Use srcAttr and typeAttr instead of setSrc and setType.
      * loader/PluginDocument.cpp:
      (WebCore::PluginTokenizer::createDocumentStructure): Ditto.
      
      * rendering/RenderPartObject.cpp:
      (WebCore::RenderPartObject::updateWidget): Use nameAttr instead
      of name -- this avoids an extra AtomicString round trip and a little
      ref count churn too.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@47469 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3a3edd48