WebKit-https.git
8 years agoSource/WebCore: Another Windows build fix attempt after r144567.
rniwa@webkit.org [Sun, 3 Mar 2013 10:47:41 +0000 (10:47 +0000)]
Source/WebCore: Another Windows build fix attempt after r144567.
Try touching the IDL file in a hope it'll regenerate JSInternals.cpp.

* testing/Internals.idl:

Source/WebKit/win: That was a wrong fix. Revert r144569.

* WebKit.vcproj/WebKitExports.def.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144570 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWindows build fix attempt after r144567.
rniwa@webkit.org [Sun, 3 Mar 2013 10:34:03 +0000 (10:34 +0000)]
Windows build fix attempt after r144567.

* WebKit.vcproj/WebKitExports.def.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144569 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed attempted build fix. Adds back some includes removed in
abarth@webkit.org [Sun, 3 Mar 2013 10:12:59 +0000 (10:12 +0000)]
Unreviewed attempted build fix. Adds back some includes removed in
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: https://svn.webkit.org/repository/webkit/trunk@144568 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago<link rel="apple-touch-icon"> tag is not honored on CNN.com, workflowy.com etc
commit-queue@webkit.org [Sun, 3 Mar 2013 09:54:08 +0000 (09:54 +0000)]
<link rel="apple-touch-icon"> tag is not honored on CNN.com, workflowy.com etc
https://bugs.webkit.org/show_bug.cgi?id=109061

Patch by Ruslan Abdikeev <aruslan@chromium.org> on 2013-03-03
Reviewed by Adam Barth.

.:

* Source/autotools/symbols.filter:

Source/WebCore:

Test: fast/dom/icon-url-list-apple-touch.html

Added iconTypes parameter to Document::iconURLs().
Added Document::shortcutIconURLs() with original semantics of iconURLs().
Fixed IconController.cpp to provide iconTypesMask to iconURLs().
Renamed iconTypes to iconTypesMask to make the meaning clearer.

* WebCore.exp.in:
* dom/Document.cpp:
(WebCore::Document::shortcutIconURLs):
(WebCore):
(WebCore::Document::iconURLs):
* dom/Document.h:
(Document):
* loader/icon/IconController.cpp:
(WebCore::IconController::iconURL):
(WebCore::IconController::urlsForTypes):
* testing/Internals.cpp:
(WebCore::Internals::iconURLs):
(WebCore::Internals::shortcutIconURLs):
(WebCore):
(WebCore::Internals::allIconURLs):
* testing/Internals.h:
* testing/Internals.idl:

LayoutTests:

Added test for apple-touch-icon in allIconURLs().
Changed iconURLs() to shortcutIconURLs().

* fast/dom/icon-url-change.html:
* fast/dom/icon-url-list-apple-touch-expected.txt: Added.
* fast/dom/icon-url-list-apple-touch.html: Added.
* fast/dom/icon-url-list.html:
* fast/dom/icon-url-property.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144567 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoCSP: Throw a warning when a '*-report-only' header doesn't contain a 'report-uri...
mkwst@chromium.org [Sun, 3 Mar 2013 09:28:53 +0000 (09:28 +0000)]
CSP: Throw a warning when a '*-report-only' header doesn't contain a 'report-uri' directive.
https://bugs.webkit.org/show_bug.cgi?id=111208

Reviewed by Adam Barth.

Source/WebCore:

Developers in the wild have been observed to serve a report-only CSP
header with a policy that doesn't contain a 'report-uri' directive.
This has zero effect, of course, and we should help them understand
that by throwing a warning up on the console.

Test: http/tests/security/contentSecurityPolicy/report-only-report-uri-missing.html

* page/ContentSecurityPolicy.cpp:
(WebCore::CSPDirectiveList::isReportOnly): Added.
(WebCore::CSPDirectiveList::reportURIs): Added.
(WebCore::CSPDirectiveList::create):
    After creating a CSPDirectiveList, check whether it's in
    report-only mode without a report-uri. If so, warn the developer.
(WebCore::ContentSecurityPolicy::reportMissingReportURI): Added.
    Write an exciting message to the console, warning the developer
    about her expensive no-op machine.

LayoutTests:

* http/tests/security/contentSecurityPolicy/report-only-report-uri-missing-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-only-report-uri-missing.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144566 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed rollout of http://trac.webkit.org/r144530
abarth@webkit.org [Sun, 3 Mar 2013 09:16:26 +0000 (09:16 +0000)]
Unreviewed rollout of trac.webkit.org/r144530
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: https://svn.webkit.org/repository/webkit/trunk@144565 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWebKit API for enabling DOM logging for certain worlds
commit-queue@webkit.org [Sun, 3 Mar 2013 08:56:45 +0000 (08:56 +0000)]
WebKit API for enabling DOM logging for certain worlds
https://bugs.webkit.org/show_bug.cgi?id=110779

Patch by Ankur Taly <ataly@google.com> on 2013-03-03
Reviewed by Kentaro Hara.

* WebKit.gyp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144564 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[V8] Remove TranslateParameter() from CodeGeneratorV8.pm
haraken@chromium.org [Sun, 3 Mar 2013 08:52:17 +0000 (08:52 +0000)]
[V8] Remove TranslateParameter() from CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=111218

Reviewed by Adam Barth.

TranslateParameter() does nothing. It tries to convert TimeoutHandler to DOMString,
but there is no non-custom method that uses TimeoutHandler.

The only place where TimeoutHandler is used in the WebKit IDL is setTimeout() and setInterval().
However, the latest spec uses 'any' instead of TimeoutHandler.
http://dev.w3.org/html5/spec-LC/timers.html
Thus, this patch updates the IDL declarations of setTimeout() and setInterval()
according to the spec. By this change, TimeoutHandler is gone away from the WebKit IDL.
(Anyway this IDL change has no effect, because setTimeout() and setInterval() are written
in custom bindings.)

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateParametersCheck):
* page/DOMWindow.idl:
* workers/WorkerContext.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144563 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agokeydown and keyup events have zero keycode for some numeric pad keys under Chromium...
commit-queue@webkit.org [Sun, 3 Mar 2013 08:46:03 +0000 (08:46 +0000)]
keydown and keyup events have zero keycode for some numeric pad keys under Chromium on Linux
https://bugs.webkit.org/show_bug.cgi?id=85642

Source/WebCore:

Add missing key mappings for GDK_KP_Begin, GDK_KP_Insert, GDK_KP_Delete and GDK_ISO_Level3_Shift.

Patch by James Weatherall <wez@chromium.org> on 2013-03-03
Reviewed by Adam Barth.

* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):

Source/WebKit/chromium:

Add tests to verify that the fixed keys generate the same keyCode values as their equivalents.

Patch by James Weatherall <wez@chromium.org> on 2013-03-03
Reviewed by Adam Barth.

* WebKit.gypi:
* tests/KeyCodeConversionTestGtk.cpp: Added.
(WebCore):
(WebCore::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144562 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoREGRESSION(144520): Does not compile on chromium-win
abarth@webkit.org [Sun, 3 Mar 2013 08:33:44 +0000 (08:33 +0000)]
REGRESSION(144520): Does not compile on chromium-win
https://bugs.webkit.org/show_bug.cgi?id=111261

Unreviewed rollout of http://trac.webkit.org/changeset/144520. This
patch does not compile for chromium-win. See the bug for the compile
error.

* rendering/ExclusionShapeInsideInfo.cpp:
* rendering/ExclusionShapeInsideInfo.h:
(WebCore):
(LineSegmentRange):
(WebCore::LineSegmentRange::LineSegmentRange):
(WebCore::ExclusionShapeInsideInfo::isEnabledFor):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::willBeDestroyed):
(WebCore::RenderBlock::exclusionShapeInsideInfo):
(WebCore):
(WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange):
* rendering/RenderBlock.h:
(WebCore):
(RenderBlock):
(RenderBlockRareData):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::constructBidiRunsForLine):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144561 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoREGRESSION (r144517): IndexedDB layout test failures on GTK
zandobersek@gmail.com [Sun, 3 Mar 2013 07:13:29 +0000 (07:13 +0000)]
REGRESSION (r144517): IndexedDB layout test failures on GTK
https://bugs.webkit.org/show_bug.cgi?id=111243

Reviewed by Martin Robinson.

Source/WebCore:

Changes to the custom JSC bindings for IDBAny are required after r144517,
specifically the case of IDBAny object having the KeyPathType type has to be covered.
These changes are analogous to those made to the V8 bindings in the mentioned commit.

No new tests - already covered by existing tests.

* bindings/js/JSIDBAnyCustom.cpp:
(WebCore::toJS): A helper function that wraps an IDBKeyPath into a JSValue.
(WebCore): Shuffle the order inside the switch statement a bit to match the V8 custom bindings.
Cover the case where the IDBAny object has the KeyPathType, calling the new helper method.

LayoutTests:

* platform/gtk/TestExpectations: Removing failure expectations for IDB tests that again pass.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144559 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAnother try at fixing the build.
darin@apple.com [Sun, 3 Mar 2013 06:55:45 +0000 (06:55 +0000)]
Another try at fixing the build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144557 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoTry to fix build.
darin@apple.com [Sun, 3 Mar 2013 06:31:24 +0000 (06:31 +0000)]
Try to fix build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144555 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoCut down the number of source files that depend on Clipboard.h
darin@apple.com [Sun, 3 Mar 2013 05:55:53 +0000 (05:55 +0000)]
Cut down the number of source files that depend on Clipboard.h
https://bugs.webkit.org/show_bug.cgi?id=110030

Reviewed by Ryosuke Niwa.

Source/WebCore:

I am doing some work on Clipboard and it's better to recompile 50 files
each time we touch the header instead of 700. Also cut down on includes
of DragState.h.

* WebCore.exp.in: Updated for new MouseEvent::create function.

* dom/ClipboardEvent.cpp: Added include of Clipboard.h since we use it
here and the world no longer includes it everywhere.

* dom/ClipboardEvent.h: Forward declared Clipboard instead of including
Clipboard.h. Also made some overrides private because they can be.

* dom/DataTransferItem.h: Removed unneeded include of Clipboard.h.

* dom/MouseEvent.cpp: Added include of Clipboard.h since we use it
here and the world no longer includes it everywhere.
(WebCore::MouseEvent::create): Made the create function non-inline
since we can't compile it without including Clipboard.h and we don't
want to include Clipboard.h in the header. This is not so commonly
used or so hot that this needs to be inlined.

* dom/MouseEvent.h: Forward declared Clipboard instead of including
Clipboard.h. Made MouseEvent::create a non-inline function and also
used overloading instead of default arguments, since we can't compile
a default argument of type PassRefPtr<Clipboard> without including
Clipboard.h.

* dom/WheelEvent.cpp: Added include of Clipboard.h since we use it
here and the world no longer includes it everywhere.

* dom/WheelEvent.h: Forward declare PlatformWheelEvent since it is used
in this header. Previously we'd get it indirectly from including a header
that included Clipboard.h.

* editing/Editor.cpp: Added include of Clipboard.h since we use it here
and the world no longer includes it everywhere.

* inspector/InspectorDebuggerAgent.cpp: Added include of CachedResource.h.
We used to get this indirectly through Clipboard.h.

* inspector/InspectorFrontendHost.cpp: Added includes of ResourceError.h
and ResourceResponse.h. We used to get these indirectly through Clipboard.h.
Also removed unneeded include of <wtf/RefPtr.h>.

* inspector/NetworkResourcesData.cpp: Added include of CachedResource.h.
We used to get this indirectly through Clipboard.h.

* loader/PingLoader.cpp: Added include of ResourceResponse.h.
We used to get this indirectly through Clipboard.h.

* page/DragController.cpp: Added include of DragState.h.
We used to get this indirectly through EventHandler.h

* page/EventHandler.h: Forward declared DragState and Element instead of
including DragState.h. Also added an include of LayoutPoint.h, which we
used to get indirectly through DragState.h.

Source/WebKit/chromium:

* src/SharedWorkerRepository.cpp: Add include of ResourceResponse.h
here. We used to get this indirectly through Clipboard.h.

Source/WebKit/mac:

* WebView/WebPDFView.mm: Add include of Clipboard.h since we use it
here and the world no longer includes it everywhere.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144553 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoStringHasher functions require alignment that call sites do not all guarantee
darin@apple.com [Sun, 3 Mar 2013 05:47:27 +0000 (05:47 +0000)]
StringHasher functions require alignment that call sites do not all guarantee
https://bugs.webkit.org/show_bug.cgi?id=110171

Reviewed by Benjamin Poulain.

Source/WebCore:

* platform/graphics/WidthCache.h:
(WebCore::WidthCache::SmallStringKey::SmallStringKey): Use the newly added
addCharactersAssumingAligned to make sure we don't slow this call site down.
It's safe since this code always adds characters two at a time.

Source/WTF:

The StringHasher class is optimized for clients who pass it two characters at
a time. However, the function named addCharacters did not make this clear to
clients, and one calculateStringHashAndLengthFromUTF8MaskingTop8Bits got it wrong.
Fix by making addCharacters work regardless of hasher alignment and adding a new
function, addCharactersAssumingAligned, for use when we want a faster path and can
guarantee we are adding characters two at a time.

* wtf/StringHasher.h:
(WTF::StringHasher::addCharactersAssumingAligned): Renamed the addCharacters function
addCharactersAssumingAligned, since it only works if the hasher is currently aligned,
meaning it contains an even number of characters. The function already asserts
that this is true, but the calculateStringHashAndLengthFromUTF8MaskingTop8Bits
function was using it in cases where the assertion could fire. Also updated to
call addCharactersInternal by its new name. Also added some new overloads that take
data pointers and lengths so callers can always use addCharactersAssumingAligned
instead of addCharacters if they know the hasher is aligned.
(WTF::StringHasher::addCharacter): Updated to call the public
addCharactersAssumingAligned function since that's simpler and a bit cleaner.
(WTF::StringHasher::addCharacters): Added functions with this name that handle
the case where the hasher is not aligned. These will be called by existing call sites
that were formerly using the function named addCharactersAssumingAligned above.
Also add an overload that works with the default converter automatically.
(WTF::StringHasher::computeHashAndMaskTop8Bits): Changed to call
addCharactersAssumingAligned to eliminate copied and pasted code. The hasher is empty,
so definitely aligned.
(WTF::StringHasher::computeHash): Ditto.
(WTF::StringHasher::addCharactersInternal): Renamed from addCharactersToHash, since
the former name did not make clear how this differs from the public functions.
The real difference is that this is like addCharactersAssumingAligned, but without
the assertion, so addCharactersAssumingAligned is called instead, even within the
class's implementation.

Tools:

* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/GNUmakefile.am:
* TestWebKitAPI/TestWebKitAPI.gypi:
* TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:
* TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj.filters:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/WTF.pro:
* TestWebKitAPI/win/TestWebKitAPI.vcproj:
Added the StringHasher.cpp file.

* TestWebKitAPI/Tests/WTF/StringHasher.cpp: Added. Contains a bunch of tests
for the functions in the StringHasher class.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144552 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWebKit2 is missing the setShowsURLsInToolTips preference
weinig@apple.com [Sun, 3 Mar 2013 02:53:28 +0000 (02:53 +0000)]
WebKit2 is missing the setShowsURLsInToolTips preference
https://bugs.webkit.org/show_bug.cgi?id=111259
<rdar://problem/12991891>

Reviewed by Maciej Stachowiak.

