WebKit-https.git
5 years agoAddressing post-review comments in r185916
zalan@apple.com [Tue, 30 Jun 2015 20:03:28 +0000 (20:03 +0000)]
Addressing post-review comments in r185916

* platform/LayoutUnit.h:
(WebCore::roundToDevicePixel):

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

5 years agoMediaSession: Use setSessionInternal to set the default media session in HTMLMediaEle...
mrajca@apple.com [Tue, 30 Jun 2015 19:53:18 +0000 (19:53 +0000)]
MediaSession: Use setSessionInternal to set the default media session in HTMLMediaElement's constructor
https://bugs.webkit.org/show_bug.cgi?id=146465

Reviewed by Eric Carlson.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement):

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

5 years agoDisable Spintracer when getting the list of plug-ins
andersca@apple.com [Tue, 30 Jun 2015 19:48:35 +0000 (19:48 +0000)]
Disable Spintracer when getting the list of plug-ins
https://bugs.webkit.org/show_bug.cgi?id=146467
rdar://problem/21616640

Reviewed by Tim Horton.

* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::populatePluginCache):

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

5 years agoJava Plugin cannot launch JavaUpdater.app after renaming
andersca@apple.com [Tue, 30 Jun 2015 19:12:45 +0000 (19:12 +0000)]
Java Plugin cannot launch JavaUpdater.app after renaming
https://bugs.webkit.org/show_bug.cgi?id=146464
rdar://problem/19747153

Reviewed by Tim Horton.

Check for both "JavaUpdater.app" and "Java Updater.app".

* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::isJavaUpdaterURL):

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

5 years agoRemove the WK_ENABLE_FORMAL_DELEGATE_PROTOCOLS ifdefs now that this is always true
andersca@apple.com [Tue, 30 Jun 2015 18:26:01 +0000 (18:26 +0000)]
Remove the WK_ENABLE_FORMAL_DELEGATE_PROTOCOLS ifdefs now that this is always true
https://bugs.webkit.org/show_bug.cgi?id=146462

Reviewed by Dan Bernstein.

* Misc/WebDownload.h:
* WebView/WebFrameLoadDelegate.h:
* WebView/WebPolicyDelegate.h:
* WebView/WebResourceLoadDelegate.h:
* WebView/WebUIDelegate.h:
* WebView/WebView.h:
* postprocess-headers.sh:

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

5 years agoMedia Session: implement algorithm for updating a media element's session (6.1)
mrajca@apple.com [Tue, 30 Jun 2015 18:10:55 +0000 (18:10 +0000)]
Media Session: implement algorithm for updating a media element's session (6.1)
https://bugs.webkit.org/show_bug.cgi?id=146460

Reviewed by Darin Adler.

In addition to storing a pointer to the new media session, we now:

- pause the media element if it is 'active' in the current media session
- remove the media element from the current media session
- release the current media session if there are no more active media elements
- set the default media session if the new media session is null
- update the 'kind' attribute to match the kind of the new media session

* Modules/mediasession/MediaSession.cpp:
(WebCore::MediaSession::isMediaElementActive):
(WebCore::MediaSession::hasActiveMediaElements):
* Modules/mediasession/MediaSession.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::setSession):
(WebCore::HTMLMediaElement::setSessionInternal):
* html/HTMLMediaElement.h:

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

5 years ago[WK2] Avoid taking a useless / blank navigation snapshot when navigating after restor...
cdumez@apple.com [Tue, 30 Jun 2015 18:08:19 +0000 (18:08 +0000)]
[WK2] Avoid taking a useless / blank navigation snapshot when navigating after restoring sessionState
https://bugs.webkit.org/show_bug.cgi?id=146446
<rdar://problem/21584231>

Reviewed by Darin Adler.

We currently take a useless / blank navigation snapshot when navigating
after restoring the back / forward list from a sessionState object.
This is because we get a current HistoryItem from the sessionState
which we have never really navigated to. We then take a navigation
snapshot for the current HistoryItem when navigating away as we usually
do. However, in this case, the HistoryItem was imported and there is
nothing to snapshot.

Taking this snapshot is not only wasteful, it can also potentially
overwrite the snapshot that was set by the client using
WKWebView._saveBackForwardSnapshotForItem() SPI.

To address the problem, this patch suppresses navigation snapshotting
after restoring the back / forward list from a session state and until
the next load is committed.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::recordNavigationSnapshot):
(WebKit::WebPageProxy::restoreFromSessionState):
(WebKit::WebPageProxy::didCommitLoadForFrame):
* UIProcess/WebPageProxy.h:

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

5 years ago[Win] webViewAddMessageToConsole always gets 1 for isError
bfulgham@apple.com [Tue, 30 Jun 2015 17:32:28 +0000 (17:32 +0000)]
[Win] webViewAddMessageToConsole always gets 1 for isError
https://bugs.webkit.org/show_bug.cgi?id=146457
<rdar://problem/21606395>

Reviewed by Zalan Bujtas.

* WebCoreSupport/WebChromeClient.cpp:
(messageIsError): Added.
(WebChromeClient::addMessageToConsole): Only pass true for
isError if the message is an error message.

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

5 years agoWeb Inspector: iOS 8: Uncaught Exception expanding Object Prototype
commit-queue@webkit.org [Tue, 30 Jun 2015 17:20:20 +0000 (17:20 +0000)]
Web Inspector: iOS 8: Uncaught Exception expanding Object Prototype
https://bugs.webkit.org/show_bug.cgi?id=146427

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-30
Reviewed by Timothy Hatcher.

* UserInterface/Views/ObjectTreePropertyTreeElement.js:
(WebInspector.ObjectTreePropertyTreeElement.prototype._updateProperties):
* UserInterface/Views/ObjectTreeView.js:
(WebInspector.ObjectTreeView.prototype._updateProperties):
We are supposed to receive value properties for __proto__ properties
so that we can immediately start showing information about the property.
When that is not the case, which appeared to only be on legacy
backends for the top level prototype, just ignore it.

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

5 years agoWeb Inspector: Misc. Timeline cleanup
commit-queue@webkit.org [Tue, 30 Jun 2015 17:16:05 +0000 (17:16 +0000)]
Web Inspector: Misc. Timeline cleanup
https://bugs.webkit.org/show_bug.cgi?id=146430

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-30
Reviewed by Timothy Hatcher.

* UserInterface/Models/Timeline.js:
(WebInspector.Timeline.prototype.reset):
Nobody listens for this event. Just remove it.

* UserInterface/Models/TimelineRecording.js:
Avoiding doing multiple lookups.

* UserInterface/Views/TimelineDataGridNode.js:
* UserInterface/Views/TimelineRecordingContentView.js:
(WebInspector.TimelineRecordingContentView.prototype._updateTimes):
* UserInterface/Views/TimelineView.js:
(WebInspector.TimelineView.prototype.updateLayout):
Eliminate some unnecessary deletes.

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

5 years agoGet rid of unused WKSI functions
andersca@apple.com [Tue, 30 Jun 2015 17:12:00 +0000 (17:12 +0000)]
Get rid of unused WKSI functions
https://bugs.webkit.org/show_bug.cgi?id=146443

Reviewed by Tim Horton.

Source/WebCore:

* platform/graphics/cg/PathCG.cpp:
(WebCore::Path::platformAddPathForRoundedRect):
Just call CGPathAddRoundedRect directly.

* platform/ios/WebCoreSystemInterfaceIOS.mm:
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac:

* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Deleted.

Source/WebKit2:

* UIProcess/API/Cocoa/WKWebView.mm:
* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Deleted.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::nonVisibleProcessCleanupTimerFired):
* WebProcess/WebProcess.h:
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::destroyRenderingResources):

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

5 years agoUnreviewed build fix.
bfulgham@apple.com [Tue, 30 Jun 2015 16:39:48 +0000 (16:39 +0000)]
Unreviewed build fix.

* Scripts/update-webkit-dependency: Try to build even if we cannot connect
to developer.apple.com to get update libraries.

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

5 years ago[WinCairo] Compile error, WebEditorClient::didApplyStyle() should not have any parame...
peavo@outlook.com [Tue, 30 Jun 2015 11:26:04 +0000 (11:26 +0000)]
[WinCairo] Compile error, WebEditorClient::didApplyStyle() should not have any parameters.
https://bugs.webkit.org/show_bug.cgi?id=146450

Reviewed by Csaba Osztrogon√°c.

* WebCoreSupport/WebEditorClient.cpp:
(WebEditorClient::shouldApplyStyle):
(WebEditorClient::didApplyStyle):
* WebCoreSupport/WebEditorClient.h:

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

5 years ago[Streams API] Finish pulling must always be done asynchronously as it is the expected...
calvaris@igalia.com [Tue, 30 Jun 2015 09:53:40 +0000 (09:53 +0000)]
[Streams API] Finish pulling must always be done asynchronously as it is the expected promise behavior (according to the spec)
https://bugs.webkit.org/show_bug.cgi?id=146408

Reviewed by Darin Adler.

Source/WebCore:

Current tests cover the case already.

* Modules/streams/ReadableStream.cpp:
(WebCore::ReadableStream::pull): Call finishPull() in a postTask to delay it and simulate the promise
resolution.

LayoutTests:

* streams/reference-implementation/readable-stream-expected.txt: Updated expectation to PASS

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

5 years ago[Streams API] Synced bad strategy test with reference implementation
calvaris@igalia.com [Tue, 30 Jun 2015 09:27:49 +0000 (09:27 +0000)]
[Streams API] Synced bad strategy test with reference implementation
https://bugs.webkit.org/show_bug.cgi?id=146411

Reviewed by Darin Adler.

Source/WebCore:

Current tests cover the case.

* bindings/js/ReadableJSStream.cpp:
(WebCore::ReadableJSStream::retrieveChunkSize): Check for negative size then running the JavaScript function.

LayoutTests:

* streams/reference-implementation/bad-strategies-expected.txt:
* streams/reference-implementation/bad-strategies.html: There are three tests that are merged into one and a
fourth check is added. Updated expectations accordingly.

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

5 years ago[Streams API] Remove ReadableStream.getReader() custom binding
youenn.fablet@crf.canon.fr [Tue, 30 Jun 2015 07:50:12 +0000 (07:50 +0000)]
[Streams API] Remove ReadableStream.getReader() custom binding
https://bugs.webkit.org/show_bug.cgi?id=146404

Reviewed by Darin Adler.

Covered by existing tests.

* Modules/streams/ReadableStream.cpp:
(WebCore::ReadableStream::getReader): Updated to take an exception.
* Modules/streams/ReadableStream.h:
* Modules/streams/ReadableStream.idl: Updated to remove custom binding.
* bindings/js/JSReadableStreamCustom.cpp:
(WebCore::JSReadableStream::getReader): Deleted.
* bindings/js/JSReadableStreamReaderCustom.cpp:
(WebCore::constructJSReadableStreamReader): Updated to pass an exception to getReader.

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

5 years ago[CMake] Error when gst-plugins-base is missing is too confusing
philn@webkit.org [Tue, 30 Jun 2015 07:17:52 +0000 (07:17 +0000)]
[CMake] Error when gst-plugins-base is missing is too confusing
https://bugs.webkit.org/show_bug.cgi?id=145682

Reviewed by Carlos Garcia Campos.

* Source/cmake/OptionsGTK.cmake: Error out if the required
GStreamer libraries are not found on the host.

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

5 years ago[Streams API] ReadableStreamReader.closed should use DOMPromise
youenn.fablet@crf.canon.fr [Tue, 30 Jun 2015 06:47:19 +0000 (06:47 +0000)]
[Streams API] ReadableStreamReader.closed should use DOMPromise
https://bugs.webkit.org/show_bug.cgi?id=146406

Reviewed by Darin Adler.

Added storage of ClosedPromise as Optional of ReadableStream.
Updated code accordingly.

Covered by existing tests.

* Modules/streams/ReadableStream.cpp:
(WebCore::ReadableStream::clearCallbacks):
(WebCore::ReadableStream::releaseReader):
(WebCore::ReadableStream::changeStateToErrored):
(WebCore::ReadableStream::closed):
* Modules/streams/ReadableStream.h:
* Modules/streams/ReadableStreamReader.cpp:
(WebCore::ReadableStreamReader::closed):
* Modules/streams/ReadableStreamReader.h:
* bindings/js/JSReadableStreamReaderCustom.cpp:
(WebCore::JSReadableStreamReader::closed):

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

5 years ago[GTK] Unreviewed GTK build fix since r186088 and r186095.
gyuyoung.kim@webkit.org [Tue, 30 Jun 2015 06:02:24 +0000 (06:02 +0000)]
[GTK] Unreviewed GTK build fix since r186088 and r186095.
https://bugs.webkit.org/show_bug.cgi?id=146449

