WebKit-https.git
8 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Wed, 18 Dec 2013 12:24:46 +0000 (12:24 +0000)]
Unreviewed. Fix make distcheck.

Source/JavaScriptCore:

* GNUmakefile.am:

Source/ThirdParty/ANGLE:

* GNUmakefile.am:

Source/WebCore:

* GNUmakefile.am:
* GNUmakefile.list.am:

Source/WebKit2:

* GNUmakefile.list.am:

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

8 years ago[soup] Fix unused parameter warnings in ResourceHandleSoup.
commit-queue@webkit.org [Wed, 18 Dec 2013 12:01:29 +0000 (12:01 +0000)]
[soup] Fix unused parameter warnings in ResourceHandleSoup.
https://bugs.webkit.org/show_bug.cgi?id=125918

Patch by Dániel Bátyai <dbatyai.u-szeged@partner.samsung.com> on 2013-12-18
Reviewed by Martin Robinson.

Comment out the method parameters to avoid the warnings.

No tests required.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::WebCoreSynchronousLoader::didReceiveData):

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

8 years agoMove expectation parsing out of the constructor of TestExpectations
commit-queue@webkit.org [Wed, 18 Dec 2013 11:41:08 +0000 (11:41 +0000)]
Move expectation parsing out of the constructor of TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=125439

Patch by Dániel Bátyai <Batyai.Daniel@stud.u-szeged.hu> on 2013-12-18
Reviewed by Csaba Osztrogonác.

* Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
(LayoutTestRunnerTests._run_tests):
(LayoutTestRunnerTests.test_interrupt_if_at_failure_limits):
(LayoutTestRunnerTests.test_update_summary_with_result):
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run):
* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
(ManagerTest.test_look_for_new_crash_logs):
* Scripts/webkitpy/layout_tests/lint_test_expectations.py:
(lint):
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectations.suffixes_for_expectations):
(TestExpectations.__init__):
(TestExpectations):
(TestExpectations.parse_generic_expectations):
(TestExpectations.parse_default_port_expectations):
(TestExpectations.parse_override_expectations):
(TestExpectations.parse_all_expectations):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(parse_exp):
(SkippedTests.check):
(SkippedTests.test_skipped_entry_dont_exist):
* Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py:
(run_results):
* Scripts/webkitpy/tool/commands/queries.py:
(PrintExpectations._model):
* Scripts/webkitpy/tool/commands/rebaseline.py:
(RebaselineTest._update_expectations_file):
(RebaselineExpectations._update_expectations_files):
(RebaselineExpectations._tests_to_rebaseline):

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

8 years ago[MSE] Periodically monitor source buffers.
jer.noble@apple.com [Wed, 18 Dec 2013 07:37:08 +0000 (07:37 +0000)]
[MSE] Periodically monitor source buffers.
https://bugs.webkit.org/show_bug.cgi?id=125898

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-monitor-source-buffers.html

The MSE spec requires that the SourceBuffer Monitoring step is run
periodically during playback. No specific update interval is specified
so we will re-use the existing HTMLMediaElement playback progress
timer to signal the media source monitoring.

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

LayoutTests:

* media/media-source/media-source-monitor-source-buffers-expected.txt: Added.
* media/media-source/media-source-monitor-source-buffers.html: Added.

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

8 years ago[MSE] Add per-track signalling between SourceBuffer and SourceBufferPrivate.
jer.noble@apple.com [Wed, 18 Dec 2013 06:49:50 +0000 (06:49 +0000)]
[MSE] Add per-track signalling between SourceBuffer and SourceBufferPrivate.
https://bugs.webkit.org/show_bug.cgi?id=125899

Reviewed by Eric Carlson.

To accommodate the future addition of audio support to MSE in the Mac
port, add the concept of trackIDs to the communication between
SourceBuffer and SourceBufferPrivate.

The following virtual methods  now take a trackID parameter:
* platform/graphics/SourceBufferPrivate.h:
(WebCore::SourceBufferPrivate::isReadyForMoreSamples):
(WebCore::SourceBufferPrivate::stopAskingForMoreSamples):
(WebCore::SourceBufferPrivate::notifyClientWhenReadyForMoreSamples):
* platform/graphics/SourceBufferPrivateClient.h:
(WebCore::SourceBufferPrivateClient::sourceBufferPrivateDidBecomeReadyForMoreSamples):

Update overridden methods in subclasses:
* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::sourceBufferPrivateDidBecomeReadyForMoreSamples):
* Modules/mediasource/SourceBuffer.h:
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
(WebCore::SourceBufferPrivateAVFObjC::isReadyForMoreSamples):
* platform/mock/mediasource/MockSourceBufferPrivate.h:

Change the logic in provideMediaData to update a single TrackBuffer
rather than iterating over all of them:
* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::sourceBufferPrivateSeekToTime):
(WebCore::SourceBuffer::appendBufferTimerFired):
(WebCore::SourceBuffer::provideMediaData):

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

8 years agoWeb Inspector: Remove InspectorAgent::hasFrontend
commit-queue@webkit.org [Wed, 18 Dec 2013 06:27:44 +0000 (06:27 +0000)]
Web Inspector: Remove InspectorAgent::hasFrontend
https://bugs.webkit.org/show_bug.cgi?id=125907

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-12-17
Reviewed by Timothy Hatcher.

Remove InspectorAgent::hasFrontend only used by
InspectorInstrumentation::collectingHTMLParseErrors. However,
following the single callers of that, the result is unused
in the HTMLDocumentParser and HTMLTreeBuilder. So remove
more stale / unused code.

* html/FTPDirectoryDocument.cpp:
(WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser):
* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::createParser):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::HTMLDocumentParser):
* html/parser/HTMLDocumentParser.h:
(WebCore::HTMLDocumentParser::create):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
* html/parser/HTMLTreeBuilder.h:
(WebCore::HTMLTreeBuilder::create):
* html/parser/TextDocumentParser.cpp:
(WebCore::TextDocumentParser::TextDocumentParser):
* inspector/DOMPatchSupport.cpp:
(WebCore::DOMPatchSupport::patchDocument):
* inspector/InspectorAgent.h:
* inspector/InspectorInstrumentation.cpp:
* inspector/InspectorInstrumentation.h:

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

8 years agoWeb Inspector: Some basic InjectedScriptHost cleanup
commit-queue@webkit.org [Wed, 18 Dec 2013 06:24:10 +0000 (06:24 +0000)]
Web Inspector: Some basic InjectedScriptHost cleanup
https://bugs.webkit.org/show_bug.cgi?id=125902

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-12-17
Reviewed by Timothy Hatcher.

Remove InjectedScriptHost::scriptDebugServer. Nobody accesses
the ScriptDebugServer through the injected script host. This
also lets us remove the reference to the DebuggerAgent.

* inspector/InjectedScriptHost.cpp:
* inspector/InjectedScriptHost.h:
(WebCore::InjectedScriptHost::init):
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):

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

8 years agoWeb Inspector: Remove InspectorFrontendHost.setInjectedScriptForOrigin
commit-queue@webkit.org [Wed, 18 Dec 2013 06:22:58 +0000 (06:22 +0000)]
Web Inspector: Remove InspectorFrontendHost.setInjectedScriptForOrigin
https://bugs.webkit.org/show_bug.cgi?id=125906

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-12-17
Reviewed by Timothy Hatcher.

Source/WebCore:

Remove stale code related to a since removed feature,
Inspector extensions. This allows us to remove a number
of entry points into InspectorAgent.

* inspector/InspectorAgent.cpp:
(WebCore::InspectorAgent::InspectorAgent):
(WebCore::InspectorAgent::willDestroyFrontendAndBackend):
* inspector/InspectorAgent.h:
(WebCore::InspectorAgent::create):
Remove setInjectedScriptForOrigin and InjectedScript management.

* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorController.h:
* inspector/InspectorFrontendHost.cpp:
* inspector/InspectorFrontendHost.h:
* inspector/InspectorFrontendHost.idl:
Remove the API and calling through InspectorController.

* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
(WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
Remove now unnecessary calls into InspectorAgent.

LayoutTests:

* http/tests/inspector/injected-script-for-origin-expected.txt: Removed.
* http/tests/inspector/injected-script-for-origin.html: Removed.
* http/tests/inspector/resources/injected-script-for-origin-frame.html: Removed.

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

8 years ago[GTK] Build fix after r160737
jae.park@company100.net [Wed, 18 Dec 2013 06:04:51 +0000 (06:04 +0000)]
[GTK] Build fix after r160737

Unreviewed.

Rename WebURLRequest to API::URLRequest

* GNUmakefile.list.am:
* UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
(didReceiveWebViewMessageFromInjectedBundle):
* UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:
(webkitNavigationPolicyDecisionCreate):
* UIProcess/API/gtk/WebKitNavigationPolicyDecisionPrivate.h:
* UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
(webkitResponsePolicyDecisionCreate):
* UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_load_request):
* UIProcess/API/gtk/WebKitWindowProperties.cpp:
* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(willSendRequestForFrame):

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

8 years agoFix TimeRanges::intersectWith
jer.noble@apple.com [Wed, 18 Dec 2013 05:37:02 +0000 (05:37 +0000)]
Fix TimeRanges::intersectWith
https://bugs.webkit.org/show_bug.cgi?id=118802

Source/WebCore:

Test: TestWebKitAPI/Tests/WebCore/TimeRanges.cpp.

Reviewed by Eric Carlson.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* html/TimeRanges.cpp:
(TimeRanges::invert):
(TimeRanges::intersectWith):

Merge
https://chromium.googlesource.com/chromium/blink/+/f557582b6c6283a8b165514f52d01cfd98130e85

Tools:

Reviewed by Eric Carlson.

Add unit tests for WebCore/TimeRanges.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/TimeRanges.cpp: Added.
(TestWebKitAPI::ToString):
(TestWebKitAPI::TEST):

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

8 years agoASSERT setting pseudoID with registered DOMSubtreeModified listener
eric.carlson@apple.com [Wed, 18 Dec 2013 04:32:23 +0000 (04:32 +0000)]
ASSERT setting pseudoID with registered DOMSubtreeModified listener
https://bugs.webkit.org/show_bug.cgi?id=125900

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: fast/dom/attribute-set-before-element-in-tree.html

* dom/Node.cpp:
(WebCore::Node::dispatchSubtreeModifiedEvent): Return early if the node does not have a
    parent and does not have a DOMSubtreeModified listener.

LayoutTests:

* fast/dom/attribute-set-before-element-in-tree-expected.txt: Added.
* fast/dom/attribute-set-before-element-in-tree.html: Added.

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

8 years agoRemove dead code for reflected attributes from audio, video, and track elements
rniwa@webkit.org [Wed, 18 Dec 2013 04:18:02 +0000 (04:18 +0000)]
Remove dead code for reflected attributes from audio, video, and track elements
https://bugs.webkit.org/show_bug.cgi?id=125838

Reviewed by Eric Carlson.

Merge https://chromium.googlesource.com/chromium/blink/+/310514e2f0fd934975b841d463bad0cd62e6fd64

Where [Reflect] is used in the IDL, the getters and setters in C++ are
only for internal convenience, and these were unused.

* html/HTMLMediaElement.cpp:
* html/HTMLMediaElement.h:
* html/HTMLTrackElement.cpp:
* html/HTMLTrackElement.h:
* html/HTMLVideoElement.cpp:
* html/HTMLVideoElement.h:

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

8 years agoBotwatcher's dashboard ceases to update itself after a while
ap@apple.com [Wed, 18 Dec 2013 03:25:51 +0000 (03:25 +0000)]
Botwatcher's dashboard ceases to update itself after a while
https://bugs.webkit.org/show_bug.cgi?id=125885

Reviewed by Timothy Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
Removed code that checked for the view being hidden. It's none of model's business.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
(BuildbotQueueView): Find out what platform the view is for. Initlialize update timer.
(BuildbotQueueView.prototype._updateHiddenState): Start or stop update timer as appropriate.
We now stop the timer for hidden views.
(BuildbotQueueView.prototype._updateQueues): Removed the logic for ignoring some updates.

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

8 years agoUnreviewed build fix on EFL port after r160737
ryuan.choi@samsung.com [Wed, 18 Dec 2013 02:16:15 +0000 (02:16 +0000)]
Unreviewed build fix on EFL port after r160737

Rename WebURLRequest to API::URLRequest

* CMakeLists.txt:
* UIProcess/API/efl/ewk_url_request_private.h:

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

8 years agoRename "canRubberBands" to "canRubberBand"
simon.fraser@apple.com [Wed, 18 Dec 2013 02:00:45 +0000 (02:00 +0000)]
Rename "canRubberBands" to "canRubberBand"
https://bugs.webkit.org/show_bug.cgi?id=125897

Reviewed by Anders Carlsson.

Rename "canRubberBands" to "canRubberBand" in various places.

Source/WebCore:

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::setCanRubberBandState):
* page/scrolling/ScrollingTree.h:

Source/WebKit2:

* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::wheelEvent):
* WebProcess/WebPage/EventDispatcher.h:
* WebProcess/WebPage/EventDispatcher.messages.in:

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

8 years agoFix the 32-bit build.
andersca@apple.com [Wed, 18 Dec 2013 01:28:02 +0000 (01:28 +0000)]
Fix the 32-bit build.

* MiniBrowser/MiniBrowserWebProcessPlugIn.h:
* MiniBrowser/MiniBrowserWebProcessPlugIn.m:

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

8 years agoWebKit2 View Gestures: Fix the shadow layer restore-from-overpinched animation
timothy_horton@apple.com [Wed, 18 Dec 2013 01:05:50 +0000 (01:05 +0000)]
WebKit2 View Gestures: Fix the shadow layer restore-from-overpinched animation
https://bugs.webkit.org/show_bug.cgi?id=125884

Reviewed by Anders Carlsson.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
Set to-values on the right animations.

(WebKit::TiledCoreAnimationDrawingArea::adjustTransientZoom):
(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):
We don't need to explicitly set the shadow path, because PlatformCALayer::setBounds does it for us now.

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

8 years ago[MSE] Update duration after appending samples, per spec.
jer.noble@apple.com [Wed, 18 Dec 2013 00:57:44 +0000 (00:57 +0000)]
[MSE] Update duration after appending samples, per spec.
https://bugs.webkit.org/show_bug.cgi?id=125703

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-duration-after-append.html

After appending a sample, update the MediaSource duration if the sample's
presentation end time is greater than the existing duration.

* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveSample):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
(WebCore::MediaSourcePrivateAVFObjC::setDuration): Notify the MediaPlayer.

LayoutTests:

* media/media-source/media-source-duration-after-append-expected.txt: Added.
* media/media-source/media-source-duration-after-append.html: Added.

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

8 years ago[MSE][Mac] Null-deref in CMSampleBufferIsRandomAccess().
jer.noble@apple.com [Wed, 18 Dec 2013 00:56:39 +0000 (00:56 +0000)]
[MSE][Mac] Null-deref in CMSampleBufferIsRandomAccess().
https://bugs.webkit.org/show_bug.cgi?id=125698

Reviewed by Sam Weinig.

If a given CMSampleBufferRef does not have a sample attachments array (which is unlikely, but
possible), CMSampleBufferGetAttachmentsArray() will return a null value.

Additionally, the CMSampleBuffer documentation states that "samples are assumed to be sync
samples by default", so the absence of an attachment array (or the absense of a
kCMSampleAttachmentKey_NotSync entry in any of the attachment dictionaries) indicates the
sample is sync.

* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::CMSampleBufferIsRandomAccess):

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

8 years ago[WK2] Rename WebURLRequest to API::URLRequest
weinig@apple.com [Wed, 18 Dec 2013 00:54:48 +0000 (00:54 +0000)]
[WK2] Rename WebURLRequest to API::URLRequest
https://bugs.webkit.org/show_bug.cgi?id=125886

Reviewed by Anders Carlsson.

* Shared/API/c/WKSharedAPICast.h:
(WebKit::toAPI):
* Shared/API/c/WKURLRequest.cpp:
(WKURLRequestGetTypeID):
(WKURLRequestCreateWithWKURL):
(WKURLRequestSetDefaultTimeoutInterval):
* Shared/API/c/mac/WKURLRequestNS.mm:
(WKURLRequestCreateWithNSURLRequest):
* Shared/APIString.h:
* Shared/APIURLRequest.cpp: Copied from Source/WebKit2/Shared/WebURLRequest.cpp.
(API::URLRequest::URLRequest):
(API::URLRequest::defaultTimeoutInterval):
(API::URLRequest::setDefaultTimeoutInterval):
(API::URLRequest::encode):
(API::URLRequest::decode):
* Shared/APIURLRequest.h: Copied from Source/WebKit2/Shared/WebURLRequest.h.
(API::URLRequest::create):
* Shared/UserData.cpp:
(WebKit::UserData::encode):
(WebKit::UserData::decode):
* Shared/UserMessageCoders.h:
(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):
* Shared/WebURLRequest.cpp: Removed.
* Shared/WebURLRequest.h: Removed.
* UIProcess/API/C/WKContext.cpp:
* UIProcess/API/C/WKDownload.cpp:
(WKDownloadCopyRequest):
* UIProcess/API/C/WKNavigationDataRef.cpp:
(WKNavigationDataCopyOriginalRequest):
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController loadRequest:userData:]):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::createNewWebProcess):
* UIProcess/WebInspectorProxy.cpp:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadURLRequest):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPolicyClient.cpp:
(WebKit::WebPolicyClient::decidePolicyForNavigationAction):
(WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
(WebKit::WebPolicyClient::decidePolicyForResponse):
* UIProcess/WebUIClient.cpp:
(WebKit::WebUIClient::createNewPage):
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForNavigationAction):
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForNewWindowAction):
(WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse):
* WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
(WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):

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