* Shared/WebPreferencesStore.h:
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetShowsURLsInToolTipsEnabled):
(WKPreferencesGetShowsURLsInToolTipsEnabled):
* UIProcess/API/C/WKPreferencesPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
Pipe it through.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144550 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoXSSAuditor has a subtle race condition when used with the threaded HTML parser
abarth@webkit.org [Sun, 3 Mar 2013 01:45:58 +0000 (01:45 +0000)]
XSSAuditor has a subtle race condition when used with the threaded HTML parser
https://bugs.webkit.org/show_bug.cgi?id=111253

Reviewed by Eric Seidel.

We were refing and derefing a StringImpl for a main-thread
AtomicString. Using QualifiedNames on the background thread is very
fragile and we should figure out a more robust solution.

* html/parser/XSSAuditor.cpp:
(WebCore::findAttributeWithName):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144549 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoExport a missing symbol after r144547.
benjamin@webkit.org [Sun, 3 Mar 2013 00:57:26 +0000 (00:57 +0000)]
Export a missing symbol after r144547.

Unreviewed.

* WebKit.vcproj/WebKitExports.def.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144548 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoMove computedStyleIncludingVisitedInfo from TestRunner to Internals
benjamin@webkit.org [Sun, 3 Mar 2013 00:08:44 +0000 (00:08 +0000)]
Move computedStyleIncludingVisitedInfo from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=109772

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-03-02
Reviewed by Andreas Kling.

Source/WebCore:

The function computedStyleIncludingVisitedInfo() is purely internal to WebCore,
it is better defined on Internals than on TestRunner.

* testing/Internals.cpp:
(WebCore::Internals::computedStyleIncludingVisitedInfo):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit/blackberry:

* WebKitSupport/DumpRenderTreeSupport.cpp:
* WebKitSupport/DumpRenderTreeSupport.h:
(DumpRenderTreeSupport):

Source/WebKit/efl:

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Source/WebKit/gtk:

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
* WebCoreSupport/DumpRenderTreeSupportGtk.h:
(DumpRenderTreeSupportGtk):

Source/WebKit/mac:

* WebView/WebView.mm:
* WebView/WebViewPrivate.h:

Source/WebKit/qt:

* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
* WebCoreSupport/DumpRenderTreeSupportQt.h:

Source/WebKit2:

* WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
* WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
* WebProcess/WebPage/WebFrame.cpp:
* WebProcess/WebPage/WebFrame.h:
(WebFrame):

Tools:

* DumpRenderTree/TestRunner.cpp:
(TestRunner::staticFunctions):
* DumpRenderTree/TestRunner.h:
(TestRunner):
* DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp:
* DumpRenderTree/efl/TestRunnerEfl.cpp:
* DumpRenderTree/gtk/TestRunnerGtk.cpp:
* DumpRenderTree/mac/TestRunnerMac.mm:
* DumpRenderTree/qt/TestRunnerQt.cpp:
* DumpRenderTree/qt/TestRunnerQt.h:
(TestRunner):
* DumpRenderTree/win/TestRunnerWin.cpp:
* DumpRenderTree/wx/TestRunnerWx.cpp:
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(TestRunner):

LayoutTests:

Update the tests.

* fast/history/multiple-classes-visited.html:
* fast/history/nested-visited-test.html:
* fast/history/self-is-visited.html:
* fast/history/sibling-visited-test.html:
* fast/loader/stateobjects/state-url-sets-links-visited.html:
* platform/win/TestExpectations: unskip the tests.
* platform/chromium/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144547 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoBUILD FIX (r143637): Export ScriptController::javaScriptContext() on iOS
ddkilzer@apple.com [Sat, 2 Mar 2013 23:42:41 +0000 (23:42 +0000)]
BUILD FIX (r143637): Export ScriptController::javaScriptContext() on iOS
<http://webkit.org/b/106059>

Fixes the following build failure:

    Undefined symbols for architecture armv7:
      "__ZN7WebCore16ScriptController17javaScriptContextEv", referenced from:
          -[WebFrame javaScriptContext] in WebFrame.o
          __ZN20WebFrameLoaderClient35dispatchDidClearWindowObjectInWorldEPN7WebCore15DOMWrapperWorldE in WebFrameLoaderClient.o
    ld: symbol(s) not found for architecture armv7

* WebCore.exp.in: Export ScriptController::javaScriptContext()
even more unconditionally.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144546 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoBUILD FIX (r143637): Predeclare JSContext as an Objective-C class
ddkilzer@apple.com [Sat, 2 Mar 2013 23:36:00 +0000 (23:36 +0000)]
BUILD FIX (r143637): Predeclare JSContext as an Objective-C class
<http://webkit.org/b/106059>

Fixes the following build failure:

    In file included from Source/WebKit/ios/DefaultDelegates/WebDefaultFrameLoadDelegate.m:11:
    In file included from Source/WebKit/mac/WebView/WebFrameLoadDelegatePrivate.h:29:
    Source/WebKit/mac/WebView/WebFrameLoadDelegate.h:215:64: error: expected a type
    - (void)webView:(WebView *)webView didCreateJavaScriptContext:(JSContext *)context forFrame:(WebFrame *)frame;
                                                                   ^
    1 error generated.

* WebView/WebFrameLoadDelegate.h: Add @class JSContext
declaration.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144545 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove two unnecessary mallocs from the main-thread-parser code path
eric@webkit.org [Sat, 2 Mar 2013 21:06:57 +0000 (21:06 +0000)]
Remove two unnecessary mallocs from the main-thread-parser code path
https://bugs.webkit.org/show_bug.cgi?id=111249

Reviewed by Adam Barth.

I noticed these while fixing up our Vector -> String conversions
but never went back to fix the FIXME.

AtomicString(Vector<UChar, capacity>) is smart enough to avoid mallocing
if the represented string is already in the AtomicString table.  It
also handles 8bit vs. 16bit and empty() just like nameString() does.

I also removed a 3rd caller to nameString() in the XSSAuditor which
was causing an unnecessary malloc in both the main and background
thread parser paths.

* html/parser/AtomicHTMLToken.h:
(WebCore::AtomicHTMLToken::AtomicHTMLToken):
* html/parser/HTMLToken.h:
* html/parser/XSSAuditor.cpp:
(WebCore):
(WebCore::threadSafeMatch):
(WebCore::hasName):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144544 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoconstructTreeFromCompactHTMLToken should call clearExternalCharacters
eric@webkit.org [Sat, 2 Mar 2013 18:09:53 +0000 (18:09 +0000)]
constructTreeFromCompactHTMLToken should call clearExternalCharacters
https://bugs.webkit.org/show_bug.cgi?id=111248

Reviewed by Adam Barth.

I don't know how to write a test for this.  It's possible characters()
is never accessed from HTMLStackItem::token(), but it's better to be
safe than sorry here.

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::constructTreeFromCompactHTMLToken):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144543 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoText overflow ellipsis wrong color when using webkit-text-fill-color
rwlbuis@webkit.org [Sat, 2 Mar 2013 15:02:45 +0000 (15:02 +0000)]
Text overflow ellipsis wrong color when using webkit-text-fill-color
https://bugs.webkit.org/show_bug.cgi?id=54841

Reviewed by David Hyatt.

Source/WebCore:

Take -webkit-text-fill-color into account for ellipsis painting.

Test: fast/css/text-overflow-ellipsis-color.html

* rendering/EllipsisBox.cpp:
(WebCore::EllipsisBox::paint):

LayoutTests:

Add reftest for using -webkit-text-fill-color in combination with text-overflow:ellipsis.

* fast/css/text-overflow-ellipsis-color-expected.html: Added.
* fast/css/text-overflow-ellipsis-color.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144542 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[EFL] Unskip some passing tests.
rakuco@webkit.org [Sat, 2 Mar 2013 14:39:08 +0000 (14:39 +0000)]
[EFL] Unskip some passing tests.

* platform/efl/TestExpectations: Remove tests that pass after
r140006 and r139217.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144541 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRedo r144538 (after r144530).
rniwa@webkit.org [Sat, 2 Mar 2013 12:36:10 +0000 (12:36 +0000)]
Redo r144538 (after r144530).

* WebCoreSupport/WebFrameNetworkingContext.cpp:
* WebCoreSupport/WebFrameNetworkingContext.h:
* WebCoreSupport/WebPlatformStrategies.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144540 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoYet another build fix attempt after r144530.
rniwa@webkit.org [Sat, 2 Mar 2013 10:14:04 +0000 (10:14 +0000)]
Yet another build fix attempt after r144530.

* WebCoreSupport/WebFrameNetworkingContext.cpp:
* WebCoreSupport/WebPlatformStrategies.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144538 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAnother build fix attempt after r144530.
rniwa@webkit.org [Sat, 2 Mar 2013 09:54:34 +0000 (09:54 +0000)]
Another build fix attempt after r144530.

* WebCoreSupport/WebFrameNetworkingContext.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144537 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoFix a typo in my previous commit (r144534).
rniwa@webkit.org [Sat, 2 Mar 2013 09:07:37 +0000 (09:07 +0000)]
Fix a typo in my previous commit (r144534).

* platform/win/PasteboardWin.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144536 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[WebGL] Support for texImage2D of type HALF_FLOAT_OES with ArrayBufferView.
nayankk@motorola.com [Sat, 2 Mar 2013 09:02:31 +0000 (09:02 +0000)]
[WebGL] Support for texImage2D of type HALF_FLOAT_OES with ArrayBufferView.
https://bugs.webkit.org/show_bug.cgi?id=110818

Reviewed by Kenneth Russell.

As per OES_texture_half_float specification texImage2D and texSubImage2D entry
points taking ArrayBufferView should extended to accept null with the pixel type
HALF_FLOAT_OES.

Source/WebCore:

Tests: fast/canvas/webgl/oes-texture-half-float-not-supported.html
       fast/canvas/webgl/oes-texture-half-float.html

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::toJS):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::toV8Object):
* html/canvas/OESTextureHalfFloat.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
(WebCore):
(WebCore::OESTextureHalfFloat::OESTextureHalfFloat):
(WebCore::OESTextureHalfFloat::~OESTextureHalfFloat):
(WebCore::OESTextureHalfFloat::getName):
(WebCore::OESTextureHalfFloat::create):
* html/canvas/OESTextureHalfFloat.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
(WebCore):
(OESTextureHalfFloat):
* html/canvas/OESTextureHalfFloat.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
* html/canvas/WebGLExtension.h:
* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::texSubImage2D):
(WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
(WebCore::WebGLRenderingContext::validateTexFuncData):
* html/canvas/WebGLRenderingContext.h:
(WebCore):
(WebGLRenderingContext):
* html/canvas/WebGLRenderingContext.idl:
* platform/graphics/Extensions3D.h:
(Extensions3D):
* platform/graphics/GraphicsContext3D.cpp:
(WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
* platform/graphics/GraphicsContext3D.h:
* platform/graphics/GraphicsTypes3D.h:
* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::texImage2D):

LayoutTests:

* fast/canvas/webgl/constants.html:
* fast/canvas/webgl/oes-texture-half-float-expected.txt: Added.
* fast/canvas/webgl/oes-texture-half-float-not-supported-expected.txt: Added.
* fast/canvas/webgl/oes-texture-half-float-not-supported.html: Added.
* fast/canvas/webgl/oes-texture-half-float.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144535 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWindows build fix attempt after r144530.
rniwa@webkit.org [Sat, 2 Mar 2013 08:57:00 +0000 (08:57 +0000)]
Windows build fix attempt after r144530.

* platform/win/PasteboardWin.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144534 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoTried to fix the build after r144530.
mitz@apple.com [Sat, 2 Mar 2013 07:46:51 +0000 (07:46 +0000)]
Tried to fix the build after r144530.

* platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h: Include the header for the
base class.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144533 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Sat, 2 Mar 2013 07:00:13 +0000 (07:00 +0000)]
Unreviewed GTK gardening.

* platform/gtk/TestExpectations: Adding failure expectations for IndexedDB tests
that regressed on platforms using JavaScriptCore with r144517.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144532 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove unused member variable m_useLatchedEventNode from PlatformWheelEvent.h
tdanderson@chromium.org [Sat, 2 Mar 2013 06:41:41 +0000 (06:41 +0000)]
Remove unused member variable m_useLatchedEventNode from PlatformWheelEvent.h
https://bugs.webkit.org/show_bug.cgi?id=107314

Reviewed by Darin Adler.

EventHandler::handleGestureScrollCore() was removed in http://trac.webkit.org/changeset/140177,
and this was the only place where the member variable |m_useLatchedEventNode| in
PlatformWheelEvent was mutated. This variable is no longer needed and so it should be removed.

No change in behavior, so no new tests needed.

* platform/PlatformWheelEvent.h:
(WebCore::PlatformWheelEvent::PlatformWheelEvent):
(WebCore::PlatformWheelEvent::useLatchedEventNode):
(PlatformWheelEvent):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144531 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago Reduce amount of rebuilding when touching networking headers
ap@apple.com [Sat, 2 Mar 2013 06:36:29 +0000 (06:36 +0000)]
    Reduce amount of rebuilding when touching networking headers
        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: https://svn.webkit.org/repository/webkit/trunk@144530 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[New Multicolumn] Transformed objects inside fragmented transparent objects don't...
hyatt@apple.com [Sat, 2 Mar 2013 06:14:28 +0000 (06:14 +0000)]
[New Multicolumn] Transformed objects inside fragmented transparent objects don't render
https://bugs.webkit.org/show_bug.cgi?id=111221.

Reviewed by Simon Fraser.

Source/WebCore:

Improve transparencyClipBox so that it understands when moving into descendants
that it does in fact have to break up the transformed clip rect across the
fragments.

Make sure when handling fragmented transforms using multiple paints that
the test that determines the extent of the transform within the fragments
uses transparencyClipBox. This gives us an accurate set of columns that the
final transformed result will paint across.

Tests: fast/multicol/mixed-opacity-fixed-test.html
       fast/multicol/mixed-opacity-test.html
       fast/multicol/transform-inside-opacity.html

* rendering/RenderLayer.cpp:
(WebCore::transparencyClipBox):
(WebCore::expandClipRectForDescendantsAndReflection):
Break transformed boxes up into fragments when they are
being requested by an ancestor.

(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
* rendering/RenderLayer.h:
(RenderLayer):
Modify collectFragments so that we pass in the correct range
within the columns that can possibly cover the fragmented
transformed box.

LayoutTests:

* fast/multicol/mixed-opacity-fixed-test-expected.html: Added.
* fast/multicol/mixed-opacity-fixed-test.html: Added.
* fast/multicol/mixed-opacity-test-expected.html: Added.
* fast/multicol/mixed-opacity-test.html: Added.
* fast/multicol/transform-inside-opacity-expected.html: Added.
* fast/multicol/transform-inside-opacity.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144529 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove call to set task priority of WebKit2 processes on Mac
commit-queue@webkit.org [Sat, 2 Mar 2013 05:53:00 +0000 (05:53 +0000)]
Remove call to set task priority of WebKit2 processes on Mac
https://bugs.webkit.org/show_bug.cgi?id=111239

Patch by Kiran Muppala <cmuppala@apple.com> on 2013-03-01
Reviewed by Darin Adler.

Remove call to set task prioirty of WebKit2 processes on Mac as it
is no longer necessary.

* Shared/mac/ChildProcessMac.mm:
(WebKit::ChildProcess::platformInitialize): Remove call to setpriority().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144528 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: Native Memory Instrumentation: do not visit raw pointers by default.
loislo@chromium.org [Sat, 2 Mar 2013 05:23:18 +0000 (05:23 +0000)]
Web Inspector: Native Memory Instrumentation: do not visit raw pointers by default.
https://bugs.webkit.org/show_bug.cgi?id=110943

Reviewed by Yury Semikhatsky.

Unfortunately in many cases raw pointer may point to an object that has been deleted.
There is no working solution to solve this problem in general.
It could be solved only on case by case basis.

Source/WebCore:

* inspector/HeapGraphSerializer.cpp:
(WebCore::HeapGraphSerializer::HeapGraphSerializer):
(WebCore::HeapGraphSerializer::reportLeaf):
* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::reportMemoryUsage):
* platform/graphics/BitmapImage.cpp:
(WebCore::FrameData::reportMemoryUsage):
* platform/graphics/skia/MemoryInstrumentationSkia.cpp:
(reportMemoryUsage):