* PlatformGTK.cmake:
* UIProcess/API/gtk/PageClientImpl.h:

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

5 years ago[iOS WK2] WKWebViews in Facebook app start off black
simon.fraser@apple.com [Tue, 30 Jun 2015 05:33:11 +0000 (05:33 +0000)]
[iOS WK2] WKWebViews in Facebook app start off black
https://bugs.webkit.org/show_bug.cgi?id=146445
rdar://problem/21600433

Reviewed by Tim Horton.

If -isOpaque is toggled on a WKWebView, we failed to make the page tiles non-opaque
for a while. After r183775, RenderLayerCompositor::rootBackgroundTransparencyChanged() was called,
but only considered the computed document background color, and not the view transparency.

Fix by having rootBackgroundTransparencyChanged() simply use viewHasTransparentBackground(),
which checks the FrameView transparency. Now we just need to store a transparency bool rather
than the old color (we only checked its alpha anyway).

* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::rootBackgroundTransparencyChanged):

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

5 years agoAnother rebaseline after r186086.
rniwa@webkit.org [Tue, 30 Jun 2015 02:38:36 +0000 (02:38 +0000)]
Another rebaseline after r186086.
WebKit2 needs the original expected result.

* platform/mac-wk2/editing/style: Copied from LayoutTests/platform/mac/editing/style/unbold-in-bold-expected.txt.
* platform/mac/editing/style/unbold-in-bold-expected.txt:

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

5 years agoRebaseline after r186086.
rniwa@webkit.org [Tue, 30 Jun 2015 02:05:44 +0000 (02:05 +0000)]
Rebaseline after r186086.

* platform/mac/editing/style/unbold-in-bold-expected.txt:

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

5 years agoWebKit should use 80% black background for PiP indicator
dino@apple.com [Tue, 30 Jun 2015 01:26:21 +0000 (01:26 +0000)]
WebKit should use 80% black background for PiP indicator
https://bugs.webkit.org/show_bug.cgi?id=146444
<rdar://problem/21555726>

Reviewed by Sam Weinig.

Change the black background to a slightly less black background.
This also involved making the placard artwork white, in order
to keep it visible against the new grey.

* Modules/mediacontrols/mediaControlsiOS.css:
(audio::-webkit-media-controls-wireless-playback-status):
(audio::-webkit-media-controls-wireless-playback-status.small):
(audio::-webkit-media-controls-wireless-playback-status.picture-in-picture):

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

5 years agoUnreviewed EFL build fix since r186088 and r186095.
gyuyoung.kim@webkit.org [Tue, 30 Jun 2015 01:09:12 +0000 (01:09 +0000)]
Unreviewed EFL build fix since r186088 and r186095.

* CMakeLists.txt: Remove ConnectionStack.cpp.
* UIProcess/CoordinatedGraphics/WebView.h: Override virtual didFailLoadForMainFrame().

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

5 years agoWeb Inspector: Unable to select the text of an inline error message
nvasilyev@apple.com [Tue, 30 Jun 2015 00:47:29 +0000 (00:47 +0000)]
Web Inspector: Unable to select the text of an inline error message
https://bugs.webkit.org/show_bug.cgi?id=145813

Reviewed by Timothy Hatcher.

* UserInterface/Views/CodeMirrorOverrides.css:
(.CodeMirror-linewidget):
* UserInterface/Views/TextEditor.js:
(WebInspector.TextEditor.prototype.createWidgetForLine):

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

5 years agoWeb Inspector: Remove harmless error for not getting named flows
commit-queue@webkit.org [Tue, 30 Jun 2015 00:40:33 +0000 (00:40 +0000)]
Web Inspector: Remove harmless error for not getting named flows
https://bugs.webkit.org/show_bug.cgi?id=146417

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-29
Reviewed by Darin Adler.

* UserInterface/Controllers/DOMTreeManager.js:

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

5 years agoWeb Inspector: Network errors (404) are missing location link in console messages
commit-queue@webkit.org [Tue, 30 Jun 2015 00:37:10 +0000 (00:37 +0000)]
Web Inspector: Network errors (404) are missing location link in console messages
https://bugs.webkit.org/show_bug.cgi?id=146442

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-29
Reviewed by Darin Adler.

* UserInterface/Views/ConsoleMessageView.js:
(WebInspector.ConsoleMessageView.prototype._appendLocationLink):
Restore behavior of adding a location link for network messages with urls.

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

5 years agoFlag sync XHRs from the network process so they can be handled appropriately.
beidson@apple.com [Tue, 30 Jun 2015 00:32:20 +0000 (00:32 +0000)]
Flag sync XHRs from the network process so they can be handled appropriately.
<rdar://problem/21579162> and https://bugs.webkit.org/show_bug.cgi?id=146441

Reviewed by Darin Adler.

Source/WebCore:

* platform/network/ResourceHandleClient.h:
(WebCore::ResourceHandleClient::loadingSynchronousXHR): Added so clients of asynchronous
  loads can signal they should be treated like synchronous loads at the platform level.

* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::start): Adjust SchedulingBehavior based on the client.

* platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::start): Adjust SchedulingBehavior based on the client.

Source/WebKit2:

* NetworkProcess/NetworkResourceLoader.h:
(WebKit::NetworkResourceLoader::loadingSynchronousXHR): Return isSynchronous().

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

5 years agoWeb Inspector: iOS 8: Resources Timeline Data does not show up
commit-queue@webkit.org [Tue, 30 Jun 2015 00:27:29 +0000 (00:27 +0000)]
Web Inspector: iOS 8: Resources Timeline Data does not show up
https://bugs.webkit.org/show_bug.cgi?id=146433

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-29
Reviewed by Timothy Hatcher.

There were a couple issues with initializing the legacy base timestamp
for attempting to dynamically compute monotonically increasing timestamps
for timeline events for legacy backends.

    * Sometimes legacy timestamps were in seconds since epochs,
      sometimes milliseconds. The frontend did not handle both.

    * On navigations, even while resetting the base timestamp for
      the first new record received, the main resource still had
      a will send request time computed from the previous page's
      time system. This patch re-uses the original timestamp for
      this main resource as the new base and all future records
      are computed relative to this.

* UserInterface/Controllers/FrameResourceManager.js:
(WebInspector.FrameResourceManager.prototype.resourceRequestWillBeSent):
(WebInspector.FrameResourceManager.prototype._addNewResourceToFrame):
* UserInterface/Models/Resource.js:
(WebInspector.Resource):
(WebInspector.Resource.prototype.get originalRequestWillBeSentTimestamp):
For legacy timestamp calculations, save the original request will be sent
timestamp on the Resource in case it is needed.

* UserInterface/Controllers/TimelineManager.js:
(WebInspector.TimelineManager.prototype._loadNewRecording):
When auto-starting a new recording for a navigation / reload, use the
main resource's request will be sent timestamp as the new base.

* UserInterface/Models/TimelineRecording.js:
Address legacy timeline timestamps by handling both legacy timestamps
that may be seconds / milliseconds.

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

5 years agoAX: PlatformSpeechSynthesizer code doesn't catch Objective-C exceptions
cfleizach@apple.com [Tue, 30 Jun 2015 00:24:05 +0000 (00:24 +0000)]
AX: PlatformSpeechSynthesizer code doesn't catch Objective-C exceptions
https://bugs.webkit.org/show_bug.cgi?id=146419

Reviewed by Simon Fraser.

Make sure ObjC exception resulting from calling into the platform cause problems in WebKit.

* platform/ios/PlatformSpeechSynthesizerIOS.mm:
(-[WebSpeechSynthesisWrapper speakUtterance:]):
(-[WebSpeechSynthesisWrapper pause]):
(-[WebSpeechSynthesisWrapper resume]):
(-[WebSpeechSynthesisWrapper cancel]):
(-[WebSpeechSynthesisWrapper speechSynthesizer:didStartSpeechUtterance:]):
(WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
(WebCore::PlatformSpeechSynthesizer::pause):

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

5 years agoRemove an empty group from the Xcode project.
andersca@apple.com [Tue, 30 Jun 2015 00:15:56 +0000 (00:15 +0000)]
Remove an empty group from the Xcode project.

* WebKit2.xcodeproj/project.pbxproj:

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

5 years agoGet rid of ConnectionStack
andersca@apple.com [Mon, 29 Jun 2015 23:46:27 +0000 (23:46 +0000)]
Get rid of ConnectionStack
https://bugs.webkit.org/show_bug.cgi?id=146437

Reviewed by Andreas Kling.

Just use a TemporaryChange and a static variable instead.

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
* PluginProcess/WebProcessConnection.cpp:
(WebKit::WebProcessConnection::setGlobalException):
(WebKit::WebProcessConnection::didReceiveMessage):
(WebKit::WebProcessConnection::didReceiveSyncMessage):
* Shared/ConnectionStack.cpp: Removed.
(WebKit::ConnectionStack::singleton): Deleted.
* Shared/ConnectionStack.h: Removed.
(WebKit::ConnectionStack::current): Deleted.
(WebKit::ConnectionStack::CurrentConnectionPusher::CurrentConnectionPusher): Deleted.
(WebKit::ConnectionStack::CurrentConnectionPusher::~CurrentConnectionPusher): Deleted.
* WebKit2.xcodeproj/project.pbxproj:

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

5 years agoRemoving an element from a media session should also remove it from the sets of activ...
mrajca@apple.com [Mon, 29 Jun 2015 23:14:45 +0000 (23:14 +0000)]
Removing an element from a media session should also remove it from the sets of active participating elements
https://bugs.webkit.org/show_bug.cgi?id=146420

Reviewed by Eric Carlson.

* Modules/mediasession/MediaSession.cpp:
(WebCore::MediaSession::removeMediaElement):

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

5 years ago[Win] Activate SSE support for 32-bit builds.
commit-queue@webkit.org [Mon, 29 Jun 2015 23:08:20 +0000 (23:08 +0000)]
[Win] Activate SSE support for 32-bit builds.
https://bugs.webkit.org/show_bug.cgi?id=144923

Patch by Hyungwook Lee <hyungwook.lee@navercorp.com> on 2015-06-29
Reviewed by Brent Fulgham.

* win/tools/vsprops/common.props:

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

5 years agoFix the build.
timothy_horton@apple.com [Mon, 29 Jun 2015 23:01:30 +0000 (23:01 +0000)]
Fix the build.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didFailLoadForMainFrame]):
* UIProcess/API/Cocoa/WKWebViewInternal.h:
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::didFailLoadForMainFrame):

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

5 years agoTemporarily disable PICTURE_SIZES
dino@apple.com [Mon, 29 Jun 2015 22:59:51 +0000 (22:59 +0000)]
Temporarily disable PICTURE_SIZES
https://bugs.webkit.org/show_bug.cgi?id=146435
<rdar://problem/21087013>

Source/JavaScriptCore:

Reviewed by Tim Horton.

Temporarily disable PICTURE_SIZES because it causes problems with out
of date <picture> polyfills.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Reviewed by Tim Horton.

Temporarily disable PICTURE_SIZES because it causes problems with out
of date <picture> polyfills.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

Reviewed by Tim Horton.

Temporarily disable PICTURE_SIZES because it causes problems with out
of date <picture> polyfills.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Temporarily disable PICTURE_SIZES because it causes problems with out
of date <picture> polyfills.

Temporarily disable PICTURE_SIZES until Safari branches.

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

Reviewed by Tim Horton.

Temporarily disable PICTURE_SIZES because it causes problems with out
of date <picture> polyfills.

* wtf/FeatureDefines.h:

LayoutTests:

Reviewed by Tim Horton.

Skip HTMLImageElement.sizes tests.

* TestExpectations:

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

5 years agoFix the build.
timothy_horton@apple.com [Mon, 29 Jun 2015 22:42:01 +0000 (22:42 +0000)]
Fix the build.

* editing/cocoa/HTMLConverter.mm:
* platform/spi/cocoa/NSAttributedStringSPI.h:

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

5 years agoFix the build.
timothy_horton@apple.com [Mon, 29 Jun 2015 22:35:36 +0000 (22:35 +0000)]
Fix the build.

* platform/spi/cocoa/NSAttributedStringSPI.h:

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

5 years agoDon't try to access a possibly deallocated WebFrameProxy object
andersca@apple.com [Mon, 29 Jun 2015 22:07:11 +0000 (22:07 +0000)]
Don't try to access a possibly deallocated WebFrameProxy object
https://bugs.webkit.org/show_bug.cgi?id=146428
rdar://problem/21446364

Reviewed by Tim Horton.

Make sure to call isMainFrame before calling out to the client inside
WebPageProxy::didFailLoadForFrame, matching what we do for WebPageProxy::didFinishLoadForFrame.

Also, add a ViewGestureController::didFailLoadForMainFrame function and call that instead of
calling didFinishLoadForMainFrame in the failure case.