8 years agoGive the MiniBrowser a bundle
andersca@apple.com [Wed, 18 Dec 2013 00:24:01 +0000 (00:24 +0000)]
Give the MiniBrowser a bundle
https://bugs.webkit.org/show_bug.cgi?id=125882

Reviewed by Sam Weinig.

* MiniBrowser/Configurations/MiniBrowserBundle.xcconfig: Added.
* MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
* MiniBrowser/MiniBrowserWebProcessPlugIn.h: Added.
* MiniBrowser/MiniBrowserWebProcessPlugIn.m: Added.
(-[MiniBrowserWebProcessPlugIn webProcessPlugIn:initializeWithObject:]):
* MiniBrowser/mac/AppDelegate.m:
(-[BrowserAppDelegate init]):
* MiniBrowser/mac/Bundle/Info.plist: Added.
* MiniBrowser/mac/Bundle/MiniBrowserBundle_Prefix.pch: Added.

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

8 years agoVideo element's width and height content attributes should not influence intrinsic...
rniwa@webkit.org [Wed, 18 Dec 2013 00:16:31 +0000 (00:16 +0000)]
Video element's width and height content attributes should not influence intrinsic width and height
https://bugs.webkit.org/show_bug.cgi?id=125822

Reviewed by Darin Adler.

Source/WebCore:

Merge https://chromium.googlesource.com/chromium/blink/+/022ce34efb5b70cb964c3ca29f23c8980ffaef05

The width/height content attributes already influence specified style via
HTMLVideoElement::collectStyleForPresentationAttribute, to also influence the intrinsic size has never
been part of the spec: http://www.w3.org/TR/2013/WD-html51-20130528/embedded-content-0.html#dom-dim-width

The test case passes in Firefox Nightly and IE11 Release Preview, but fails in Opera Presto, which has
no default intrinsic size.

Test: media/video-intrinsic-width-height.html

* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::calculateIntrinsicSize):

LayoutTests:

* media/video-intrinsic-width-height-expected.txt: Added.
* media/video-intrinsic-width-height.html: Added.

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

8 years ago[iOS] Upstream WebCore/html changes
dbates@webkit.org [Wed, 18 Dec 2013 00:15:02 +0000 (00:15 +0000)]
[iOS] Upstream WebCore/html changes
https://bugs.webkit.org/show_bug.cgi?id=125765

Reviewed by Darin Adler.

Source/WebCore:

* WebCore.xcodeproj/project.pbxproj:
* html/Autocapitalize.cpp: Added.
* html/Autocapitalize.h: Added. Also, added FIXME comment to forward declare AtomicString once we upstream
more of the iOS port.
* html/BaseChooserOnlyDateAndTimeInputType.cpp:
(WebCore::BaseChooserOnlyDateAndTimeInputType::handleDOMActivateEvent): Opt out of code when building for iOS.
* html/BaseDateAndTimeInputType.cpp:
(WebCore::BaseDateAndTimeInputType::isKeyboardFocusable): Added; iOS-specific.
* html/BaseDateAndTimeInputType.h:
* html/FileInputType.cpp:
(WebCore::FileInputType::FileInputType): Added iOS-specific code.
(WebCore::FileInputType::~FileInputType): Opt out of code when building for iOS. Also, added FIXME comment.
(WebCore::FileInputType::requestIcon): Ditto.
(WebCore::FileInputType::filesChosen): Added; iOS-specific.
(WebCore::FileInputType::displayString): Added; iOS-specific.
(WebCore::FileInputType::receiveDroppedFiles): Guarded code with ENABLE(DRAG_SUPPORT).
* html/FileInputType.h:
* html/FormController.cpp:
(WebCore::FormController::formElementsCharacterCount): Added.
* html/FormController.h:
* html/HTMLAppletElement.cpp:
(WebCore::HTMLAppletElement::updateWidget): Opt out of code when building for iOS.
* html/HTMLAreaElement.cpp:
(WebCore::HTMLAreaElement::computePath): Changed argument datatype from RenderElement* to RenderObject*.
Also, added FIXME comment to fix this up once we upstream iOS's DOMUIKitExtensions.{h, mm}.
(WebCore::HTMLAreaElement::computeRect): Ditto.
* html/HTMLAreaElement.h:
* html/HTMLAttributeNames.in: Added attributes ongesture{start, change, end}, autocorrect, autocapitalize,
data-youtube-id, onwebkit{currentplaybacktargetiswirelesschanged, playbacktargetavailabilitychanged}, webkit-playsinline,
x-webkit-airplay, and x-webkit-wirelessvideoplaybackdisabled.
* html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::scrollLeft): Added iOS-specific code.
(WebCore::HTMLBodyElement::scrollTop): Ditto.
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::HTMLCanvasElement): Added iOS-specific code and FIXME comment.
(WebCore::HTMLCanvasElement::createImageBuffer): Added iOS-specific code.
* html/HTMLCanvasElement.h: Added iOS-specific code and FIXME comment.
* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::HTMLDocument): Added argument isSynthesized (default to false), which is
passed through to Document::Document(), to create a synthesized document.
* html/HTMLDocument.h:
(WebCore::HTMLDocument::createSynthesizedDocument): Added.
* html/HTMLElement.cpp:
(WebCore::HTMLElement::collectStyleForPresentationAttribute): Added iOS-specific code.
(WebCore::populateEventNameForAttributeLocalNameMap): Ditto.
(WebCore::HTMLElement::willRespondToMouseMoveEvents): Added; iOS-specific.
(WebCore::HTMLElement::willRespondToMouseWheelEvents): Added; iOS-specific.
(WebCore::HTMLElement::willRespondToMouseClickEvents): Added; iOS-specific.
* html/HTMLElement.h:
* html/HTMLFormControlElement.cpp: Added FIXME comment to share more code with class HTMLFormElement.
(WebCore::HTMLFormControlElement::autocorrect): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormControlElement::setAutocorrect): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormControlElement::autocapitalizeType): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormControlElement::autocapitalize): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormControlElement::setAutocapitalize): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
* html/HTMLFormControlElement.h:
* html/HTMLFormElement.cpp: Added FIXME comment to share more code with class HTMLFormControlElement.
(WebCore::HTMLFormElement::submitImplicitly): Modified to code to allow implicit submission of multi-input
forms only if Settings::allowMultiElementImplicitSubmission() returns true. Such behavior is expected by older
iOS apps. Also, changed datatype of variable submissionTriggerCount from int to unsigned because it represents
a non-negative value.
(WebCore::HTMLFormElement::autocorrect): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormElement::setAutocorrect): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormElement::autocapitalizeType): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormElement::autocapitalize): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
(WebCore::HTMLFormElement::setAutocapitalize): Added; guarded by PLATFORM(IOS_AUTOCORRECT_AND_AUTOCAPITALIZE).
* html/HTMLFormElement.h:
* html/HTMLFormElement.idl: Added iOS-specific attributes: autocorrect and autocapitalize.
* html/HTMLIFrameElement.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::displayString): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLInputElement::dateType): Added; guarded by PLATFORM(IOS).
* html/HTMLInputElement.h:
* html/HTMLInputElement.idl: Added iOS-specific attributes: autocorrect and autocapitalize.
* html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::willRespondToMouseClickEvents): Added iOS-specific code.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): Added iOS-specific code and FIXME comment.
(WebCore::HTMLMediaElement::~HTMLMediaElement): Added iOS-specific code.
(WebCore::HTMLMediaElement::parseMediaPlayerAttribute): Added; iOS-specific.
(WebCore::HTMLMediaElement::parseAttribute): Added iOS-specific code.
(WebCore::HTMLMediaElement::insertedInto): Ditto.
(WebCore::HTMLMediaElement::load): Ditto.
(WebCore::HTMLMediaElement::prepareForLoad): Ditto.
(WebCore::HTMLMediaElement::autoplay): Ditto.
(WebCore::HTMLMediaElement::play): Ditto.
(WebCore::HTMLMediaElement::playInternal): Ditto.
(WebCore::HTMLMediaElement::pauseInternal): Ditto.
(WebCore::HTMLMediaElement::setVolumne): Opt out of code when building for iOS.
(WebCore::HTMLMediaElement::setMuted): Ditto.
(WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Added iOS-specific code.
(WebCore::HTMLMediaElement::updateVolume): Ditto.
(WebCore::HTMLMediaElement::updatePlayState): Ditto.
(WebCore::HTMLMediaElement::userCancelledLoad): Added iOS-specific code and FIXME comment.
(WebCore::HTMLMediaElement::resume): Added iOS-specific comment. See <rdar://problem/9751303>.
(WebCore::HTMLMediaElement::deliverNotification): Added iOS-specific code.
(WebCore::HTMLMediaElement::getPluginProxyParams): Added iOS-specific code. Also, changed src() to getNonEmptyURLAttribute()
in the non-iOS code as their doesn't exist a method called src in this class or its superclasses.
(WebCore::HTMLMediaElement::webkitShowPlaybackTargetPicker): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::webkitCurrentPlaybackTargetIsWireless): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::mediaPlayerCurrentPlaybackTargetIsWirelessChanged): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::mediaPlayerPlaybackTargetAvailabilityChanged): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::addEventListener): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::removeEventListener): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::enqueuePlaybackTargetAvailabilityChangedEvent): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLMediaElement::enterFullscreen): Added iOS-specific code.
(WebCore::HTMLMediaElement::exitFullscreen): Ditto.
(WebCore::HTMLMediaElement::createMediaPlayer): Added ENABLE(IOS_AIRPLAY)-guarded code.
(WebCore::HTMLMediaElement::userRequestsMediaLoading): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLMediaElement::shouldUseVideoPluginProxy): Use dot operator instead of dereference operator (->)
when accessing Document::settings().
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot): Added ENABLE(PLUGIN_PROXY_FOR_VIDEO)-guarded code.
* html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::userGestureRequiredToShowPlaybackTargetPicker): Added; guarded by ENABLE(IOS_AIRPLAY).
* html/HTMLMediaElement.idl: Added ENABLE_IOS_AIRPLAY-guarded attributes and functions:webkitCurrentPlaybackTargetIsWireless,
onwebkit{currentplaybacktargetiswirelesschanged, playbacktargetavailabilitychanged}, and webkitShowPlaybackTargetPicker().
* html/HTMLMetaElement.cpp:
(WebCore::HTMLMetaElement::process): Added iOS-specific code.
* html/HTMLObjectElement.cpp:
(WebCore::shouldNotPerformURLAdjustment): Added; iOS-specific.
(WebCore::HTMLObjectElement::parametersForPlugin): Modified to call shouldNotPerformURLAdjustment() when
building for iOS.
* html/HTMLPlugInElement.h:
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::createRenderer): Added iOS-specific code.
(WebCore::HTMLPlugInImageElement::createShadowIFrameSubtree): Added; iOS-specific.
* html/HTMLPlugInImageElement.h:
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::usesMenuList): Added iOS-specific code.
(WebCore::HTMLSelectElement::createRenderer): Ditto.
(WebCore::HTMLSelectElement::childShouldCreateRenderer): Ditto.
(WebCore::HTMLSelectElement::willRespondToMouseClickEvents): Added; iOS-specific.
(WebCore::HTMLSelectElement::updateListBoxSelection): Added iOS-specific code.
(WebCore::HTMLSelectElement::scrollToSelection): Ditto.
(WebCore::HTMLSelectElement::setOptionsChangedOnRenderer): Ditto.
(WebCore::HTMLSelectElement::menuListDefaultEventHandler): Opt out of code when building for iOS.
(WebCore::HTMLSelectElement::defaultEventHandler): Added iOS-specific code.
* html/HTMLSelectElement.h:
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::willRespondToMouseClickEvents): Added; iOS-specific.
* html/HTMLTextAreaElement.h:
* html/HTMLTextAreaElement.idl: Added iOS-specific attributes: autocorrect and autocapitalize.
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::select): Added iOS-specific code and FIXME comment.
(WebCore::HTMLTextFormControlElement::setSelectionRange): Opt out of code when building for iOS.
(WebCore::HTMLTextFormControlElement::hidePlaceholder): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLTextFormControlElement::showPlaceholderIfNecessary): Added; guarded by PLATFORM(IOS).
* html/HTMLTextFormControlElement.h:
* html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::createRenderer): Fix up call to HTMLMediaElement::createRenderer().
(WebCore::HTMLVideoElement::parseAttribute): Added iOS-specific code.
(WebCore::HTMLVideoElement::supportsFullscreen): Ditto.
(WebCore::HTMLVideoElement::webkitWirelessVideoPlaybackDisabled): Added; guarded by ENABLE(IOS_AIRPLAY).
(WebCore::HTMLVideoElement::setWebkitWirelessVideoPlaybackDisabled): Added; guarded by ENABLE(IOS_AIRPLAY).
* html/HTMLVideoElement.h:
* html/HTMLVideoElement.idl: Added ENABLE_IOS_AIRPLAY-guarded attribute: webkitWirelessVideoPlaybackDisabled.
* html/ImageDocument.cpp:
(WebCore::ImageDocument::createDocumentStructure): Added iOS-specific code.
(WebCore::ImageDocument::scale): Ditto.
(WebCore::ImageDocument::resizeImageToFit): Ditto.
(WebCore::ImageDocument::imageClicked): Ditto.
(WebCore::ImageDocument::imageFitsInWindow): Ditto.
(WebCore::ImageDocument::windowSizeChanged): Ditto.
* html/InputType.cpp:
(WebCore::InputType::dateType): Added; guarded by PLATFORM(IOS).
(WebCore::InputType::isKeyboardFocusable): Added iOS-specific code.
(WebCore::InputType::displayString): Added; guarded by PLATFORM(IOS).
* html/InputType.h:
* html/PluginDocument.cpp:
(WebCore::PluginDocumentParser::createDocumentStructure): Added iOS-specific code.
* html/RangeInputType.cpp:
(WebCore::RangeInputType::handleTouchEvent): Ditto.
(WebCore::RangeInputType::disabledAttributeChanged): Added; iOS-specific.
* html/RangeInputType.h:
* html/SearchInputType.cpp:
(WebCore::SearchInputType::addSearchResult): Opt out of code when building for iOS.
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::isKeyboardFocusable): Added iOS-specific code.
* html/TextFieldInputType.h:
* html/WebAutocapitalize.h: Added.
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::createImageData): Added iOS-specific code.
(WebCore::CanvasRenderingContext2D::getImageData): Ditto.
* html/parser/HTMLConstructionSite.h:
(WebCore::HTMLConstructionSite::isTelephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
* html/parser/HTMLParserScheduler.h:
(WebCore::HTMLParserScheduler::checkForYieldBeforeToken): Added iOS-specific code.
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::insertPhoneNumberLink): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLTreeBuilder::linkifyPhoneNumbers): Added; guarded by PLATFORM(IOS).
(WebCore::disallowTelephoneNumberParsing): Added; guarded by PLATFORM(IOS).
(WebCore::shouldParseTelephoneNumbersInNode): Added; guarded by PLATFORM(IOS).
(WebCore::HTMLTreeBuilder::processCharacterBufferForInBody): Added iOS-specific code.
* html/parser/HTMLTreeBuilder.h:
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlClosedCaptionsTrackListElement::MediaControlClosedCaptionsTrackListElement): Guarded member initialization of m_controls with ENABLE(VIDEO_TRACK). Also added UNUSED_PARAM(event) when building with
VIDEO_TRACK disabled.
(WebCore::MediaControlClosedCaptionsTrackListElement::defaultEventHandler): Added UNUSED_PARAM(event) when
building with VIDEO_TRACK disabled.
* html/shadow/MediaControls.h:
* html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::SliderThumbElement): Added iOS-specific code.
(WebCore::SliderThumbElement::dragFrom): Opt out of code when building for iOS.
(WebCore::SliderThumbElement::willDetachRenderers):  Added iOS-specific code.
(WebCore::SliderThumbElement::exclusiveTouchIdentifier): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::setExclusiveTouchIdentifier): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::clearExclusiveTouchIdentifier): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::findTouchWithIdentifier): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::handleTouchStart): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::handleTouchMove): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::handleTouchEndAndCancel): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::didAttachRenderers): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::handleTouchEvent): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::shouldAcceptTouchEvents): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::registerForTouchEvents): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::unregisterForTouchEvents): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
(WebCore::SliderThumbElement::disabledAttributeChanged): Added; guarded by ENABLE(TOUCH_EVENTS) && PLATFORM(IOS).
* html/shadow/SliderThumbElement.h:
* html/shadow/TextControlInnerElements.cpp:
(WebCore::SearchFieldResultsButtonElement::defaultEventHandler): Opt out of code when building for iOS.
* html/shadow/TextControlInnerElements.h:
* page/Settings.in: Added setting allowMultiElementImplicitSubmission to enable/disable multi-input implicit form
submission (disabled by default). Also added FIXME comment to rename this setting to allowMultiElementImplicitFormSubmission
once we upstream the iOS changes to WebView.mm.

Source/WTF:

Defined ENABLE_IOS_AUTOCORRECT_AND_AUTOCAPITALIZE, enabled by default on iOS.

* wtf/FeatureDefines.h:

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

8 years agoDatabaseProcess: Pipe through object store IDs and transaction mode for "openTransaction"
beidson@apple.com [Wed, 18 Dec 2013 00:12:50 +0000 (00:12 +0000)]
DatabaseProcess: Pipe through object store IDs and transaction mode for "openTransaction"
https://bugs.webkit.org/show_bug.cgi?id=125872

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Make these enums into enum classes.
Add const maximums for each enum class that might be serialized to allow for conversion later:
* Modules/indexeddb/IndexedDB.h:

Add cross-thread copying for these new enum classes.
* platform/CrossThreadCopier.cpp:
(WebCore::::copy):
* platform/CrossThreadCopier.h:

Adopt the new enum classes throughout the rest of WebCore:
* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::continueFunction):
(WebCore::IDBCursor::stringToDirection):
(WebCore::IDBCursor::directionToString):
* Modules/indexeddb/IDBCursor.h:
* Modules/indexeddb/IDBCursorBackend.cpp:
(WebCore::IDBCursorBackend::deleteFunction):
* Modules/indexeddb/IDBCursorBackend.h:
(WebCore::IDBCursorBackend::value):
* Modules/indexeddb/IDBDatabaseBackend.cpp:
(WebCore::IDBDatabaseBackend::createObjectStore):
(WebCore::IDBDatabaseBackend::deleteObjectStore):
(WebCore::IDBDatabaseBackend::createIndex):
(WebCore::IDBDatabaseBackend::deleteIndex):
(WebCore::IDBDatabaseBackend::get):
(WebCore::IDBDatabaseBackend::put):
(WebCore::IDBDatabaseBackend::setIndexKeys):
(WebCore::IDBDatabaseBackend::openCursor):
(WebCore::IDBDatabaseBackend::deleteRange):
(WebCore::IDBDatabaseBackend::clearObjectStore):
(WebCore::IDBDatabaseBackend::transactionStarted):
(WebCore::IDBDatabaseBackend::transactionFinished):
(WebCore::IDBDatabaseBackend::transactionFinishedAndAbortFired):
(WebCore::IDBDatabaseBackend::transactionFinishedAndCompleteFired):
(WebCore::IDBDatabaseBackend::createTransaction):
(WebCore::IDBDatabaseBackend::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackend::deleteDatabase):
* Modules/indexeddb/IDBDatabaseBackend.h:
* Modules/indexeddb/IDBFactory.cpp:
(WebCore::IDBFactory::open):
(WebCore::IDBFactory::openInternal):
(WebCore::IDBFactory::deleteDatabase):
* Modules/indexeddb/IDBIndex.cpp:
(WebCore::IDBIndex::openCursor):
(WebCore::IDBIndex::openKeyCursor):
* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::openCursor):
* Modules/indexeddb/IDBOpenDBRequest.cpp:
(WebCore::IDBOpenDBRequest::onUpgradeNeeded):
* Modules/indexeddb/IDBRequest.cpp:
(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::setResultCursor):
(WebCore::IDBRequest::onSuccess):
* Modules/indexeddb/IDBTransaction.cpp:
(WebCore::IDBTransaction::create):
(WebCore::IDBTransaction::IDBTransaction):
(WebCore::IDBTransaction::stringToMode):
(WebCore::IDBTransaction::modeToString):
* Modules/indexeddb/IDBTransaction.h:
* Modules/indexeddb/IDBTransactionBackendOperations.cpp:
(WebCore::PutOperation::perform):
* Modules/indexeddb/IDBTransactionCoordinator.cpp:
(WebCore::IDBTransactionCoordinator::processStartedTransactions):
(WebCore::IDBTransactionCoordinator::canRunTransaction):
* Modules/indexeddb/IDBVersionChangeEvent.h:
(WebCore::IDBVersionChangeEvent::create):
(WebCore::IDBVersionChangeEvent::newVersion):
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
(WebCore::objectStoreCursorOptions):
(WebCore::indexCursorOptions):
* Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
(WebCore::IDBServerConnectionLevelDB::get):
(WebCore::IDBServerConnectionLevelDB::openCursor):
(WebCore::IDBServerConnectionLevelDB::count):
(WebCore::IDBServerConnectionLevelDB::deleteRange):
(WebCore::IDBServerConnectionLevelDB::cursorPrefetchIteration):

* WebCore.exp.in:

Source/WebKit2:

Pipe through the objectStoreIDs and mode:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::openTransaction):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

Rework postTransactionOperation to take a pre-made AsyncTask to allow for different
transaction operation function signatures:
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::openTransaction): Pipe through the objectStoreIDs and mode:
(WebKit::UniqueIDBDatabase::beginTransaction):
(WebKit::UniqueIDBDatabase::commitTransaction):
(WebKit::UniqueIDBDatabase::resetTransaction):
(WebKit::UniqueIDBDatabase::rollbackTransaction):
(WebKit::UniqueIDBDatabase::postTransactionOperation):
(WebKit::UniqueIDBDatabase::openBackingStoreTransaction):
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

Pipe through the objectStoreIDs and mode:
* DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

* Platform/Logging.h: Add an IDB logging channel.

* Shared/AsyncTask.h:
(WebKit::createAsyncTask): Add a 3-argument variant.

* Shared/WebCrossThreadCopier.cpp:
(WebCore::::copy): Add a Vector<int64_t> copier.
* Shared/WebCrossThreadCopier.h:

Add logging throughout currently implemented methods:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::getOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::didGetOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::openTransaction): Pipe through the objectStoreIDs and mode.
(WebKit::WebIDBServerConnection::didOpenTransaction):
(WebKit::WebIDBServerConnection::beginTransaction):
(WebKit::WebIDBServerConnection::didBeginTransaction):
(WebKit::WebIDBServerConnection::commitTransaction):
(WebKit::WebIDBServerConnection::didCommitTransaction):
(WebKit::WebIDBServerConnection::resetTransaction):
(WebKit::WebIDBServerConnection::didResetTransaction):
(WebKit::WebIDBServerConnection::rollbackTransaction):
(WebKit::WebIDBServerConnection::didRollbackTransaction):

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

8 years agoRemove PageVisibilityStateUnloaded
barraclough@apple.com [Tue, 17 Dec 2013 23:42:56 +0000 (23:42 +0000)]
Remove PageVisibilityStateUnloaded
https://bugs.webkit.org/show_bug.cgi?id=125869

Reviewed by Anders Carlsson.

This is not currently supported by WebKit, remove this enum value.
We can always add this back later if/when we add support for this state.

Source/WebCore:

* page/PageVisibilityState.cpp:
(WebCore::pageVisibilityStateString):
* page/PageVisibilityState.h:
    - removed PageVisibilityStateUnloaded

Source/WebKit/mac:

* WebView/WebView.mm:
(core):
(kit):
* WebView/WebViewPrivate.h:
    - removed PageVisibilityStateUnloaded/WebPageVisibilityStateUnloaded

Source/WebKit2:

* Shared/API/c/WKPageVisibilityTypes.h:
* Shared/API/c/WKSharedAPICast.h:
(WebKit::toPageVisibilityState):
    - removed PageVisibilityStateUnloaded/kWKPageVisibilityStateUnloaded

Tools:

* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::setPageVisibility):
* TestWebKitAPI/Tests/WebKit2/PageVisibilityState.cpp:
(TestWebKitAPI::didRunStep3StateChangePrerenderToUnloaded):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setPageVisibility):
    - remove test for visibility state "unloaded"; this is no longer supported (it never really was).

LayoutTests:

* fast/events/page-visibility-transition-test-expected.txt:
* fast/events/page-visibility-transition-test.html:
    - remove test for visibility state "unloaded"; this is no longer supported (it never really was).

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

8 years agoSanitize skip entries for pop-up menu tests.
ap@apple.com [Tue, 17 Dec 2013 22:19:50 +0000 (22:19 +0000)]
Sanitize skip entries for pop-up menu tests.

Pop-up menus are native controls on Mac, and block test progress when opened.

* platform/mac/TestExpectations: Combined entries for these tests together, and
updated comments.

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

8 years ago[GTK] [CMake] Build the plugin process against GTK+ 2
mrobinson@webkit.org [Tue, 17 Dec 2013 21:52:02 +0000 (21:52 +0000)]
[GTK] [CMake] Build the plugin process against GTK+ 2
https://bugs.webkit.org/show_bug.cgi?id=116374

Reviewed by Gustavo Noronha Silva.

.:

* Source/cmake/FindGDK2.cmake: Added.
* Source/cmake/FindGTK2.cmake: Added.
* Source/cmake/OptionsGTK.cmake: Look for GTK2 and GDK2.
* Source/cmake/WebKitMacros.cmake: Abstract WebKit2 IPC generation here so it
can be shared between the WebKit2 library and the plugin process.

Source/WebCore:

* PlatformGTK.cmake: Split off the GTK+-dependent sources into
libWebCorePlatformGTK and compile libWebCorePlatformGTK2 when
WebKit2 is enabled.

Source/WebKit2:

* CMakeLists.txt: Use the new GENERATE_WEBKIT2_MESSAGE_SOURCES macro so we
can share messaging file generation with the plugin process.
* PlatformGTK.cmake: Add more files to the plugin process source list. Properly
generate message sources, add the appropriate include paths, defines, and libraries
for the plugin process.

Tools:

* TestWebKitAPI/PlatformGTK.cmake: Add WebCorePlatformGTK to the list of
libraries required for WebCore unit tests.

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

8 years agoBack out r159982
andersca@apple.com [Tue, 17 Dec 2013 21:30:06 +0000 (21:30 +0000)]
Back out r159982
https://bugs.webkit.org/show_bug.cgi?id=125870
<rdar://problem/15598485>

Reviewed by Dan Bernstein.

Looks like r159982 caused intermittent crashes. Back it out for now.

* UIProcess/WebContextUserMessageCoders.h:
(WebKit::WebContextUserMessageEncoder::encode):
(WebKit::WebContextUserMessageDecoder::decode):
* UIProcess/WebPageGroup.cpp:
* UIProcess/WebPageGroup.h:
(WebKit::WebPageGroup::sendToAllProcessesInGroup):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::initializeWebPage):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::disconnect):
* UIProcess/WebProcessProxy.h:

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

8 years ago[Win] Revise filter-build-webkit to deal with Windows build logs
bfulgham@apple.com [Tue, 17 Dec 2013 21:20:44 +0000 (21:20 +0000)]
[Win] Revise filter-build-webkit to deal with Windows build logs
https://bugs.webkit.org/show_bug.cgi?id=125866

Reviewed by David Kilzer.

Enhance the script to accept a 'platform' argument. When platform
'win' is provided, use processing for the Windows build file format.
Otherwise, process the files as normal.

* Scripts/filter-build-webkit:
(usageAndExit): Add a 'platform' argument
(shouldIgnoreLine): When platform == 'win' use the new Windows
rules for processing the build file.

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

8 years agoCompile fix for WebGL on Windows without GRAPHICS_SURFACE.
commit-queue@webkit.org [Tue, 17 Dec 2013 21:18:36 +0000 (21:18 +0000)]
Compile fix for WebGL on Windows without GRAPHICS_SURFACE.
https://bugs.webkit.org/show_bug.cgi?id=125867

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-17
Reviewed by Martin Robinson.

Source/WebCore:

* platform/graphics/opengl/GLPlatformSurface.cpp:
(WebCore::GLPlatformSurface::createOffScreenSurface):
Protect reference to EGLOffScreenSurface with USE(GRAPHICS_SURFACE).

Source/WTF:

* wtf/FeatureDefines.h:
Removed unused ENABLE_GLIB_SUPPORT macro.
* wtf/Platform.h:
Don't use GRAPHICS_SURFACE for WebGL on Windows.

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

8 years agoUnreviewed test update for Windows.
bfulgham@apple.com [Tue, 17 Dec 2013 20:48:39 +0000 (20:48 +0000)]
Unreviewed test update for Windows.

* platform/win/TestExpectations: Exclude a few more media-based
test files.

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

8 years agoLayout Test webaudio/delaynode-max-default-delay.html is flaky
ap@apple.com [Tue, 17 Dec 2013 20:34:52 +0000 (20:34 +0000)]
Layout Test webaudio/delaynode-max-default-delay.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=121646

* platform/mac/TestExpectations: Marking as such.

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

8 years agoUpdate style checker now that ENUM_CLASS is gone
ap@apple.com [Tue, 17 Dec 2013 20:22:34 +0000 (20:22 +0000)]
Update style checker now that ENUM_CLASS is gone
https://bugs.webkit.org/show_bug.cgi?id=125864

Reviewed by Anders Carlsson.

* Scripts/webkitpy/style/checkers/cpp.py:
(_EnumState.process_clean_line):
(check_braces):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(NoNonVirtualDestructorsTest.test_enum_casing.Foo):
(NoNonVirtualDestructorsTest.test_enum_casing):
(NoNonVirtualDestructorsTest.test_enum_casing.Enum123):
(NoNonVirtualDestructorsTest.test_enum_trailing_semicolon.CPP11EnumClass):
(NoNonVirtualDestructorsTest.test_enum_trailing_semicolon.MyEnum):
(WebKitStyleTest.test_braces.CPP11EnumClass):

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

8 years ago[CSS Regions] Positioned elements in regions get clipped if they fall outside the...
stavila@adobe.com [Tue, 17 Dec 2013 20:13:53 +0000 (20:13 +0000)]
[CSS Regions] Positioned elements in regions get clipped if they fall outside the region
https://bugs.webkit.org/show_bug.cgi?id=117120

Reviewed by Mihnea Ovidenie.

Source/WebCore:

Fixed the computing of the box decorations clip rect when having statically positioned
elements inside positioned elements. The existing algorithm computed the rect in a loop
running up the containing block chain and only checked for positioned elements before
starting the loop. If a positioned elements was found in the middle of a loop (as would
be the case with a positioned element parenting a non-positioned element), it was not
correctly handled.
Also changed it so the clip is only performed in the fragmentation direction as that was
the original purpose of this method.

Tests: fast/regions/absolute-in-relative-overflow.html
       fast/regions/static-in-relative-overflow.html
       fast/regions/sticky-border-overflow.html

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion):

LayoutTests:

Added tests for the correct painting of the borders of differently positioned elements overflowing regions.

* fast/regions/absolute-in-relative-overflow-expected.html: Added.
* fast/regions/absolute-in-relative-overflow.html: Added.
* fast/regions/static-in-relative-overflow-expected.html: Added.
* fast/regions/static-in-relative-overflow.html: Added.
* fast/regions/sticky-border-overflow-expected.html: Added.
* fast/regions/sticky-border-overflow.html: Added.

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

8 years agoUnreviewed, rolling out r160717.
commit-queue@webkit.org [Tue, 17 Dec 2013 20:11:56 +0000 (20:11 +0000)]
Unreviewed, rolling out r160717.
http://trac.webkit.org/changeset/160717
https://bugs.webkit.org/show_bug.cgi?id=125863

New tests are failing, and possibly broke an existing test
(Requested by ap on #webkit).

Source/WebCore:

* rendering/FlowThreadController.cpp:
(WebCore::FlowThreadController::collectFixedPositionedLayers):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintFixedLayersInNamedFlows):
(WebCore::RenderLayer::hitTestFixedLayersInNamedFlows):

LayoutTests:

* fast/regions/repaint/fixed-in-named-flow-cb-changed-expected.txt: Removed.
* fast/regions/repaint/fixed-in-named-flow-cb-changed.html: Removed.
* fast/regions/repaint/fixed-in-named-flow-cb-changed2-expected.txt: Removed.
* fast/regions/repaint/fixed-in-named-flow-cb-changed2.html: Removed.

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

8 years agoInvalid dir attributes should resolve to ltr
rniwa@webkit.org [Tue, 17 Dec 2013 20:10:12 +0000 (20:10 +0000)]
Invalid dir attributes should resolve to ltr
https://bugs.webkit.org/show_bug.cgi?id=125830

Source/WebCore:

Reviewed by Darin Adler.

Merge https://chromium.googlesource.com/chromium/blink/+/2d592d1c998bec9438e421e1ce1ee6caba05a884

The dir attribute should resolve to direction: ltr by default when the attribute value is
"not in a defined state": http://www.w3.org/TR/2013/WD-html51-20130528/dom.html#the-directionality

Test: fast/dom/HTMLElement/set-and-clear-dir-attribute.html

* html/HTMLElement.cpp:
(WebCore::isLTROrRTLIgnoringCase): Extracted from HTMLElement::directionality.
(WebCore::HTMLElement::collectStyleForPresentationAttribute):
(WebCore::HTMLElement::directionality):

LayoutTests:

Reviewed by Darin Adler.

* fast/dom/HTMLElement/set-and-clear-dir-attribute-expected.txt: Added.
* fast/dom/HTMLElement/set-and-clear-dir-attribute.html: Added.

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

8 years agoFixed an assertion failure seen running some mixed-content tests.
mitz@apple.com [Tue, 17 Dec 2013 19:46:32 +0000 (19:46 +0000)]
Fixed an assertion failure seen running some mixed-content tests.
https://bugs.webkit.org/show_bug.cgi?id=125862

Reviewed by Alexey Proskuryakov.

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::didDisplayOrRunInsecureContent): Removed an assertion about the URL
of the main frame when dealing with a notification that could have come from any frame.

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

8 years ago[CSSRegions] Incorrect repaint of fixed element with transformed parent
mihnea@adobe.com [Tue, 17 Dec 2013 18:46:04 +0000 (18:46 +0000)]
[CSSRegions] Incorrect repaint of fixed element with transformed parent
https://bugs.webkit.org/show_bug.cgi?id=125756

Reviewed by Darin Adler.

Source/WebCore:

When collecting the layers for fixed positioned elements with named flow
as a containing block, use layers collection at named flow layer level
instead of relying on the positioned elements collection.

Modified also FlowThreadController::collectFixedPositionedLayers function
to always return the layers sorted by z-index, as this operation was always
done at the call sites.

Tests: fast/regions/repaint/fixed-in-named-flow-cb-changed.html
       fast/regions/repaint/fixed-in-named-flow-cb-changed2.html