Source/WTF:

* wtf/MemoryInstrumentation.h:
(WTF::MemoryInstrumentation::addObject):
(WTF::MemoryInstrumentation::MemberTypeTraits::addObject):
(WTF::MemoryClassInfo::addMember):
(WTF::MemoryInstrumentation::addObjectImpl):
* wtf/MemoryInstrumentationString.h:
(WTF::reportMemoryUsage):

Tools:

* TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
* TestWebKitAPI/Tests/WebCore/HeapGraphSerializerTest.cpp:
(TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144527 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoStyle recalculation takes too long when adding whitespace text nodes
haraken@chromium.org [Sat, 2 Mar 2013 05:18:43 +0000 (05:18 +0000)]
Style recalculation takes too long when adding whitespace text nodes
https://bugs.webkit.org/show_bug.cgi?id=110786

Reviewed by Darin Adler.

Source/WebCore:

// This takes 216 msec.
for (var i = 0; i < 1500; ++i) {
  document.body.appendChild(document.createTextNode('x'));
  document.body.appendChild(document.createElement('div'));
  document.body.appendChild(document.createTextNode('x'));
}

// But this takes 25.3 seconds.
for (var i = 0; i < 1500; ++i) {
  document.body.appendChild(document.createTextNode(' '));
  document.body.appendChild(document.createElement('div'));
  document.body.appendChild(document.createTextNode(' '));
}

The reason is that we do not create renderers for empty text
nodes and thus we are hitting the worst O(N^2) case in Node::attach().
(See FIXME in Node::attach().)

This patch adds a logic to bail out the loop to avoid the O(N^2) case.
Specifically, the patch bails out the loop if we encounter a text node
for which we again decided not to create a renderer. This bail out is
reasonable because the fact that we again decided not to create a renderer
for the text node indicates that there will be no affect of the result
of Text::textRendererIsNeeded() of the rest of the sibling nodes.

Performance test: https://bugs.webkit.org/attachment.cgi?id=190545
Performance result in Chromium/Linux: 25.3 sec => 48 msec !

Test: perf/append-text-nodes-without-renderers.html (for performance)
      fast/dynamic/create-renderer-for-whitespace-only-text.html (for correctness)

The loop was introduced in r29054. We have to make sure that
all layout tests that were updated in r29054 pass with this patch.
See http://trac.webkit.org/changeset/29054.

* dom/Node.cpp:
(WebCore::Node::attach):

LayoutTests:

* fast/html/details-nested-2-expected.txt: Sometimes anonymous blocks are left without
being cleaned up (for some reason). With this patch, one anonymouse block is removed at
the clean-up phase (for some reason). Anyway the new behavior is an expected behavior.
* platform/chromium-mac/fast/html/details-nested-2-expected.txt: Ditto.
* platform/chromium-win/fast/html/details-nested-2-expected.txt: Ditto.
* platform/efl/fast/html/details-nested-2-expected.txt: Ditto.
* platform/mac/fast/html/details-nested-2-expected.txt: Ditto.
* platform/qt/fast/html/details-nested-2-expected.txt: Ditto.
* perf/append-text-nodes-without-renderers-expected.txt: Added. For performance test.
* perf/append-text-nodes-without-renderers.html: Added. Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144526 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd a missing symbol after r144524.
benjamin@webkit.org [Sat, 2 Mar 2013 05:17:53 +0000 (05:17 +0000)]
Add a missing symbol after r144524.

Unreviewed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-03-01

* WebKit.vcproj/WebKitExports.def.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144525 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSource/WebCore: Moved markerTextForListItem from TestRunner to Internals
commit-queue@webkit.org [Sat, 2 Mar 2013 05:06:30 +0000 (05:06 +0000)]
Source/WebCore: Moved markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

TestRunner framework is an old way of testing webkit, it would be
better to incorporate the testing frame directly into the WebCore itself
as to make it more compatible with WK2.

* testing/Internals.cpp:
(WebCore::Internals::markerTextForListItem):
(WebCore):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit/efl: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Source/WebKit/gtk: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
* WebCoreSupport/DumpRenderTreeSupportGtk.h:
(DumpRenderTreeSupportGtk):

Source/WebKit/mac: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

* DOM/WebDOMOperations.mm:
* DOM/WebDOMOperationsPrivate.h:

Source/WebKit/qt: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
* WebCoreSupport/DumpRenderTreeSupportQt.h:

Tools: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

* DumpRenderTree/TestRunner.cpp:
(TestRunner::staticFunctions):
* DumpRenderTree/TestRunner.h:
(TestRunner):
* DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp:
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::TestRunner):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):
* DumpRenderTree/efl/TestRunnerEfl.cpp:
* DumpRenderTree/gtk/TestRunnerGtk.cpp:
* DumpRenderTree/mac/TestRunnerMac.mm:
* DumpRenderTree/qt/TestRunnerQt.cpp:
* DumpRenderTree/qt/TestRunnerQt.h:
(TestRunnerQt):
* DumpRenderTree/win/TestRunnerWin.cpp:
* DumpRenderTree/wx/TestRunnerWx.cpp:
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(TestRunner):

LayoutTests: Move markerTextForListItem from TestRunner to Internals
https://bugs.webkit.org/show_bug.cgi?id=110939

Patch by Jason Anderssen <janderssen@gmail.com> on 2013-03-01
Reviewed by Benjamin Poulain.

* fast/lists/resources/dump-list.js:
(dumpListItemAsHTML):
(testListItemMarkerEqualsListItemText):
* fast/lists/w3-css3-list-styles-numeric.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144524 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed. Rolled Chromium DEPS to r185662. Requested by
commit-queue@webkit.org [Sat, 2 Mar 2013 03:44:02 +0000 (03:44 +0000)]
Unreviewed.  Rolled Chromium DEPS to r185662.  Requested by
"James Robinson" <jamesr@chromium.org> via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-01

* DEPS:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144523 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDon't leak Documents when using MutationObserver from extensions
commit-queue@webkit.org [Sat, 2 Mar 2013 02:35:53 +0000 (02:35 +0000)]
Don't leak Documents when using MutationObserver from extensions
https://bugs.webkit.org/show_bug.cgi?id=111234

Patch by Elliott Sprehn <esprehn@gmail.com> on 2013-03-01
Reviewed by Adam Barth.

.:

* ManualTests/leak-observer-nonmain-world.html: Added.

Source/WebCore:

MutationObserverCallback holds a WorldContextHandle which secretly isn't
a handle to anything when it's for the main world. When it's for a non-main
world though, like those used in extensions, it becomes a strong reference
to the v8::Context which results in leaks by creating cycles:

MutationObserver -> Callback -> World -> Document -> Node -> MutationObserver.

Instead we should keep a RefPtr to a DOMWrapperWorld in the callback and then
get the v8::Context from that inside handleEvent.

Tests: ManualTests/leak-observer-nonmain-world.html

* bindings/v8/V8Binding.cpp:
(WebCore::toV8Context): Added overload that takes a DOMWrapperWorld.
* bindings/v8/V8Binding.h:
* bindings/v8/V8MutationCallback.cpp:
(WebCore::V8MutationCallback::V8MutationCallback):
(WebCore::V8MutationCallback::handleEvent):
* bindings/v8/V8MutationCallback.h:
(V8MutationCallback):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144522 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoBUILD FIX: testapi should link to Foundation, not CoreFoundation
ddkilzer@apple.com [Sat, 2 Mar 2013 01:31:54 +0000 (01:31 +0000)]
BUILD FIX: testapi should link to Foundation, not CoreFoundation

* JavaScriptCore.xcodeproj/project.pbxproj: Change testapi to
link to Foundation.framework instead of CoreFoundation.framework
since it uses NS types.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144521 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[css exclusions] Move ExclusionShapeInsideInfo into RenderBlockRareData
betravis@adobe.com [Sat, 2 Mar 2013 01:16:29 +0000 (01:16 +0000)]
[css exclusions] Move ExclusionShapeInsideInfo into RenderBlockRareData
https://bugs.webkit.org/show_bug.cgi?id=110995

Reviewed by Julien Chaffraix.

This patch moves ExclusionShapeInsideInfo into the RenderBlockRareData struct,
which enables us to move away from the global ExclusionShapeInsideInfo map.
Some additional refactoring was done to remove ExclusionShapeInsideInfo's
dependency on InlineIterator, which depended on RenderBlock. This work required
adding a new LineSegmentIterator struct.

Refactoring, no new tests.

* rendering/ExclusionShapeInsideInfo.cpp:
(WebCore):
(WebCore::LineSegmentRange::LineSegmentRange): Moving the InlineIterator
constructor to the .cpp file, as InlineIterator is now forward declared in
the .h file.
(WebCore::ExclusionShapeInsideInfo::isEnabledFor): Moving isEnabledFor to
the .cpp file, as RenderBlock is now forward declared in the .h file.
* rendering/ExclusionShapeInsideInfo.h:
(WebCore):
(LineSegmentIterator): A simple struct for containing segment positions for
layout.
(WebCore::LineSegmentIterator::LineSegmentIterator): Constructor.
(LineSegmentRange): Transitioning to store LineSegmentIterator.
(WebCore::LineSegmentRange::LineSegmentRange): Ditto.
(ExclusionShapeInsideInfo):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::willBeDestroyed): Destroying a block will now destroy
its ExclusionShapeInsideInfo, so there is no need to remove it from the map.
(WebCore):
(WebCore::RenderBlock::updateExclusionShapeInsideInfoAfterStyleChange): Use
the RenderBlockRareData struct rather than the global map.
* rendering/RenderBlock.h:
(WebCore):
(WebCore::RenderBlock::ensureExclusionShapeInsideInfo): Ensure an info struct
is present if the shape-inside style is set.
(WebCore::RenderBlock::exclusionShapeInsideInfo): Look up the info struct for
the current block.
(WebCore::RenderBlock::setExclusionShapeInsideInfo): Update the info struct
for the current block.
(RenderBlockRareData): Add the ExclusionShapeInsideInfo member.
* rendering/RenderBlockLineLayout.cpp:
(WebCore::constructBidiRunsForLine): Construct the appropriate offsets during
layout based on the stored LineSegmentIterators.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144520 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoEventHandler::handleGestureScrollUpdate() should invoke the user-generated scroll...
tdanderson@chromium.org [Sat, 2 Mar 2013 01:08:22 +0000 (01:08 +0000)]
EventHandler::handleGestureScrollUpdate() should invoke the user-generated scroll routines
so its behavior matches other user-initiated scrolls
https://bugs.webkit.org/show_bug.cgi?id=109769

Reviewed by James Robinson.

Source/WebCore:

To ensure that the scrolling behavior of GestureScrollUpdate events are consistent with
the scrolling behavior of mousewheel events, use the existing user-generated scroll logic
instead of calling into RenderLayer::scrollByRecursively(). This patch fixes the bug
reported in https://bugs.webkit.org/show_bug.cgi?id=109316, where the example page can
be scrolled using touch but cannot be scrolled using mousewheels.

Note that this patch does not use any of the mousewheel event-handling code.

Tests: fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html
       fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html
       fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html
       fast/events/touch/gesture/touch-gesture-noscroll-body.html

* page/EventHandler.cpp:
(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::handleGestureScrollBegin):
(WebCore::EventHandler::handleGestureScrollUpdate):
(WebCore::EventHandler::sendScrollEventToView):
    By calling this function at the start of handleGestureScrollUpdate() in the case
    where |m_scrollGestureHandlingNode| is null, we ensure that the scroll updates
    can still scroll the page itself, if possible.
(WebCore):
(WebCore::EventHandler::clearGestureScrollNodes):
* page/EventHandler.h:
(EventHandler):
* platform/PlatformWheelEvent.h:
(WebCore::PlatformWheelEvent::setHasPreciseScrollingDeltas):

Source/WebKit/chromium:

Clear the nodes corresponding to a fling scroll event when the event ends.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::updateAnimations):

LayoutTests:

Four new layout tests have been added and touch-gesture-scroll-page.html has been
modified to demonstrate that this patch fixes two existing bugs. See the inline
comments below for details.

Because I am now using the existing user-generated scroll logic, the delta for a single
GestureScrollUpdate event will not be propagated to the parent of the targeted node
unless the targeted node has no remaining scrollable area. So the changes to the
existing layout tests have been made to ensure that the targeted node has been fully
scrolled before subsequent GestureScrollUpdate events will scroll the parent(s) of
the targeted node.

I have also removed the function recordScroll() from the existing layout tests
because this function already exists in the included file resources/gesture-helpers.js.

* fast/events/touch/gesture/touch-gesture-noscroll-body-expected.txt: Added.
* fast/events/touch/gesture/touch-gesture-noscroll-body-propagated-expected.txt: Added.
* fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
* fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden-expected.txt: Added.
* fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
* fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden-expected.txt: Added.
* fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
* fast/events/touch/gesture/touch-gesture-noscroll-body.html: Copied from LayoutTests/fast/events/touch/gesture/touch-gesture-scroll-page.html.
* fast/events/touch/gesture/touch-gesture-scroll-div-not-propagated.html:
* fast/events/touch/gesture/touch-gesture-scroll-div-propagated.html:
* fast/events/touch/gesture/touch-gesture-scroll-div-twice-propagated.html:
* fast/events/touch/gesture/touch-gesture-scroll-iframe-not-propagated.html:
* fast/events/touch/gesture/touch-gesture-scroll-iframe-propagated.html:
* fast/events/touch/gesture/touch-gesture-scroll-page-not-propagated.html:
* fast/events/touch/gesture/touch-gesture-scroll-page-propagated.html:
* fast/events/touch/gesture/touch-gesture-scroll-page.html:
      I modified this layout test in order to add test coverage for another bug
      which is fixed by this patch: if the hit test performed on a GestureScrollBegin
      does not target a specific node, the subsequent GestureScrollUpdate events should
      still attempt to scroll the page itself. This is consistent with how mousewheel
      events behave.
* platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-expected.txt: Added.
* platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-propagated-expected.txt: Added.
* platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden-expected.txt: Added.
* platform/chromium/fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden-expected.txt: Added.
      These four new layout tests verify that a non-scrollable body will not scroll,
      as reported in https://bugs.webkit.org/show_bug.cgi?id=109316.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144519 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Revert r143827 to restore WebHelperPluginImpl's call to frameDetached()
commit-queue@webkit.org [Sat, 2 Mar 2013 01:05:07 +0000 (01:05 +0000)]
[chromium] Revert r143827 to restore WebHelperPluginImpl's call to frameDetached()
https://bugs.webkit.org/show_bug.cgi?id=111232

Patch by David Dorwin <ddorwin@chromium.org> on 2013-03-01
Reviewed by Adam Barth.

This patch reverts r143827, which causes a crash in failure conditions:
http://crbug.com/178848