* UIProcess/API/mac/WKView.mm:
(-[WKView _didFailLoadForMainFrame]):
* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didFailLoadForFrame):
* UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::mainFrameLoadDidReachTerminalState):
(WebKit::ViewGestureController::didFinishLoadForMainFrame): Deleted.
* UIProcess/mac/PageClientImpl.h:
* UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::didFailLoadForMainFrame):
* UIProcess/mac/ViewGestureController.h:
(WebKit::ViewGestureController::didFinishLoadForMainFrame):
(WebKit::ViewGestureController::didFailLoadForMainFrame):
* UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::mainFrameLoadDidReachTerminalState):
(WebKit::ViewGestureController::didFinishLoadForMainFrame): Deleted.

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

5 years agoDisable default gesture recognizers on preview.
commit-queue@webkit.org [Mon, 29 Jun 2015 21:56:29 +0000 (21:56 +0000)]
Disable default gesture recognizers on preview.
https://bugs.webkit.org/show_bug.cgi?id=146424
rdar://problem/21572828

We should disable default gesture recognizers on preview, to avoid activating links or
triggering touch events accidentally. We can enable them after preview finishes.

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2015-06-29
Reviewed by Beth Dakin.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView willPresentPreviewViewController:forPosition:inSourceView:]):
(-[WKContentView didDismissPreviewViewController:committing:]):

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

5 years agoFont panel doesn't get updated when bolding text via cmd+b in Mail on OS X
rniwa@webkit.org [Mon, 29 Jun 2015 21:38:31 +0000 (21:38 +0000)]
Font panel doesn't get updated when bolding text via cmd+b in Mail on OS X
https://bugs.webkit.org/show_bug.cgi?id=146379

Reviewed by Darin Adler.

Source/WebCore:

The bug was caused by WebKit not updating the font panel when the typing style changes.
There was also a bug that WebKit never updated font attributes on OS X.

Fixed the bugs by always updating the font panel after applying style instead of only
when the selection changes and setting the font attributes.

I tried really had to write a WebKit API test but I couldn't get it to work so there are
no new tests :(

* WebCore.xcodeproj/project.pbxproj:
* editing/Editor.cpp:
(WebCore::Editor::applyStyle):
(WebCore::Editor::shouldApplyStyle):
(WebCore::Editor::applyParagraphStyle):
(WebCore::Editor::applyStyleToSelection):
(WebCore::Editor::applyParagraphStyleToSelection):
(WebCore::Editor::selectionStartHasStyle):
(WebCore::Editor::document):
(WebCore::Editor::styleForSelectionStart): Deleted.
* editing/Editor.h:
* editing/cocoa/EditorCocoa.h: Added. Shares the declaration for NSUnderlineStyle in iOS.
* editing/cocoa/EditorCocoa.mm: Added.
(WebCore::Editor::styleForSelectionStart): Moved from Editor.cpp
(WebCore::Editor::getTextDecorationAttributesRespectingTypingStyle): Extracted from iOS's
fontAttributesForSelectionStart implementation.
* editing/cocoa/HTMLConverter.mm:
* editing/ios/EditorIOS.mm:
(WebCore::Editor::fontAttributesForSelectionStart):
* editing/mac/EditorMac.mm:
(WebCore::Editor::fontAttributesForSelectionStart):
* loader/EmptyClients.h:
* page/EditorClient.h:

Source/WebKit/mac:

Update the font panel when newly added EditorClient::didApplyStyle is called. Also set the font attributes
in _updateFontPanel so that underline and strike through states will be reflected.

* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldApplyStyle):
(updateFontPanelIfNeeded): Extracted from respondToChangedContents.
(WebEditorClient::didApplyStyle): Added.
(WebEditorClient::respondToChangedContents):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _updateFontPanel]): Sets font attributes as well as font.

Source/WebKit/win:

* WebCoreSupport/WebEditorClient.cpp:
(WebEditorClient::didApplyStyle): Added.
* WebCoreSupport/WebEditorClient.h:

Source/WebKit2:

Since font panel doesn't open in WebKit2 at the moment, just add an empty implementation of didApplyStyle

* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::didApplyStyle):
* WebProcess/WebCoreSupport/WebEditorClient.h:
* WebProcess/WebPage/WebPage.h:

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

5 years agoAdd timeout in run-webkit-tests for launching the simulator
jacob_nielsen@apple.com [Mon, 29 Jun 2015 21:11:55 +0000 (21:11 +0000)]
Add timeout in run-webkit-tests for launching the simulator
https://bugs.webkit.org/show_bug.cgi?id=146371

Reviewed by Darin Adler.

Adds a default 5-minute timeout using the timeout class in webkitpy.benchmark_runner.utils
for the otherwise infinitely patient wait_until_device_is_in_state method.

* Scripts/webkitpy/xcode/simulator.py:
(Simulator.DeviceState):
(Simulator):
(Simulator.wait_until_device_is_in_state):
(Simulator.device_state):

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

5 years agoMediaSession: use a HashSet for the collection of participating elements
mrajca@apple.com [Mon, 29 Jun 2015 21:01:29 +0000 (21:01 +0000)]
MediaSession: use a HashSet for the collection of participating elements
https://bugs.webkit.org/show_bug.cgi?id=146421

Reviewed by Eric Carlson.

* Modules/mediasession/MediaSession.cpp:
(WebCore::MediaSession::addMediaElement):
(WebCore::MediaSession::removeMediaElement):
* Modules/mediasession/MediaSession.h:

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

5 years agoSetting to enable/disable media controls sizing on page zoom
dino@apple.com [Mon, 29 Jun 2015 20:53:59 +0000 (20:53 +0000)]
Setting to enable/disable media controls sizing on page zoom
https://bugs.webkit.org/show_bug.cgi?id=146423
<rdar://problem/18379634>

Reviewed by Eric Carlson.

Add a new setting "MediaControlsScaleWithPageZoom" that can disable
the behaviour we currently implement on iOS, where the media controls
attempt to remain at a fixed size independent of page zoom.

Source/WebCore:

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::setMediaControlsDependOnPageScaleFactor): Do not
set this value to true if the new setting is disabled.
* page/Settings.cpp:
* page/Settings.in: Add the new setting.

Source/WebKit/mac:

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Initialize to false on iOS, true otherwise.
(-[WebPreferences mediaControlsScaleWithPageZoom]):
(-[WebPreferences setMediaControlsScaleWithPageZoom:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):

Source/WebKit2:

* Shared/WebPreferencesDefinitions.h: Initialize to false on iOS, true otherwise.
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetMediaControlsScaleWithPageZoom):
(WKPreferencesGetMediaControlsScaleWithPageZoom):
* UIProcess/API/C/WKPreferencesRefPrivate.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

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

5 years ago[WK2][iOS] Swipe gesture snapshot stays up for 3 seconds when swiping back after...
cdumez@apple.com [Mon, 29 Jun 2015 19:56:03 +0000 (19:56 +0000)]
[WK2][iOS] Swipe gesture snapshot stays up for 3 seconds when swiping back after top-hit navigation
https://bugs.webkit.org/show_bug.cgi?id=146415
<rdar://problem/21595801>

Reviewed by Tim Horton.

Swipe gesture snapshot previously stayed up for 3 seconds when swiping
back after a top-hit navigation. This is because we do not restore the
scroll position in this case and the ViewGestureController was waiting
for the scroll position to be restored before taking down the snapshot.

This patch adds a fail-safe mechanism so that the WebProcess can let
the UIProcess know (via a CouldNotRestorePageState IPC) that the page
state (including scroll position) could not be restored so that it can
let the ViewGestureController it should not wait for the scroll
position to be restored.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _couldNotRestorePageState]):
* UIProcess/API/Cocoa/WKWebViewInternal.h:
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::couldNotRestorePageState):
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::couldNotRestorePageState):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::restorePageState):

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

5 years agoWebRTC: Update the MediaStream API
adam.bergkvist@ericsson.com [Mon, 29 Jun 2015 19:52:21 +0000 (19:52 +0000)]
WebRTC: Update the MediaStream API
https://bugs.webkit.org/show_bug.cgi?id=146313

Reviewed by Eric Carlson.

Source/WebCore:

Update the MediaStream API (MediaStream, MediaStreamTrack and
RealtimeMediaSource) to match the Media Capture and Stream
specification [1]. Notable changes:

Updated event handling to synchronously update corresponding
state/attributes as events are dispatched.

Removed 'new' state from MediaStreamTrack. A track is either 'live' or
'ended'. As a consequence 'started' event is also removed.

MediaStreamTrack always has a source (disconnected source concept was
removed from the spec). Therefore, more state can be kept at the source
without going away.

Calculate MediaStream.active internally, from the track set, instead of
setting it externally.

Updated RealtimeMediaSource Observer interface.

Replaced MediaStream's separate audio and video track lists with a
single track set (more aligned with spec).

Updated MediaStream constructor to adopt instead of clone track
arguments (or tracks from MediaStream argument).

Removed MediaStreamTrack.getSources() and corresponding test (removed
from spec).

Test status: 3 added, 8 existing enabled (some updated) and 1 removed.

[1] http://w3c.github.io/mediacapture-main/archives/20150523/getusermedia.html

Tests: fast/mediastream/MediaStreamTrack-clone.html
       fast/mediastream/MediaStreamTrack-kind.html
       fast/mediastream/MediaStreamTrack-stop.html

* Modules/mediastream/MediaStream.cpp:
(WebCore::MediaStream::create):
(WebCore::MediaStream::MediaStream):
(WebCore::MediaStream::clone):
(WebCore::MediaStream::addTrack):
(WebCore::MediaStream::removeTrack):
(WebCore::MediaStream::getTrackById):
(WebCore::MediaStream::getAudioTracks):
(WebCore::MediaStream::getVideoTracks):
(WebCore::MediaStream::getTracks):
(WebCore::MediaStream::contextDestroyed):
(WebCore::MediaStream::trackDidEnd):
(WebCore::MediaStream::activeStatusChanged):
(WebCore::MediaStream::didAddTrackToPrivate):
(WebCore::MediaStream::didRemoveTrackFromPrivate):
(WebCore::MediaStream::internalAddTrack):
(WebCore::MediaStream::internalRemoveTrack):
(WebCore::MediaStream::scheduleActiveStateChange):
(WebCore::MediaStream::activityEventTimerFired):
(WebCore::MediaStream::trackVectorForType):
(WebCore::MediaStream::~MediaStream): Deleted.
(WebCore::MediaStream::registry): Deleted.
(WebCore::MediaStream::addObserver): Deleted.
(WebCore::MediaStream::removeObserver): Deleted.
* Modules/mediastream/MediaStream.h:
* Modules/mediastream/MediaStream.idl:
* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::MediaStreamTrack):
(WebCore::MediaStreamTrack::~MediaStreamTrack):
(WebCore::MediaStreamTrack::kind):
(WebCore::MediaStreamTrack::id):
(WebCore::MediaStreamTrack::label):
(WebCore::MediaStreamTrack::enabled):
(WebCore::MediaStreamTrack::setEnabled):
(WebCore::MediaStreamTrack::muted):
(WebCore::MediaStreamTrack::readonly):
(WebCore::MediaStreamTrack::remote):
(WebCore::MediaStreamTrack::readyState):
(WebCore::MediaStreamTrack::ended):
(WebCore::MediaStreamTrack::clone):
(WebCore::MediaStreamTrack::stopProducingData):
(WebCore::MediaStreamTrack::states):
(WebCore::MediaStreamTrack::getCapabilities):
(WebCore::MediaStreamTrack::applyConstraints):
(WebCore::MediaStreamTrack::trackEnded):
(WebCore::MediaStreamTrack::trackMutedChanged):
(WebCore::MediaStreamTrack::stop):
(WebCore::MediaStreamTrack::getConstraints): Deleted.
(WebCore::MediaStreamTrack::addObserver): Deleted.
(WebCore::MediaStreamTrack::removeObserver): Deleted.
(WebCore::MediaStreamTrack::configureTrackRendering): Deleted.
(WebCore::MediaStreamTrack::activeDOMObjectName): Deleted.
(WebCore::MediaStreamTrack::canSuspendForPageCache): Deleted.
* Modules/mediastream/MediaStreamTrack.h:
* Modules/mediastream/MediaStreamTrack.idl:
* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::didRemoveRemoteStream): Deleted.
* Modules/mediastream/UserMediaRequest.cpp:
(WebCore::UserMediaRequest::didCreateStream):
* platform/mediastream/MediaStreamPrivate.cpp:
(WebCore::MediaStreamPrivate::create):
(WebCore::MediaStreamPrivate::MediaStreamPrivate):
(WebCore::MediaStreamPrivate::tracks):
(WebCore::MediaStreamPrivate::updateActiveState):
(WebCore::MediaStreamPrivate::addTrack):
(WebCore::MediaStreamPrivate::removeTrack):
* platform/mediastream/MediaStreamPrivate.h:
(WebCore::MediaStreamPrivate::active): Deleted.
* platform/mediastream/MediaStreamTrackPrivate.cpp:
(WebCore::MediaStreamTrackPrivate::create):
(WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate):
(WebCore::MediaStreamTrackPrivate::~MediaStreamTrackPrivate):
(WebCore::MediaStreamTrackPrivate::label):
(WebCore::MediaStreamTrackPrivate::setEnabled):
(WebCore::MediaStreamTrackPrivate::endTrack):
(WebCore::MediaStreamTrackPrivate::clone):
(WebCore::MediaStreamTrackPrivate::type):
(WebCore::MediaStreamTrackPrivate::applyConstraints):
(WebCore::MediaStreamTrackPrivate::sourceStopped):
(WebCore::MediaStreamTrackPrivate::sourceMutedChanged):
(WebCore::MediaStreamTrackPrivate::preventSourceFromStopping):
(WebCore::MediaStreamTrackPrivate::muted): Deleted.
(WebCore::MediaStreamTrackPrivate::readonly): Deleted.
(WebCore::MediaStreamTrackPrivate::remote): Deleted.
(WebCore::MediaStreamTrackPrivate::constraints): Deleted.
(WebCore::MediaStreamTrackPrivate::states): Deleted.
(WebCore::MediaStreamTrackPrivate::capabilities): Deleted.
* platform/mediastream/MediaStreamTrackPrivate.h:
(WebCore::MediaStreamTrackPrivate::id):
(WebCore::MediaStreamTrackPrivate::ended):
(WebCore::MediaStreamTrackPrivate::enabled):
(WebCore::MediaStreamTrackPrivate::setClient):
(WebCore::MediaStreamTrackPrivate::source): Deleted.
(WebCore::MediaStreamTrackPrivate::client): Deleted.
* platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::RealtimeMediaSource):
(WebCore::RealtimeMediaSource::reset):
(WebCore::RealtimeMediaSource::setMuted):
(WebCore::RealtimeMediaSource::readonly):
(WebCore::RealtimeMediaSource::stop):
(WebCore::RealtimeMediaSource::requestStop):
(WebCore::RealtimeMediaSource::addObserver): Deleted.
(WebCore::RealtimeMediaSource::removeObserver): Deleted.
* platform/mediastream/RealtimeMediaSource.h:
(WebCore::RealtimeMediaSource::stopped):
(WebCore::RealtimeMediaSource::id): Deleted.
(WebCore::RealtimeMediaSource::muted): Deleted.
(WebCore::RealtimeMediaSource::setReadonly): Deleted.
* platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp:
(WebCore::RealtimeMediaSourceCenterOwr::createMediaStream): Deleted.
* platform/mock/MockRealtimeMediaSourceCenter.cpp:
(WebCore::MockRealtimeMediaSourceCenter::createMediaStream): Deleted.