* rendering/FlowThreadController.cpp:
(WebCore::compareZIndex):
(WebCore::FlowThreadController::collectFixedPositionedLayers):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintFixedLayersInNamedFlows):
(WebCore::RenderLayer::hitTestFixedLayersInNamedFlows):

LayoutTests:

Add tests for a fixed positioned element with a parent that:
1. dynamically gets a transform, in which case the fixed positioned element should be positioned
relative to its parent
2. dynamically loses its transform, in which case the fixed positioned element should be positioned
relative to the view.

* fast/regions/repaint/fixed-in-named-flow-cb-changed-expected.txt: Added.
* fast/regions/repaint/fixed-in-named-flow-cb-changed.html: Added.
* fast/regions/repaint/fixed-in-named-flow-cb-changed2-expected.txt: Added.
* fast/regions/repaint/fixed-in-named-flow-cb-changed2.html: Added.

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

8 years ago[Win] Fixed linker error with GStreamer.
commit-queue@webkit.org [Tue, 17 Dec 2013 18:45:54 +0000 (18:45 +0000)]
[Win] Fixed linker error with GStreamer.
https://bugs.webkit.org/show_bug.cgi?id=124861

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-17
Reviewed by Martin Robinson.

* wtf/gobject/GOwnPtr.cpp:
(WTF::GError):
* wtf/gobject/GOwnPtr.h:
Added WTF_EXPORT_PRIVATE to freeOwnedGPtr<GError> declaration and definition.

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

8 years agoREGRESSION(r159166?): fast/block/float/float-with-fractional-height-vertical-lr.html...
bjonesbe@adobe.com [Tue, 17 Dec 2013 18:38:46 +0000 (18:38 +0000)]
REGRESSION(r159166?): fast/block/float/float-with-fractional-height-vertical-lr.html, fast/block/float/float-with-fractional-height.html are failing
https://bugs.webkit.org/show_bug.cgi?id=124506

Reviewed by Dirk Schulze.

Source/WebCore:

Floor the endpoints of the floating object interval to keep the old
behavior until a better fix can be created.

No new tests, fixes regression in existing tests.

* rendering/FloatingObjects.cpp:
(WebCore::FloatingObjects::intervalForFloatingObject):

LayoutTests:

Remove lines for tests that have been fixed by this patch.

* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:

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

8 years ago[Win] Visual Studio workaround for compiling WebGL.
alex.christensen@flexsim.com [Tue, 17 Dec 2013 18:14:06 +0000 (18:14 +0000)]
[Win] Visual Studio workaround for compiling WebGL.
https://bugs.webkit.org/show_bug.cgi?id=125808

Reviewed by Darin Adler.

* platform/graphics/GraphicsContext3D.cpp:
Don't inline outermost function to prevent Visual Studio crash.

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

8 years ago[ATK] Expose accessibility objects for <dl>, <dt> and <dd>
mario.prada@samsung.com [Tue, 17 Dec 2013 18:08:34 +0000 (18:08 +0000)]
[ATK] Expose accessibility objects for <dl>, <dt> and <dd>
https://bugs.webkit.org/show_bug.cgi?id=125857

Reviewed by Chris Fleizach.

Source/WebCore:

Map description lists to the newly introduced ATK roles
ATK_ROLE_DESCRIPTION_LIST, ATK_ROLE_DESCRIPTION_TERM and
ATK_ROLE_DESCRIPTION_VALUE, introduced in ATK 2.11.4.

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(atkRole): Do the right mapping.
(webkitAccessibleGetRole): Update call to atkRole, now that it
receives an AccessibilityObject* as parameter.

Tools:

Add mappings to DRT & WKTR for the newly exposed roles, and
increase the version of ATK used by the internal jhbuild.

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
* gtk/jhbuild.modules: Raise version of ATK up to 2.11.4.

LayoutTests:

Update test to update expectations.

* platform/gtk/accessibility/roles-exposed-expected.txt:
* platform/gtk/accessibility/roles-exposed.html:

Updated test expectations for other test using description lists.

* platform/efl-wk1/accessibility/lists-expected.txt:
* platform/efl-wk2/accessibility/lists-expected.txt:
* platform/gtk/accessibility/lists-expected.txt:

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

8 years agoEnsure inferred mrows for msqrt, mstyle, merror, mphantom and math.
commit-queue@webkit.org [Tue, 17 Dec 2013 17:56:21 +0000 (17:56 +0000)]
Ensure inferred mrows for msqrt, mstyle, merror, mphantom and math.
https://bugs.webkit.org/show_bug.cgi?id=124841

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-12-17
Reviewed by Darin Adler.

Source/WebCore:

Tests: mathml/presentation/inferred-mrow-baseline.html
       mathml/presentation/inferred-mrow-stretchy.html

* css/mathml.css: make merror, mphantom and mstyle behave like an mrow.
(mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle):
(math, mrow, mfenced, msqrt, mroot, merror, mphantom, mstyle):
* mathml/MathMLInlineContainerElement.cpp: ditto
(WebCore::MathMLInlineContainerElement::createRenderer):
* mathml/mathtags.in: ditto
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::paint): fix failure in mathml/presentation/phantom.html now that phantom can stretch operators.

LayoutTests:

* mathml/presentation/inferred-mrow-baseline-expected.txt: Added.
* mathml/presentation/inferred-mrow-baseline.html: Added.
* mathml/presentation/inferred-mrow-stretchy-expected.txt: Added.
* mathml/presentation/inferred-mrow-stretchy.html: Added.

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

8 years ago[Cocoa] Add properties related to the user agent string
mitz@apple.com [Tue, 17 Dec 2013 17:40:07 +0000 (17:40 +0000)]
[Cocoa] Add properties related to the user agent string
https://bugs.webkit.org/show_bug.cgi?id=125856

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKBrowsingContextController.h: Declared new properties.
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController applicationNameForUserAgent]): Added accessor.
(-[WKBrowsingContextController setApplicationNameForUserAgent:]): Ditto.
(-[WKBrowsingContextController customUserAgent]): Ditto.
(-[WKBrowsingContextController setCustomUserAgent:]): Ditto.

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

8 years ago[Win] Temporarily disable mediate tests to get bots green.
bfulgham@apple.com [Tue, 17 Dec 2013 17:27:54 +0000 (17:27 +0000)]
[Win] Temporarily disable mediate tests to get bots green.

* platform/win/TestExpectations: Turn off additional media-related
tests. These will be reactivated soon.

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

8 years ago[CSS Regions] Move regions tests from fast/repaint into fast/regions
mihnea@adobe.com [Tue, 17 Dec 2013 16:58:06 +0000 (16:58 +0000)]
[CSS Regions] Move regions tests from fast/repaint into fast/regions
https://bugs.webkit.org/show_bug.cgi?id=78786

Reviewed by Dirk Schulze.

Moved regions repaint tests from fast/repaint into fast/regions/repaint.
Moved regions repaint tests from fast/regions into fast/regions/repaint.
Adjusted paths, TestExpectations.

* fast/regions/repaint/element-in-named-flow-absolute-from-fixed-expected.txt: Renamed from LayoutTests/fast/regions/element-in-named-flow-absolute-from-fixed-expected.txt.
* fast/regions/repaint/element-in-named-flow-absolute-from-fixed.html: Renamed from LayoutTests/fast/regions/element-in-named-flow-absolute-from-fixed.html.
* fast/regions/repaint/element-in-named-flow-fixed-from-absolute-expected.txt: Renamed from LayoutTests/fast/regions/element-in-named-flow-fixed-from-absolute-expected.txt.
* fast/regions/repaint/element-in-named-flow-fixed-from-absolute.html: Renamed from LayoutTests/fast/regions/element-in-named-flow-fixed-from-absolute.html.
* fast/regions/repaint/element-inflow-fixed-from-outflow-static-expected.txt: Renamed from LayoutTests/fast/regions/element-inflow-fixed-from-outflow-static-expected.txt.
* fast/regions/repaint/element-inflow-fixed-from-outflow-static.html: Renamed from LayoutTests/fast/regions/element-inflow-fixed-from-outflow-static.html.
* fast/regions/repaint/element-outflow-static-from-inflow-fixed-expected.txt: Renamed from LayoutTests/fast/regions/element-outflow-static-from-inflow-fixed-expected.txt.
* fast/regions/repaint/element-outflow-static-from-inflow-fixed.html: Renamed from LayoutTests/fast/regions/element-outflow-static-from-inflow-fixed.html.
* fast/regions/repaint/fixed-in-named-flow-scroll-expected.txt: Renamed from LayoutTests/fast/regions/fixed-in-named-flow-scroll-expected.txt.
* fast/regions/repaint/fixed-in-named-flow-scroll.html: Renamed from LayoutTests/fast/regions/fixed-in-named-flow-scroll.html.
* fast/regions/repaint/increasing-region-content-height-expected.txt: Renamed from LayoutTests/fast/repaint/increasing-region-content-height-expected.txt.
* fast/regions/repaint/increasing-region-content-height.html: Renamed from LayoutTests/fast/repaint/increasing-region-content-height.html.
* fast/regions/repaint/japanese-rl-selection-repaint-in-regions.html: Renamed from LayoutTests/fast/repaint/japanese-rl-selection-repaint-in-regions.html.
* fast/regions/repaint/line-flow-with-floats-in-regions.html: Added.
* fast/regions/repaint/overflow-flipped-writing-mode-block-in-regions.html: Renamed from LayoutTests/fast/repaint/overflow-flipped-writing-mode-block-in-regions.html.
* fast/regions/repaint/region-painting-composited-element-expected.html: Renamed from LayoutTests/fast/repaint/region-painting-composited-element-expected.html.
* fast/regions/repaint/region-painting-composited-element.html: Renamed from LayoutTests/fast/repaint/region-painting-composited-element.html.
* fast/regions/repaint/region-painting-in-composited-view-expected.html: Renamed from LayoutTests/fast/repaint/region-painting-in-composited-view-expected.html.
* fast/regions/repaint/region-painting-in-composited-view.html: Renamed from LayoutTests/fast/repaint/region-painting-in-composited-view.html.
* fast/regions/repaint/region-painting-invalidation.html: Renamed from LayoutTests/fast/repaint/region-painting-invalidation.html.
* fast/regions/repaint/region-painting-via-layout.html: Renamed from LayoutTests/fast/repaint/region-painting-via-layout.html.
* fast/regions/repaint/repaint-regions-overflow-expected.txt: Renamed from LayoutTests/fast/repaint/repaint-regions-overflow-expected.txt.
* fast/regions/repaint/repaint-regions-overflow.html: Renamed from LayoutTests/fast/repaint/repaint-regions-overflow.html.
* fast/repaint/line-flow-with-floats-in-regions.html: Removed.
* platform/efl/TestExpectations:
* platform/efl/fast/regions/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Renamed from LayoutTests/platform/efl/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt.
* platform/gtk/TestExpectations:
* platform/mac/fast/regions/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png.
* platform/mac/fast/regions/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt.
* platform/mac/fast/regions/repaint/line-flow-with-floats-in-regions-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.png.
* platform/mac/fast/regions/repaint/line-flow-with-floats-in-regions-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.txt.
* platform/mac/fast/regions/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png.
* platform/mac/fast/regions/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt.
* platform/mac/fast/regions/repaint/region-painting-invalidation-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/region-painting-invalidation-expected.png.
* platform/mac/fast/regions/repaint/region-painting-invalidation-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/region-painting-invalidation-expected.txt.
* platform/mac/fast/regions/repaint/region-painting-via-layout-expected.png: Renamed from LayoutTests/platform/mac/fast/repaint/region-painting-via-layout-expected.png.
* platform/mac/fast/regions/repaint/region-painting-via-layout-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/region-painting-via-layout-expected.txt.
* platform/win/TestExpectations:
* platform/wincairo/TestExpectations:

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

8 years agoSource/WebKit/win: [WinCairo] Compile fixes for GStreamer on Windows.
commit-queue@webkit.org [Tue, 17 Dec 2013 16:55:41 +0000 (16:55 +0000)]
Source/WebKit/win: [WinCairo] Compile fixes for GStreamer on Windows.
https://bugs.webkit.org/show_bug.cgi?id=124867

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-17
Reviewed by Philippe Normand.

* WebView.cpp:
(WebView::enterFullscreenForNode):
(WebView::exitFullscreen):
GStreamer in WebKit does not support fullscreen, so
I added #if !USE(GSTREAMER) to the fullscreen code to get it to compile.

Tools: [WinCairo] Adding support for GStreamer and GLib.
https://bugs.webkit.org/show_bug.cgi?id=124867

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-17
Reviewed by Philippe Normand.

* WinLauncher/WinLauncher.cpp:
(wWinMain):
Added g_main_context_iteration in main event loop.

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

8 years agoFix for C++ should have the & or * beside the type not the variable name check.
commit-queue@webkit.org [Tue, 17 Dec 2013 16:18:21 +0000 (16:18 +0000)]
Fix for C++ should have the & or * beside the type not the variable name check.
https://bugs.webkit.org/show_bug.cgi?id=125846

Patch by Gergo Balogh <geryxyz@inf.u-szeged.hu> on 2013-12-17
Reviewed by Darin Adler.

* Scripts/webkitpy/style/checkers/cpp.py:
(check_spacing):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_pointer_reference_marker_location):

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

8 years ago[GTK] Some ANGLE headers missing from dist
commit-queue@webkit.org [Tue, 17 Dec 2013 15:22:04 +0000 (15:22 +0000)]
[GTK] Some ANGLE headers missing from dist
https://bugs.webkit.org/show_bug.cgi?id=125782

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-12-17
Reviewed by Carlos Garcia Campos.

* GNUmakefile.am: add a few headers that were missing from the build,
causing build failures when the system headers were incompatible.

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

8 years ago[NIX] Enable full debug builds by having ar creating thin archives
simon.pena@samsung.com [Tue, 17 Dec 2013 15:06:54 +0000 (15:06 +0000)]
[NIX] Enable full debug builds by having ar creating thin archives
https://bugs.webkit.org/show_bug.cgi?id=125850

Reviewed by Csaba Osztrogonác.

By default, CMake uses ar to generate libWebCore.a with cr parameters
(do not warn if the library has to be created, and replace existing
files in the archive). That results in a very large file, and ar fails
with sizes over 4GB.

.:

Previously, debug builds on NIX were overriding CFLAGS in order to reduce
the size of the WebCore library. Once that ar creates thin archives, overriding
CFLAGS is no longer needed.

* Source/cmake/OptionsNix.cmake: Remove CFLAGS override for debug builds.

Source/WebCore:

By using thin archives (the T option of ar), the generated
libWebCore.a is much smaller, and can be successfully archived. As a
result, we can generate a full debug build. This patch is based on Xan
López's webkit.org/b/110580.

* PlatformNix.cmake: Instruct cmake to invoke ar with T option.

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

8 years agoFix armv7 and sh4 builds.
commit-queue@webkit.org [Tue, 17 Dec 2013 13:30:51 +0000 (13:30 +0000)]
Fix armv7 and sh4 builds.
https://bugs.webkit.org/show_bug.cgi?id=125848

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-12-17
Reviewed by Csaba Osztrogonác.

* assembler/ARMv7Assembler.h: Include limits.h for INT_MIN.
* assembler/SH4Assembler.h: Include limits.h for INT_MIN.

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

8 years ago[GTK][WK2] rowAtIndex is not implemented in DRT/WKTR
mario.prada@samsung.com [Tue, 17 Dec 2013 13:30:17 +0000 (13:30 +0000)]
[GTK][WK2] rowAtIndex is not implemented in DRT/WKTR
https://bugs.webkit.org/show_bug.cgi?id=116971

Unreviewed. Moving test expectation to the right place, as this is
an issue that actually affects both to Webkit1 and Webkit2.

* platform/gtk-wk2/TestExpectations: Removed expectation.
* platform/gtk/TestExpectations: Added expectation.

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

8 years ago[CSSRegions] Remove left-over test expectations in fast/regions/layers
mihnea@adobe.com [Tue, 17 Dec 2013 12:26:19 +0000 (12:26 +0000)]
[CSSRegions] Remove left-over test expectations in fast/regions/layers
https://bugs.webkit.org/show_bug.cgi?id=125841

Reviewed by Dirk Schulze.

The original tests were removed part of https://bugs.webkit.org/show_bug.cgi?id=121828
and added back as expectations only when https://bugs.webkit.org/show_bug.cgi?id=118665
landed.
They should be removed.

* fast/regions/layers/dynamic-layer-added-with-no-layout-expected.txt: Removed.
* fast/regions/layers/dynamic-layer-removed-with-no-layout-expected.txt: Removed.
* fast/regions/layers/regions-promoted-to-layers-expected.txt: Removed.
* fast/regions/layers/regions-promoted-to-layers-horizontal-bt-expected.txt: Removed.
* fast/regions/layers/regions-promoted-to-layers-vertical-lr-expected.txt: Removed.
* fast/regions/layers/regions-promoted-to-layers-vertical-rl-expected.txt: Removed.

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

8 years agoUnreviewed. Update GObject DOM symbols file after r160336.
carlosgc@webkit.org [Tue, 17 Dec 2013 12:03:17 +0000 (12:03 +0000)]
Unreviewed. Update GObject DOM symbols file after r160336.

* bindings/gobject/webkitdom.symbols: Add new methods exposed for
VideoPlaybackQuality.

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

8 years agoFix hit testing for divs with a hierarchy of css transformed and non-transformed...
commit-queue@webkit.org [Tue, 17 Dec 2013 10:43:52 +0000 (10:43 +0000)]
Fix hit testing for divs with a hierarchy of css transformed and non-transformed elements
https://bugs.webkit.org/show_bug.cgi?id=124777

Patch by Mihai Maerean <mmaerean@adobe.com> on 2013-12-17
Reviewed by Darin Adler.