* src/WebHelperPluginImpl.cpp:
(WebKit::WebHelperPluginImpl::destoryPage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144518 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoIndexedDB: Avoid ScriptValue copies in IDBAny
alecflett@chromium.org [Sat, 2 Mar 2013 01:04:29 +0000 (01:04 +0000)]
IndexedDB: Avoid ScriptValue copies in IDBAny
https://bugs.webkit.org/show_bug.cgi?id=111002

Reviewed by Adam Barth.

This avoids some v8 handle thrashing in the long term,
and protects us against some crashes in the short term.

The crashes will be fixed in
https://bugs.webkit.org/show_bug.cgi?id=110206.

* Modules/indexeddb/IDBAny.cpp:
(WebCore::IDBAny::createNull):
(WebCore::IDBAny::createString):
(WebCore::IDBAny::IDBAny):
(WebCore::IDBAny::scriptValue):
* Modules/indexeddb/IDBAny.h:
(WebCore::IDBAny::create):
(IDBAny):
(WebCore::IDBAny::keyPath):
* bindings/v8/custom/V8IDBAnyCustom.cpp:
(WebCore::toV8):
(WebCore):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144517 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed gardening of AppleWin port.
roger_fong@apple.com [Sat, 2 Mar 2013 01:01:47 +0000 (01:01 +0000)]
Unreviewed gardening of AppleWin port.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144516 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[BlackBerry] Upstream smart selection
commit-queue@webkit.org [Sat, 2 Mar 2013 01:00:59 +0000 (01:00 +0000)]
[BlackBerry] Upstream smart selection
https://bugs.webkit.org/show_bug.cgi?id=111226

Patch by Iris Wu <shuwu@rim.com> on 2013-03-01
Reviewed by Rob Buis.

1.  Extend the touch hold text selection to next paragraph.
2.  Draw and expand overlay over text as touch hold selection expands.
    Select paragraph when it's entirely covered by overlay.
3.  Start scrolling at a constant rate when the end of
    next pargraph is not in the viewport.

Reviewed Internally By Genevieve Mak and Mike Fenton.
PR 217897 238485 258279 279042 299779

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::selectAtDocumentPoint):
(BlackBerry::WebKit::WebPage::expandSelection):
(WebKit):
(BlackBerry::WebKit::WebPage::setOverlayExpansionPixelHeight):
(BlackBerry::WebKit::WebPagePrivate::setOverlayExpansionPixelHeight):
(BlackBerry::WebKit::WebPage::setParagraphExpansionPixelScrollMargin):
* Api/WebPage.h:
* Api/WebPageClient.h:
* Api/WebPage_p.h:
(WebPagePrivate):
* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::cancelSelection):
(BlackBerry::WebKit::SelectionHandler::selectAtPoint):
(BlackBerry::WebKit::isInvalidLine):
(WebKit):
(BlackBerry::WebKit::isInvalidParagraph):
(BlackBerry::WebKit::SelectionHandler::selectNextParagraph):
(BlackBerry::WebKit::SelectionHandler::drawOverlay):
(BlackBerry::WebKit::SelectionHandler::findNextOverlayRegion):
(BlackBerry::WebKit::SelectionHandler::expandSelection):
(BlackBerry::WebKit::SelectionHandler::ensureSelectedTextVisible):
(BlackBerry::WebKit::SelectionHandler::setParagraphExpansionScrollMargin):
(BlackBerry::WebKit::SelectionHandler::expandSelectionToGranularity):
* WebKitSupport/SelectionHandler.h:
(SelectionHandler):
(BlackBerry::WebKit::SelectionHandler::setOverlayExpansionHeight):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144515 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed gardening of AppleWin port.
roger_fong@apple.com [Sat, 2 Mar 2013 00:55:29 +0000 (00:55 +0000)]
Unreviewed gardening of AppleWin port.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144514 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed gardening of AppleWin port.
roger_fong@apple.com [Fri, 1 Mar 2013 23:46:55 +0000 (23:46 +0000)]
Unreviewed gardening of AppleWin port.

* platform/win/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144513 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Mark some software compositing tests as failing before landing anti-aliasi...
jamesr@google.com [Fri, 1 Mar 2013 23:22:00 +0000 (23:22 +0000)]
[chromium] Mark some software compositing tests as failing before landing anti-aliasing changes
https://bugs.webkit.org/show_bug.cgi?id=111224

* platform/chromium/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144512 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDon't use legacy test names when returning results from PerfTest.run
rniwa@webkit.org [Fri, 1 Mar 2013 22:55:03 +0000 (22:55 +0000)]
Don't use legacy test names when returning results from PerfTest.run
https://bugs.webkit.org/show_bug.cgi?id=111148

Reviewed by Dirk Pranke.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTestMetric.name): Renamed from metric.
(PerfTest.test_name_without_file_extension): Extracted from legacy_chromium_bot_compatible_test_name.
(PerfTest.run): Use metric name instead of the legacy name to store iteration values.
(ChromiumStylePerfTest.parse_and_log_output): Use the metric name to store results as done in PerfTest.run.

* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPerfTestMetric.test_init_set_time_metric):
(TestPerfTestMetric.legacy_chromium_bot_compatible_test_name): Removed. The integration tests test this.
(TestReplayPerfTest.test_run_with_driver_accumulates_results):
(TestReplayPerfTest.test_run_with_driver_accumulates_memory_results):

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner.__init__):
(PerfTestsRunner._generate_results_dict): Updated to iterate over (test, metrics) pair. Use view_source_url
to obtain the trac URL instead of hard coding it.
(PerfTestsRunner._run_tests_set):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144510 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Mark more flaky tests related to scrollbar ordering
enne@google.com [Fri, 1 Mar 2013 22:53:30 +0000 (22:53 +0000)]
[chromium] Mark more flaky tests related to scrollbar ordering
https://bugs.webkit.org/show_bug.cgi?id=111199

Unreviewed gardening.

* platform/chromium/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144509 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSupport padding, margin and border for internal UA cue styling
vcarbune@chromium.org [Fri, 1 Mar 2013 22:42:02 +0000 (22:42 +0000)]
Support padding, margin and border for internal UA cue styling
https://bugs.webkit.org/show_bug.cgi?id=110703

Reviewed by Eric Carlson.

Source/WebCore:

For some particular user agent styling this allows the possibility
of making the window around the cue text bigger to match some user
styles (see CaptionUserPreferencesMac::captionsStyleSheetOverride).

These properties *cannot* be set through by using the ::cue
pseudo-element and, as specified, are used only internally.

Note: This patch is identical to the previously commited one,
as it was rolled back without related tests failing.

Test: media/track/track-cue-rendering-with-padding.html

* css/mediaControls.css:
(video::-webkit-media-text-track-display): Set the CSS box model
to include in the specified width or height the values of
padding / margin / border by using -webkit-box-sizing and avoid
overflow over 100% width because of having these properties set.
* rendering/RenderTextTrackCue.cpp:
(WebCore::RenderTextTrackCue::isOutside): To not interfere with
the regular WebVTT positioning algorithm, the check is done for
the absolute content box.
(WebCore::RenderTextTrackCue::repositionCueSnapToLinesSet): Added
an extra adjustment step to accomodate vertical padding (and not
overflow the cue container)

LayoutTests:

* media/track/track-cue-rendering-with-padding-expected.txt: Added.
* media/track/track-cue-rendering-with-padding.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144508 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoREGRESSION (r125809): CFStrings created via StringImpl::createCFString() might refer...
aestes@apple.com [Fri, 1 Mar 2013 22:39:10 +0000 (22:39 +0000)]
REGRESSION (r125809): CFStrings created via StringImpl::createCFString()  might reference freed memory when Objective-C garbage collection is enabled
https://bugs.webkit.org/show_bug.cgi?id=111219

Reviewed by Benjamin Poulain.

StringImpl::createCFString() uses CFStringCreateWithBytesNoCopy() in
order to create CFString without making an unnecessary copy. In order
to ensure that the the StringImpl's backing buffer isn't deallocated
while the CFString is still alive, we use a custom CFAllocator to
ref/deref the StringImpl at the appropriate times.

However, custom allocators aren't supported when Objective-C garbage
collection is enabled, so in this case we use the default CF allocator.
Since we can't guarantee the lifetime of the StringImpl in this case,
we should just fall back to copying the string, as we did prior to r125809.

* platform/text/cf/StringImplCF.cpp:
(garbageCollectionEnabled): Moved the check for whether garbage
collection is enabled from StringWrapperCFAllocator::create() to here.
(WTF::StringWrapperCFAllocator::create): Call garbageCollectionEnabled().
(WTF::StringImpl::createCFString): If garbage collection is enabled,
call the variants of CFStringCreate that copy the string.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144507 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[GTK] Expose more of the configuration step to the gyp build
commit-queue@webkit.org [Fri, 1 Mar 2013 22:38:28 +0000 (22:38 +0000)]
[GTK] Expose more of the configuration step to the gyp build
https://bugs.webkit.org/show_bug.cgi?id=111213

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-03-01
Reviewed by Dirk Pranke.

Expose more of the configuration phase to the gyp build, including WebKit features
and binary paths.

* gyp/Configuration.gypi.in: Add templatized gyp variables for the new configuration bits.
* gyp/autogen.sh: Properly link up the WebKit features script. So we can access it
relatively as if we were at the top-level of the source directory.
* gyp/configure.ac: Export the WebKit features.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144506 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAX: Upstream iOS Accessibility layout tests
cfleizach@apple.com [Fri, 1 Mar 2013 22:22:03 +0000 (22:22 +0000)]
AX: Upstream iOS Accessibility layout tests
https://bugs.webkit.org/show_bug.cgi?id=111187

Reviewed by David Kilzer.

Upstream the latest iOS Accessibility layout tests.

* platform/iphone-simulator: Added.
* platform/iphone-simulator/accessibility: Added.
* platform/iphone-simulator/accessibility/accessibility-aria-table-children-expected.txt: Added.
* platform/iphone-simulator/accessibility/accessibility-aria-table-children.html: Added.
* platform/iphone-simulator/accessibility/accessibility-crash-in-axcontainer-expected.txt: Added.
* platform/iphone-simulator/accessibility/accessibility-crash-in-axcontainer.html: Added.
* platform/iphone-simulator/accessibility/accessibility-hint-expected.txt: Added.
* platform/iphone-simulator/accessibility/accessibility-hint.html: Added.
* platform/iphone-simulator/accessibility/aria-pressed-state-expected.txt: Added.
* platform/iphone-simulator/accessibility/aria-pressed-state.html: Added.
* platform/iphone-simulator/accessibility/centerpoint-expected.txt: Added.
* platform/iphone-simulator/accessibility/centerpoint.html: Added.
* platform/iphone-simulator/accessibility/dom-focus-fires-on-correct-element-expected.txt: Added.
* platform/iphone-simulator/accessibility/dom-focus-fires-on-correct-element.html: Added.
* platform/iphone-simulator/accessibility/focus-change-notifications-expected.txt: Added.
* platform/iphone-simulator/accessibility/focus-change-notifications.html: Added.
* platform/iphone-simulator/accessibility/header-elements-expected.txt: Added.
* platform/iphone-simulator/accessibility/header-elements.html: Added.
* platform/iphone-simulator/accessibility/identifier-expected.txt: Added.
* platform/iphone-simulator/accessibility/identifier.html: Added.
* platform/iphone-simulator/accessibility/internal-link-expected.txt: Added.
* platform/iphone-simulator/accessibility/internal-link.html: Added.
* platform/iphone-simulator/accessibility/link-with-images-text-expected.txt: Added.
* platform/iphone-simulator/accessibility/link-with-images-text.html: Added.
* platform/iphone-simulator/accessibility/link-with-only-image-expected.txt: Added.
* platform/iphone-simulator/accessibility/link-with-only-image.html: Added.
* platform/iphone-simulator/accessibility/math-expected.txt: Added.
* platform/iphone-simulator/accessibility/math.html: Added.
* platform/iphone-simulator/accessibility/mixed-checkboxes-expected.txt: Added.
* platform/iphone-simulator/accessibility/mixed-checkboxes.html: Added.
* platform/iphone-simulator/accessibility/no-child-link-header-expected.txt: Added.
* platform/iphone-simulator/accessibility/no-child-link-header.html: Added.
* platform/iphone-simulator/accessibility/non-contiguous-link-expected.txt: Added.
* platform/iphone-simulator/accessibility/non-contiguous-link.html: Added.
* platform/iphone-simulator/accessibility/password-value-expected.txt: Added.
* platform/iphone-simulator/accessibility/password-value.html: Added.
* platform/iphone-simulator/accessibility/placeholder-value-expected.txt: Added.
* platform/iphone-simulator/accessibility/placeholder-value.html: Added.
* platform/iphone-simulator/accessibility/popup-button-value-label-expected.txt: Added.
* platform/iphone-simulator/accessibility/popup-button-value-label.html: Added.
* platform/iphone-simulator/accessibility/radio-button-expected.txt: Added.
* platform/iphone-simulator/accessibility/radio-button.html: Added.
* platform/iphone-simulator/accessibility/secure-text-field-expected.txt: Added.
* platform/iphone-simulator/accessibility/secure-text-field.html: Added.
* platform/iphone-simulator/accessibility/selected-buttons-expected.txt: Added.
* platform/iphone-simulator/accessibility/selected-buttons.html: Added.
* platform/iphone-simulator/accessibility/selected-text-expected.txt: Added.
* platform/iphone-simulator/accessibility/selected-text.html: Added.
* platform/iphone-simulator/accessibility/tab-role-expected.txt: Added.
* platform/iphone-simulator/accessibility/tab-role.html: Added.
* platform/iphone-simulator/accessibility/table-cell-for-row-col-expected.txt: Added.
* platform/iphone-simulator/accessibility/table-cell-for-row-col.html: Added.
* platform/iphone-simulator/accessibility/table-cell-ranges-expected.txt: Added.
* platform/iphone-simulator/accessibility/table-cell-ranges.html: Added.
* platform/iphone-simulator/accessibility/tables-lists-expected.txt: Added.
* platform/iphone-simulator/accessibility/tables-lists.html: Added.
* platform/iphone-simulator/accessibility/text-line-no-ignored-elements-expected.txt: Added.
* platform/iphone-simulator/accessibility/text-line-no-ignored-elements.html: Added.
* platform/iphone-simulator/accessibility/text-marker-list-item-expected.txt: Added.
* platform/iphone-simulator/accessibility/text-marker-list-item.html: Added.
* platform/iphone-simulator/accessibility/text-marker-validation-expected.txt: Added.
* platform/iphone-simulator/accessibility/text-marker-validation.html: Added.
* platform/iphone-simulator/accessibility/text-role-expected.txt: Added.
* platform/iphone-simulator/accessibility/text-role.html: Added.
* platform/iphone-simulator/accessibility/textfield-in-axvalue-expected.txt: Added.
* platform/iphone-simulator/accessibility/textfield-in-axvalue.html: Added.
* platform/iphone-simulator/accessibility/url-test-expected.txt: Added.
* platform/iphone-simulator/accessibility/url-test.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144504 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed AppleWin build fix.
roger_fong@apple.com [Fri, 1 Mar 2013 22:14:33 +0000 (22:14 +0000)]
Unreviewed AppleWin build fix.

* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::createCFURLConnection):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144503 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[GTK] Allow sharing the WebCore include list with the Chromium build
commit-queue@webkit.org [Fri, 1 Mar 2013 22:03:48 +0000 (22:03 +0000)]
[GTK] Allow sharing the WebCore include list with the Chromium build
https://bugs.webkit.org/show_bug.cgi?id=110241

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-03-01
Reviewed by Dirk Pranke.