LayoutTests:

Test status: 3 added, 8 existing enabled (some updated) and 1 removed.

* TestExpectations:
* fast/mediastream/MediaStream-add-ended-tracks-expected.txt:
* fast/mediastream/MediaStream-add-ended-tracks.html:
* fast/mediastream/MediaStream-add-remove-tracks-expected.txt:
* fast/mediastream/MediaStream-add-remove-tracks.html:
* fast/mediastream/MediaStream-add-tracks-to-inactive-stream.html:
* fast/mediastream/MediaStream-clone-expected.txt: Added.
* fast/mediastream/MediaStream-clone.html:
* fast/mediastream/MediaStream-construct-with-ended-tracks-expected.txt: Added.
* fast/mediastream/MediaStream-construct-with-ended-tracks.html:
* fast/mediastream/MediaStream-getTracks-expected.txt:
* fast/mediastream/MediaStream-getTracks.html:
* fast/mediastream/MediaStreamConstructor.html:
* fast/mediastream/MediaStreamTrack-clone-expected.txt: Added.
* fast/mediastream/MediaStreamTrack-clone.html: Added.
* fast/mediastream/MediaStreamTrack-getSources-expected.txt: Removed.
* fast/mediastream/MediaStreamTrack-getSources.html: Removed. Tested method removed from spec.
* fast/mediastream/MediaStreamTrack-kind-expected.txt: Added.
* fast/mediastream/MediaStreamTrack-kind.html: Added.
* fast/mediastream/MediaStreamTrack-stop-expected.txt: Added.
* fast/mediastream/MediaStreamTrack-stop.html: Added.
* fast/mediastream/MediaStreamTrackEvent-constructor-expected.txt:
* fast/mediastream/MediaStreamTrackEvent-constructor.html:
* fast/mediastream/resources/getUserMedia-helper.js: Added.
(.reject):
(getUserMedia):
(defaultRejectOrCatch):
* platform/gtk/TestExpectations:

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

5 years agoREGRESSION: Web Inspector: Jump to Definition is broken
commit-queue@webkit.org [Mon, 29 Jun 2015 19:43:53 +0000 (19:43 +0000)]
REGRESSION: Web Inspector: Jump to Definition is broken
https://bugs.webkit.org/show_bug.cgi?id=146376

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-29
Reviewed by Timothy Hatcher.

* UserInterface/Views/ObjectTreeBaseTreeElement.js:
(WebInspector.ObjectTreeBaseTreeElement.prototype._appendMenusItemsForObject):
Allow changing tabs when jumping to function definition.

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

5 years agoMake the NFA transitions range-based
benjamin@webkit.org [Mon, 29 Jun 2015 19:40:12 +0000 (19:40 +0000)]
Make the NFA transitions range-based
https://bugs.webkit.org/show_bug.cgi?id=146338

Reviewed by Alex Christensen.

Source/WebCore:

Change the NFA to use range based transition for any kind of transition.
The fallback transition is also absorbed as ranges.

Previously, the NFA would only have single transitions and a fallback
transition for all cases not covered by single transitions.

The problem with that design was that character ranges (e.g. [a-z]) were
extended as individual transitions. Something like [^a] would cover
most of the alphabet with transitions.
When converting the NFA to DFA, the time is proportional to the number of states
multiplied by the number of transitions. With many individual transitions,
the run time was an order of magnitude higher than what we want.

This patch changes the NFA to only handle ranges of characters. A single transition
becomes a range with the character as first and last character in the range
('a' becomes 'a' to 'a').
Ranges of characters are handled direclty (e.g. [a-z] becomes a single 'a' to 'z' transition).

In the context of the state machines, ranges have identifies (the target of the transitions).
When two ranges collide, they have to be split such that each part retain its target
except the intersection that gets the union of the targets.

Handling the union of ranges efficiently is critical because we have to do
it for every NFA node in any subset when building the DFA. The helper
class that does that is MutableRange.

The union of ranges is done efficiently because of preconditions on our list of ranges:
-The ranges must be sorted.
-No range in a list can intersect any other range in the same list.

To merge two ranges, we can go over them in order and split them part by part.
It is easy to find what goes where because they are both sorted and we can
compare the characters of each to know how to move forward.
The time to merge 2 range list is proportional to O(n+m) where 'n' and 'm' are
the number of ranges in each list.

Since taking the union of two lists usually create new ranges, we have to allocate
those somewhere efficiently. To do that, MutableRange support an inline capacity,
which is used for the NFAToDFA Convertion.

---

With ranges, the NFA-to-DFA conversion changes very little:
-Each NFA nodes contains a list of ranges and each range has a list of targets.
-The subset construction select any number of NFA nodes corresponding to
 a single deterministic state.
-For the subset, we can use MutableRange to merge the ranges of every
 NFA node in the set. The resulting list has rangeis with targets corresponding
 to the union of all the transitions.
-We go over all the ranges the same way we used to go over the transitions.
 Since the DFA does not support ranges, the ranges are spread as individual
 transitions + fallback transition.

---

With the efficient merging solved, we still need the actual NFA to use ranges
instead of individual transitions.

I could have used MutableRange for that but it is not the most compact
way to represent ranges that do not need merging.

Instead, the NFA uses a custom structure: ImmutableNFA. It is basically
the same thing, but in that one you cannot change a list of range
after creating it.

Consequently, the sorted ranges in ImmutableNFA are also subsequent
in memory, which is really nice to go over them efficiently
when merging ranges in the NFA-to-DFA conversion. :)

When building the NFA, we don't know all the transitions when creating
each node, BUT we know that we have very few node "unfinished" at any
time. Since we build by going depth-first in the prefix-tree, we only
have the max-depth of live nodes in the worst case.

To help building the NFA out of the prefix tree, we have
ImmutableNFANodeBuilder. It keeps all the informations about a NFA node,
but in a non-compact, mutable form. When a ImmutableNFANodeBuilder
is destroyed, it serialize the information into the immutable NFA.

* WebCore.xcodeproj/project.pbxproj:
* contentextensions/CombinedURLFilters.cpp:
(WebCore::ContentExtensions::generateNFAForSubtree):
(WebCore::ContentExtensions::CombinedURLFilters::processNFAs):
* contentextensions/ContentExtensionCompiler.cpp:
(WebCore::ContentExtensions::compileRuleList):
* contentextensions/DFA.cpp:
(WebCore::ContentExtensions::DFA::empty):
* contentextensions/DFA.h:
* contentextensions/ImmutableNFA.h: Added.
(WebCore::ContentExtensions::ImmutableNFA::ConstTargetIterator::operator*):
(WebCore::ContentExtensions::ImmutableNFA::ConstTargetIterator::operator->):
(WebCore::ContentExtensions::ImmutableNFA::ConstTargetIterator::operator==):
(WebCore::ContentExtensions::ImmutableNFA::ConstTargetIterator::operator!=):
(WebCore::ContentExtensions::ImmutableNFA::ConstTargetIterator::operator++):
(WebCore::ContentExtensions::ImmutableNFA::IterableConstTargets::begin):
(WebCore::ContentExtensions::ImmutableNFA::IterableConstTargets::end):
(WebCore::ContentExtensions::ImmutableNFA::ConstRangeIterator::operator*):
(WebCore::ContentExtensions::ImmutableNFA::ConstRangeIterator::operator->):
(WebCore::ContentExtensions::ImmutableNFA::ConstRangeIterator::operator==):
(WebCore::ContentExtensions::ImmutableNFA::ConstRangeIterator::operator!=):
(WebCore::ContentExtensions::ImmutableNFA::ConstRangeIterator::operator++):
(WebCore::ContentExtensions::ImmutableNFA::ConstRangeIterator::data):
(WebCore::ContentExtensions::ImmutableNFA::IterableConstRange::begin):
(WebCore::ContentExtensions::ImmutableNFA::IterableConstRange::end):
(WebCore::ContentExtensions::ImmutableNFA::IterableConstRange::debugPrint):
(WebCore::ContentExtensions::ImmutableNFA::transitionsForNode):
(WebCore::ContentExtensions::ImmutableNFA::root):
(WebCore::ContentExtensions::ImmutableNFA::finalize):
(WebCore::ContentExtensions::ImmutableNFA::memoryUsed):
* contentextensions/ImmutableNFANodeBuilder.h: Added.
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::ImmutableNFANodeBuilder):
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::~ImmutableNFANodeBuilder):
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::addTransition):
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::addEpsilonTransition):
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::setActions):
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::operator=):
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::finalize):
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::sinkActions):
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::sinkTransitions):
(WebCore::ContentExtensions::ImmutableNFANodeBuilder::sinkEpsilonTransitions):
* contentextensions/MutableRange.h: Added.
(WebCore::ContentExtensions::MutableRange::MutableRange):
(WebCore::ContentExtensions::MutableRange::operator=):
(WebCore::ContentExtensions::MutableRange::size):
* contentextensions/MutableRangeList.h: Added.
(WebCore::ContentExtensions::MutableRangeList::ConstIterator::operator*):
(WebCore::ContentExtensions::MutableRangeList::ConstIterator::operator->):
(WebCore::ContentExtensions::MutableRangeList::ConstIterator::operator==):
(WebCore::ContentExtensions::MutableRangeList::ConstIterator::operator!=):
(WebCore::ContentExtensions::MutableRangeList::ConstIterator::operator++):
(WebCore::ContentExtensions::MutableRangeList::begin):
(WebCore::ContentExtensions::MutableRangeList::end):
(WebCore::ContentExtensions::MutableRangeList::appendRange):
(WebCore::ContentExtensions::MutableRangeList::extend):
(WebCore::ContentExtensions::MutableRangeList::isEmpty):
(WebCore::ContentExtensions::MutableRangeList::clear):
(WebCore::ContentExtensions::MutableRangeList::debugPrint):
(WebCore::ContentExtensions::MutableRangeList::insertBetween):
(WebCore::ContentExtensions::MutableRangeList::initializeFrom):
* contentextensions/NFA.cpp:
(WebCore::ContentExtensions::NFA::debugPrintDot):
(WebCore::ContentExtensions::NFA::NFA): Deleted.
(WebCore::ContentExtensions::NFA::createNode): Deleted.
(WebCore::ContentExtensions::NFA::memoryUsed): Deleted.
(WebCore::ContentExtensions::NFA::addTransition): Deleted.
(WebCore::ContentExtensions::NFA::addEpsilonTransition): Deleted.
(WebCore::ContentExtensions::NFA::addTransitionsOnAnyCharacter): Deleted.
(WebCore::ContentExtensions::NFA::setActions): Deleted.
(WebCore::ContentExtensions::NFA::graphSize): Deleted.
(WebCore::ContentExtensions::NFA::restoreToGraphSize): Deleted.
(WebCore::ContentExtensions::printRange): Deleted.
(WebCore::ContentExtensions::printTransitions): Deleted.
* contentextensions/NFA.h:
(WebCore::ContentExtensions::NFA::root): Deleted.
(WebCore::ContentExtensions::NFA::addRuleId): Deleted.
* contentextensions/NFANode.h:
* contentextensions/NFAToDFA.cpp:
(WebCore::ContentExtensions::epsilonClosureExcludingSelf):
(WebCore::ContentExtensions::resolveEpsilonClosures):
(WebCore::ContentExtensions::NodeIdSetToUniqueNodeIdSetSource::NodeIdSetToUniqueNodeIdSetSource):
(WebCore::ContentExtensions::NodeIdSetToUniqueNodeIdSetTranslator::translate):
(WebCore::ContentExtensions::DataConverterWithEpsilonClosure::convert):
(WebCore::ContentExtensions::DataConverterWithEpsilonClosure::extend):
(WebCore::ContentExtensions::createCombinedTransition):
(WebCore::ContentExtensions::canUseFallbackTransition):
(WebCore::ContentExtensions::findBestFallbackTarget):
(WebCore::ContentExtensions::getOrCreateDFANode):
(WebCore::ContentExtensions::NFAToDFA::convert):
(WebCore::ContentExtensions::populateTransitions): Deleted.
* contentextensions/NFAToDFA.h:
* contentextensions/Term.h:
(WebCore::ContentExtensions::Term::Term):
(WebCore::ContentExtensions::Term::generateGraph):
(WebCore::ContentExtensions::Term::generateSubgraphForAtom):
(WebCore::ContentExtensions::Term::Term::generateGraph): Deleted.