Source/WebCore:

After bug #124647, the hit test will still behave incorrectly for transformed divs with non
transformed siblings that are all inside a transformed element (tested by the
hover-rotated-with-children-negative-z.html layout test).

The fix is to not take zOffset into account during hit-testing when child layers are in the
same 3D rendering context. Only when preserve3d is true, should hit-testing compute the
zOffset of the layers with transformations and, when two layers overlap, to return the layer
with the highest zOffset.

The patch includes the work of a.renevier from https://codereview.chromium.org/79943002/

Tests: transforms/3d/hit-testing/hover-rotated-with-children-negative-z.html
       transforms/3d/hit-testing/negative-zoffset-hit-test.html
       transforms/3d/hit-testing/overlapping-layers-hit-test.html

* rendering/RenderLayer.cpp:
(WebCore::computeZOffset):
(WebCore::RenderLayer::hitTestLayer):

LayoutTests:

* transforms/3d/hit-testing/hover-rotated-with-children-negative-z.html: Added.
* transforms/3d/hit-testing/hover-rotated-with-children-negative-z-expected.txt: Added.
* transforms/3d/hit-testing/negative-zoffset-hit-test.html: Added.
* transforms/3d/hit-testing/negative-zoffset-hit-test-expected.txt: Added.
* transforms/3d/hit-testing/overlapping-layers-hit-test.html: Added.
* transforms/3d/hit-testing/overlapping-layers-hit-test-expected.txt: Added.

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

8 years agoRemove a few more guards mistakenly added in r160367
carlosgc@webkit.org [Tue, 17 Dec 2013 10:41:04 +0000 (10:41 +0000)]
Remove a few more guards mistakenly added in r160367

Reviewed by Martin Robinson.

r160367 was too liberal in hiding APIs from the GObject DOM bindings.

* Modules/battery/NavigatorBattery.idl: Expose NavigatorBattery.

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

8 years agoAdd a simple register allocator to WebCore for x86_64
benjamin@webkit.org [Tue, 17 Dec 2013 10:39:29 +0000 (10:39 +0000)]
Add a simple register allocator to WebCore for x86_64
https://bugs.webkit.org/show_bug.cgi?id=125771

Reviewed by Geoffrey Garen.

Source/WebCore:

Add a brain dead register allocator to simplify the use of registers
when writting code generators.

RegisterAllocator has two purposes:
-make it easy to name registers properly.
-make it hard to reuse a register accidentally.

A helper class LocalRegister is also defined to provide an easy
way to work with registers within a C++ scope. For example:
    LocalRegister elementPointer(allocator);
    assembler.load(address, elementPointer);

RegisterAllocator makes no attempt at optimizing register allocations, but it reduces
implicit dependencies by returning used register at the end of the queue, making it less
likely they will be reused before their last instruction is executed.

The current implementation only support unix x86_64, it only uses caller saved registers.

* WebCore.xcodeproj/project.pbxproj:
* cssjit/RegisterAllocator.h: Added.
(WebCore::RegisterAllocator::allocateRegister): Provides any available register.
To restrict runtime exploitation of compiler bugs, the method crashes in release
if the register pool is empty.

(WebCore::RegisterAllocator::reserveRegister): Reserve a particular register.
(WebCore::RegisterAllocator::returnRegister): Return a previously allocated or reserved register.

(WebCore::RegisterAllocator::allocatedRegisters):
(WebCore::LocalRegister::LocalRegister):
(WebCore::LocalRegister::~LocalRegister):
(WebCore::LocalRegister::operator JSC::MacroAssembler::RegisterID):
(WebCore::RegisterAllocator::RegisterAllocator):

Source/WTF:

* wtf/Platform.h: Add a new flag "CSS_SELECTOR_JIT" to guard
an experimental JIT compiler in WebCore.

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

8 years agoAdd layer hosting mode to ViewState
barraclough@apple.com [Tue, 17 Dec 2013 07:48:50 +0000 (07:48 +0000)]
Add layer hosting mode to ViewState
https://bugs.webkit.org/show_bug.cgi?id=125803

Unreviewed - reverting last commit - might have broken tests. :-(

* Shared/ViewState.h:
* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):
* Shared/WebPageCreationParameters.h:
* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::viewWillMoveToAnotherWindow):
(WebKit::PageClientImpl::viewLayerHostingMode):
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::layerHostingModeDidChange):
* UIProcess/PageClient.h:
(WebKit::PageClient::viewLayerHostingMode):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::updateViewState):
(WebKit::WebPageProxy::viewStateDidChange):
(WebKit::WebPageProxy::initializeCreationParameters):
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::layerHostingMode):
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
(WebKit::TiledCoreAnimationDrawingAreaProxy::layerHostingModeDidChange):
* WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::resumePainting):
(WebKit::DrawingArea::setLayerHostingMode):
* WebProcess/WebPage/DrawingArea.messages.in:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::~WebPage):
(WebKit::WebPage::scalePage):
(WebKit::WebPage::setDeviceScaleFactor):
(WebKit::WebPage::setActive):
(WebKit::WebPage::setViewState):
(WebKit::WebPage::setWindowIsVisible):
(WebKit::WebPage::windowAndViewFramesChanged):
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::layerHostingMode):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::setLayerHostingMode):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::sendComplexTextInputToPlugin):
(WebKit::WebPage::setLayerHostingMode):

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

8 years agoAdd layer hosting mode to ViewState
barraclough@apple.com [Tue, 17 Dec 2013 07:46:19 +0000 (07:46 +0000)]
Add layer hosting mode to ViewState
https://bugs.webkit.org/show_bug.cgi?id=125803

Reviewed by Anders Carlsson.

When the view state of the page is updated the layer mode may also
change. Currently this is passed by a separate message, remove this
and fold it into ViewState.

Previously the setLayerHostingMode message would be passed to the
DrawingArea, which would inform the WebPage. Since the WebPage is
passed the SetVisibilityState messgae reverse this.

WebPageProxy had a policy of only updating the hosting mode when
visible - the value is sticky whilst the view is not visible. Make
this policy explicit in the PageClientImpl, rather then implicit
from the flow control.

* Shared/ViewState.h:
    - Added ViewState::IsLayerWindowServerHosted.
* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):
* Shared/WebPageCreationParameters.h:
    - removed layerHostingMode.
* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::PageClientImpl):
(WebKit::PageClientImpl::isLayerWindowServerHosted):
(WebKit::PageClientImpl::viewWillMoveToAnotherWindow):
    - viewLayerHostingMode -> isLayerWindowServerHosted, added m_layerHostingMode.
* UIProcess/DrawingAreaProxy.h:
    - removed layerHostingModeDidChange.
* UIProcess/PageClient.h:
    - viewLayerHostingMode -> isLayerWindowServerHosted.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
    - removed m_layerHostingMode.
(WebKit::WebPageProxy::updateViewState):
    - added IsLayerWindowServerHosted.
(WebKit::WebPageProxy::viewStateDidChange):
    - changes to ViewState::IsInWindow implies ViewState::IsLayerWindowServerHosted may change too.
    - remove special handling (separate message) for LayerHostingMode.
(WebKit::WebPageProxy::initializeCreationParameters):
    - removed m_layerHostingMode.
* UIProcess/WebPageProxy.h:
    - removed m_layerHostingMode.
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
    - removed layerHostingModeDidChange.
* WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::setLayerHostingMode):
(WebKit::DrawingArea::didUpdate):
    - setLayerHostingMode takes a LayerHostingMode.
* WebProcess/WebPage/DrawingArea.messages.in:
    - SetLayerHostingMode is no longer a message.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
    - removed m_layerHostingMode.
(WebKit::WebPage::setViewState):
    - handle ViewState::IsLayerWindowServerHosted.
(WebKit::WebPage::setLayerHostingMode):
    - moved from ~Mac.mm (matching other ViewState setters), calls to DrawingArea.
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::layerHostingMode):
    - layerHostingMode queries m_viewState, removed m_layerHostingMode.
* WebProcess/WebPage/ios/WebPageIOS.mm:
    - removed setLayerHostingMode.
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):
    - setLayerHostingMode takes a LayerHostingMode, WebPage now calls to DrawingArea.
* WebProcess/WebPage/mac/WebPageMac.mm:
    - removed setLayerHostingMode.

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

8 years agoChecking RTCPeerConnection signalingState before setting local/remoteDescription
thiago.lacerda@openbossa.org [Tue, 17 Dec 2013 04:12:19 +0000 (04:12 +0000)]
Checking RTCPeerConnection signalingState before setting local/remoteDescription
https://bugs.webkit.org/show_bug.cgi?id=125655

Reviewed by Eric Carlson.

Before setting a session description RTCPeerConnection must check if it is in valid state for that SDP type.

Source/WebCore:

New tests: fast/mediastream/RTCPeerConnection-have-local-answer.html
       fast/mediastream/RTCPeerConnection-have-local-offer.html
       fast/mediastream/RTCPeerConnection-have-local-pranswer.html
       fast/mediastream/RTCPeerConnection-have-remote-offer.html
       fast/mediastream/RTCPeerConnection-have-remote-pranswer.html
       fast/mediastream/RTCPeerConnection-stable.html

Modified: fast/mediastream/RTCPeerConnection-remoteDescription.html

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::checkStateForLocalDescription): Checks if the current state of RTCPeerConnection is
valid for the local SDP that is being set.
(WebCore::RTCPeerConnection::checkStateForRemoteDescription): Checks if the current state of RTCPeerConnection
is valid for the remote SDP that is being set.
(WebCore::RTCPeerConnection::setLocalDescription): Now calls checkStateForLocalDescription prior to set the
local SDP.
(WebCore::RTCPeerConnection::setRemoteDescription): Now Calls checkStateForRemoteDescription prior to set the
remote SDP.
* Modules/mediastream/RTCPeerConnection.h:
* platform/mock/RTCNotifiersMock.cpp: Adding new class to notify RTCPeerConnection about a signaling state
change: SignalingStateNotifier.
(WebCore::SignalingStateNotifier::SignalingStateNotifier):
(WebCore::SignalingStateNotifier::fire):
* platform/mock/RTCNotifiersMock.h:
* platform/mock/RTCPeerConnectionHandlerMock.cpp:
(WebCore::RTCPeerConnectionHandlerMock::signalingStateFromSDP): Defines the new state that RTCPeerConnection
should be, according the SDP that is being set.
(WebCore::RTCPeerConnectionHandlerMock::setLocalDescription): Calls signalingStateFromSDP, in order to get the
new signaling state and notify RTCPeerConnection object.
(WebCore::RTCPeerConnectionHandlerMock::setRemoteDescription): Ditto.
* platform/mock/RTCPeerConnectionHandlerMock.h:

LayoutTests:

* fast/mediastream/RTCPeerConnection-have-local-answer.html: Added.
* fast/mediastream/RTCPeerConnection-have-local-offer-expected.txt: Added.
* fast/mediastream/RTCPeerConnection-have-local-offer.html: Added.
* fast/mediastream/RTCPeerConnection-have-local-pranswer-expected.txt: Added.
* fast/mediastream/RTCPeerConnection-have-local-pranswer.html: Added.
* fast/mediastream/RTCPeerConnection-have-remote-offer-expected.txt: Added.
* fast/mediastream/RTCPeerConnection-have-remote-offer.html: Added.
* fast/mediastream/RTCPeerConnection-have-remote-pranswer-expected.txt: Added.
* fast/mediastream/RTCPeerConnection-have-remote-pranswer.html: Added.
* fast/mediastream/RTCPeerConnection-remoteDescription-expected.txt:
* fast/mediastream/RTCPeerConnection-remoteDescription.html:
* fast/mediastream/RTCPeerConnection-stable-expected.txt: Added.
* fast/mediastream/RTCPeerConnection-stable.html: Added.

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

8 years ago[Cocoa] Remove unused contentAnchor SPI from WKView
weinig@apple.com [Tue, 17 Dec 2013 03:48:05 +0000 (03:48 +0000)]
[Cocoa] Remove unused contentAnchor SPI from WKView
https://bugs.webkit.org/show_bug.cgi?id=125826

Reviewed by Tim Horton.

* UIProcess/API/Cocoa/WKViewPrivate.h:
* UIProcess/API/mac/WKView.mm:
(-[WKView setFrameSize:]):
(-[WKView _setDrawingAreaSize:]):
(-[WKView _setAcceleratedCompositingModeRootLayer:]):
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):

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

8 years ago[Win] Unreviewed build fix for 64-bit.
alex.christensen@flexsim.com [Tue, 17 Dec 2013 03:06:33 +0000 (03:06 +0000)]
[Win] Unreviewed build fix for 64-bit.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Corrected 64-bit linker symbols.

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

8 years agoRevert a mysterious and inexplicable part of http://trac.webkit.org/changeset/160685
timothy_horton@apple.com [Tue, 17 Dec 2013 02:56:02 +0000 (02:56 +0000)]
Revert a mysterious and inexplicable part of trac.webkit.org/changeset/160685

* platform/KeyedCoding.h:
(WebCore::KeyedEncoder::encodeEnum):
(WebCore::KeyedEncoder::encodeObject):
(WebCore::KeyedEncoder::encodeConditionalObject):
(WebCore::KeyedEncoder::encodeObjects):

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

8 years agoAdd my Samsung email address.
rwlbuis@webkit.org [Tue, 17 Dec 2013 02:43:52 +0000 (02:43 +0000)]
Add my Samsung email address.

Unreviewed.

* Scripts/webkitpy/common/config/contributors.json:

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

8 years agoAvoid indirect function calls for custom getters
oliver@apple.com [Tue, 17 Dec 2013 02:43:26 +0000 (02:43 +0000)]
Avoid indirect function calls for custom getters
https://bugs.webkit.org/show_bug.cgi?id=125821

Reviewed by Mark Hahnenberg.

Rather than invoking a helper function to perform an indirect call
through a function pointer, just have the JIT call the function directly.

Unfortunately this only works in JSVALUE64 at the moment as there
is not an obvious way to pass two EncodedJSValues uniformly over
the various effected JITs.

* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupArguments):
* jit/Repatch.cpp:
(JSC::generateProtoChainAccessStub):
(JSC::tryBuildGetByIDList):

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

8 years agoRemove EnumClass.h from WTF
andersca@apple.com [Tue, 17 Dec 2013 02:27:01 +0000 (02:27 +0000)]
Remove EnumClass.h from WTF
https://bugs.webkit.org/show_bug.cgi?id=125820

Reviewed by Darin Adler.

Source/WebCore:

Replace uses of ENUM_CLASS with real enum class declarations.

* Modules/webdatabase/DatabaseBasicTypes.h:
* Modules/webdatabase/DatabaseError.h:
* Modules/webdatabase/SQLTransactionState.h:
* bindings/js/JSSubtleCryptoCustom.cpp:
* bindings/js/SerializedScriptValue.cpp:
* crypto/CryptoAlgorithmIdentifier.h:
* crypto/CryptoAlgorithmParameters.h:
* crypto/CryptoKey.h:
* crypto/CryptoKeyData.h:
* crypto/CryptoKeyType.h:
* crypto/keys/CryptoKeyDataRSAComponents.h:
* inspector/InspectorTimelineAgent.h:

Source/WTF:

All compilers we build on now support real strongly typed enums, so we can remove the ENUM_CLASS version.

* WTF.vcxproj/WTF.vcxproj:
* WTF.vcxproj/WTF.vcxproj.filters:
* WTF.xcodeproj/project.pbxproj:
* wtf/CheckedArithmetic.h:
* wtf/EnumClass.h: Removed.

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

8 years agoWebKit2 View Gestures: Pinching beyond the extremes doesn't animate back to the min/max
timothy_horton@apple.com [Tue, 17 Dec 2013 02:16:07 +0000 (02:16 +0000)]
WebKit2 View Gestures: Pinching beyond the extremes doesn't animate back to the min/max
https://bugs.webkit.org/show_bug.cgi?id=125750

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
Remove some accidentally included commented out code.

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

8 years agoWebKit2 View Gestures: Pinching beyond the extremes doesn't animate back to the min/max
timothy_horton@apple.com [Tue, 17 Dec 2013 02:12:31 +0000 (02:12 +0000)]
WebKit2 View Gestures: Pinching beyond the extremes doesn't animate back to the min/max
https://bugs.webkit.org/show_bug.cgi?id=125750

Reviewed by Simon Fraser.

When you let go of a pinch where you exceeded the maximum or minimum scale,
the view should animate back to the limit instead of snapping back.

* UIProcess/mac/ViewGestureController.cpp:
(WebKit::ViewGestureController::endMagnificationGesture):
Unscrolling the scaled origin here is wrong; we should send the same
value for 'origin' for commitTransientZoom that we do for adjustTransientZoom.
The drawing area can deal with transforming that however it needs to call scalePage().

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::beginTransientZoom):
Drive-by use WebPage::mainFrameView().

(WebKit::TiledCoreAnimationDrawingArea::adjustTransientZoom):
Update the shadow layer's bounds, position, and shadow path while zooming,
instead of hiding it.

(WebKit::transientZoomSnapAnimationForKeyPath):
Create a CABasicAnimation that stays applied to its target when it finishes,
lasts for a quarter second, and uses the ease-in-ease-out timing function.

(WebKit::constrainZoomOriginForFrameView):
When we land a transient zoom, there may be overhang areas (linen, in the case of Mac)
visible. During the commit animation, we should move the RenderView layer appropriately
so that the page covers the entire view and there are no overhang areas visible.
Adapt some code from ScrollableArea to constrain the zoom origin to do so.

(WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
Animate the RenderView layer's transform, and the shadow layer's bounds, position, and path.
When they complete, apply the zoom via scalePage() and flush the layer tree (otherwise there
can be a flash between removing the animations and the next flush with the new scale).

(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):
Move the code to land the transient zoom (via scalePage) and to put the shadow back
in the state WebCore left it out into its own function, so it can be called both from the
animation completion callback and from the short-circuit in the case where we don't need to animate.

* WebCore.exp.in:
Export a few things so WebKit2 can use them.

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

8 years agoUnreviewed. Fix GTK+ build after r160653.
ryuan.choi@samsung.com [Tue, 17 Dec 2013 02:02:42 +0000 (02:02 +0000)]
Unreviewed. Fix GTK+ build after r160653.

Renamed WebData to API::Data

* GNUmakefile.list.am: Added APIData.cpp and APIData.h
* UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
(webkitURISchemeRequestReadCallback):
* UIProcess/API/gtk/WebKitWebResource.cpp:
* UIProcess/API/gtk/WebKitWebView.cpp:

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

8 years agoFix some whitespace issues in inspector code
commit-queue@webkit.org [Tue, 17 Dec 2013 02:00:06 +0000 (02:00 +0000)]
Fix some whitespace issues in inspector code
https://bugs.webkit.org/show_bug.cgi?id=125814

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-12-16
Reviewed by Darin Adler.

Source/JavaScriptCore:

* inspector/protocol/Debugger.json:
* inspector/protocol/Runtime.json:
* inspector/scripts/CodeGeneratorInspector.py:
(Generator.process_command):

Source/WebCore:

* inspector/protocol/DOM.json:
* inspector/protocol/DOMStorage.json:
* inspector/protocol/Timeline.json:

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

8 years agoWeb Inspector: Use JSC::SourceID and JSC::BreakpointID instead of WebCore dups
commit-queue@webkit.org [Tue, 17 Dec 2013 01:36:50 +0000 (01:36 +0000)]
Web Inspector: Use JSC::SourceID and JSC::BreakpointID instead of WebCore dups
https://bugs.webkit.org/show_bug.cgi?id=125818

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-12-16
Reviewed by Mark Lam.

Remove the WebCore typedefs of JSC types. Prefer JSC namespace
prefixed types throughout WebCore's Inspector code.

* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/BreakpointID.h: Removed.
* bindings/js/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::removeBreakpoint):
(WebCore::ScriptDebugServer::dispatchDidParseSource):
* bindings/js/ScriptDebugServer.h:
* bindings/js/SourceID.h: Removed.
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
(WebCore::parseLocation):
(WebCore::InspectorDebuggerAgent::setBreakpoint):
(WebCore::InspectorDebuggerAgent::continueToLocation):
(WebCore::InspectorDebuggerAgent::resolveBreakpoint):
(WebCore::InspectorDebuggerAgent::searchInContent):
(WebCore::InspectorDebuggerAgent::getScriptSource):
(WebCore::InspectorDebuggerAgent::didParseSource):
(WebCore::InspectorDebuggerAgent::didPause):
(WebCore::InspectorDebuggerAgent::clear):
* inspector/InspectorDebuggerAgent.h:
* inspector/ScriptDebugListener.h:

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

8 years ago[WK2][iOS] WKView sends unscaled scroll position to WKContentView
benjamin@webkit.org [Tue, 17 Dec 2013 01:35:02 +0000 (01:35 +0000)]
[WK2][iOS] WKView sends unscaled scroll position to WKContentView
https://bugs.webkit.org/show_bug.cgi?id=125819

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-16
Reviewed by Anders Carlsson.

WKView was sending untransformed scroll coordinates to WKContentView. The scroll position
seen by WebKit was wrong when the content is scaled.

* UIProcess/API/ios/WKView.mm:
(-[WKView _didScroll]):
(-[WKView scrollViewDidEndDragging:willDecelerate:]):
(-[WKView scrollViewDidEndDecelerating:]):
(-[WKView scrollViewDidScrollToTop:]):

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

8 years agoAdd some missing functions to MacroAssembler
mhahnenberg@apple.com [Tue, 17 Dec 2013 01:33:05 +0000 (01:33 +0000)]
Add some missing functions to MacroAssembler
https://bugs.webkit.org/show_bug.cgi?id=125809

Reviewed by Oliver Hunt.

* assembler/AbstractMacroAssembler.h:
* assembler/AssemblerBuffer.h:
* assembler/LinkBuffer.cpp:
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::storePtr):
(JSC::MacroAssembler::andPtr):
* assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::and64):
(JSC::MacroAssemblerARM64::branchTest8):
* assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::branchTest8):
* assembler/X86Assembler.h:

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

8 years ago[iOS] Upstream WebCore/dom changes
dbates@webkit.org [Tue, 17 Dec 2013 01:32:12 +0000 (01:32 +0000)]
[iOS] Upstream WebCore/dom changes
https://bugs.webkit.org/show_bug.cgi?id=125646

Reviewed by David Kilzer.

* WebCore.exp.in: Added symbol __ZN7WebCore8Settings17setLayoutIntervalEi and removed symbol
__ZN7WebCore24cLayoutScheduleThresholdE.
* dom/ActiveDOMObject.h: Add suspension reason DocumentWillBePaused.
* dom/DOMImplementation.cpp:
(WebCore::DOMImplementation::createDocument): Opt-out of ENABLE(VIDEO) logic when
building for iOS.
* dom/DeviceMotionClient.h: Made class non-copyable.
(WebCore::DeviceMotionClient::DeviceMotionClient): Added;
* dom/DeviceMotionController.cpp: Added FIXME comment to reconcile iOS and OpenSource differences.
(WebCore::DeviceMotionController::suspendUpdates): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceMotionController::resumeUpdates): Added; guarded by PLATFORM(IOS).
* dom/DeviceMotionController.h: Added FIXME comment to reconcile iOS and OpenSource differences.
* dom/DeviceOrientationClient.h: Made class non-copyable.
(WebCore::DeviceOrientationClient::DeviceOrientationClient): Added.
* dom/DeviceOrientationController.cpp: Added FIXME comment to reconcile iOS and OpenSource differences.
(WebCore::DeviceOrientationController::DeviceOrientationController):
(WebCore::DeviceOrientationController::suspendUpdates): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceOrientationController::resumeUpdates): Added; guarded by PLATFORM(IOS).
* dom/DeviceOrientationController.h: Added FIXME comment to reconcile iOS and OpenSource differences.
* dom/DeviceOrientationData.cpp:
(WebCore::DeviceOrientationData::create): Added; iOS-specific. Added FIXME comment.
(WebCore::DeviceOrientationData::DeviceOrientationData): Added iOS-specific code.
(WebCore::DeviceOrientationData::compassHeading): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceOrientationData::compassAccuracy): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceOrientationData::canProvideCompassHeading): Added; guarded by PLATFORM(IOS).
(WebCore::DeviceOrientationData::canProvideCompassAccuracy): Added; guarded by PLATFORM(IOS).
* dom/DeviceOrientationData.h:
* dom/DeviceOrientationEvent.idl: Added iOS-specific code.
* dom/Document.cpp: Moved constant cLayoutScheduleThreshold to Settings.cpp and renamed it
layoutScheduleThreshold towards allowing a port to configure the layout interval.
(WebCore::Document::Document): Added optional argument isSynthesized, defaults false.
(WebCore::Document::~Document): Added iOS-specific code to destroy the device motion
and device orientation controllers.
(WebCore::Document::didBecomeCurrentDocumentInFrame): Added iOS-specific code with FIXME comment.
(WebCore::Document::prepareForDestruction): Added iOS-specific touch event code.
(WebCore::Document::removeAllEventListeners): Ditto.
(WebCore::Document::platformSuspendOrStopActiveDOMObjects): Added; compiles to an empty function on
non-iOS port.
(WebCore::Document::suspendActiveDOMObjects): Modified to call platformSuspendOrStopActiveDOMObjects().
(WebCore::Document::resumeActiveDOMObjects): Ditto.
(WebCore::Document::stopActiveDOMObjects): Added.
(WebCore::Document::implicitClose): Modified to query Settings::layoutInterval().
(WebCore::Document::minimumLayoutDelay): Ditto.
(WebCore::Document::processViewport): Added iOS-specific code.
(WebCore::Document::updateViewportArguments): Ditto.
(WebCore::setParserFeature): Added; guarded by PLATFORM(IOS).
(WebCore::Document::processFormatDetection): Added; guarded by PLATFORM(IOS).
(WebCore::Document::processWebAppOrientations): Added; guarded by PLATFORM(IOS).
(WebCore::Document::isTelephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Document::setIsTelephoneNumberParsingAllowed): Added; guarded by PLATFORM(IOS).
(WebCore::Document::isTelephoneNumberParsingAllowed): Added; guarded by PLATFORM(IOS).
(WebCore::Document::initSecurityContext): Added iOS-specific code.
(WebCore::Document::suspendScheduledTasks): Added; guarded by PLATFORM(IOS).
(WebCore::Document::deviceMotionController): Added; iOS-specific.
(WebCore::Document::deviceOrientationController): Added; iOS-specific.
(WebCore::Document::adjustFloatQuadsForScrollAndAbsoluteZoomAndFrameScale): Added iOS-specific code.
(WebCore::Document::adjustFloatRectForScrollAndAbsoluteZoomAndFrameScale): Added iOS-specific code.
* dom/Document.h: Register gesture events gesture{change, end, start}; guarded by ENABLE(IOS_GESTURE_EVENTS).
(WebCore::Document::isSynthesized): Added.
(WebCore::Document::platformSuspendOrStopActiveDOMObjects): Added.
* dom/Document.idl:
* dom/DocumentMarker.h: Added iOS-specific changes. We should look to reconcile the differences between
iOS and OpenSource. See <rdar://problem/11306422>.
(WebCore::DocumentMarker::AllMarkers::AllMarkers):
(WebCore::DocumentMarker::DocumentMarker): Added; iOS-specific.
(WebCore::DocumentMarker::alternatives): Added; iOS-specific.
(WebCore::DocumentMarker::setAlternative): Added; iOS-specific.
(WebCore::DocumentMarker::metadata): Added; iOS-specific.
(WebCore::DocumentMarker::setMetadata): Added; iOS-specific.
* dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::addMarker):
(WebCore::DocumentMarkerController::addDictationPhraseWithAlternativesMarker):
(WebCore::DocumentMarkerController::addDictationResultMarker):
(WebCore::DocumentMarkerController::shiftMarkers):
* dom/DocumentMarkerController.h:
* dom/Element.cpp:
(WebCore::Element::focus): Add iOS-specific workaround for <rdar://problem/6699741>.
* dom/Element.h: Register gesture events gesture{change, end, start}; guarded by ENABLE(IOS_GESTURE_EVENTS).
* dom/EventContext.cpp: Opt-out of ENABLE(TOUCH_EVENTS)-guarded code when building the iOS port.
* dom/EventContext.h: Ditto.
* dom/EventDispatcher.cpp:
(WebCore::EventRelatedNodeResolver::EventRelatedNodeResolver): Ditto.
(WebCore::EventDispatcher::dispatchEvent): Ditto.
(WebCore::EventPath::EventPath): Ditto.
* dom/EventNames.h: Added events webkit{currentplaybacktargetiswirelesschanged, playbacktargetavailabilitychanged}
and gesture{change, end, start}.
* dom/EventNames.in: Added event names GestureEvent and WebKitPlaybackTargetAvailabilityEvent conditioned on
the macro defines ENABLE_IOS_GESTURE_EVENTS and ENABLE_IOS_AIRPLAY.
* dom/MouseRelatedEvent.cpp:
(WebCore::contentsScrollOffset): Added iOS-specific code.
(WebCore::MouseRelatedEvent::MouseRelatedEvent): Ditto.
* dom/Node.cpp:
(WebCore::Node::willBeDeletedFrom): Ditto.
(WebCore::Node::isDescendantOf): Fixed style issue in function prototype; moved '*' to the left side.
(WebCore::Node::isDescendantOrShadowDescendantOf): Added.
(WebCore::tryAddEventListener): Added iOS-specific code; also added FIXME comment.
(WebCore::tryRemoveEventListener): Ditto.
(WebCore::Node::dispatchEvent): Opt-out of ENABLE(TOUCH_EVENTS)-guarded code when building the iOS port.
(WebCore::Node::defaultEventHandler): Added iOS-specific code.
(WebCore::Node::willRespondToMouseMoveEvents): Added iOS-specific code; also added FIXME comment.
(WebCore::Node::willRespondToMouseClickEvents): Added iOS-specific code; also added FIXME comment.
(WebCore::Node::willRespondToMouseWheelEvents): Added.
* dom/Node.h:
* dom/Position.h:
(WebCore::operator<): Added.
(WebCore::operator>): Added.
(WebCore::operator>=): Added.
(WebCore::operator<=): Added.
* dom/Range.cpp:
(WebCore::Range::create): Added iOS-specific code; also added FIXME comment.
(WebCore::intervalsSufficientlyOverlap): Added; guarded by PLATFORM(IOS).
(WebCore::printRects): Added; guarded by PLATFORM(IOS).
(WebCore::adjustLineHeightOfSelectionRects): Added; guarded by PLATFORM(IOS).
(WebCore::coalesceSelectionRects): Added; guarded by PLATFORM(IOS).
(WebCore::Range::collectSelectionRects): Added; guarded by PLATFORM(IOS).
* dom/Range.h:
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::suspendActiveDOMObjects): Added iOS-specific code.
(WebCore::ScriptExecutionContext::dispatchErrorEvent): Ditto.
* dom/TreeScope.cpp:
(WebCore::nodeFromPoint): Ditto.
* dom/ViewportArguments.cpp:
(WebCore::computeViewportAttributes): Ditto.
(WebCore::setViewportFeature): Added iOS-specific code.
(WebCore::finalizeViewportArguments): Added; iOS-specific.
* dom/ViewportArguments.h:
* dom/make_names.pl: Added support to find the path to gcc with respect to the environment
variable SDKROOT.
* html/HTMLMediaElement.cpp:
(HTMLMediaElement::suspend):
* page/Settings.cpp:
(WebCore::Settings::Settings): Initialize setting m_layoutInterval to layoutScheduleThreshold.
(WebCore::Settings::setLayoutInterval): Added.
* page/Settings.h:
(WebCore::Settings::layoutInterval): Added.

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

8 years agoDatabaseProcess: Plumb through messaging for the 4 basic transaction operations
beidson@apple.com [Tue, 17 Dec 2013 01:12:23 +0000 (01:12 +0000)]
DatabaseProcess: Plumb through messaging for the 4 basic transaction operations
https://bugs.webkit.org/show_bug.cgi?id=125816

Reviewed by Alexey Proskuryakov.

The messaging begins and ends in the WebProcess:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::beginTransaction):
(WebKit::WebIDBServerConnection::didBeginTransaction):
(WebKit::WebIDBServerConnection::commitTransaction):
(WebKit::WebIDBServerConnection::didCommitTransaction):
(WebKit::WebIDBServerConnection::resetTransaction):
(WebKit::WebIDBServerConnection::didResetTransaction):
(WebKit::WebIDBServerConnection::rollbackTransaction):
(WebKit::WebIDBServerConnection::didRollbackTransaction):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:

It travels from the WebProcess to the DatabaseProcess connection:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::beginTransaction):
(WebKit::DatabaseProcessIDBConnection::commitTransaction):
(WebKit::DatabaseProcessIDBConnection::resetTransaction):
(WebKit::DatabaseProcessIDBConnection::rollbackTransaction):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

It travels from the connection to the appropriate UniqueIDBDatabase:
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::openTransaction):
(WebKit::UniqueIDBDatabase::beginTransaction):
(WebKit::UniqueIDBDatabase::commitTransaction):
(WebKit::UniqueIDBDatabase::resetTransaction):
(WebKit::UniqueIDBDatabase::rollbackTransaction):
(WebKit::UniqueIDBDatabase::postTransactionOperation):
(WebKit::UniqueIDBDatabase::didCompleteTransactionOperation):
(WebKit::UniqueIDBDatabase::openBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::beginBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::commitBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::resetBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::rollbackBackingStoreTransaction):
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

The UniqueIDBDatabase object performs the operation with the backing store:
* DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::beginTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::commitTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::resetTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::rollbackTransaction):
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

And the SQLite backing store calls the appropriate method on the SQLite transaction:
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:
(WebKit::SQLiteIDBTransaction::begin): Stubbed for now.
(WebKit::SQLiteIDBTransaction::commit): Ditto.
(WebKit::SQLiteIDBTransaction::reset): Ditto.
(WebKit::SQLiteIDBTransaction::rollback): Ditto.
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h:

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

8 years agoAttempt to fix the Windows build after r160672.
simon.fraser@apple.com [Tue, 17 Dec 2013 00:55:47 +0000 (00:55 +0000)]
Attempt to fix the Windows build after r160672.

* platform/graphics/ca/win/PlatformCALayerWin.cpp:
(PlatformCALayerWin::PlatformCALayerWin):
* platform/graphics/ca/win/PlatformCALayerWin.h:

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

8 years agoUnreviewed build fix on EFL port after r160653
ryuan.choi@samsung.com [Tue, 17 Dec 2013 00:44:37 +0000 (00:44 +0000)]
Unreviewed build fix on EFL port after r160653

Rename WebData to API::Data

* CMakeLists.txt: Added APIData.cpp to include list.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::sessionStateData):
(WebKit::WebPageProxy::restoreFromSessionStateData):
* UIProcess/soup/WebSoupRequestManagerProxy.cpp:
(WebKit::WebSoupRequestManagerProxy::didHandleURIRequest):
(WebKit::WebSoupRequestManagerProxy::didReceiveURIRequestData):
(WebKit::WebSoupRequestManagerProxy::didReceiveURIRequest):
* UIProcess/soup/WebSoupRequestManagerProxy.h:

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