* WebCore.gyp/WebCoreGTK.gyp: Added. A skeleton gyp file for WebCoreGTK+.
* WebCore.gypi: Added shared include directories.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144502 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed. Add an extra project that assembles all project build logs on Windows...
roger_fong@apple.com [Fri, 1 Mar 2013 22:02:03 +0000 (22:02 +0000)]
Unreviewed. Add an extra project that assembles all project build logs on Windows into a single file.
https://bugs.webkit.org/show_bug.cgi?id=111202

This is useful for running VCExpress builds from command line because there is
no unified solution output, only per project build logs.
The project will be run as the last project in the solution.

* win/AssembleBuildLogs: Added.
* win/AssembleBuildLogs/AssembleBuildLogs.vcxproj: Added.
* win/AssembleBuildLogs/AssembleBuildLogs.vcxproj.filters: Added.
* win/AssembleBuildLogs/AssembleLogs.cmd: Added.
* win/AssembleBuildLogs/README: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144500 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago Make in-memory blobs work in NetworkProcess
ap@apple.com [Fri, 1 Mar 2013 22:00:57 +0000 (22:00 +0000)]
    Make in-memory blobs work in NetworkProcess
        https://bugs.webkit.org/show_bug.cgi?id=111132

        Reviewed by Sam Weinig.

        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
        (WebKit::NetworkConnectionToWebProcess::registerBlobURL):
        (WebKit::NetworkConnectionToWebProcess::registerBlobURLFromURL):
        (WebKit::NetworkConnectionToWebProcess::unregisterBlobURL):
        * NetworkProcess/NetworkConnectionToWebProcess.h:
        Implement BlobRegistry interface by using BlobRegistryImpl (same one as used in
        WebProcess in non-PPT mode).

        * NetworkProcess/NetworkConnectionToWebProcess.messages.in: Added three messages
        needed for BlobRegistry.

        * NetworkProcess/NetworkProcess.cpp:
        * NetworkProcess/NetworkProcessPlatformStrategies.cpp: Added.
        * NetworkProcess/NetworkProcessPlatformStrategies.h: Added.
        Added a mostly empty platform strategy, just for FormData to talk to BlobRegistry.
        Perhaps we'll find a way to avoid this WebCore code path in NetworkProcess, because
        we obviously know which registry implementation is in use in this process.

        * Shared/FileAPI: Added.
        * Shared/FileAPI/BlobRegistrationData.cpp: Added.
        * Shared/FileAPI/BlobRegistrationData.h: Added.
        Added a class for passing BlobData and extension handles over IPC.
        This uses a trick with mutable a member to avoid copying decoded BlobStorageData.

        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/FileAPI: Added.
        * WebProcess/FileAPI/BlobRegistryProxy.cpp: Added.
        * WebProcess/FileAPI/BlobRegistryProxy.h: Added.
        A proxy implementation of BlobRegistry that just sends requests over IPC. We only
        need async ones.

        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::createBlobRegistry):
        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
        Create an appropriate BlobRegistry.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144499 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoThreaded HTML Parser has an extra copy of every byte from the network
eric@webkit.org [Fri, 1 Mar 2013 21:53:26 +0000 (21:53 +0000)]
Threaded HTML Parser has an extra copy of every byte from the network
https://bugs.webkit.org/show_bug.cgi?id=111135

Reviewed by Adam Barth.

Source/WebCore:

Every LayoutTest executes this code in threaded parsing mode.

* dom/DecodedDataDocumentParser.cpp:
(WebCore::DecodedDataDocumentParser::appendBytes):
 - Pass ownership of the decoded string to the parser.
(WebCore::DecodedDataDocumentParser::flush):
 - Same.
* dom/DecodedDataDocumentParser.h:
(DecodedDataDocumentParser):
* dom/Document.cpp:
(WebCore::Document::setContent):
* dom/DocumentParser.h:
(DocumentParser):
* dom/RawDataDocumentParser.h:
(WebCore::RawDataDocumentParser::append):
* html/FTPDirectoryDocument.cpp:
(FTPDirectoryDocumentParser):
(WebCore::FTPDirectoryDocumentParser::append):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::append):
* html/parser/HTMLDocumentParser.h:
(HTMLDocumentParser):
* html/parser/HTMLViewSourceParser.cpp:
(WebCore::HTMLViewSourceParser::append):
* html/parser/HTMLViewSourceParser.h:
(HTMLViewSourceParser):
* html/parser/TextDocumentParser.cpp:
(WebCore::TextDocumentParser::append):
* html/parser/TextDocumentParser.h:
(TextDocumentParser):
* loader/DocumentWriter.cpp:
(WebCore::DocumentWriter::replaceDocument):
* xml/parser/XMLDocumentParser.cpp:
(WebCore::XMLDocumentParser::append):
* xml/parser/XMLDocumentParser.h:
(XMLDocumentParser):
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::resumeParsing):

Source/WTF:

The threaded html parser needs to accept ownership
of a string buffer.  The easiest way to do this seemed
to be to use a PassRefPtr<StringImpl>, but there was no way
to generated one from a String (easily), so I added one.

* wtf/text/WTFString.h:
(WTF::String::releaseImpl):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144498 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[New Multicolumn] Change inRenderFlowThread to follow containing block chain
hyatt@apple.com [Fri, 1 Mar 2013 21:44:06 +0000 (21:44 +0000)]
[New Multicolumn] Change inRenderFlowThread to follow containing block chain
https://bugs.webkit.org/show_bug.cgi?id=111206

Reviewed by Simon Fraser.

Source/WebCore:

This patch removes inRenderFlowThread and changes enclosingRenderFlowThread()
to flowThreadContainingBlock(). flowThreadContainingBlock() now follows
the containing block chain instead of the parent chain when outside of layout.
(It already did the right thing when called during layout.)

By removing inRenderFlowThread (which was following the parent chain), all
code that is checking for flow thread containment now correctly uses the
containing block chain. This allows for content to escape in-flow flow threads
and do the right thing without asserting.

Test: fast/multicol/positioned-outside-of-columns.html

* dom/WebKitNamedFlow.cpp:
(WebCore::inFlowThread):
(WebCore::WebKitNamedFlow::getRegionsByContent):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::removeLeftoverAnonymousBlock):
(WebCore::RenderBlock::collapseAnonymousBoxChild):
(WebCore::RenderBlock::updateRegionsAndExclusionsLogicalSize):
(WebCore::RenderBlock::computeRegionRangeForBlock):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::computeOverflow):
(WebCore::RenderBlock::determineLogicalLeftPositionForChild):
(WebCore::RenderBlock::computeLogicalLocationForFloat):
(WebCore::RenderBlock::logicalLeftOffsetForContent):
(WebCore::RenderBlock::logicalRightOffsetForContent):
(WebCore::RenderBlock::hasNextPage):
(WebCore::RenderBlock::applyBeforeBreak):
(WebCore::RenderBlock::applyAfterBreak):
(WebCore::RenderBlock::pageLogicalTopForOffset):
(WebCore::RenderBlock::pageLogicalHeightForOffset):
(WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
(WebCore::RenderBlock::adjustForUnsplittableChild):
(WebCore::RenderBlock::adjustLinePositionForPagination):
(WebCore::RenderBlock::lineWidthForPaginatedLineChanged):
(WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage):
(WebCore::RenderBlock::regionAtBlockOffset):
(WebCore::RenderBlock::setStaticInlinePositionForChild):
(WebCore::RenderBlock::logicalWidthChangedInRegions):
(WebCore::RenderBlock::clampToStartAndEndRegions):
* rendering/RenderBlock.h:
(RenderBlock):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::layoutExclusionShapeInsideInfo):
(WebCore::LineLayoutState::LineLayoutState):
(WebCore::LineLayoutState::flowThread):
(WebCore::LineLayoutState::setFlowThread):
(LineLayoutState):
(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::linkToEndLineIfNeeded):
(WebCore::RenderBlock::layoutInlineChildren):
(WebCore::RenderBlock::determineStartPosition):
(WebCore::RenderBlock::checkPaginationAndFloatsAtEndLine):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::clearRenderBoxRegionInfo):
(WebCore::RenderBox::renderBoxRegionInfo):
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
(WebCore::RenderBox::computePositionedLogicalWidth):
(WebCore::RenderBox::computePositionedLogicalHeight):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::objectInFlowRegion):
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutBlock):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::updateAlwaysCreateLineBoxes):
* rendering/RenderLayer.cpp:
(WebCore::accumulateOffsetTowardsAncestor):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::canBeComposited):
* rendering/RenderMedia.cpp:
(WebCore::RenderMedia::layout):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::locateFlowThreadContainingBlock):
(WebCore::RenderObject::containerForRepaint):
(WebCore::RenderObject::willBeRemovedFromTree):
(WebCore::RenderObject::removeFromRenderFlowThread):
(WebCore::RenderObject::removeFromRenderFlowThreadRecursive):
* rendering/RenderObject.h:
(RenderObject):
(WebCore::RenderObject::flowThreadContainingBlock):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::setObjectStyleInRegion):
* rendering/RenderView.cpp:
(WebCore::RenderView::addChild):
(WebCore::RenderView::initializeLayoutState):
(WebCore::RenderView::setSelection):
* rendering/RenderView.h:
(WebCore::RenderView::pushLayoutState):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::containingRegion):
(WebCore::RootInlineBox::setContainingRegion):

LayoutTests:

* fast/multicol/positioned-outside-of-columns-expected.html: Added.
* fast/multicol/positioned-outside-of-columns.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144497 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUncomment ENABLE_SVG guards to avoid having WebKitPluginProcess link
zandobersek@gmail.com [Fri, 1 Mar 2013 21:36:51 +0000 (21:36 +0000)]
Uncomment ENABLE_SVG guards to avoid having WebKitPluginProcess link
against libWebCoreSVG.la when SVG is disabled.

Rubber-stamped by Gustavo Noronha.

* GNUmakefile.am:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144496 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd SPI for marking a WebView as doing things on behalf of another process
weinig@apple.com [Fri, 1 Mar 2013 21:32:43 +0000 (21:32 +0000)]
Add SPI for marking a WebView as doing things on behalf of another process
https://bugs.webkit.org/show_bug.cgi?id=111125

Reviewed by Alexey Proskuryakov.

Source/WebCore:

* platform/network/NetworkingContext.h:
(NetworkingContext):
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::createCFURLConnection):
* platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::createNSURLConnection):
Set the sourceApplicationAuditData on the URL connection if available.

Source/WebKit/mac:

* WebCoreSupport/WebFrameNetworkingContext.h:
(WebFrameNetworkingContext):
* WebCoreSupport/WebFrameNetworkingContext.mm:
(WebFrameNetworkingContext::sourceApplicationAuditData):
* WebView/WebView.mm:
(-[WebView _setSourceApplicationAuditData:]):
(-[WebView _sourceApplicationAuditData]):
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
(-[WebViewPrivate dealloc]):
* WebView/WebViewPrivate.h:
Add SPI for setting a source application for a WebView.

Source/WebKit2:

* NetworkProcess/mac/RemoteNetworkingContext.h:
* NetworkProcess/mac/RemoteNetworkingContext.mm:
(WebKit::RemoteNetworkingContext::sourceApplicationAuditData):
* WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
* WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
(WebKit::WebFrameNetworkingContext::sourceApplicationAuditData):
Stub out sourceApplicationAuditData() client function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144495 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[BlackBerry] Screen went black while navigating back/forward on the reddit.com page
zhajiang@rim.com [Fri, 1 Mar 2013 21:31:34 +0000 (21:31 +0000)]
[BlackBerry] Screen went black while navigating back/forward on the reddit.com page
https://bugs.webkit.org/show_bug.cgi?id=111192

Patch by Jacky Jiang <zhajiang@rim.com>.
Reviewed by Rob Buis.
Internally reviewed by Jakob Petsovits.

PR: 299783
When going back to the previous reddit.com page, the actual contents
size was much less than the history contents size. However, we expanded
the actual contents size to history contents size which caused a huge
black area below the actual contents.
To fix that, don't restore the contents size from history contents size
and scroll back to the valid contents area if we are about to overscroll.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::restoreHistoryViewState):
* Api/WebPage_p.h:
(WebPagePrivate):
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::restoreViewState):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144494 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed. Increase number of patches processed before clean building on WinEWS...
roger_fong@apple.com [Fri, 1 Mar 2013 21:26:51 +0000 (21:26 +0000)]
Unreviewed. Increase number of patches processed before clean building on WinEWS bots.

* EWSTools/start-queue-win.sh:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144493 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Windows] Unreviewed VS2010 build fix.
bfulgham@webkit.org [Fri, 1 Mar 2013 21:18:46 +0000 (21:18 +0000)]
[Windows] Unreviewed VS2010 build fix.

* WebCore.vcxproj/WebCore.vcxproj: Add missing TimelineTraceEventProcessor
  files to the project.
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144491 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[GTK] Add ANGLE to the GTK+ gyp build
commit-queue@webkit.org [Fri, 1 Mar 2013 21:18:12 +0000 (21:18 +0000)]
[GTK] Add ANGLE to the GTK+ gyp build
https://bugs.webkit.org/show_bug.cgi?id=111128

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-03-01
Reviewed by Dirk Pranke.

Add files that build an ANGLE static library for GTK+ using gyp.

* ANGLE.gyp/ANGLE.gyp: Added.
* ANGLE.gypi: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144490 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoObjective-C API: Passing JS functions to Objective-C callbacks causes JSValue to...
mhahnenberg@apple.com [Fri, 1 Mar 2013 21:14:24 +0000 (21:14 +0000)]
Objective-C API: Passing JS functions to Objective-C callbacks causes JSValue to leak
https://bugs.webkit.org/show_bug.cgi?id=107836

Reviewed by Oliver Hunt.

We've decided to remove support for this feature from the API because there's no way to automatically manage
the memory for clients in a satisfactory manner. Clients can still pass JS functions to Objective-C methods,
but the methods must accept plain JSValues instead of Objective-C blocks.

We now ignore functions that are part of a protocol that inherits from JSExport that accept blocks as arguments.

* API/JSBlockAdaptor.h: Removed.
* API/JSBlockAdaptor.mm: Removed.
* API/ObjCCallbackFunction.mm:
(ArgumentTypeDelegate::typeBlock): Return nil to signal that we want to ignore this function when copying it
to the object from the protocol.
* API/tests/testapi.mm: Added a test to make sure that we ignore methods declared as part of a JSExport-ed protocol
that have block arguments.
(-[TestObject bogusCallback:]):
* JavaScriptCore.gypi: Updated build files.
* JavaScriptCore.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144489 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[BlackBerry] Improve input bounds clipping for search fields.
mifenton@rim.com [Fri, 1 Mar 2013 21:07:34 +0000 (21:07 +0000)]
[BlackBerry] Improve input bounds clipping for search fields.
https://bugs.webkit.org/show_bug.cgi?id=111204

Reviewed by Rob Buis.

PR 292673.

Use the standardized InputHandler function to get the
bounds of an input field so that search fields are
truncated smaller to account for the X.

Reviewed Internally by Gen Mak.

* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::setCaretPosition):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144488 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[css exclusions] setting shape-inside on a parent does not relayout child blocks...
betravis@adobe.com [Fri, 1 Mar 2013 21:02:16 +0000 (21:02 +0000)]
[css exclusions] setting shape-inside on a parent does not relayout child blocks' inline content
https://bugs.webkit.org/show_bug.cgi?id=108128

Reviewed by David Hyatt.

Source/WebCore:

Ensure that blocks lay out when their parent's shape-inside changes.
ExclusionShapeInsideInfo now stores an additional flag indicating whether
the shape has changed and its block's children require layout. Each block
can look up the flag via LayoutState to determine whether it needs to lay
out its children.

Test: fast/exclusions/shape-inside/shape-inside-dynamic-nested.html