Tools:

* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
Test some new interesting cases.

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

5 years agoMedia Session: test session attribute of newly-created media elements
mrajca@apple.com [Mon, 29 Jun 2015 19:12:29 +0000 (19:12 +0000)]
Media Session: test session attribute of newly-created media elements
https://bugs.webkit.org/show_bug.cgi?id=146412

Reviewed by Eric Carlson.

* media/session/default-session-expected.txt: Added.
* media/session/default-session.html: Added.
* platform/mac/TestExpectations: Media Session support is disabled by default.

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

5 years ago[WK2][iOS] Add WKWebView private API to save a back/forward snapshot
cdumez@apple.com [Mon, 29 Jun 2015 19:08:20 +0000 (19:08 +0000)]
[WK2][iOS] Add WKWebView private API to save a back/forward snapshot
https://bugs.webkit.org/show_bug.cgi?id=146398
<rdar://problem/21584231>

Reviewed by Dan Bernstein.

Add WKWebView private API to save a back/forward snapshot so that the
client can make sure a back/forward snapshot is available even when
swapping WKWebView upon navigation.

This matches the WKView.saveBackForwardSnapshotForItem API we have on
Mac.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView saveBackForwardSnapshotForItem:]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:

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

5 years agoBinding generator should allow using JSC::Value for "any" parameter in lieu of Script...
youenn.fablet@crf.canon.fr [Mon, 29 Jun 2015 19:04:36 +0000 (19:04 +0000)]
Binding generator should allow using JSC::Value for "any" parameter in lieu of ScriptValue
https://bugs.webkit.org/show_bug.cgi?id=146403

Reviewed by Darin Adler.

Source/JavaScriptCore:

* bindings/ScriptValue.h: Added implicit conversion to JSC::JSValue.

Source/WebCore:

Covered by existing tests.

Enabling new APIs to use JSC::JSValue by using implicit case from ScriptValue to JSC::JSValue.
Updated binding generator to include ScruptValue header in the needed JSXX.cpp files.
Applied approach to ReadableStreamController.error.

* Modules/streams/ReadableStreamController.h:
(WebCore::ReadableStreamController::error):
* Modules/streams/ReadableStreamController.idl:
* bindings/js/JSReadableStreamControllerCustom.cpp:
(WebCore::constructJSReadableStreamController): Deleted.
* bindings/js/ReadableJSStream.cpp:
(WebCore::ReadableJSStream::error):
* bindings/js/ReadableJSStream.h:
* bindings/scripts/CodeGeneratorJS.pm:
(JSValueToNative):
* bindings/scripts/test/JS/JSTestObj.cpp:

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

5 years agoUse DISPATCH_SOURCE_TYPE_MEMORYPRESSURE instead of DISPATCH_SOURCE_TYPE_MEMORYSTATUS
andersca@apple.com [Mon, 29 Jun 2015 18:56:56 +0000 (18:56 +0000)]
Use DISPATCH_SOURCE_TYPE_MEMORYPRESSURE instead of DISPATCH_SOURCE_TYPE_MEMORYSTATUS
https://bugs.webkit.org/show_bug.cgi?id=146413
Source/WebCore:

rdar://problem/21295036

Reviewed by Andreas Kling.

Replace SPI with API.

* WebCore.xcodeproj/project.pbxproj:
* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::install):
* platform/mac/WebCoreSystemInterface.h:
* platform/spi/cocoa/DispatchSPI.h: Removed.

Source/WebKit/mac:

Reviewed by Andreas Kling.

Replace SPI with API.

* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Deleted.
* WebView/WebView.mm:
(+[WebView registerForMemoryNotifications]):

Source/WebKit2:

Reviewed by Andreas Kling.

Replace SPI with API.

* UIProcess/ios/WebMemoryPressureHandlerIOS.mm:
(WebKit::WebMemoryPressureHandler::WebMemoryPressureHandler):
* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Deleted.

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

5 years ago[iOS] Pausing a media element should discard buffered data immediately if under memor...
akling@apple.com [Mon, 29 Jun 2015 18:46:37 +0000 (18:46 +0000)]
[iOS] Pausing a media element should discard buffered data immediately if under memory pressure.
<https://webkit.org/b/146410>
<rdar://problem/20366883>

Reviewed by Darin Adler.

When moving a media element into paused state, call purgeBufferedDataIfPossible()
right away if the system is under memory pressure.

This ensures that mediaserverd drops its forward-looking frame queue right
away instead of waiting for a new pressure notification.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::pauseInternal):

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

5 years ago[iOS] Hardware Keyboard: All combinations of arrow keys and space key do not scroll...
enrica@apple.com [Mon, 29 Jun 2015 17:43:46 +0000 (17:43 +0000)]
[iOS] Hardware Keyboard: All combinations of arrow keys and space key do not scroll the view.
https://bugs.webkit.org/show_bug.cgi?id=146290
rdar://problem/18466015

We don't normally get called by the keyboard to handle the event if we are not
interacting with editable content. In order to receive all the hardware keyboard events
we need to implement _handleKeyUIEvent which is called for every key event
when the view is first responder. This gives us the opportunity to send each keystroke
to the WebProcess to let any Javascript handler intercept it and then perform the default
action for the key combination.
Unfortunately this mechanism does not provide key repeat, which is implemented in the
keyboard layer. In order to have it at least for the arrow keys, we use the keyCommands
mechanism only for those.

Reviewed by Darin Adler.

* Platform/spi/ios/UIKitSPI.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _scrollByOffset:]):
* UIProcess/API/Cocoa/WKWebViewInternal.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView canPerformAction:withSender:]):
(-[WKContentView keyCommands]):
(-[WKContentView _arrowKey:]):
(-[WKContentView _handleKeyUIEvent:]):
(-[WKContentView handleKeyEvent:]):
(-[WKContentView handleKeyWebEvent:]):
(-[WKContentView _interpretKeyEvent:isCharEvent:]):

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

5 years agoMedia Session: Media elements should report a null session for Default sessions
mrajca@apple.com [Mon, 29 Jun 2015 17:33:59 +0000 (17:33 +0000)]
Media Session: Media elements should report a null session for Default sessions
https://bugs.webkit.org/show_bug.cgi?id=146373

Reviewed by Eric Carlson.

If a media element's current session is a 'Default' media session, its session property should report null in
the JavaScript API.

* Modules/mediasession/MediaSession.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::session):

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

5 years ago[Mac] Disable QTKit by default.
commit-queue@webkit.org [Mon, 29 Jun 2015 17:18:19 +0000 (17:18 +0000)]
[Mac] Disable QTKit by default.
https://bugs.webkit.org/show_bug.cgi?id=146352

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2015-06-29
Reviewed by Darin Adler.
Source/WebCore:

Fix the the requirement for enabling QTKit and AVFoundation.

* page/Settings.cpp:
(WebCore::invalidateAfterGenericFamilyChange): Remove the requirement
for enabling QTKit and AVFoundation. The initial state of QTKit should
be disabled on all OS X ports. And the initial state of AVFoundation
should be enabled  on all OS X ports.

LayoutTests:

* platform/mac/TestExpectations: Skip media tests which require QTKit on
all OS X ports.

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

5 years agoTest existence of controls on MediaSession
mrajca@apple.com [Mon, 29 Jun 2015 16:50:16 +0000 (16:50 +0000)]
Test existence of controls on MediaSession
https://bugs.webkit.org/show_bug.cgi?id=146356

Reviewed by Eric Carlson.

* media/session/controls-existence-expected.txt: Added.
* media/session/controls-existence.html: Added.
* platform/mac/TestExpectations: Media Session support is disabled by default.

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

5 years agoUnreviewed EFL gardening on 29th Jun.
commit-queue@webkit.org [Mon, 29 Jun 2015 15:22:18 +0000 (15:22 +0000)]
Unreviewed EFL gardening on 29th Jun.
https://bugs.webkit.org/show_bug.cgi?id=146409

Remove the duplicated results and rebaseline the missing tests.

Patch by Hunseop Jeong <hs85.jeong@samsung.com> on 2015-06-29

* platform/efl/TestExpectations:
* platform/efl/editing/execCommand/paste-1-expected.txt: Added.
* platform/efl/printing/single-line-must-not-be-split-into-two-pages-expected.txt: Added.

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

5 years ago[EFL] Purge unused favicons from IconDatabase after 30 days.
commit-queue@webkit.org [Mon, 29 Jun 2015 10:09:59 +0000 (10:09 +0000)]
[EFL] Purge unused favicons from IconDatabase after 30 days.
https://bugs.webkit.org/show_bug.cgi?id=146334

Patch by Hyungwook Lee <hyungwook.lee@navercorp.com> on 2015-06-29
Reviewed by Gyuyoung Kim.

We need purge unused favicons from IconDatabase for database size control.

* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::performURLImport):

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

5 years agoFixed the iOS 8.x build after r186066.
mitz@apple.com [Mon, 29 Jun 2015 06:51:28 +0000 (06:51 +0000)]
Fixed the iOS 8.x build after r186066.

* UIProcess/ios/WebVideoFullscreenManagerProxy.h:
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::create):

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

5 years agoFixed the iOS build after r186059.
mitz@apple.com [Mon, 29 Jun 2015 06:43:45 +0000 (06:43 +0000)]
Fixed the iOS build after r186059.

* UIProcess/ios/WebVideoFullscreenManagerProxy.h:

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

5 years ago[EFL] Unreviewed add new baseline for missing tests
gyuyoung.kim@webkit.org [Mon, 29 Jun 2015 06:26:35 +0000 (06:26 +0000)]
[EFL] Unreviewed add new baseline for missing tests

Some tests need to have own test expectations for EFL port.