8 years agoWKView.magnification should include magnification due to the active gesture
timothy_horton@apple.com [Tue, 17 Dec 2013 00:35:23 +0000 (00:35 +0000)]
WKView.magnification should include magnification due to the active gesture
https://bugs.webkit.org/show_bug.cgi?id=125813

Reviewed by Simon Fraser.

Make WKView.magnification respect active pinch-zoom gestures.

* UIProcess/API/mac/WKView.mm:
(-[WKView magnification]):
If we have a ViewGestureController, defer to it for the current magnification.

* UIProcess/mac/ViewGestureController.cpp:
(WebKit::ViewGestureController::magnification):
Return either the current pinch-zoom magnification, if we're in the middle of a gesture,
or the pageScaleFactor, if we're not.

* UIProcess/mac/ViewGestureController.h:

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

8 years ago[Win] Unreviewed build fix.
bfulgham@apple.com [Tue, 17 Dec 2013 00:29:40 +0000 (00:29 +0000)]
[Win] Unreviewed build fix.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Correct typo that added a '\' at the
end of a line of the file.

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

8 years ago[WK2] Remove the constraint that highlight rects must be smaller than the scrollview...
benjamin@webkit.org [Tue, 17 Dec 2013 00:24:57 +0000 (00:24 +0000)]
[WK2] Remove the constraint that highlight rects must be smaller than the scrollview bounds
https://bugs.webkit.org/show_bug.cgi?id=125812

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-16
Reviewed by Dan Bernstein.

Currently, _scrollView is never set on WKInteractionView and all highlight rects are discarded.

Eventually, the constraint rect should be computed from the useful area of ScrollView and the scale
of the document. In the meantime, the constraint code is just causing troubles.

The issue is tracked by <rdar://problem/15673655>.

* UIProcess/API/ios/WKInteractionView.mm:
(-[WKInteractionView _didGetTapHighlightForRequest:color:WebCore::quads:WebCore::topLeftRadius:WebCore::topRightRadius:WebCore::bottomLeftRadius:WebCore::bottomRightRadius:WebCore::]):

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

8 years agoApply overhang shadow and linen to UI-side layers
simon.fraser@apple.com [Tue, 17 Dec 2013 00:13:38 +0000 (00:13 +0000)]
Apply overhang shadow and linen to UI-side layers
https://bugs.webkit.org/show_bug.cgi?id=125807

Source/WebCore:

Reviewed by Tim Horton.

With UI-side compositing, we need to apply the overhang shadow and linen
background to layers in the UI process. Achieve this by setting a "custom
appearance" flag on layers that need a shadow or linen background, and
migrating this flag to the UI process. Static functions on ScrollbarThemeMac
are exposed to do the actual setting.

* WebCore.exp.in: Export ScrollbarThemeMac and GraphicsLayerCA functions.
* WebCore.xcodeproj/project.pbxproj: ScrollbarThemeMac.h and ScrollbarThemeComposite.h
need to be Private.
* platform/graphics/GraphicsLayer.cpp: Initialize m_customAppearance.
(WebCore::GraphicsLayer::GraphicsLayer):
* platform/graphics/GraphicsLayer.h: Getter/setter for CustomAppearance.
(WebCore::GraphicsLayer::setCustomAppearance):
(WebCore::GraphicsLayer::customAppearance):
* platform/graphics/ca/GraphicsLayerCA.cpp: Update CustomAppearanceChanged as
we do other properties.
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
(WebCore::GraphicsLayerCA::updateCustomAppearance):
(WebCore::GraphicsLayerCA::setCustomAppearance):
* platform/graphics/ca/GraphicsLayerCA.h:
* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/mac/PlatformCALayerMac.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm: When we have a custom
appearance, use ScrollbarThemeMac functions to update the layer. Ensure
that if the bounds change, we update the shadow (whose path depends on the bounds).
(PlatformCALayerMac::PlatformCALayerMac):
(PlatformCALayerMac::clone):
(PlatformCALayerMac::setBounds):
(PlatformCALayerMac::requiresCustomAppearanceUpdateOnBoundsChange):
(PlatformCALayerMac::updateCustomAppearance):
* platform/mac/ScrollbarThemeMac.h: Export some static functions.
* platform/mac/ScrollbarThemeMac.mm: Change code to use static functions.
(WebCore::ScrollbarThemeMac::setUpOverhangAreaBackground):
(WebCore::ScrollbarThemeMac::removeOverhangAreaBackground):
(WebCore::ScrollbarThemeMac::setUpOverhangAreaShadow):
(WebCore::ScrollbarThemeMac::removeOverhangAreaShadow):
(WebCore::ScrollbarThemeMac::setUpOverhangAreasLayerContents):
(WebCore::ScrollbarThemeMac::setUpContentShadowLayer):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateRootLayerPosition): No need to call
setUpContentShadowLayer() now when size changes; PlatformCALayer takes
care of that.
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers): Now set
custom appearance via GraphicsLayer.

Source/WebKit2:

Reviewed by Tim Horton.

With UI-side compositing, we need to apply the overhang shadow and linen
background to layers in the UI process. Achieve this by setting a "custom
appearance" flag on layers that need a shadow or linen background, and
migrating this flag to the UI process. Static functions on ScrollbarThemeMac
are exposed to do the actual setting.

* Shared/mac/RemoteLayerTreePropertyApplier.mm:
(WebKit::updateCustomAppearance): Use ScrollbarThemeMac to update the
appearance.
(WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):
* Shared/mac/RemoteLayerTreeTransaction.h:
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
(WebKit::dumpChangedLayers):
* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(PlatformCALayerRemote::setBounds): If the bounds change, also set the
CustomAppearanceChanged bit so that the UI side updates the shadow bounds
(done here because the UI side is not stateful).
(PlatformCALayerRemote::requiresCustomAppearanceUpdateOnBoundsChange):
(PlatformCALayerRemote::customAppearance):
(PlatformCALayerRemote::updateCustomAppearance):
* WebProcess/WebPage/mac/PlatformCALayerRemote.h:

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

8 years agoSource/JavaScriptCore: [Win] Remove dead code after conversion to VS2013
bfulgham@apple.com [Tue, 17 Dec 2013 00:06:20 +0000 (00:06 +0000)]
Source/JavaScriptCore: [Win] Remove dead code after conversion to VS2013
https://bugs.webkit.org/show_bug.cgi?id=125795

Reviewed by Darin Adler.

* API/tests/testapi.c: Remove local nan implementation

Source/WebCore: [Win] Remove dead code after converstion to VS2013
https://bugs.webkit.org/show_bug.cgi?id=125795

Reviewed by Darin Adler.

* WebCorePrefix.h: Remove VS2012 include kludge.
* loader/FTPDirectoryParser.cpp: Remove gmtime workaround code.
* page/DOMWindow.cpp: Remove older pointer-based open implementation.
* page/DOMWindow.h: Ditto
* platform/text/TextEncodingRegistry.cpp:
(WebCore::TextEncodingNameHash::equal): Remove optimization bug workaround
* testing/Internals.cpp:
(WebCore::Internals::openDummyInspectorFrontend): Remove compiler workaround

Source/WebKit: [Win] Remove dead code after conversion to VS2013
https://bugs.webkit.org/show_bug.cgi?id=125795

Reviewed by Darin Adler.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Remove unused function exports.

Source/WTF: [Win] Remove dead code after conversion to VS2013
https://bugs.webkit.org/show_bug.cgi?id=125795

Reviewed by Darin Adler.

* wtf/Assertions.h: Include <inttypes.h> now that it exists.
* wtf/Compiler.h: Update compiler checks for VS2013, and
enable support for NEVER_INLINE
* wtf/HashFunctions.h:
(WTF::PtrHash::hash): Remove compiler workaround.
* wtf/MathExtras.h: Remove C99 functions that are now supplied
by the MS runtime library.
* wtf/Platform.h: Remove old MSVC support flags.
* wtf/StdLibExtras.h: Remove old MSVC workaround code.

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

8 years agoCache getters and custom accessors on the prototype chain
oliver@apple.com [Tue, 17 Dec 2013 00:01:01 +0000 (00:01 +0000)]
Cache getters and custom accessors on the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=125602

Reviewed by Michael Saboff.

Source/JavaScriptCore:

Support caching of custom getters and accessors on the prototype chain.
This is relatively trivial and just requires a little work compared to
the direct access mode as we're under more register pressure.

* bytecode/StructureStubInfo.h:
  Removed the unsued initGetByIdProto as it was confusing to still have it present.
* jit/Repatch.cpp:
(JSC::generateProtoChainAccessStub):
(JSC::tryCacheGetByID):
(JSC::tryBuildGetByIDList):

Tools:

Make sure bencher scripts also make noInline exist

* Scripts/bencher:

LayoutTests:

Added a bunch of new tests

* js/regress/chain-custom-getter-expected.txt: Added.
* js/regress/chain-custom-getter.html: Added.
* js/regress/chain-getter-access-expected.txt: Added.
* js/regress/chain-getter-access.html: Added.
* js/regress/proto-custom-getter-expected.txt: Added.
* js/regress/proto-custom-getter.html: Added.
* js/regress/proto-getter-access-expected.txt: Added.
* js/regress/proto-getter-access.html: Added.
* js/regress/resources/regress-pre.js:
  Made sure that noInline always exists (either using testRunner.neverInlineFunction
  or a no-op function if nothing else is available)
* js/regress/script-tests/chain-custom-getter.js: Added.
(foo):
* js/regress/script-tests/chain-getter-access.js: Added.
(o.get value):
(foo):
* js/regress/script-tests/proto-custom-getter.js: Added.
(foo):
* js/regress/script-tests/proto-getter-access.js: Added.
(o.get value):
(foo):
* js/regress/script-tests/simple-custom-getter.js: Added.
(cycles.30000.numberObject.Number.foo):
* js/regress/script-tests/simple-getter-access.js: Added.
(o.get value):
(foo):
* js/regress/simple-custom-getter-expected.txt: Added.
* js/regress/simple-custom-getter.html: Added.
* js/regress/simple-getter-access-expected.txt: Added.
* js/regress/simple-getter-access.html: Added.

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

8 years ago[iOS] Upstream WebCore/history changes
dbates@webkit.org [Mon, 16 Dec 2013 23:54:09 +0000 (23:54 +0000)]
[iOS] Upstream WebCore/history changes
https://bugs.webkit.org/show_bug.cgi?id=125769

Reviewed by Darin Adler.

* history/BackForwardClient.h:
* history/BackForwardList.cpp:
(WebCore::BackForwardList::current): Added; guard by PLATFORM(IOS). Also added FIXME comment.
(WebCore::BackForwardList::setCurrent): Added; guard by PLATFORM(IOS). Also added FIXME comment.
(WebCore::BackForwardList::clearAllPageCaches): Added; guarded by PLATFORM(IOS).
* history/BackForwardList.h:
* history/CachedFrame.cpp:
(WebCore::CachedFrameBase::restore): Added iOS-specific code.
(WebCore::CachedFrame::CachedFrame): Ditto.
* history/CachedPage.cpp:
(WebCore::CachedPage::restore): Ditto.
* history/HistoryItem.cpp:
(WebCore::HistoryItem::HistoryItem): Ditto.
* history/HistoryItem.h:
(WebCore::HistoryItem::scale): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::scaleIsInitial): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::setScale): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::viewportArguments): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::setViewportArguments): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::bookmarkID): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::setBookmarkID): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::sharedLinkUniqueIdentifier): Added; guarded by PLATFORM(IOS).
(WebCore::HistoryItem::setSharedLinkUniqueIdentifier): Added; guarded by PLATFORM(IOS).
* history/PageCache.cpp:
(WebCore::logCanCacheFrameDecision): Added iOS-specific code.
(WebCore::logCanCachePageDecision): Ditto.
(WebCore::PageCache::canCachePageContainingThisFrame): Ditto.
(WebCore::PageCache::canCache): Ditto.
(WebCore::PageCache::pruneToCapacityNow): Added.
* history/PageCache.h:

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

8 years ago[iOS] Upstream WebCore/svg changes
dbates@webkit.org [Mon, 16 Dec 2013 23:25:31 +0000 (23:25 +0000)]
[iOS] Upstream WebCore/svg changes
https://bugs.webkit.org/show_bug.cgi?id=125784

Reviewed by Darin Adler.

* svg/SVGAElement.cpp:
(WebCore::SVGAElement::willRespondToMouseClickEvents): Added.
* svg/SVGAElement.h:
* svg/SVGElement.cpp:
(WebCore::SVGElement::parseAttribute): Added attribute listeners for touch{cancel, end, move, start},
and gesture{change, end, start}.

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

8 years agoDatabaseProcess: Implement openTransaction()
beidson@apple.com [Mon, 16 Dec 2013 23:23:34 +0000 (23:23 +0000)]
DatabaseProcess: Implement openTransaction()
https://bugs.webkit.org/show_bug.cgi?id=125794

Reviewed by Darin Adler.

This patch hooks up all of the necessary infrastructure to open a uniquely
identified transaction in the DatabaseProcess backing store.

The transaction itself is not yet functional.

Add openTransaction messaging to the WebProcess side:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::isClosed):
(WebKit::WebIDBServerConnection::getOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::didGetOrEstablishIDBDatabaseMetadata):
(WebKit::WebIDBServerConnection::openTransaction):
(WebKit::WebIDBServerConnection::didOpenTransaction):
(WebKit::WebIDBServerConnection::deleteObjectStore):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:

Add openTransaction messaging to the DatabaseProcess side:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::openTransaction):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

Add a hashable identifier that represents a connection/transactionID pair:
* DatabaseProcess/IndexedDB/IDBTransactionIdentifier.h: Added.
(WebKit::IDBTransactionIdentifier::IDBTransactionIdentifier):
(WebKit::IDBTransactionIdentifier::isolatedCopy):
(WebKit::IDBTransactionIdentifier::isEmpty):
(WebKit::IDBTransactionIdentifier::hash):
(WebKit::IDBTransactionIdentifier::operator==):
(WebKit::IDBTransactionIdentifier::isHashTableDeletedValue):
(WebKit::IDBTransactionIdentifierHash::hash):
(WebKit::IDBTransactionIdentifierHash::equal):
(WebKit::IDBTransactionIdentifierHashTraits::isEmptyValue):

Allow that identifier to be cross-thread copied:
* Shared/WebCrossThreadCopier.cpp:
(WebCore::::copy):
* Shared/WebCrossThreadCopier.h:

Ask the backing store to open this uniquely identified transaction:
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::openTransaction):
(WebKit::UniqueIDBDatabase::openBackingStoreTransaction):
(WebKit::UniqueIDBDatabase::didOpenBackingStoreTransaction):
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

Add the backing store implementation for opening a transaction:
* DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::~UniqueIDBDatabaseBackingStoreSQLite):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

Object to represent the backing store transaction itself, to be used in future patches:
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:
(WebKit::SQLiteIDBTransaction::SQLiteIDBTransaction):
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h:
(WebKit::SQLiteIDBTransaction::create):
(WebKit::SQLiteIDBTransaction::identifier):

* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoChange slow path result to take a void* instead of a ExecState*.
mark.lam@apple.com [Mon, 16 Dec 2013 22:52:36 +0000 (22:52 +0000)]
Change slow path result to take a void* instead of a ExecState*.
https://bugs.webkit.org/show_bug.cgi?id=125802.

Reviewed by Filip Pizlo.

This is in preparation for C Stack OSR entry work that is coming soon.
In the OSR entry case, we'll be returning a topOfFrame pointer value
instead of the ExecState*.

* offlineasm/cloop.rb:
* runtime/CommonSlowPaths.h:
(JSC::encodeResult):
(JSC::decodeResult):

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

8 years agoFix crash when trying to load a null HTML string
andersca@apple.com [Mon, 16 Dec 2013 22:51:00 +0000 (22:51 +0000)]
Fix crash when trying to load a null HTML string
https://bugs.webkit.org/show_bug.cgi?id=125801

Reviewed by Dan Bernstein.

Source/WebKit2:

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadString):
Check that the string is not null before calling is8Bit(). Also, Use the latin1 encoding for
8-bit strings, since Latin 1 strings are not necessarily valid UTF-8 strings.

Tools:

* TestWebKitAPI/Tests/WebKit2/WillLoad.cpp:
(TestWebKitAPI::TEST_F):
Update test results.

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

8 years ago[Mac] Cache partitioning asserts when associated NSURLRequest is nil
jpfau@apple.com [Mon, 16 Dec 2013 22:41:56 +0000 (22:41 +0000)]
[Mac] Cache partitioning asserts when associated NSURLRequest is nil
https://bugs.webkit.org/show_bug.cgi?id=125716

Reviewed by Darin Adler.

* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdateResourceRequest):

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

8 years ago[Cocoa] Expose whether the page contains only secure content
mitz@apple.com [Mon, 16 Dec 2013 22:17:24 +0000 (22:17 +0000)]
[Cocoa] Expose whether the page contains only secure content
https://bugs.webkit.org/show_bug.cgi?id=125758

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController hasOnlySecureContent]): Added a getter that calls
PageLoadState::hasOnlySecureContent.
* UIProcess/API/Cocoa/WKBrowsingContextControllerPrivate.h: Declared new property.