* rendering/ExclusionShapeInfo.h:
(WebCore::ExclusionShapeInfo::shapeSizeDirty): Add a method to determine
if the shape has changed.
(ExclusionShapeInfo):
* rendering/ExclusionShapeInsideInfo.h:
(WebCore::ExclusionShapeInsideInfo::setNeedsLayout): Set the flag indicating
layout is necessary.
(WebCore::ExclusionShapeInsideInfo::needsLayout): Retrieve the layout flag.
(ExclusionShapeInsideInfo):
(WebCore::ExclusionShapeInsideInfo::ExclusionShapeInsideInfo): Initialize
the layout flag.
* rendering/RenderBlock.cpp:
(WebCore::exclusionInfoRequiresRelayout): Return true if the shape info should
cause a relayout. Also update the needsLayout flag on the ExclusionShapeInsideInfo.
(WebCore):
(WebCore::RenderBlock::updateRegionsAndExclusionsLogicalSize): Return a boolean
indicating whether regions or exclusions updates should cause a relayout.
(WebCore::RenderBlock::layoutBlock): Relayout children if the shape inside has
changed.
* rendering/RenderBlock.h:
(RenderBlock):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Changing to be a
class method.
(WebCore::LineWidth::LineWidth): Changing to use class method.
(WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Ditto.
(WebCore::constructBidiRunsForLine): Ditto.
(WebCore::RenderBlock::layoutRunsAndFloatsInRange): Ditto.
(WebCore::RenderBlock::LineBreaker::nextLineBreak): Ditto.

LayoutTests:

Test that setting and resetting shape-inside and shape-outside correctly lay out
content inside of child blocks.

* fast/exclusions/shape-inside/shape-inside-dynamic-nested-expected.html: Added.
* fast/exclusions/shape-inside/shape-inside-dynamic-nested.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144487 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDFG Branch(LogicalNot) peephole should not try to optimize and work-around the case...
fpizlo@apple.com [Fri, 1 Mar 2013 20:57:37 +0000 (20:57 +0000)]
DFG Branch(LogicalNot) peephole should not try to optimize and work-around the case where LogicalNot may be otherwise live
https://bugs.webkit.org/show_bug.cgi?id=111209

Reviewed by Oliver Hunt.

Even if it is then everything will work just fine. It's not necessary to check the ref count here.

* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144486 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agogetComputedStyle not implemented for -webkit-column-rule shorthand
commit-queue@webkit.org [Fri, 1 Mar 2013 20:49:51 +0000 (20:49 +0000)]
getComputedStyle not implemented for -webkit-column-rule shorthand
https://bugs.webkit.org/show_bug.cgi?id=111203

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-03-01
Reviewed by Alexis Menard.

Source/WebCore:

Implement getComputedStyle for -webkit-column-rule property.

Test: fast/css/getComputedStyle/getComputedStyle-column-rule.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

LayoutTests:

Add test to check getComputedStyle for -webkit-column-rule.

* fast/css/getComputedStyle/getComputedStyle-column-rule-expected.txt: Added.
* fast/css/getComputedStyle/getComputedStyle-column-rule.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144485 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoREGRESSION(r144318) 1-7% perf. regression on SVG/SvgHitTesting
hyatt@apple.com [Fri, 1 Mar 2013 20:46:20 +0000 (20:46 +0000)]
REGRESSION(r144318) 1-7% perf. regression on SVG/SvgHitTesting
https://bugs.webkit.org/show_bug.cgi?id=111117

Make sure the allocated vector has a capacity of 1, since that is
far and away the most common case.

Reviewed by Andreas Kling.

* rendering/RenderFlowThread.h:
(WebCore):
* rendering/RenderLayer.h:
(WebCore):
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::collectLayerFragments):
* rendering/RenderMultiColumnSet.h:
* rendering/RenderRegion.h:
(WebCore):
(WebCore::RenderRegion::collectLayerFragments):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144484 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoCrash at WebCore::SharedBuffer::hasPlatformData writing an image to the pasteboard.
enrica@apple.com [Fri, 1 Mar 2013 20:43:00 +0000 (20:43 +0000)]
Crash at WebCore::SharedBuffer::hasPlatformData writing an image to the pasteboard.
https://bugs.webkit.org/show_bug.cgi?id=111211.
<rdar://problem/8772758>

Reviewed by Ryosuke Niwa.

This is a speculative fix since we don't have a solid repro case.
Adding null check every time we build a SharedBuffer from an NSData
we have obtained manipulating data from the pasteboard.

* platform/mac/PasteboardMac.mm:
(WebCore::writeFileWrapperAsRTFDAttachment):
(WebCore::Pasteboard::writeImage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144483 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDFG CSE phase shouldn't rely on ref count of nodes, since it doesn't have to
fpizlo@apple.com [Fri, 1 Mar 2013 20:40:05 +0000 (20:40 +0000)]
DFG CSE phase shouldn't rely on ref count of nodes, since it doesn't have to
https://bugs.webkit.org/show_bug.cgi?id=111205

Reviewed by Oliver Hunt.

I don't understand the intuition behind setLocalStoreElimination() validating that the SetLocal's ref count
is 1. I believe this is a hold-over from when setLocalStoreElimination() would match one SetLocal to another,
and then try to eliminate the first SetLocal. But that's not how it works now. Now, setLocalStoreElimination()
is actually Flush elimination: it eliminates any Flush that anchors a SetLocal if it proves that every path
from the SetLocal to the Flush is devoid of operations that may observe the local. It doesn't actually kill
the SetLocal itself: if the SetLocal is live because of other things (other Flushes or GetLocals in other
basic blocks), then the SetLocal will naturally still be alive because th Flush was only keeping the SetLocal
alive by one count rather than being solely responsible for its liveness.

* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::setLocalStoreElimination):
(JSC::DFG::CSEPhase::eliminate):
(JSC::DFG::CSEPhase::performNodeCSE):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144481 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoCrash at WebCore::SharedBuffer::hasPlatformData during paste.
enrica@apple.com [Fri, 1 Mar 2013 20:26:43 +0000 (20:26 +0000)]
Crash at WebCore::SharedBuffer::hasPlatformData during paste.
https://bugs.webkit.org/show_bug.cgi?id=111207.
<rdar://problem/13024528>

Reviewed by Ryosuke Niwa.

This is a speculative fix since we don't have a solid repro case.
Adding null check every time we get a SharedBuffer from the pasteboard.

* platform/mac/PasteboardMac.mm:
(WebCore::Pasteboard::plainText):
(WebCore::documentFragmentWithRTF):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144479 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDon't return statistics in PerfTest.run
rniwa@webkit.org [Fri, 1 Mar 2013 20:04:13 +0000 (20:04 +0000)]
Don't return statistics in PerfTest.run
https://bugs.webkit.org/show_bug.cgi?id=111145

Reviewed by Dirk Pranke.

Simply return a list of values obtained in each iteration from PerfTest.run.
Also simplify various methods as needed.

* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTestMetric.__init__): Moved the code to convert 'Time' metric to 'FrameRate' and 'Runs'
as needed from PerfTestsRunner._generate_results_dict.

(PerfTestMetric.legacy_chromium_bot_compatible_test_name): Always append the metric name now
that we don't have to worry about the backward compatibility here.

(PerfTestMetric.iteration_values): Added.
(PerfTestMetric.unit): Added.
(PerfTestMetric.metric_to_unit):
(PerfTestMetric.time_unit_to_metric): Extracted from PerfTestsRunner._generate_results_dict.

(PerfTest.run):
(PerfTest.log_statistics): Merged compute_statistics and self.output_statistics.

* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPerfTestMetric.test_init_set_missing_unit):
(TestPerfTestMetric.test_init_set_time_metric): Added.
(TestPerfTestMetric.test_legacy_chromium_bot_compatible_test_name):
(TestPerfTestMetric.test_append):
(TestPerfTestMetric.test_compute_statistics): Removed. Integration tests check some of these
test cases and it's not critical to keep math right as they're not used in output JSON anymore.
(TestPerfTest._assert_results_are_correct):
(TestReplayPerfTest.test_run_with_driver_accumulates_results):
(TestReplayPerfTest.test_run_with_driver_accumulates_memory_results):

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._generate_results_dict):

* Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
(EventTargetWrapperTestData): The metric name shows up at the end of the test name as expected.
(SomeParserTestData): Ditto.
(MemoryTestData): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144478 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRename MovHint to MovHintEvent so I can create a NodeType called MovHint
fpizlo@apple.com [Fri, 1 Mar 2013 19:51:31 +0000 (19:51 +0000)]
Rename MovHint to MovHintEvent so I can create a NodeType called MovHint

Rubber stamped by Mark Hahnenberg.

This is similar to the SetLocal/SetLocalEvent naming scheme, where SetLocal is the
NodeType and SetLocalEvent is the VariableEventKind.

* dfg/DFGVariableEvent.cpp:
(JSC::DFG::VariableEvent::dump):
* dfg/DFGVariableEvent.h:
(JSC::DFG::VariableEvent::movHint):
(JSC::DFG::VariableEvent::id):
(JSC::DFG::VariableEvent::operand):
(VariableEvent):
* dfg/DFGVariableEventStream.cpp:
(JSC::DFG::VariableEventStream::reconstruct):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144477 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Mark rtl-iframe-absolute-overflow-scrolled as flaky.
enne@google.com [Fri, 1 Mar 2013 19:23:36 +0000 (19:23 +0000)]
[chromium] Mark rtl-iframe-absolute-overflow-scrolled as flaky.
https://bugs.webkit.org/show_bug.cgi?id=111199

Unreviewed gardening.

* platform/chromium/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144476 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago Build fix for builds with BLOB disabled. This fixes it for me on Mac at least.
ap@apple.com [Fri, 1 Mar 2013 19:17:41 +0000 (19:17 +0000)]
    Build fix for builds with BLOB disabled. This fixes it for me on Mac at least.

        * platform/network/BlobRegistryImpl.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144475 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Curl] Session cookies should not be persistent.
commit-queue@webkit.org [Fri, 1 Mar 2013 19:13:17 +0000 (19:13 +0000)]
[Curl] Session cookies should not be persistent.
https://bugs.webkit.org/show_bug.cgi?id=111060

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-03-01
Reviewed by Brent Fulgham.

Curl saves both persistent cookies, and session cookies to the cookie file.
The session cookies should be deleted before starting a new session.

* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::ResourceHandleManager::ResourceHandleManager): Call method to initialize cookie session.
(WebCore::ResourceHandleManager::initCookieSession): Added method to initialize cookie session.
* platform/network/curl/ResourceHandleManager.h: Added method to initialize cookie session.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144474 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: Navigator should show tree element for each folder in the source path.
vsevik@chromium.org [Fri, 1 Mar 2013 17:57:56 +0000 (17:57 +0000)]
Web Inspector: Navigator should show tree element for each folder in the source path.
https://bugs.webkit.org/show_bug.cgi?id=108943

Reviewed by Pavel Feldman.

Source/WebCore:

NavigatorView now renders tree element for each folder in uiSourceCode uri.
Merging several folders into one tree elememnt when folder has only one folder as a child is supported.
ScriptsNavigator has horizontal scroll now.
Projects are shown in ScriptsNavigator by their displayName. This allows us to show several root file system folders
with the same name in the navigator (e.g. 'Source/WebCore/inspector' and 'LayoutTests/inspector').

Test: inspector/debugger/navigator-view.html: Renamed from scripts-file-selector.html

* English.lproj/localizedStrings.js:
* inspector/front-end/NavigatorView.js:
(WebInspector.NavigatorView):
(WebInspector.NavigatorView.iconClassForType):
(WebInspector.NavigatorView.prototype.addUISourceCode):
(WebInspector.NavigatorView.prototype._getProjectNode):
(WebInspector.NavigatorView.prototype._createProjectNode):
(WebInspector.NavigatorView.prototype._getOrCreateProjectNode):
(WebInspector.NavigatorView.prototype._getFolderNode):
(WebInspector.NavigatorView.prototype._createFolderNode):
(WebInspector.NavigatorView.prototype._getOrCreateFolderNode):
(WebInspector.NavigatorView.prototype._getUISourceCodeParentNode):
(WebInspector.NavigatorView.prototype._getOrCreateUISourceCodeParentNode):
(WebInspector.NavigatorView.prototype.revealUISourceCode):
(WebInspector.NavigatorView.prototype.removeUISourceCode):
(WebInspector.NavigatorView.prototype.rename):
(WebInspector.NavigatorView.prototype.reset):
(.typeWeight):
(WebInspector.NavigatorTreeOutline._treeElementsCompare):
(WebInspector.BaseNavigatorTreeElement):
(WebInspector.BaseNavigatorTreeElement.prototype.type):
(WebInspector.NavigatorFolderTreeElement):
(WebInspector.NavigatorFolderTreeElement.prototype.onpopulate):
(WebInspector.NavigatorFolderTreeElement.prototype.onattach):
(WebInspector.NavigatorSourceTreeElement):
(WebInspector.NavigatorTreeNode):
(WebInspector.NavigatorTreeNode.prototype.treeElement):
(WebInspector.NavigatorTreeNode.prototype.dispose):
(WebInspector.NavigatorTreeNode.prototype.isRoot):
(WebInspector.NavigatorTreeNode.prototype.hasChildren):
(WebInspector.NavigatorTreeNode.prototype.populate):
(WebInspector.NavigatorTreeNode.prototype.wasPopulated):
(WebInspector.NavigatorTreeNode.prototype.didAddChild):
(WebInspector.NavigatorTreeNode.prototype.willRemoveChild):
(WebInspector.NavigatorTreeNode.prototype.isPopulated):
(WebInspector.NavigatorTreeNode.prototype.isEmpty):
(WebInspector.NavigatorTreeNode.prototype.child):
(WebInspector.NavigatorTreeNode.prototype.children):
(WebInspector.NavigatorTreeNode.prototype.appendChild):
(WebInspector.NavigatorTreeNode.prototype.removeChild):
(WebInspector.NavigatorTreeNode.prototype.reset):
(WebInspector.NavigatorRootTreeNode):
(WebInspector.NavigatorRootTreeNode.prototype.isRoot):
(WebInspector.NavigatorRootTreeNode.prototype.treeElement):
(WebInspector.NavigatorRootTreeNode.prototype.wasPopulated):
(WebInspector.NavigatorRootTreeNode.prototype.didAddChild):
(WebInspector.NavigatorRootTreeNode.prototype.willRemoveChild):
(WebInspector.NavigatorUISourceCodeTreeNode):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.treeElement):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.updateTitle):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.hasChildren):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.dispose):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype._titleChanged):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype._workingCopyChanged):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype._workingCopyCommitted):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype._formattedChanged):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.reveal):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.commitHandler):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.cancelHandler):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename.afterEditing):
(WebInspector.NavigatorUISourceCodeTreeNode.prototype.rename):
(WebInspector.NavigatorFolderTreeNode):
(WebInspector.NavigatorFolderTreeNode.prototype.treeElement):
(WebInspector.NavigatorFolderTreeNode.prototype._createTreeElement):
(WebInspector.NavigatorFolderTreeNode.prototype.wasPopulated):
(WebInspector.NavigatorFolderTreeNode.prototype._addChildrenRecursive):
(WebInspector.NavigatorFolderTreeNode.prototype._shouldMerge):
(WebInspector.NavigatorFolderTreeNode.prototype.didAddChild):
(WebInspector.NavigatorFolderTreeNode.prototype.willRemoveChild):
* inspector/front-end/ScriptsNavigator.js:
* inspector/front-end/SimpleWorkspaceProvider.js:
(WebInspector.SimpleProjectDelegate.prototype.displayName):
* inspector/front-end/navigatorView.css:
(.navigator > ol):
(.navigator .base-navigator-tree-element-title):
(.navigator-tabbed-pane .navigator-container):