* platform/efl/TestExpectations:
* platform/efl/accessibility/auto-filled-value-expected.txt: Added.
* platform/efl/accessibility/img-fallsback-to-title-expected.txt: Added.
* platform/efl/accessibility/internal-link-anchors2-expected.txt: Added.
* platform/efl/accessibility/math-multiscript-attributes-expected.txt: Added.
* platform/efl/accessibility/meter-element-expected.txt: Added.
* platform/efl/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
* platform/efl/compositing/iframes/resizer-expected.txt: Added.
* platform/efl/compositing/layer-creation/fixed-position-scroll-expected.txt: Added.
* platform/efl/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Added.
* platform/efl/compositing/tiling/huge-layer-add-remove-child-expected.txt: Added.
* platform/efl/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt: Added.
* platform/efl/css2.1/t1604-c542-letter-sp-00-b-a-expected.txt: Added.
* platform/efl/css3/flexbox/flexbox-baseline-margins-expected.txt: Added.
* platform/efl/editing/selection/contains-boundaries-expected.txt: Added.
* platform/efl/editing/selection/mixed-editability-10-expected.txt: Added.
* platform/efl/editing/selection/replaced-boundaries-3-expected.txt: Added.
* platform/efl/editing/style/5065910-expected.txt: Added.
* platform/efl/editing/style/font-family-with-space-expected.txt: Added.
* platform/efl/fast/css/named-images-expected.txt: Added.
* platform/efl/ietestcenter/css3/bordersbackgrounds/background-repeat-space-padding-box-expected.txt: Added.
* platform/efl/ietestcenter/css3/text/textshadow-005-expected.txt: Added.
* platform/efl/printing/media-queries-print-expected.txt: Added.
* platform/efl/printing/setPrinting-expected.txt: Added.
* platform/efl/printing/simultaneous-position-float-change-expected.txt: Added.
* platform/efl/printing/width-overflow-expected.txt: Added.
* platform/efl/transforms/3d/point-mapping/3d-point-mapping-origins-expected.txt: Added.

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

5 years agoAdd support for 'Default' media session types
mrajca@apple.com [Mon, 29 Jun 2015 05:29:04 +0000 (05:29 +0000)]
Add support for 'Default' media session types
https://bugs.webkit.org/show_bug.cgi?id=146355

Reviewed by Darin Adler.

* Modules/mediasession/MediaSession.cpp:
(WebCore::MediaSession::MediaSession): Added a new constructor for creating 'Default' media sessions.
(WebCore::MediaSession::kind): 'Default' media sessions are represented by an empty string.
* Modules/mediasession/MediaSession.h:
* dom/Document.cpp:
(WebCore::Document::defaultMediaSession): Lazily construct the default media session.
* dom/Document.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): New media elements are assigned to the 'Default' media session.

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

5 years agoAX: iOS: Crash at accessibilityObjectForMainFramePlugin()
cfleizach@apple.com [Mon, 29 Jun 2015 05:05:37 +0000 (05:05 +0000)]
AX: iOS: Crash at accessibilityObjectForMainFramePlugin()
https://bugs.webkit.org/show_bug.cgi?id=146399

Reviewed by Darin Adler.

Could not reproduce issue, but the invalid address seems to indicate this is a nullptr access is happening when we try to get the plugin of the m_page variable when
it has not been initialized.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::accessibilityObjectForMainFramePlugin):

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

5 years ago[EFL] Unreviewed, gardening.
jinwoo7.song@samsung.com [Mon, 29 Jun 2015 04:47:46 +0000 (04:47 +0000)]
[EFL] Unreviewed, gardening.

Add missing expectation results in fast/ directory.

* platform/efl/fast/css/resize-corner-tracking-transformed-iframe-expected.txt: Added.
* platform/efl/fast/forms/select-element-focus-ring-expected.txt: Added.
* platform/efl/fast/regions/auto-size/autoheight-regions-mark-expected.txt: Added.
* platform/efl/fast/regions/flows-dependency-dynamic-remove-expected.txt: Added.
* platform/efl/fast/regions/flows-dependency-same-flow-expected.txt: Added.
* platform/efl/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt: Added.
* platform/efl/fast/regions/region-dynamic-after-before-expected.txt: Added.
* platform/efl/fast/regions/region-generated-content-before-after-expected.txt: Added.
* platform/efl/fast/regions/repaint/line-flow-with-floats-in-regions-expected.txt: Added.
* platform/efl/fast/regions/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: Added.
* platform/efl/fast/regions/repaint/region-painting-invalidation-expected.txt: Added.
* platform/efl/fast/regions/repaint/region-painting-via-layout-expected.txt: Added.
* platform/efl/fast/regions/text-region-split-small-pagination-expected.txt: Added.
* platform/efl/fast/repaint/block-selection-gap-in-table-cell-expected.txt: Added.
* platform/efl/fast/ruby/select-ruby-expected.txt: Added.

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

5 years agoASAN crashes in js/regress-141098.html
ddkilzer@apple.com [Mon, 29 Jun 2015 03:18:29 +0000 (03:18 +0000)]
ASAN crashes in js/regress-141098.html
<http://webkit.org/b/145007>

* TestExpectations: Remove test from skip list as it no longer
crashes with ASan enabled:
- js/regress-141098.html

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

5 years ago[Mac] Remove redundant call to colorUsingColorSpaceName:
darin@apple.com [Mon, 29 Jun 2015 03:18:02 +0000 (03:18 +0000)]
[Mac] Remove redundant call to colorUsingColorSpaceName:
https://bugs.webkit.org/show_bug.cgi?id=146397

Reviewed by Alexey Proskuryakov.

* WebView/WebHTMLView.mm:
(extractUnderlines): Remove call to the colorUsingColorSpaceName: method,
since colorFromNSColor already calls it. No need to do it twice.

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

5 years agoUse Ref/RefPtr instead of PassRefPtr in WebKit2
gyuyoung.kim@webkit.org [Mon, 29 Jun 2015 01:19:30 +0000 (01:19 +0000)]
Use Ref/RefPtr instead of PassRefPtr in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=146190

Reviewed by Darin Adler.

As a step to remove PassRefPtr, this patch reduces use of PassRefPtr in WebKit2.

* Shared/API/c/WKContextMenuItem.cpp:
(WKContextMenuItemCreateAsAction):
(WKContextMenuItemCreateAsCheckableAction):
* Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
(WebKit::WebCoordinatedSurface::create):
* Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
* Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp:
(WebKit::ThreadSafeCoordinatedSurface::create):
* Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.h:
* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::create):
* Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
* Shared/Plugins/NPRemoteObjectMap.cpp:
(WebKit::NPRemoteObjectMap::create):
* Shared/Plugins/NPRemoteObjectMap.h:
* Shared/WebBatteryStatus.h:
(WebKit::WebBatteryStatus::create):
* Shared/WebCertificateInfo.h:
(WebKit::WebCertificateInfo::create):
* Shared/WebContextMenuItem.h:
(WebKit::WebContextMenuItem::create):
* Shared/WebRenderObject.cpp:
(WebKit::WebRenderObject::create):
* Shared/WebRenderObject.h:
(WebKit::WebRenderObject::create):
* UIProcess/API/APINavigationData.h:
(API::NavigationData::create):
* UIProcess/API/APISession.cpp:
(API::Session::createEphemeral):
* UIProcess/API/APISession.h:
* UIProcess/API/APISessionState.cpp:
(API::SessionState::create):
* UIProcess/API/APISessionState.h:
* UIProcess/API/APIUserScript.h:
* UIProcess/API/APIWebsiteDataStore.cpp:
(API::WebsiteDataStore::createNonPersistentDataStore):
(API::WebsiteDataStore::create):
* UIProcess/API/APIWebsiteDataStore.h:
* UIProcess/API/C/WKCredential.cpp:
(WKCredentialCreate):
(WKCredentialCreateWithCertificateInfo):
* UIProcess/API/C/WKPage.cpp:
(WKPageCopySessionState):
(WKPageSetPageContextMenuClient):
* UIProcess/API/C/WKSessionStateRef.cpp:
(WKSessionStateCreateFromData):
* UIProcess/API/C/WKUserScriptRef.cpp:
(WKUserScriptCreateWithSource):
* UIProcess/API/Cocoa/WKNSURLAuthenticationChallenge.mm:
(-[WKNSURLAuthenticationChallengeSender useCredential:forAuthenticationChallenge:]):
* UIProcess/API/Cocoa/WKProcessGroup.mm:
(-[WKProcessGroup _setAllowsSpecificHTTPSCertificate:forHost:]):
* UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _setAllowsSpecificHTTPSCertificate:forHost:]):
* UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(+[WKWebsiteDataStore nonPersistentDataStore]):
* UIProcess/API/efl/ewk_auth_request_private.h:
(EwkAuthRequest::create):
* UIProcess/API/efl/ewk_back_forward_list_item_private.h:
(EwkBackForwardListItem::create):
* UIProcess/API/efl/ewk_context.cpp:
(EwkContext::create):
* UIProcess/API/efl/ewk_context_menu_private.h:
(EwkContextMenu::create):
* UIProcess/API/efl/ewk_download_job_private.h:
(EwkDownloadJob::create):
* UIProcess/API/efl/ewk_file_chooser_request_private.h:
(EwkFileChooserRequest::create):
* UIProcess/API/efl/ewk_form_submission_request_private.h:
(EwkFormSubmissionRequest::create):
* UIProcess/API/efl/ewk_navigation_data_private.h:
(EwkNavigationData::create):
* UIProcess/API/efl/ewk_security_origin_private.h:
(EwkSecurityOrigin::create):
* UIProcess/Authentication/AuthenticationChallengeProxy.h:
(WebKit::AuthenticationChallengeProxy::create):
* UIProcess/Authentication/AuthenticationDecisionListener.h:
(WebKit::AuthenticationDecisionListener::create):
* UIProcess/Authentication/WebCredential.h:
(WebKit::WebCredential::create):
* UIProcess/Authentication/WebProtectionSpace.h:
(WebKit::WebProtectionSpace::create):
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::HistoryClient::didNavigateWithNavigationData):
* UIProcess/Databases/DatabaseProcessProxy.cpp:
(WebKit::DatabaseProcessProxy::create):
* UIProcess/Databases/DatabaseProcessProxy.h:
* UIProcess/Launcher/ProcessLauncher.h:
(WebKit::ProcessLauncher::create):
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
* UIProcess/Notifications/WebNotificationManagerProxy.cpp:
(WebKit::WebNotificationManagerProxy::create):
* UIProcess/Notifications/WebNotificationManagerProxy.h:
* UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::create):
* UIProcess/Plugins/PluginProcessProxy.h:
* UIProcess/Scrolling/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::create):
* UIProcess/Scrolling/RemoteScrollingTree.h:
* UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::create):
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::WebProcessPool):
* UIProcess/efl/WebPopupMenuListenerEfl.h:
(WebKit::WebPopupMenuListenerEfl::create):
* UIProcess/efl/WebViewEfl.cpp:
(WebKit::WebView::create):
* UIProcess/ios/WebVideoFullscreenManagerProxy.h:
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::create):

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

5 years ago[Cocoa] Remove _WKSecurityOrigin.{h,mm}
mitz@apple.com [Mon, 29 Jun 2015 00:33:15 +0000 (00:33 +0000)]
[Cocoa] Remove _WKSecurityOrigin.{h,mm}
https://bugs.webkit.org/show_bug.cgi?id=146402

Reviewed by Sam Weinig.

* UIProcess/API/Cocoa/WKSecurityOrigin.mm: Declare and define _WKSecurityOrigin here.
(-[WKSecurityOrigin methodSignatureForSelector:]): Moved into a WKBinaryCompatibility
category.
(-[WKSecurityOrigin forwardInvocation:]): Ditto.
* UIProcess/API/Cocoa/_WKSecurityOrigin.h: Removed.
* UIProcess/API/Cocoa/_WKSecurityOrigin.mm: Removed.
* WebKit2.xcodeproj/project.pbxproj: Removed references to _WKSecurityOrigin.{h,mm}.

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

5 years ago[Xcode] Use the same environment for command-line and IDE builds
mitz@apple.com [Sun, 28 Jun 2015 23:30:20 +0000 (23:30 +0000)]
[Xcode] Use the same environment for command-line and IDE builds
https://bugs.webkit.org/show_bug.cgi?id=146401

Reviewed by Anders Carlsson.

* Scripts/webkitdirs.pm:
(XcodeOptions): Set the UseSanitizedBuildSystemEnvironment user default to YES, which makes
xcodebuild use the same environment Xcode uses.

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

5 years agoFix warning about duplicate test expectation: js/regress-141098.html
ddkilzer@apple.com [Sun, 28 Jun 2015 23:07:45 +0000 (23:07 +0000)]
Fix warning about duplicate test expectation: js/regress-141098.html

Fixes the following warning when running layout tests:

    LayoutTests/TestExpectations:523 More specific entry for js/regress-141098.html on line LayoutTests/TestExpectations:523 overrides line LayoutTests/TestExpectations:519. js/regress-141098.html

* TestExpectations: Comment out duplicate:
- js/regress-141098.html

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

5 years agoMark http/tests/contentextensions/character-set-basic-support.html as flaky on mac-wk2
ddkilzer@apple.com [Sun, 28 Jun 2015 22:51:04 +0000 (22:51 +0000)]
Mark http/tests/contentextensions/character-set-basic-support.html as flaky on mac-wk2