* UIProcess/PageLoadState.cpp:
(WebKit::PageLoadState::commitChanges): Notify observers of hasOnlySecureContent() changes.
(WebKit::PageLoadState::reset): Reset hasInsecureContent in the uncommitted state.
(WebKit::PageLoadState::hasOnlySecureContent): Added. Returns true if there is no insecure
content and the URL is an HTTPS URL.
(WebKit::PageLoadState::didCommitLoad): Set hasInsecureContent to false in the uncommitted
state.
(WebKit::PageLoadState::didDisplayOrRunInsecureContent): Set hasInsecureContent to true in
the uncommitted state.
* UIProcess/PageLoadState.h:
(WebKit::PageLoadState::Data::Data): Added hasInsecureContent member.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didDisplayInsecureContentForFrame): Call
PageLoadState::didDisplayOrRunInsecureContent and commit the change before calling out to
the client.
(WebKit::WebPageProxy::didRunInsecureContentForFrame): Ditto.

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

8 years ago[WK2] The NetworkProcess tries to load SecItemShim.dylib on iOS
benjamin@webkit.org [Mon, 16 Dec 2013 22:07:18 +0000 (22:07 +0000)]
[WK2] The NetworkProcess tries to load SecItemShim.dylib on iOS
https://bugs.webkit.org/show_bug.cgi?id=125800

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-12-16
Reviewed by Dan Bernstein.

Give the NetworkService its own Info.plist configured without the Shim.

* Configurations/NetworkService.xcconfig:
* NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
* NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist: Renamed from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoDatabaseProcess: Fix a few bugs with opening an IDB connection
beidson@apple.com [Mon, 16 Dec 2013 21:26:59 +0000 (21:26 +0000)]
DatabaseProcess: Fix a few bugs with opening an IDB connection
https://bugs.webkit.org/show_bug.cgi?id=125798

Reviewed by Alexey Proskuryakov.

Source/WebCore:

* Modules/indexeddb/IDBDatabaseBackend.cpp:
(WebCore::IDBDatabaseBackend::processPendingCalls): As the comment says, we should only
  early return when there *are* pending delete calls. The logic here was backwards,
  preventing the backend from ever getting to processPendingOpenCalls().

Source/WebKit2:

Database metadata always needs a non-zero database identifier, unique at runtime.

* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::generateDatabaseId):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata):

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

8 years agoUserData should encode and decode API::Data objects
andersca@apple.com [Mon, 16 Dec 2013 20:47:00 +0000 (20:47 +0000)]
UserData should encode and decode API::Data objects
https://bugs.webkit.org/show_bug.cgi?id=125799

Reviewed by Beth Dakin.

* Shared/APIData.cpp: Added.
(API::Data::encode):
(API::Data::decode):
* Shared/APIData.h:
* Shared/UserData.cpp:
(WebKit::UserData::encode):
(WebKit::UserData::decode):
* WebKit2.xcodeproj/project.pbxproj:

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

8 years agoFixed Win64 build on VS2013.
commit-queue@webkit.org [Mon, 16 Dec 2013 20:44:01 +0000 (20:44 +0000)]
Fixed Win64 build on VS2013.
https://bugs.webkit.org/show_bug.cgi?id=125753

Patch by Alex Christensen <achristensen@webkit.org> on 2013-12-16
Reviewed by Brent Fulgham.

Source/JavaScriptCore:

* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCoreGenerated.vcxproj:
* JavaScriptCore.vcxproj/LLInt/LLIntAssembly/LLIntAssembly.vcxproj:
* JavaScriptCore.vcxproj/LLInt/LLIntDesiredOffsets/LLIntDesiredOffsets.vcxproj:
* JavaScriptCore.vcxproj/LLInt/LLIntOffsetsExtractor/LLIntOffsetsExtractor.vcxproj:
* JavaScriptCore.vcxproj/jsc/jsc.vcxproj:
* JavaScriptCore.vcxproj/testRegExp/testRegExp.vcxproj:
* JavaScriptCore.vcxproj/testapi/testapi.vcxproj:
Added correct PlatformToolset for 64-bit builds.

Source/ThirdParty/ANGLE:

* ANGLE.vcxproj/libGLESv2.vcxproj:
* ANGLE.vcxproj/preprocessor.vcxproj:
* ANGLE.vcxproj/translator_common.vcxproj:
* ANGLE.vcxproj/translator_glsl.vcxproj:
* ANGLE.vcxproj/translator_hlsl.vcxproj:
Added correct PlatformToolset for 64-bit builds.

Source/WebCore:

* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCoreTestSupport.vcxproj:
Added correct PlatformToolset for 64-bit builds.

Source/WebInspectorUI:

* WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:
Added 64-bit configuration.

Source/WebKit:

* WebKit.vcxproj/WebKit.sln:
Use new 64-bit WebInspectorUI configurations.
* WebKit.vcxproj/Interfaces/Interfaces.vcxproj:
* WebKit.vcxproj/WebKit/WebKit.vcxproj:
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGenerator.vcxproj:
* WebKit.vcxproj/WebKitGUID/WebKitGUID.vcxproj:
Added correct PlatformToolset for 64-bit builds.

Source/WTF:

* WTF.vcxproj/WTF.vcxproj:
Added correct PlatformToolset for 64-bit builds.

Tools:

* DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTree.vcxproj:
* DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTreeLauncher.vcxproj:
* DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiff.vcxproj:
* DumpRenderTree/DumpRenderTree.vcxproj/ImageDiff/ImageDiffLauncher.vcxproj:
* DumpRenderTree/DumpRenderTree.vcxproj/TestNetscapePlugin/TestNetscapePlugin.vcxproj:
* TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:
* WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj:
* WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
* win/record-memory/record-memory.vcxproj:
Added correct PlatformToolset for 64-bit builds.

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

8 years agoAdd a menu option to MiniBrowser to enable UI-side compositing
simon.fraser@apple.com [Mon, 16 Dec 2013 20:41:03 +0000 (20:41 +0000)]
Add a menu option to MiniBrowser to enable UI-side compositing
https://bugs.webkit.org/show_bug.cgi?id=125793

Reviewed by Anders Carlsson.

Make it possible to test UI-side compositing in MiniBrowser WK2 windows.

* MiniBrowser/mac/BrowserWindowController.h: Add optional protocol method
to toggle UI-side compositing.
* MiniBrowser/mac/MainMenu.xib: Add menu item to Debug menu.
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController validateMenuItem:]):
(-[WK2BrowserWindowController isUISideCompositingEnabled]):
(-[WK2BrowserWindowController toggleUISideCompositing:]):
(-[WK2BrowserWindowController observeValueForKeyPath:ofObject:change:context:]):
Adjust the window title to indicate whether the window is using UI-side compositing.

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

8 years agoRename WebData to API::Data
andersca@apple.com [Mon, 16 Dec 2013 20:21:24 +0000 (20:21 +0000)]
Rename WebData to API::Data
https://bugs.webkit.org/show_bug.cgi?id=125797

Reviewed by Beth Dakin.

* Shared/API/Cocoa/WKRemoteObjectCoder.mm:
(-[WKRemoteObjectEncoder encodeBytes:length:forKey:]):
(-[WKRemoteObjectDecoder decodeBytesForKey:returnedLength:]):
* Shared/API/c/WKData.cpp:
(WKDataGetTypeID):
(WKDataCreate):
* Shared/API/c/WKSharedAPICast.h:
* Shared/API/c/mac/WKWebArchive.cpp:
(WKWebArchiveCopyData):
* Shared/API/c/mac/WKWebArchiveResource.cpp:
(WKWebArchiveResourceCopyData):
* Shared/APIData.h: Renamed from Source/WebKit2/Shared/WebData.h.
(API::Data::createWithoutCopying):
(API::Data::create):
(API::Data::~Data):
(API::Data::bytes):
(API::Data::size):
(API::Data::dataReference):
(API::Data::Data):
(API::Data::fastFreeBytes):
* Shared/Cocoa/WKNSData.h:
(WebKit::wrapper):
* Shared/Cocoa/WKNSData.mm:
(-[WKNSData dealloc]):
* Shared/UserMessageCoders.h:
(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):
* Shared/WebArchive.cpp:
(WebKit::WebArchive::create):
(WebKit::WebArchive::WebArchive):
(WebKit::WebArchive::data):
* Shared/WebArchive.h:
* Shared/WebArchiveResource.cpp:
(WebKit::WebArchiveResource::create):
(WebKit::WebArchiveResource::WebArchiveResource):
(WebKit::WebArchiveResource::data):
* Shared/WebArchiveResource.h:
* UIProcess/API/C/WKPage.cpp:
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController loadData:MIMEType:textEncodingName:baseURL:userData:]):
* UIProcess/API/mac/WKPrintingView.mm:
(pageDidDrawToPDF):
* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::createData):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):
* UIProcess/Downloads/DownloadProxy.h:
(WebKit::DownloadProxy::resumeData):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadData):
(WebKit::WebPageProxy::loadWebArchiveData):
(WebKit::WebPageProxy::dataCallback):
(WebKit::WebPageProxy::saveDataToFileInDownloadsFolder):
(WebKit::WebPageProxy::savePDFToFileInDownloadsFolder):
* UIProcess/WebPageProxy.h:
* UIProcess/WebUIClient.cpp:
(WebKit::WebUIClient::saveDataToFileInDownloadsFolder):
* UIProcess/WebUIClient.h:
* UIProcess/cf/WebPageProxyCF.cpp:
(WebKit::WebPageProxy::sessionStateData):
(WebKit::WebPageProxy::restoreFromSessionStateData):
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleCreateWKDataFromUInt8Array):
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::createWebDataFromUint8Array):
* WebProcess/InjectedBundle/InjectedBundle.h:
* WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
(WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
(WebKit::InjectedBundlePageLoaderClient::willLoadDataRequest):
* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadDataImpl):

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

8 years agoPackage up some data about scrollability into a struct for use in the scrolling tree
simon.fraser@apple.com [Mon, 16 Dec 2013 19:57:27 +0000 (19:57 +0000)]
Package up some data about scrollability into a struct for use in the scrolling tree
https://bugs.webkit.org/show_bug.cgi?id=125792

Reviewed by Beth Dakin.

Both scrolling state nodes and scrolling nodes share a set of parameters
relating to scrollability and rubberbanding, so package them into a struct
for re-use. Send the struct wholesale to the scrolling thread.

* page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollableAreaParameters::ScrollableAreaParameters): New struct.
(WebCore::ScrollableAreaParameters::operator==):
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode): Reordering.
(WebCore::ScrollingStateScrollingNode::setScrollOrigin): Moved.
(WebCore::ScrollingStateScrollingNode::setScrollableAreaParameters): Set the parameters all at once.
(WebCore::ScrollingStateScrollingNode::setRequestedScrollPosition):
* page/scrolling/ScrollingStateScrollingNode.h: Getters access the struct. Reorder member variables.
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
* page/scrolling/ScrollingTreeScrollingNode.h:
(WebCore::ScrollingTreeScrollingNode::scrollOrigin):
(WebCore::ScrollingTreeScrollingNode::horizontalScrollElasticity):
(WebCore::ScrollingTreeScrollingNode::verticalScrollElasticity):
(WebCore::ScrollingTreeScrollingNode::hasEnabledHorizontalScrollbar):
(WebCore::ScrollingTreeScrollingNode::hasEnabledVerticalScrollbar):
(WebCore::ScrollingTreeScrollingNode::canHaveScrollbars):
* page/scrolling/mac/ScrollingCoordinatorMac.h:
* page/scrolling/mac/ScrollingCoordinatorMac.mm: Removed setScrollParametersForNode().
(WebCore::ScrollingCoordinatorMac::frameViewLayoutUpdated): Set the params in this
function. Reordering.

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

8 years agoCTTE: Convert more of SVG to use references
commit-queue@webkit.org [Mon, 16 Dec 2013 19:23:24 +0000 (19:23 +0000)]
CTTE: Convert more of SVG to use references
https://bugs.webkit.org/show_bug.cgi?id=125762

Patch by Sam Weinig <sam@webkit.org> on 2013-12-16
Reviewed by Darin Adler.

* rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::imageChanged):
* rendering/svg/RenderSVGResource.cpp:
(WebCore::removeFromCacheAndInvalidateDependencies):
(WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):
* rendering/svg/RenderSVGResource.h:
* rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::removeClientFromCache):
* rendering/svg/RenderSVGResourceClipper.h:
* rendering/svg/RenderSVGResourceContainer.cpp:
(WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):
(WebCore::RenderSVGResourceContainer::markAllClientLayersForInvalidation):
(WebCore::RenderSVGResourceContainer::markClientForInvalidation):
(WebCore::RenderSVGResourceContainer::removeClient):
* rendering/svg/RenderSVGResourceContainer.h:
* rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::removeClientFromCache):
(WebCore::RenderSVGResourceFilter::postApplyResource):
(WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):
* rendering/svg/RenderSVGResourceFilter.h:
* rendering/svg/RenderSVGResourceGradient.cpp:
(WebCore::RenderSVGResourceGradient::removeClientFromCache):
* rendering/svg/RenderSVGResourceGradient.h:
* rendering/svg/RenderSVGResourceMarker.cpp:
(WebCore::RenderSVGResourceMarker::removeClientFromCache):
* rendering/svg/RenderSVGResourceMarker.h:
* rendering/svg/RenderSVGResourceMasker.cpp:
(WebCore::RenderSVGResourceMasker::removeClientFromCache):
* rendering/svg/RenderSVGResourceMasker.h:
* rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::removeClientFromCache):
* rendering/svg/RenderSVGResourcePattern.h:
* rendering/svg/RenderSVGResourceSolidColor.h:
(WebCore::RenderSVGResourceSolidColor::removeClientFromCache):
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::invalidateResourcesOfChildren):
* rendering/svg/SVGResources.cpp:
(WebCore::SVGResources::removeClientFromCache):
* rendering/svg/SVGResources.h:
* rendering/svg/SVGResourcesCache.cpp:
(WebCore::SVGResourcesCache::clientLayoutChanged):
(WebCore::SVGResourcesCache::clientStyleChanged):
(WebCore::SVGResourcesCache::clientWasAddedToTree):
(WebCore::SVGResourcesCache::clientWillBeRemovedFromTree):
(WebCore::SVGResourcesCache::clientDestroyed):
* svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::applyResultsToTarget):
* svg/SVGCircleElement.cpp:
(WebCore::SVGCircleElement::svgAttributeChanged):
* svg/SVGEllipseElement.cpp:
(WebCore::SVGEllipseElement::svgAttributeChanged):
* svg/SVGFEImageElement.cpp:
(WebCore::SVGFEImageElement::notifyFinished):
* svg/SVGFELightElement.cpp:
(WebCore::SVGFELightElement::childrenChanged):
* svg/SVGFilterPrimitiveStandardAttributes.cpp:
(WebCore::invalidateFilterPrimitiveParent):
* svg/SVGFilterPrimitiveStandardAttributes.h:
(WebCore::SVGFilterPrimitiveStandardAttributes::invalidate):
(WebCore::SVGFilterPrimitiveStandardAttributes::primitiveAttributeChanged):
* svg/SVGForeignObjectElement.cpp:
(WebCore::SVGForeignObjectElement::svgAttributeChanged):
* svg/SVGGElement.cpp:
(WebCore::SVGGElement::svgAttributeChanged):
* svg/SVGGraphicsElement.cpp:
(WebCore::SVGGraphicsElement::svgAttributeChanged):
* svg/SVGImageElement.cpp:
(WebCore::SVGImageElement::svgAttributeChanged):
* svg/SVGLineElement.cpp:
(WebCore::SVGLineElement::svgAttributeChanged):
* svg/SVGPathElement.cpp:
(WebCore::SVGPathElement::svgAttributeChanged):
(WebCore::SVGPathElement::invalidateMPathDependencies):
(WebCore::SVGPathElement::pathSegListChanged):
* svg/SVGPolyElement.cpp:
(WebCore::SVGPolyElement::svgAttributeChanged):
* svg/SVGRectElement.cpp:
(WebCore::SVGRectElement::svgAttributeChanged):
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::svgAttributeChanged):
(WebCore::SVGSVGElement::setupInitialView):
* svg/SVGStopElement.cpp:
(WebCore::SVGStopElement::svgAttributeChanged):
* svg/SVGTRefElement.cpp:
(WebCore::SVGTRefElement::svgAttributeChanged):
* svg/SVGTextContentElement.cpp:
(WebCore::SVGTextContentElement::svgAttributeChanged):
* svg/SVGTextPathElement.cpp:
(WebCore::SVGTextPathElement::svgAttributeChanged):
* svg/SVGTextPositioningElement.cpp:
(WebCore::SVGTextPositioningElement::svgAttributeChanged):
* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::svgAttributeChanged):

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

8 years agoUnreviewed, rolling out r160645.
commit-queue@webkit.org [Mon, 16 Dec 2013 19:08:56 +0000 (19:08 +0000)]
Unreviewed, rolling out r160645.
http://trac.webkit.org/changeset/160645
https://bugs.webkit.org/show_bug.cgi?id=125787

Change breaks test-webkitpy (Requested by bfulgham on
#webkit).

* Scripts/prepare-ChangeLog:
(get_selector_line_ranges_for_css):

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

8 years ago[ASAN] WebKitLauncher: Include libasancrashreporter.dylib in DYLD_INSERT_LIBRARIES...
dfarler@apple.com [Mon, 16 Dec 2013 18:17:01 +0000 (18:17 +0000)]
[ASAN] WebKitLauncher: Include libasancrashreporter.dylib in DYLD_INSERT_LIBRARIES if it exists
https://bugs.webkit.org/show_bug.cgi?id=124610

Reviewed by Mark Rowe.

* WebKitLauncher/WebKitNightlyEnabler.m:
(enableWebKitNightlyBehaviour):
Add libasancrashreporter.dylib to DYLD_INSERT_LIBRARIES.
* WebKitLauncher/main.m:
(main):
Include both libasancrashreporter and the nightly enabler to
the list of libraries to insert.

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