LayoutTests:

* http/tests/inspector/debugger-test.js:
(initialize_DebuggerTest.):
(initialize_DebuggerTest):
* http/tests/inspector/workspace-test.js:
(initialize_WorkspaceTest.InspectorTest.createWorkspace):
* inspector/debugger/navigator-view-expected.txt: Added.
* inspector/debugger/navigator-view.html: Added.
* inspector/debugger/scripts-file-selector-expected.txt: Removed.
* inspector/debugger/scripts-file-selector.html: Removed.
* inspector/debugger/scripts-panel-expected.txt:
* inspector/debugger/scripts-panel.html:
* inspector/debugger/scripts-sorting-expected.txt:
* inspector/debugger/scripts-sorting.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144467 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[BlackBerry] Upstream BlackBerry::Platform::Graphics::GraphicsContext integration...
anilsson@rim.com [Fri, 1 Mar 2013 17:43:31 +0000 (17:43 +0000)]
[BlackBerry] Upstream BlackBerry::Platform::Graphics::GraphicsContext integration related changes in platform/graphics/blackberry
https://bugs.webkit.org/show_bug.cgi?id=111072

Reviewed by Rob Buis.

BlackBerry PR 293208

This patch contains contributions from many members of the BlackBerry
WebKit team:

Rob Buis
Robin Cao
Michael Carmody
Max Feil
Eli Fidler
Antonio Gomes
Jacky Jiang
Mike Lattanzio
Yong Li
Andrew Lo
Maxim Mogilnitsky
Joshua Netterfield
Arvid Nilsson
Jakob Petsovits
Konrad Piascik
Jeff Rogers
Artem Simonov
Filip Spacek
George Staikos
Cosmin Truta

Covered by existing tests.

* platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
(WebCore::CanvasLayerWebKitThread::deleteTextures):
(CanvasLayerCompositingThreadClient):
(WebCore::CanvasLayerCompositingThreadClient::layerCompositingThreadDestroyed):
(WebCore::CanvasLayerCompositingThreadClient::layerVisibilityChanged):
(WebCore::CanvasLayerCompositingThreadClient::uploadTexturesIfNeeded):
(WebCore::CanvasLayerCompositingThreadClient::clearBuffer):
(WebCore):
(WebCore::CanvasLayerCompositingThreadClient::CanvasLayerCompositingThreadClient):
(WebCore::CanvasLayerCompositingThreadClient::drawTextures):
(WebCore::CanvasLayerCompositingThreadClient::deleteTextures):
(WebCore::CanvasLayerCompositingThreadClient::commitPendingTextureUploads):
(WebCore::CanvasLayerWebKitThread::CanvasLayerWebKitThread):
(WebCore::CanvasLayerWebKitThread::~CanvasLayerWebKitThread):
(WebCore::CanvasLayerWebKitThread::clearBuffer):
* platform/graphics/blackberry/CanvasLayerWebKitThread.h:
(WebCore):
(WebCore::CanvasLayerWebKitThread::create):
(CanvasLayerWebKitThread):
* platform/graphics/blackberry/DisplayRefreshMonitorBlackBerry.cpp:
(WebCore::DisplayRefreshMonitor::displayLinkFired):
* platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:
(WebCore::DrawingBuffer::DrawingBuffer):
(WebCore):
(WebCore::DrawingBuffer::publishToPlatformLayer):
(WebCore::DrawingBuffer::platformLayer):
* platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.cpp:
(WebCore::EGLImageLayerCompositingThreadClient::~EGLImageLayerCompositingThreadClient):
(WebCore::EGLImageLayerCompositingThreadClient::uploadTexturesIfNeeded):
(WebCore::EGLImageLayerCompositingThreadClient::drawTextures):
(WebCore::EGLImageLayerCompositingThreadClient::deleteTextures):
(WebCore::EGLImageLayerCompositingThreadClient::bindContentsTexture):
(WebCore::EGLImageLayerCompositingThreadClient::setTextureAccessor):
* platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.h:
(Graphics):
(EGLImageLayerCompositingThreadClient):
(WebCore::EGLImageLayerCompositingThreadClient::EGLImageLayerCompositingThreadClient):
* platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp:
(WebCore::EGLImageLayerWebKitThread::EGLImageLayerWebKitThread):
(WebCore::EGLImageLayerWebKitThread::~EGLImageLayerWebKitThread):
(WebCore::EGLImageLayerWebKitThread::updateFrontBuffer):
(WebCore::EGLImageLayerWebKitThread::deleteFrontBuffer):
(WebCore::EGLImageLayerWebKitThread::commitPendingTextureUploads):
(WebCore::EGLImageLayerWebKitThread::createTextureIfNeeded):
(WebCore::EGLImageLayerWebKitThread::blitToFrontBuffer):
* platform/graphics/blackberry/EGLImageLayerWebKitThread.h:
(Graphics):
(EGLImageLayerWebKitThread):
* platform/graphics/blackberry/FloatRectBlackBerry.cpp:
(WebCore::FloatRect::normalized):
(WebCore):
* platform/graphics/blackberry/FontCacheBlackberry.cpp: Removed.
* platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::paintToCanvas):
(WebCore::GraphicsContext3D::getImageData):
(WebCore):
* platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
(WebCore::GraphicsLayerBlackBerry::GraphicsLayerBlackBerry):
(WebCore::GraphicsLayerBlackBerry::setBackgroundColor):
(WebCore::GraphicsLayerBlackBerry::clearBackgroundColor):
(WebCore):
(WebCore::GraphicsLayerBlackBerry::setContentsNeedsDisplay):
(WebCore::GraphicsLayerBlackBerry::setNeedsDisplay):
(WebCore::GraphicsLayerBlackBerry::setNeedsDisplayInRect):
(WebCore::GraphicsLayerBlackBerry::updateLayerBackgroundColor):
(WebCore::GraphicsLayerBlackBerry::setupContentsLayer):
* platform/graphics/blackberry/GraphicsLayerBlackBerry.h:
(GraphicsLayerBlackBerry):
(WebCore::GraphicsLayerBlackBerry::notifySyncRequired):
* platform/graphics/blackberry/ImageBlackBerry.cpp:
(WebCore::ImageFrame::asNewNativeImage):
(WebCore):
(WebCore::FrameData::clear):
(WebCore::BitmapImage::BitmapImage):
(WebCore::BitmapImage::checkForSolidColor):
(WebCore::BitmapImage::invalidatePlatformData):
(WebCore::BitmapImage::draw):
(WebCore::Image::drawPattern):
* platform/graphics/blackberry/InstrumentedPlatformCanvas.h: Removed.
* platform/graphics/blackberry/LayerCompositingThread.cpp:
(WebCore::LayerCompositingThread::drawTextures):
(WebCore::LayerCompositingThread::drawSurface):
(WebCore::LayerCompositingThread::contentsTexture):
(WebCore::LayerCompositingThread::commitPendingTextureUploads):
(WebCore):
* platform/graphics/blackberry/LayerCompositingThread.h:
(Graphics):
(LayerCompositingThread):
* platform/graphics/blackberry/LayerCompositingThreadClient.h:
(Graphics):
(WebCore):
(LayerCompositingThreadClient):
(WebCore::LayerCompositingThreadClient::contentsTexture):
(WebCore::LayerCompositingThreadClient::commitPendingTextureUploads):
* platform/graphics/blackberry/LayerData.h:
(WebCore::LayerData::LayerData):
(WebCore::LayerData::contentsResolutionIndependent):
(LayerData):
(WebCore::LayerData::layerProgram):
(WebCore::LayerData::isContainerForFixedPositionLayers):
(WebCore::LayerData::isFixedToTop):
(WebCore::LayerData::isFixedToLeft):
(WebCore::LayerData::frameVisibleRect):
(WebCore::LayerData::frameContentsSize):
(WebCore::LayerData::contentsScale):
* platform/graphics/blackberry/LayerFilterRenderer.cpp:
(WebCore::LayerFilterRendererAction::LayerFilterRendererAction):
(WebCore::LayerFilterRenderer::initializeSharedGLObjects):
(WebCore::LayerFilterRenderer::ping):
(WebCore::LayerFilterRenderer::pong):
(WebCore::LayerFilterRenderer::pushSnapshot):
(WebCore::LayerFilterRenderer::popSnapshot):
(WebCore::LayerFilterRenderer::applyActions):
* platform/graphics/blackberry/LayerRenderer.cpp:
(WebCore):
(WebCore::LayerRenderer::LayerRenderer):
(WebCore::LayerRenderer::~LayerRenderer):
(WebCore::LayerRenderer::setViewport):
(WebCore::LayerRenderer::compositeLayers):
(WebCore::LayerRenderer::compositeBuffer):
(WebCore::LayerRenderer::drawColor):
(WebCore::LayerRenderer::useSurface):
(WebCore::LayerRenderer::drawLayersOnSurfaces):
(WebCore::glRound):
(WebCore::LayerRenderer::toOpenGLWindowCoordinates):
(WebCore::LayerRenderer::drawDebugBorder):
(WebCore::LayerRenderer::drawHolePunchRect):
(WebCore::LayerRenderer::updateLayersRecursive):
(WebCore::LayerRenderer::compositeLayersRecursive):
(WebCore::LayerRenderer::createProgram):
(WebCore::LayerRenderer::useProgram):
(WebCore::LayerRenderer::useLayerProgram):
* platform/graphics/blackberry/LayerRenderer.h:
(LayerRenderer):
* platform/graphics/blackberry/LayerRendererSurface.cpp:
(WebCore::LayerRendererSurface::ensureTexture):
* platform/graphics/blackberry/LayerTile.cpp:
(WebCore::LayerTile::LayerTile):
(WebCore::LayerTile::setContents):
(WebCore::LayerTile::updateContents):
* platform/graphics/blackberry/LayerTile.h:
(LayerTile):
(WebCore::LayerTile::renderState):
(WebCore::LayerTile::needsRender):
(WebCore::LayerTile::setNeedsRender):
(WebCore::LayerTile::setRenderPending):
(WebCore::LayerTile::setRenderDone):
* platform/graphics/blackberry/LayerTileIndex.h:
* platform/graphics/blackberry/LayerTiler.cpp:
(WebCore):
(WebCore::defaultTileSize):
(WebCore::LayerTiler::LayerTiler):
(WebCore::LayerTiler::updateTextureContentsIfNeeded):
(WebCore::LayerTiler::createBuffer):
(WebCore::LayerTiler::willCommit):
(WebCore::LayerTiler::commitPendingTextureUploads):
(WebCore::LayerTiler::layerVisibilityChanged):
(WebCore::LayerTiler::uploadTexturesIfNeeded):
(WebCore::LayerTiler::processTextureJob):
(WebCore::LayerTiler::addTileJob):
(WebCore::LayerTiler::performTileJob):
(WebCore::LayerTiler::drawTile):
(WebCore::LayerTiler::drawTextures):
(WebCore::LayerTiler::pruneTextures):
(WebCore::LayerTiler::updateTileSize):
(WebCore::LayerTiler::setNeedsBacking):
(WebCore::LayerTiler::contentsTexture):
* platform/graphics/blackberry/LayerTiler.h:
(WebCore::LayerTiler::tileSize):
(LayerTiler):
(WebCore::LayerTiler::TextureJob::TextureJob):
(WebCore::LayerTiler::TextureJob::setContents):
(WebCore::LayerTiler::TextureJob::updateContents):
(TextureJob):
(WebCore::LayerTiler::needsRender):
(WebCore::LayerTiler::removeUpdateContentsJobs):
* platform/graphics/blackberry/LayerWebKitThread.cpp:
(WebCore::LayerWebKitThread::LayerWebKitThread):
(WebCore::LayerWebKitThread::~LayerWebKitThread):
(WebCore::LayerWebKitThread::paintContents):
(WebCore::LayerWebKitThread::commitPendingTextureUploads):
(WebCore::LayerWebKitThread::setContents):
(WebCore::LayerWebKitThread::setNeedsCommit):
(WebCore::LayerWebKitThread::notifyAnimationsStarted):
(WebCore::LayerWebKitThread::commitOnWebKitThread):
(WebCore::LayerWebKitThread::startAnimations):
(WebCore::LayerWebKitThread::updateTextureContents):
(WebCore::LayerWebKitThread::commitOnCompositingThread):
(WebCore::LayerWebKitThread::addSublayer):
(WebCore):
(WebCore::LayerWebKitThread::addOverlay):
(WebCore::LayerWebKitThread::insert):
(WebCore::LayerWebKitThread::removeFromSuperlayer):
(WebCore::LayerWebKitThread::removeSublayerOrOverlay):
(WebCore::LayerWebKitThread::remove):
(WebCore::LayerWebKitThread::replaceSublayer):
(WebCore::LayerWebKitThread::filtersCanBeComposited):
(WebCore::LayerWebKitThread::removeAll):
(WebCore::LayerWebKitThread::setSublayers):
(WebCore::LayerWebKitThread::updateLayerHierarchy):
(WebCore::LayerWebKitThread::setIsMask):
(WebCore::LayerWebKitThread::releaseLayerResources):
* platform/graphics/blackberry/LayerWebKitThread.h:
(WebCore::LayerWebKitThread::insertSublayer):
(LayerWebKitThread):
(WebCore::LayerWebKitThread::isMask):
(WebCore::LayerWebKitThread::removeAllSublayers):
(WebCore::LayerWebKitThread::setFixedPosition):
(WebCore::LayerWebKitThread::setIsContainerForFixedPositionLayers):
(WebCore::LayerWebKitThread::setFixedToTop):
(WebCore::LayerWebKitThread::setFixedToLeft):
(WebCore::LayerWebKitThread::setFrameVisibleRect):
(WebCore::LayerWebKitThread::setFrameContentsSize):
(WebCore::LayerWebKitThread::setLayerProgram):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
(WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::play):
(WebCore::MediaPlayerPrivate::supportsFullscreen):
(WebCore::MediaPlayerPrivate::paintCurrentFrameInContext):
(WebCore::MediaPlayerPrivate::prepareForRendering):
(WebCore):
(WebCore::MediaPlayerPrivate::resizeSourceDimensions):
(WebCore::MediaPlayerPrivate::percentLoaded):
(WebCore::MediaPlayerPrivate::updateStates):
(WebCore::MediaPlayerPrivate::waitMetadataTimerFired):
(WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
(WebCore::MediaPlayerPrivate::notifyChallengeResult):
(WebCore::MediaPlayerPrivate::isProcessingUserGesture):
(WebCore::loadBufferingImageData):
(WebCore::MediaPlayerPrivate::setBuffering):
(WebCore::MediaPlayerPrivate::drawBufferingAnimation):
(WebCore::MediaPlayerPrivate::onConditionallyEnterFullscreen):
(WebCore::MediaPlayerPrivate::onExitFullscreen):
(WebCore::MediaPlayerPrivate::onCreateHolePunchRect):
(WebCore::MediaPlayerPrivate::onDestroyHolePunchRect):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
(BlackBerry):
(Platform):
(Graphics):
(MediaPlayerPrivate):
* platform/graphics/blackberry/PluginLayerWebKitThread.cpp:
(WebCore::PluginLayerWebKitThread::setPluginView):
* platform/graphics/blackberry/Texture.cpp:
(WebCore::Texture::Texture):
(WebCore::Texture::updateContents):
(WebCore::Texture::setContentsToColor):
(WebCore::Texture::protect):
* platform/graphics/blackberry/Texture.h:
(Texture):
(WebCore::Texture::textureId):
(WebCore::Texture::isDirty):
(WebCore::Texture::hasTexture):
(WebCore::Texture::sizeInBytes):
(WebCore::Texture::setTextureId):
(WebCore::Texture::setSize):
* platform/graphics/blackberry/TextureCacheCompositingThread.cpp:
(WebCore::TextureCacheCompositingThread::allocateTextureId):
(WebCore::freeTextureId):
(WebCore::TextureCacheCompositingThread::collectGarbage):
(WebCore::TextureCacheCompositingThread::textureSizeInBytesChanged):
(WebCore):
(WebCore::TextureCacheCompositingThread::textureDestroyed):
(WebCore::TextureCacheCompositingThread::install):
(WebCore::TextureCacheCompositingThread::resizeTexture):
(WebCore::TextureCacheCompositingThread::evict):
(WebCore::TextureCacheCompositingThread::prune):
(WebCore::TextureCacheCompositingThread::clear):
(WebCore::TextureCacheCompositingThread::textureForTiledContents):
(WebCore::TextureCacheCompositingThread::updateContents):
* platform/graphics/blackberry/TextureCacheCompositingThread.h:
(TextureCacheCompositingThread):
(WebCore::TextureCacheCompositingThread::ZombieTexture::ZombieTexture):
(ZombieTexture):
* platform/graphics/blackberry/skia/ImageBufferDataSkia.h: Removed.
* platform/graphics/blackberry/skia/PlatformSupport.cpp: Removed.
* platform/graphics/blackberry/skia/PlatformSupport.h: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144465 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt] Fix the Mac build with the current qtbase/dev branch
jocelyn.turcotte@digia.com [Fri, 1 Mar 2013 17:30:48 +0000 (17:30 +0000)]
[Qt] Fix the Mac build with the current qtbase/dev branch
https://bugs.webkit.org/show_bug.cgi?id=111190