* platform/mac-wk2/TestExpectations: Mark ask flaky:
- http/tests/contentextensions/character-set-basic-support.html

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

5 years ago[iOS] Drop buffered data in paused media elements on memory pressure.
akling@apple.com [Sun, 28 Jun 2015 22:16:04 +0000 (22:16 +0000)]
[iOS] Drop buffered data in paused media elements on memory pressure.
<https://webkit.org/b/146369>
<rdar://problem/20366883>

Reviewed by Eric Carlson.

To avoid getting crushed under mediaserverd memory growth when viewing
a page with multiple media elements, add a step to the memory pressure
handler that drops buffered data from all media elements that are
not currently playing.

On a test page with a bunch of embedded YouTube videos, this pass frees
up ~4MB per paused video when the system memory pressure hits.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::allMediaElements):
(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::~HTMLMediaElement):
(WebCore::HTMLMediaElement::purgeBufferedDataIfPossible):
* html/HTMLMediaElement.h:
* platform/MemoryPressureHandler.cpp:
(WebCore::MemoryPressureHandler::releaseCriticalMemory):

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

5 years agoCairoGL should be checked unconditionally
commit-queue@webkit.org [Sun, 28 Jun 2015 19:09:46 +0000 (19:09 +0000)]
CairoGL should be checked unconditionally
https://bugs.webkit.org/show_bug.cgi?id=146390

Patch by Philip Chimento <philip.chimento@gmail.com> on 2015-06-28
Reviewed by Darin Adler.

* Source/cmake/OptionsGTK.cmake: Move check for CairoGL so that
it is run unconditionally; this is necessary because its result
is used later on, outside of any conditions.

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

5 years agoCrash: com.apple.WebKit.WebContent at com.apple.WebCore: WebCore::CachedFrameBase...
cdumez@apple.com [Sun, 28 Jun 2015 18:53:57 +0000 (18:53 +0000)]
Crash: com.apple.WebKit.WebContent at com.apple.WebCore: WebCore::CachedFrameBase::restore + 333
https://bugs.webkit.org/show_bug.cgi?id=146388
<rdar://problem/21567343>

Reviewed by Darin Adler.

Source/WebCore:

Pages that are currently loading are not supposed to go into the
PageCache. However, PageCache::canCache() only checks if the
FrameLoader's documentLoader is loading. If the subframe is in
provisional load stage, we would fail to detect that the frame is
actually loading because the FrameLoader active documentLoader would
be the provisional documentLoader, not the regular documentLoader.
Therefore, the page would get added to the PageCache and the frame
would keep loading while in the PageCache.

On http://www.audiusa.com/models, this is what was happening. It was
crashing because the subframe would finish loading while in the
PageCache, in which case we would fire the 'load' event and the
content 'load' event handler would then proceed to remove the iframe.
Upon restoring the PageCache entry, we would run into trouble as we
would have a CachedFrame whose Frame has been removed.

The solution proposed is to prevent page-caching if a subframe is in
provisional load stage.

Test: http/tests/navigation/page-cache-iframe-provisional-load.html

* history/PageCache.cpp:
(WebCore::logCanCacheFrameDecision):
(WebCore::PageCache::canCachePageContainingThisFrame):
* page/DiagnosticLoggingKeys.cpp:
(WebCore::DiagnosticLoggingKeys::provisionalLoadKey):
* page/DiagnosticLoggingKeys.h:

LayoutTests:

Add layout test to cover the case where a subframe is currently in
provisional load stage when checking if the page if page-cacheable.

The test also removes the iframe once loaded in order to cause a crash
if the frame were to finish loading while in the page cache.

* http/tests/navigation/page-cache-iframe-provisional-load-expected.txt: Added.
* http/tests/navigation/page-cache-iframe-provisional-load.html: Added.
* http/tests/navigation/resources/page-cache-helper-slow.html: Added.

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

5 years agoTried to fix the EFL buid after r186046.
mitz@apple.com [Sun, 28 Jun 2015 17:57:03 +0000 (17:57 +0000)]
Tried to fix the EFL buid after r186046.

* UIProcess/efl/PageUIClientEfl.cpp:
(WebKit::PageUIClientEfl::PageUIClientEfl):

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

5 years ago[ES6] Implement ES6 arrow function syntax. No Line terminator between function parame...
commit-queue@webkit.org [Sun, 28 Jun 2015 16:18:26 +0000 (16:18 +0000)]
[ES6] Implement ES6 arrow function syntax. No Line terminator between function parameters and =>
https://bugs.webkit.org/show_bug.cgi?id=146394

Source/JavaScriptCore:

Patch by Aleksandr Skachkov <gskachkov@gmail.com> on 2015-06-28
Reviewed by Yusuke Suzuki.

* parser/Parser.cpp:
(JSC::Parser<LexerType>::parseFunctionInfo):

LayoutTests:

Patch by Skachkov Oleksandr <gskachkov@gmail.com> on 2015-06-28
Reviewed by Yusuke Suzuki.

* js/arrowfunction-syntax-errors-expected.txt:
* js/script-tests/arrowfunction-syntax-errors.js:

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

5 years agoREGRESSION (r185915): Source-incompatible change in WKPageUIClient
mitz@apple.com [Sun, 28 Jun 2015 16:05:35 +0000 (16:05 +0000)]
REGRESSION (r185915): Source-incompatible change in WKPageUIClient
https://bugs.webkit.org/show_bug.cgi?id=146396

Reviewed by Anders Carlsson.

Source/WebKit2:

* UIProcess/API/C/WKPageUIClient.h: Renamed
runJavaScript{Alert,Confirm,Prompt}_deprecatedForUseWithV0 back to runJavaScript{Alert,Confirm,Prompt}
in client versions prior to V5.

Tools:

* TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp:
(TestWebKitAPI::runJavaScriptAlert): Removed _deprecatedForUseWithV0 suffix from the name.
(TestWebKitAPI::TEST): Updated for renames.
* TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
(runJavaScriptAlert): Removed suffix.
(TestWebKitAPI::FullscreenZoomInitialFrame::initializeView): Updated.
* TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
(runJavaScriptAlert): Removed suffix.
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::initializeView): Updated.

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

5 years agoREGRESSION: Page footers are displayed above the bottom of the WebView due to tiled...
timothy_horton@apple.com [Sun, 28 Jun 2015 15:33:21 +0000 (15:33 +0000)]
REGRESSION: Page footers are displayed above the bottom of the WebView due to tiled scaling
https://bugs.webkit.org/show_bug.cgi?id=146393
<rdar://problem/21113217>

Reviewed by Sam Weinig.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::scaleViewToFitDocumentIfNeeded):
Don't include the top content inset in the layout size.

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

5 years ago[Streams API] Add support for chunks with customized sizes
youenn.fablet@crf.canon.fr [Sun, 28 Jun 2015 12:39:48 +0000 (12:39 +0000)]
[Streams API] Add support for chunks with customized sizes
https://bugs.webkit.org/show_bug.cgi?id=146312

Reviewed by Darin Adler.

Source/WebCore:

Covered by rebased tests.

* bindings/js/ReadableJSStream.cpp:
(WebCore::ReadableJSStream::read): Decrement totalQueueSize with the chunk specific size.
(WebCore::ReadableJSStream::enqueue): Calls retrieveSize, enqueue chunk with its size and increment totalQueueSize.
(WebCore::ReadableJSStream::retrieveChunkSize): Calls size JS callback and convert it to double.
* bindings/js/ReadableJSStream.h:

LayoutTests:

* streams/reference-implementation/bad-strategies-expected.txt:

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

5 years ago[Streams API]Remove ReadableStreamController.close custom binding
youenn.fablet@crf.canon.fr [Sun, 28 Jun 2015 12:16:15 +0000 (12:16 +0000)]
[Streams API]Remove ReadableStreamController.close custom binding
https://bugs.webkit.org/show_bug.cgi?id=146380

Reviewed by Darin Adler.

No change in behavior.

* Modules/streams/ReadableStreamController.h:
(WebCore::ReadableStreamController::close): Calling ReadableJSStream close method.
* Modules/streams/ReadableStreamController.idl: Removed Custom.
* bindings/js/JSReadableStreamControllerCustom.cpp:
(WebCore::JSReadableStreamController::close): Deleted.
* bindings/js/ReadableJSStream.cpp:
(WebCore::ReadableJSStream::close): Moved custom binding code here.
* bindings/js/ReadableJSStream.h:

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

5 years agoWeb Inspector: Wrong border color of console messages when filters are enabled
nvasilyev@apple.com [Sun, 28 Jun 2015 07:43:13 +0000 (07:43 +0000)]
Web Inspector: Wrong border color of console messages when filters are enabled
https://bugs.webkit.org/show_bug.cgi?id=146392

Reviewed by Timothy Hatcher.

* UserInterface/Views/LogContentView.css:
(.console-error-level:not(.filtered-out, .filtered-out-by-search) + .console-item):
(.console-warning-level:not(.filtered-out, .filtered-out-by-search) + .console-item):

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

5 years ago[JetStream] Raise the percentile of mandreel-latency and splay-latency
fpizlo@apple.com [Sun, 28 Jun 2015 03:47:00 +0000 (03:47 +0000)]
[JetStream] Raise the percentile of mandreel-latency and splay-latency
https://bugs.webkit.org/show_bug.cgi?id=146378

Reviewed by Mark Lam.

The current percentile is 95%.  When I looked at the sample lists in our GC, it was
clear that the worst 5% samples completely amortize our GC pauses.  Our GC pauses can
be quite bad.  Clearly, splay-latency is meant to test whether we have an incremental
GC that ensures that you don't have bad worst-case pauses.  But 95% is too small,
because it doesn't really capture those pauses.  Raising the percentile to above 99%
appears to do the trick.  99.5% or more seems like a good bet.  The trade-off there is
just that if we set it too high, then we won't have enough statistics.  Doing this very
clearly rewards GCs that are incremental, and punishes GCs that aren't (like ours).
That's what we want, since in the future we want to use this test to guide any
improvements to the worst-case performance of our GC.

The way that the percentile is selected will also affect mandreel-latency.  That's a
good thing, because 95% is probably too low for that test as well.  That test ends up
with >10k samples.  The goal of using 95% in the first place was to get enough samples
to have a stable average.  But if we have >10k samples, we can push that percentile up
much higher and still get good statistics while achieving the effect we want - i.e.
getting the worst case.

I don't think that we need to do the same thing for cdjs.  That test only takes 200
samples, so 95% means we report the average of the worst 10 samples.  That's probably
good enough.

* JetStream/Octane2/base.js: Raise the percentile as described above.
(BenchmarkSuite.prototype.RunSingleBenchmark):
* JetStream/Reference.js: Tweak the reference times to bring the latency tests closer to 100ish on my machine.
* JetStream/create.rb: Bump the version.

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

5 years agofast/canvas/webgl/tex-*.html flakily timeout on Mavericks Debug WK1
ddkilzer@apple.com [Sun, 28 Jun 2015 03:29:41 +0000 (03:29 +0000)]
fast/canvas/webgl/tex-*.html flakily timeout on Mavericks Debug WK1

* platform/mac-wk1/TestExpectations: Change "Slow" to
"Pass Timeout" since the tests flakily time out and fail:
- fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html
- fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html
- fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html
- fast/canvas/webgl/tex-image-and-uniform-binding-bugs.html

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

5 years agoREGRESSION (r186038): accessibility/aria-roledescription.html fails on Windows
ddkilzer@apple.com [Sun, 28 Jun 2015 03:29:33 +0000 (03:29 +0000)]
REGRESSION (r186038): accessibility/aria-roledescription.html fails on Windows

* platform/win/TestExpectations: Mark as failing on Windows:
- accessibility/aria-roledescription.html

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

5 years agoAX: implement @aria-roledescription
cfleizach@apple.com [Sat, 27 Jun 2015 23:02:03 +0000 (23:02 +0000)]
AX: implement @aria-roledescription
https://bugs.webkit.org/show_bug.cgi?id=146274

Reviewed by Darin Adler.

Source/WebCore:

Add support for aria-roledescription.

Test: accessibility/aria-roledescription.html

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::hasHighlighting):
(WebCore::AccessibilityObject::roleDescription):
(WebCore::nodeHasPresentationRole):
* accessibility/AccessibilityObject.h:
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper _accessibilityMaxValue]):
(-[WebAccessibilityObjectWrapper accessibilityRoleDescription]):
(-[WebAccessibilityObjectWrapper accessibilityLabel]):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper roleDescription]):

LayoutTests:

* accessibility/aria-roledescription-expected.txt: Added.
* accessibility/aria-roledescription.html: Added.

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

5 years agoMake converting JSString to StringView idiomatically safe
darin@apple.com [Sat, 27 Jun 2015 22:53:12 +0000 (22:53 +0000)]
Make converting JSString to StringView idiomatically safe
https://bugs.webkit.org/show_bug.cgi?id=146387

Reviewed by Anders Carlsson.

* jsc.cpp:
(functionPrint): Add explicit call to SafeView::get, needed since there
is no StringView temporary.
(functionDebug): Ditto.

* runtime/ArrayPrototype.cpp:
(JSC::holesMustForwardToPrototype): Refactored into helper function.
(JSC::join): Refactored so that StringView is a function argument, making
the lifetime simpler.
(JSC::arrayProtoFuncJoin): Ditto.
(JSC::arrayProtoFuncReverse): Use new holesMustForwardToPrototype helper.

* runtime/JSGlobalObjectFunctions.cpp:
(JSC::encode): Add explicit call to SafeView::get.

* runtime/JSString.h: Moved declarations of functions to the top of the
file instead of mixing them in with the function definitions. Changed
return type of the view function to return a JSString::SafeView so that
the JSString's lifetime will last as long as the StringView does in
typical coding idioms.
(JSC::JSString::getIndex): Use unsafeView so we can index into the
view; could also have used view.get but here in this class this seems fine.
(JSC::JSRopeString::unsafeView): Renamed existing view function to this.
(JSC::JSString::unsafeView): Ditto.
(JSC::JSString::SafeView::SafeView): Contains reference to an ExecState
and a JSString. The ExecState is needed to create the StringView, and the
JSString needs to be kept alive as long as the StringView is.
(JSC::JSString::SafeView::operator StringView): Call unsafeView.
(JSC::JSString::SafeView::get): Convenience for when we want to call
StringView member functions.
(JSC::JSString::view): Added. Returns a SafeView.

* runtime/StringPrototype.cpp:
(JSC::stringProtoFuncIndexOf): Add explicit call to SafeView::get.

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

5 years ago Fix the build.
darin@apple.com [Sat, 27 Jun 2015 22:52:22 +0000 (22:52 +0000)]
    Fix the build.

        * platform/network/cf/ResourceErrorCF.cpp:
        (WebCore::ResourceError::cfError): Take out log statement. Add FIXME comment
        that explains part of the reason we may get null here.
        * platform/network/mac/ResourceErrorMac.mm:
        (WebCore::createNSErrorFromResourceErrorBase): Ditto.

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

5 years agoCrash in WebCore::ResourceError::cfError() after provisional load failed
ddkilzer@apple.com [Sat, 27 Jun 2015 21:38:57 +0000 (21:38 +0000)]
Crash in WebCore::ResourceError::cfError() after provisional load failed
<http://webkit.org/b/146384>

Reviewed by Darin Adler.

This is a speculative fix based on the crashing stack.

* platform/network/cf/ResourceErrorCF.cpp:
(WebCore::ResourceError::cfError): Add NULL check.
* platform/network/mac/ResourceErrorMac.mm:
(WebCore::createNSErrorFromResourceErrorBase): Add nil check in
case we ever turn off USE(CFNETWORK) for iOS.

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

5 years agoREGRESSION (r186001): fast/text/han-generic-font-families.html always fails on Yosemite
mmaxfield@apple.com [Sat, 27 Jun 2015 21:37:41 +0000 (21:37 +0000)]
REGRESSION (r186001): fast/text/han-generic-font-families.html always fails on Yosemite
https://bugs.webkit.org/show_bug.cgi?id=146385

Unreviewed.

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2015-06-27

* platform/mac-yosemite/fast/text/han-generic-font-families-expected.html:
* platform/mac/TestExpectations:

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

5 years agobuild-requests should use conform to JSON API format
rniwa@webkit.org [Sat, 27 Jun 2015 21:31:13 +0000 (21:31 +0000)]
build-requests should use conform to JSON API format
https://bugs.webkit.org/show_bug.cgi?id=146375

Reviewed by Stephanie Lewis.

Instead of returning single dictionary that maps root set id to a dictionary of repository names
to revisions, timestamps, simply return root sets and roots "rows" or "objects" as defined in
JSON API (http://jsonapi.org/). This API change makes it easier to resolve the bug 146374 and
matches what we do in /api/test-groups.

Also add the support for /api/build-requests/?id=<id> to fetch the build request with <id>.
This is useful for debugging purposes.

* public/api/build-requests.php:
(main): Added the support for $_GET['id']. Also return "rootSets" and "roots".
(update_builds): Extracted from main.

* public/include/build-requests-fetcher.php:
(BuildRequestFetcher::fetch_request): Added. Used for /api/build-requests/?id=<id>.
(BuildRequestFetcher::results_internal): Always call fetch_roots_for_set_if_needed.
(BuildRequestFetcher::fetch_roots_for_set_if_needed): Renamed from fetch_roots_for_set.
Moved the logic to exit early when the root set had already been fetched here.

* public/v2/analysis.js:
(App.TestGroup._fetchTestResults): Fixed the bug that test groups without any successful results
won't be shown.

* tools/pull-os-versions.py:
(main):
(setup_auth): Moved to util.py

* tools/sync-with-buildbot.py:
(main): Replaced a bunch of perf dashboard related options by --server-config-json.
(update_and_fetch_build_requests): No longer takes build_request_auth since that's now taken care
of by setup_auth.
(organize_root_sets_by_id_and_repository_names): Added. Builds the old rootsSets directory based
on "roots" and "rootSets" dictionaries returned by /api/build-requests.
(config_for_request): Fixed a bug that the script blows up when the build request is missing
the repository specified in the configuration. This tolerance is necessary when a new repository
dependency is added but we want to run A/B tests for old builds without the dependency.
(fetch_json): No longer takes auth.

* tools/util.py:
(setup_auth): Moved from pull-os-versions.py to be shared with sync-with-buildbot.py.

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

5 years ago[Mac] Only flag a video element as eligible for auto-play to AppleTV one time
eric.carlson@apple.com [Sat, 27 Jun 2015 21:11:18 +0000 (21:11 +0000)]
[Mac] Only flag a video element as eligible for auto-play to AppleTV one time
https://bugs.webkit.org/show_bug.cgi?id=146386

Reviewed by Brent Fulgham.

* Modules/mediasession/WebMediaSessionManager.cpp:
(WebCore::WebMediaSessionManager::removeAllPlaybackTargetPickerClients): Drive-by fix - early
  return when there are no clients.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::pendingActionTimerFired): Set m_failedToPlayToWirelessTarget if the
  media engine is still unable to play to the wireless target.
(WebCore::HTMLMediaElement::prepareForLoad): Clear m_failedToPlayToWirelessTarget.
(WebCore::HTMLMediaElement::mediaState): Don't set the ExternalDeviceAutoPlayCandidate flag
  if m_failedToPlayToWirelessTarget is true.
* html/HTMLMediaElement.h:

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

5 years agoREGRESSION (r186029): fast/text/justify-ideograph-{complex,simple,vertical}.html...
ddkilzer@apple.com [Sat, 27 Jun 2015 17:59:49 +0000 (17:59 +0000)]
REGRESSION (r186029): fast/text/justify-ideograph-{complex,simple,vertical}.html fail on Yosemite

The results replaced in r186029 were the Yosemite results, so
Yosemite started failing when they were rebaselined for
El Capitan.

* platform/mac-yosemite/fast/text/justify-ideograph-complex-expected.txt: Copied from platform/mac/fast/text/justify-ideograph-complex-expected.txt in r186028.
* platform/mac-yosemite/fast/text/justify-ideograph-simple-expected.txt: Copied from platform/mac/fast/text/justify-ideograph-simple-expected.txt in r186028.
* platform/mac-yosemite/fast/text/justify-ideograph-vertical-expected.txt: Copied from platform/mac/fast/text/justify-ideograph-vertical-expected.txt in r186028.

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

5 years agoAdd missing image results for platform/mac/platform/mac/fast/text/vertical-surrogate...
ddkilzer@apple.com [Sat, 27 Jun 2015 17:04:45 +0000 (17:04 +0000)]
Add missing image results for platform/mac/platform/mac/fast/text/vertical-surrogate-pair.html

* platform/mac/platform/mac/fast/text/vertical-surrogate-pair-expected.png: Added.

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

5 years agoRebaseline El Capitan results for fast/text/justify-ideograph-{complex,simple,vertica...
ddkilzer@apple.com [Sat, 27 Jun 2015 17:04:39 +0000 (17:04 +0000)]
Rebaseline El Capitan results for fast/text/justify-ideograph-{complex,simple,vertical}.html

* platform/mac/TestExpectations: Removed expectations.
* platform/mac/fast/text/justify-ideograph-complex-expected.png: Updated.
* platform/mac/fast/text/justify-ideograph-complex-expected.txt: Updated.
* platform/mac/fast/text/justify-ideograph-simple-expected.png: Updated.
* platform/mac/fast/text/justify-ideograph-simple-expected.txt: Updated.
* platform/mac/fast/text/justify-ideograph-vertical-expected.png: Added.
* platform/mac/fast/text/justify-ideograph-vertical-expected.txt: Updated.

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

5 years agoDocument more slow fast/canvas/webgl tests on Mavericks Debug WK1
ddkilzer@apple.com [Sat, 27 Jun 2015 17:00:34 +0000 (17:00 +0000)]
Document more slow fast/canvas/webgl tests on Mavericks Debug WK1

See Flakiness Dashboard:
<http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=fast%2Fcanvas%2Fwebgl%2Ftex-image-and-sub-image-2d-with-video-rgba4444.html>
<http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=fast%2Fcanvas%2Fwebgl%2Ftex-image-and-sub-image-2d-with-video-rgba5551.html>

* platform/mac-wk1/TestExpectations: Add slow expectations for:
- fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html
- fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html

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

5 years agoREGRESSION (r186001): fast/text/han-generic-font-families.html always fails on Yosemite
ddkilzer@apple.com [Sat, 27 Jun 2015 15:54:09 +0000 (15:54 +0000)]
REGRESSION (r186001): fast/text/han-generic-font-families.html always fails on Yosemite

Fix tracked by:  <http://webkit.org/b/146385>

* platform/mac/TestExpectations: Mark as failing on Yosemite:
- fast/text/han-generic-font-families.html

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

5 years agoediting/undo/remove-css-property-and-remove-style.html is flaky on Debug WK2
ddkilzer@apple.com [Sat, 27 Jun 2015 15:54:03 +0000 (15:54 +0000)]
editing/undo/remove-css-property-and-remove-style.html is flaky on Debug WK2

As seen on Flakiness Dashboard:
<http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=editing%2Fundo%2Fremove-css-property-and-remove-style.html>

* platform/mac-wk2/TestExpectations: Add:
- editing/undo/remove-css-property-and-remove-style.html

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

5 years agoMake NetworkCache::traverse faster
antti@apple.com [Sat, 27 Jun 2015 08:52:58 +0000 (08:52 +0000)]
Make NetworkCache::traverse faster
https://bugs.webkit.org/show_bug.cgi?id=146354

Reviewed by Anders Carlsson.

* NetworkProcess/cache/NetworkCacheIOChannel.h:
(WebKit::NetworkCache::IOChannel::path):
(WebKit::NetworkCache::IOChannel::type):
* NetworkProcess/cache/NetworkCacheIOChannelCocoa.mm:
(WebKit::NetworkCache::IOChannel::open):
(WebKit::NetworkCache::IOChannel::read):
(WebKit::NetworkCache::IOChannel::write):
(WebKit::NetworkCache::IOChannel::readSync): Deleted.

    Not needed anymore.

* NetworkProcess/cache/NetworkCacheStorage.cpp:
(WebKit::NetworkCache::Storage::WriteOperation::WriteOperation):
(WebKit::NetworkCache::Storage::TraverseOperation::TraverseOperation):

    Add TraverseOperation, similar to Read/Write.

(WebKit::NetworkCache::Storage::open):
(WebKit::NetworkCache::Storage::traverse):

    Use async I/O.
    Use condition variable to allow maximum 5 parallel file reads.

* NetworkProcess/cache/NetworkCacheStorage.h:

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

5 years ago[Streams API] Implement ReadableStreamController.desiredSize property
youenn.fablet@crf.canon.fr [Sat, 27 Jun 2015 08:04:19 +0000 (08:04 +0000)]
[Streams API] Implement ReadableStreamController.desiredSize property
https://bugs.webkit.org/show_bug.cgi?id=146311

Reviewed by Darin Adler.

Source/WebCore:

Covered by rebased tests.

* Modules/streams/ReadableStreamController.h: Adding desiredSize getter.
(WebCore::ReadableStreamController::desiredSize): Ditto.
* Modules/streams/ReadableStreamController.idl: Added desiredSize attribute.

LayoutTests:

* streams/reference-implementation/count-queuing-strategy-expected.txt:
* streams/reference-implementation/readable-stream-expected.txt:

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