Reviewed by Allan Sandfeld Jensen.

QMAKE_MACOSX_DEPLOYMENT_TARGET now influences
__MAC_OS_X_VERSION_MIN_REQUIRED through -mmacosx-version-min after
changes in qtbase to support iOS.

Having only WebCore defining it to 10.5 would create a mismatch of
ENABLE_THREADING_LIBDISPATCH with WTF to cause undefined symbols
while linking both together at the end.

Fix it by removing the statement which isn't needed anymore.
qtbase/mkspecs/common/mac-minimum-version.conf already defines
10.6 as the minimum Mac version.

* Target.pri:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144464 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: [Regression] Snippets renaming is broken.
vsevik@chromium.org [Fri, 1 Mar 2013 17:06:34 +0000 (17:06 +0000)]
Web Inspector: [Regression] Snippets renaming is broken.
https://bugs.webkit.org/show_bug.cgi?id=111181

Reviewed by Alexander Pavlov.

Source/WebCore:

* inspector/front-end/NavigatorView.js:
* inspector/front-end/ScriptSnippetModel.js:
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype.set _fileRenamed):
* inspector/front-end/UISourceCode.js:
(WebInspector.UISourceCode.prototype.rename):

LayoutTests:

* inspector/debugger/script-snippet-model.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144463 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoFix a misspelled word in RenderObject.h. staticly -> statically.
hyatt@apple.com [Fri, 1 Mar 2013 17:04:13 +0000 (17:04 +0000)]
Fix a misspelled word in RenderObject.h. staticly -> statically.

Reviewed by Dean Jackson.

* rendering/RenderObject.h:
(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
(WebCore::RenderObject::RenderObjectBitfields::isPositioned):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144462 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[New Multicolumn] Change flow thread containment to be a state.
hyatt@apple.com [Fri, 1 Mar 2013 16:58:25 +0000 (16:58 +0000)]
[New Multicolumn] Change flow thread containment to be a state.
https://bugs.webkit.org/show_bug.cgi?id=111110

Change m_inRenderFlowThread from a single bit to an actual state. This
will let us track whether we're inside a multicolumn (in-flow) flow thread
or a named (out-of-flow) flow thread. In the former case, we're going to have
to do more work to maintain this state, but for now I've kept all the logic
the same just for the initial landing.

Reviewed by Andreas Kling.

* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
(WebCore::NodeRenderingContext::createRendererForTextIfNeeded):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::clone):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::clone):
* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::setFlowThreadStateIncludingDescendants):
(WebCore::RenderObject::removeFromRenderFlowThreadRecursive):
* rendering/RenderObject.h:
(WebCore::RenderObject::setParent):
(RenderObject):
(WebCore::RenderObject::inRenderFlowThread):
(WebCore::RenderObject::flowThreadState):
(WebCore::RenderObject::setFlowThreadState):
(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
(RenderObjectBitfields):
(WebCore::RenderObject::RenderObjectBitfields::flowThreadState):
(WebCore::RenderObject::RenderObjectBitfields::setFlowThreadState):
* rendering/RenderView.cpp:
(WebCore::RenderView::addChild):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144461 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoBuild fix.
jberlin@webkit.org [Fri, 1 Mar 2013 16:46:11 +0000 (16:46 +0000)]
Build fix.

Roll out r144431 because it was a build fix for r144422, which was rolled out in r144446.

* platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144460 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoBUILD FIX (r144358): Add UNUSED_PARAM() macros to WebCore::Extensions3DOpenGL::drawBu...
ddkilzer@apple.com [Fri, 1 Mar 2013 16:28:29 +0000 (16:28 +0000)]
BUILD FIX (r144358): Add UNUSED_PARAM() macros to WebCore::Extensions3DOpenGL::drawBuffersEXT()
<http://webkit.org/b/109331>

Fixes the following build failures:

    Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:218:51: error: unused parameter 'n' [-Werror,-Wunused-parameter]
    void Extensions3DOpenGL::drawBuffersEXT(GC3Dsizei n, const GC3Denum* bufs)
                                                      ^
    Source/WebCore/platform/graphics/opengl/Extensions3DOpenGL.cpp:218:70: error: unused parameter 'bufs' [-Werror,-Wunused-parameter]
    void Extensions3DOpenGL::drawBuffersEXT(GC3Dsizei n, const GC3Denum* bufs)
                                                                         ^
    2 errors generated.

* platform/graphics/opengl/Extensions3DOpenGL.cpp:
(WebCore::Extensions3DOpenGL::drawBuffersEXT): Add UNUSED_PARAM()
macros.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144459 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[v8] ScriptValue has dangerous copy semantics
commit-queue@webkit.org [Fri, 1 Mar 2013 16:24:42 +0000 (16:24 +0000)]
[v8] ScriptValue has dangerous copy semantics
https://bugs.webkit.org/show_bug.cgi?id=110206

Patch by Dan Carney <dcarney@google.com> on 2013-03-01
Reviewed by Kentaro Hara.

Update ScriptValue to used a SharedPersistent,
making it impossible to return dead references.

No new tests. No change in functionality.

* bindings/v8/ScriptValue.cpp:
(WebCore::ScriptValue::serialize):
(WebCore::ScriptValue::getString):
(WebCore::ScriptValue::toString):
(WebCore::ScriptValue::toInspectorValue):
* bindings/v8/ScriptValue.h:
(WebCore::ScriptValue::ScriptValue):
(WebCore::ScriptValue::operator=):
(WebCore::ScriptValue::operator==):
(WebCore::ScriptValue::isEqual):
(WebCore::ScriptValue::isFunction):
(WebCore::ScriptValue::isNull):
(WebCore::ScriptValue::isUndefined):
(WebCore::ScriptValue::isObject):
(WebCore::ScriptValue::hasNoValue):
(WebCore::ScriptValue::clear):
(ScriptValue):
(WebCore::ScriptValue::v8Value):
(WebCore::ScriptValue::v8ValueRaw):
* bindings/v8/SharedPersistent.h:
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
(WebCore::InjectedScriptHost::scriptValueAsNode):
* bindings/v8/custom/V8MessageEventCustom.cpp:
(WebCore::V8MessageEvent::dataAttrGetterCustom):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144458 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt] Unreviewed gardening.
kadam@inf.u-szeged.hu [Fri, 1 Mar 2013 15:49:40 +0000 (15:49 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/TestExpectations: Skipped failing test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144457 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd FeatureObserver for marquee and reflection
jchaffraix@webkit.org [Fri, 1 Mar 2013 15:47:26 +0000 (15:47 +0000)]
Add FeatureObserver for marquee and reflection
https://bugs.webkit.org/show_bug.cgi?id=111118

Reviewed by Simon Fraser.

Refactoring covered by existing tests.

* page/FeatureObserver.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::styleChanged):
Added some instrumentation for reflection and marquee as they are both prefixed and this would help
to know their popularity on the web. Marquee was split between <marquee> (HTMLMarqueeElement) and
overflow: -webkit-marquee (CSSOverflowMarquee).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144456 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: Introduce opaque SecurityOrigin string identifiers in the frontend
apavlov@chromium.org [Fri, 1 Mar 2013 15:37:12 +0000 (15:37 +0000)]
Web Inspector: Introduce opaque SecurityOrigin string identifiers in the frontend
https://bugs.webkit.org/show_bug.cgi?id=111165

Reviewed by Vsevolod Vlasov.

Source/WebCore:

A plain string security origin value has been replaced by WebInspector.SecurityOrigin all over the code,
containing a URL (which holds a stringified security origin) and an identifier (which is now used
as a key in place of the stringified security origin in various maps). To avoid the ResourceTreeModel
code clutter, the security origin tracking code has been extracted into a separate type,
WebInspector.SecurityOriginTracker, which works as a helper on the ResourceTreeModel.

No new tests, as it is a refactoring.

* inspector/front-end/DOMStorage.js:
(WebInspector.DOMStorage.storageId):
(WebInspector.DOMStorage.prototype.id):
(WebInspector.DOMStorage.prototype.getItems):
(WebInspector.DOMStorage.prototype.setItem):
(WebInspector.DOMStorage.prototype.removeItem):
(WebInspector.DOMStorageModel.prototype._securityOriginAdded):
(WebInspector.DOMStorageModel.prototype._securityOriginRemoved):
(WebInspector.DOMStorageModel.prototype._storageKey):
* inspector/front-end/ExtensionAuditCategory.js:
* inspector/front-end/FileSystemModel.js:
(WebInspector.FileSystemModel.prototype._reset):
(WebInspector.FileSystemModel.prototype._securityOriginAdded):
(WebInspector.FileSystemModel.prototype._securityOriginRemoved):
(WebInspector.FileSystemModel.prototype._addOrigin):
(WebInspector.FileSystemModel.prototype._removeOrigin):
(WebInspector.FileSystemModel.prototype._requestFileSystemRoot):
(WebInspector.FileSystemModel.prototype._fileSystemRootReceived):
(WebInspector.FileSystemModel.prototype._removeFileSystem):
(WebInspector.FileSystemModel.FileSystem.prototype.get name):
* inspector/front-end/IndexedDBModel.js:
(WebInspector.IndexedDBModel.prototype._reset):
(WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
(WebInspector.IndexedDBModel.prototype._securityOriginAdded):
(WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
(WebInspector.IndexedDBModel.prototype._addOrigin):
(WebInspector.IndexedDBModel.prototype._removeOrigin):
(WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.prototype.):
(WebInspector.IndexedDBModel.prototype._requestData):
(WebInspector.IndexedDBModel.DatabaseId.prototype.equals):
* inspector/front-end/IndexedDBViews.js:
(WebInspector.IDBDatabaseView.prototype._refreshDatabase):
* inspector/front-end/ResourceTreeModel.js:
(WebInspector.ResourceTreeModel.prototype._addFrame):
(WebInspector.ResourceTreeModel.prototype.securityOriginForId):
(WebInspector.ResourceTreeModel.prototype.securityOrigins):
(WebInspector.ResourceTreeModel.prototype._handleMainFrameDetached):
(WebInspector.ResourceTreeModel.prototype._frameNavigated):
(WebInspector.ResourceTreeModel.prototype._frameDetached):
(WebInspector.ResourceTreeModel.SecurityOriginTracker):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._addSecurityOrigin):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._removeSecurityOrigin):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._bindSecurityOrigin):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._unbindSecurityOrigin):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._detachMainFrame):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._securityOriginForId):
(WebInspector.ResourceTreeModel.SecurityOriginTracker.prototype._securityOrigins):
(WebInspector.ResourceTreeFrame.prototype._navigate):
(WebInspector.SecurityOrigin.prototype.id):
(WebInspector.SecurityOrigin.prototype.url):
(WebInspector.SecurityOrigin.prototype.uiTitle):
(WebInspector.SecurityOrigin.prototype.toProtocol):
* inspector/front-end/ResourcesPanel.js:
(WebInspector.IDBDatabaseTreeElement):
(WebInspector.IDBDatabaseTreeElement.prototype.get itemURL):
(WebInspector.IDBObjectStoreTreeElement.prototype.get itemURL):
(WebInspector.IDBIndexTreeElement.prototype.get itemURL):
(WebInspector.DOMStorageTreeElement):
(WebInspector.DOMStorageTreeElement.prototype.get itemURL):
(WebInspector.FileSystemTreeElement):

LayoutTests:

Follow the string -> object conversion of the security origin.

* http/tests/inspector-enabled/dom-storage-open.html:
* http/tests/inspector/filesystem/delete-entry.html:
* http/tests/inspector/filesystem/request-filesystem-root.html:
* http/tests/inspector/indexeddb/database-data.html:
* http/tests/inspector/indexeddb/database-names.html:
* http/tests/inspector/indexeddb/database-structure.html:
* http/tests/inspector/resource-tree/resource-tree-events.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144455 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[BlackBerry] Reverse the base and extent of a selection when reversing its handles
nghanavatian@rim.com [Fri, 1 Mar 2013 15:25:40 +0000 (15:25 +0000)]
[BlackBerry] Reverse the base and extent of a selection when reversing its handles
https://bugs.webkit.org/show_bug.cgi?id=111098

Reviewed by Yong Li.

PR283969
Swap the base and extent if base does not come first, and set the new selection.

Internally reviewed by Mike Fenton

* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::setSelection):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144454 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: [Timeline] Show "curtains" when mouse is over CPU bar.
eustas@chromium.org [Fri, 1 Mar 2013 15:15:32 +0000 (15:15 +0000)]
Web Inspector: [Timeline] Show "curtains" when mouse is over CPU bar.
https://bugs.webkit.org/show_bug.cgi?id=108930

Reviewed by Pavel Feldman.

This feature will help developers to focus on events
that caused CPU bar.

* inspector/front-end/Popover.js: Added "arrowDirection" parameter.
* inspector/front-end/TimelineGrid.js:
(WebInspector.TimelineGrid): Added "curtains".
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._mouseMove): Show/hide "curtains"
when mouse is over CPU bar.
* inspector/front-end/timelinePanel.css: Added "curtains" style rules.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144453 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[JSC] Fix sign comparison warning/error after r144340.
rakuco@webkit.org [Fri, 1 Mar 2013 15:10:15 +0000 (15:10 +0000)]
[JSC] Fix sign comparison warning/error after r144340.
https://bugs.webkit.org/show_bug.cgi?id=111164

Reviewed by Mark Hahnenberg.

gcc (both 4.2.1 and 4.7.2) complain about comparing signed and
unsigned terms (clang accepts it just fine).

Work around that by casting the 1 to an uintptr_t as well.

* dfg/DFGEdge.h:
(JSC::DFG::Edge::makeWord):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@144452 268f45cc-cd09-0410-ab3c-d52691b4dbfc