Convert some of WebCore/dom over to range-for loops
https://bugs.webkit.org/show_bug.cgi?id=126250

Reviewed by Andreas Kling.

* dom/ContainerNode.cpp:
* dom/Document.cpp:
* dom/MutationObserver.cpp:
* dom/MutationObserverInterestGroup.cpp:
* dom/MutationObserverRegistration.cpp:
* dom/Node.cpp:
* dom/NodeRareData.h:
* dom/ScriptExecutionContext.cpp:
* dom/WebKitNamedFlow.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161096 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r161096.
http://trac.webkit.org/changeset/161096
https://bugs.webkit.org/show_bug.cgi?id=126256

Made lots of tests crash (Requested by ap on #webkit).

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::insertBefore):
(WebCore::ContainerNode::replaceChild):
(WebCore::willRemoveChildren):
(WebCore::ContainerNode::appendChild):
* dom/Document.cpp:
(WebCore::Document::visibilityStateChanged):
(WebCore::Document::moveNodeIteratorsToNewDocument):
(WebCore::Document::updateRangesAfterChildrenChanged):
(WebCore::Document::nodeChildrenWillBeRemoved):
(WebCore::Document::nodeWillBeRemoved):
(WebCore::Document::textInserted):
(WebCore::Document::textRemoved):
(WebCore::Document::textNodesMerged):
(WebCore::Document::textNodeSplit):
(WebCore::Document::documentWillSuspendForPageCache):
(WebCore::Document::documentDidResumeFromPageCache):
(WebCore::Document::mediaVolumeDidChange):
(WebCore::Document::privateBrowsingStateDidChange):
(WebCore::Document::captionPreferencesChanged):
(WebCore::Document::validateAutoSizingNodes):
(WebCore::Document::resetAutoSizingNodes):
(WebCore::Document::webkitExitFullscreen):
* dom/MutationObserver.cpp:
(WebCore::MutationObserver::disconnect):
(WebCore::MutationObserver::getObservedNodes):
(WebCore::MutationObserver::deliver):
* dom/MutationObserverInterestGroup.cpp:
(WebCore::MutationObserverInterestGroup::isOldValueRequested):
(WebCore::MutationObserverInterestGroup::enqueueMutationRecord):
* dom/MutationObserverRegistration.cpp:
(WebCore::MutationObserverRegistration::clearTransientRegistrations):
(WebCore::MutationObserverRegistration::addRegistrationNodesToSet):
* dom/Node.cpp:
(WebCore::Node::dumpStatistics):
(WebCore::Document::invalidateNodeListAndCollectionCaches):
(WebCore::NodeListsNodeData::invalidateCaches):
(WebCore::Node::didMoveToNewDocument):
(WebCore::collectMatchingObserversForMutation):
(WebCore::Node::notifyMutationObserversNodeWillDetach):
* dom/NodeRareData.h:
(WebCore::NodeListsNodeData::adoptDocument):
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::~ScriptExecutionContext):
(WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
(WebCore::ScriptExecutionContext::stopActiveDOMObjects):
(WebCore::ScriptExecutionContext::closeMessagePorts):
(WebCore::ScriptExecutionContext::adjustMinimumTimerInterval):
(WebCore::ScriptExecutionContext::didChangeTimerAlignmentInterval):
* dom/WebKitNamedFlow.cpp:
(WebCore::WebKitNamedFlow::getRegionsByContent):
(WebCore::WebKitNamedFlow::getRegions):
(WebCore::WebKitNamedFlow::getContent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161097 268f45cc-cd09-0410-ab3c-d52691b4dbfc
EWS status JSON should include Access-Control-Allow-Origin
https://bugs.webkit.org/show_bug.cgi?id=126246

Reviewed by Ryosuke Niwa.

* QueueStatusServer/app.yaml: Update version.
* QueueStatusServer/handlers/queuestatusjson.py:
(QueueStatusJSON.get): Add the header field.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161098 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Display EWS status on bot watcher's dashboard
https://bugs.webkit.org/show_bug.cgi?id=126224

Reviewed by Timothy Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js: Added.
Moved platform definitions out of Buildbot.js, as they are also needed for EWS.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/QueueView.js: Added.
(QueueView):
(QueueView.prototype.updateSoon):
(QueueView.prototype.update):
(QueueView.prototype._updateHiddenState):
Moved auto-update and hide logic to a base class, as it equally applies to EWS.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWS.js: Added.
This is a peer to Buildbot.js and WebKitBuildbot.js.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueue.js: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueueView.js: Added.
Quite simple for now, only keeping track of queue size.
        
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Initialization.js:
Initialize EWS.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
Create EWS views.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
Updated for Buildbot.Platform rename, it's now Dashboard.Platform.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotBuilderQueueView.css: Removed.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotQueueView.css: Removed.
These were empty, no reason to waste the time loading them.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotTesterQueueView.css: Removed.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/QueueView.css: Copied from Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotQueueView.css.
Renamed, as these styles apply to all queues, not just buildbot ones (and they have to, as columns should look alike).

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:
    - Changed page title, as it no longer displays just buildbot status.
    - Updated subresource lists for the new, renamed and removed files.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] MiniBrowser scale up/down infinitely after r161087
https://bugs.webkit.org/show_bug.cgi?id=126254

Reviewed by Gyuyoung Kim.

After r161087, contentScaleFactor of WebView is synced with pageScaleFactor
of WebPage. It means that WKViewGetContentScaleFactor might not be same
with PageViewportController's current scale value until received PageScaleFactorDidChange.

* UIProcess/efl/PageViewportControllerClientEfl.cpp:
(WebKit::PageViewportControllerClientEfl::setViewportPosition):
Use controller's current scale just to update and sync the position.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161100 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Unnecessary code is built into WebKitPluginProcess
https://bugs.webkit.org/show_bug.cgi?id=126259

Reviewed by Carlos Garcia Campos.

* GNUmakefile.list.am: Stop building ChildProcessProxy and ProcessLauncher classes into WebKitPluginProcess.
That code is not required in the plugin process, as one would expect.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161101 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed Windows build fix for r160946.

Add another file to the Windows InspectorAllInOne.cpp.

* inspector/InspectorAllInOne.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161102 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Display EWS status on bot watcher's dashboard
https://bugs.webkit.org/show_bug.cgi?id=126224

Silence spurious exceptions, no visible behavior change.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueue.js:
(EWSQueue.prototype.update): Removed code that was only needed for an experimental
feature that wasn't landed.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161103 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge PageVisibilityState & ViewState::IsVisible in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=126214

Reviewed by Alexey Proskuryakov.

WebKit2 redundantly tracks the visibility of the view through two mechanisms - the visibility
state, and the view state. Remove visibility state from the WebKit2 layer. The visibility
state also tracks the prerender state - so split this out and handle it separately (a change
we should make in WebCore, too).

Source/WebCore: 

WebCore - changes the API tests exposed a bug, a view should only ever come out of the
prerender state when it becomes visible - redundant notifications that the view is still
hidden should be ignored.

* page/Page.cpp:
(WebCore::Page::setVisibilityState):
    - ignore visibility state change to hidden, if the current state is prerender.

Source/WebKit2: 

Removing the redundancy also removes the ability from the API to set a fake visibility state
(IsVisible tracks the actual visibility of the view). Through private API
(WKPageSetVisibilityState) a client could previously request the view be reported as hidden or
visible, but this didn't really work - the override was not enforced and the API may reset the
state at an arbitrary point. The mechanism is only used by testing code, which instead should
actually update the view visibility (this tests more of the actual visibility mechanisms used
by the browser). The one aspect of the API relied on by existing clients is the ability to
initialize a hidden view as prerender - continue to support this specific functionality via
WKPageSetVisibilityState, to maintain backwards compatibility.

- WebKit2 - remove internal state that tracks page visibility separately from the view state
visibility. For backwards compatibility continue to support the WKPageSetVisibilityState API,
but only to initialize the state to prerender.

* UIProcess/API/C/WKPage.cpp:
(WKPageSetVisibilityState):
    - only support initializing the visibility state to prerender.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
    - remove m_visibilityState
(WebKit::WebPageProxy::initializeWebPage):
    - no need to send initial visibility state (this is sent as a part of the creation parameters).
(WebKit::WebPageProxy::viewStateDidChange):
    - no need to send visibility state change (this is sent as a part of view state).
(WebKit::WebPageProxy::setVisibilityStatePrerender):
    - setVisibilityState -> setVisibilityStatePrerender.
* UIProcess/WebPageProxy.h:
    - remove m_visibilityState, setVisibilityState -> setVisibilityStatePrerender.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
    - added call to updateVisibilityState.
(WebKit::WebPage::setViewIsVisible):
    - added call to updateVisibilityState.
(WebKit::WebPage::updateVisibilityState):
    - previously setVisibilityState, updates the page visibility state according to the view state.
(WebKit::WebPage::setVisibilityStatePrerender):
    - set visibility state to prerender.
* WebProcess/WebPage/WebPage.h:
    - remove m_visibilityState, setVisibilityState -> setVisibilityStatePrerender.
* WebProcess/WebPage/WebPage.messages.in:
    - SetVisibilityState -> SetVisibilityStatePrerender.

Tools: 

Tools - WebKit2 no longer (poorly) supports a fake visibility state, so to test the page
visibility mechanisms we should actually be changing characteristics of the view that will
be detected by WebKit2 as a visibility change. This affects three things:
    1) On setVisibilityState WebKitTestRunner must actually change visibility of the view.
    2) The 'PageVisibilityState' test in the API tests is useless (as evidenced by the fact
       that page visibility has been broken in WebKit2 for a couple of months, and didn't
       catch this fact). Removed in favour of:
    3) 'PageVisibilityStateWithWindowChanges' - this is the good stuff. This actually tests
       the visibility mechanism. Beef this test up by adding coverage for: a) the prerender
    state, b) document.hidden, and c) too many state change notifications (it already looks
    for too few).

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/PageVisibilityState.cpp: Removed.
    - Removed PageVisibilityState - this test was ineffective, API no longer supports this
      test, and behaviour is covered by PageVisibilityStateWithWindowChanges.
* TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
(-[PageVisibilityStateDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]):
(runJavaScriptAlert):
    - Add checking for too many calls to the alert.
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::setPrerender):
    - Added methods to set visibility to prerender.
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
    - Added checking of 'document.hidden'.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setVisibilityState):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/efl/TestControllerEfl.cpp:
(WTR::TestController::setHidden):
* WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::TestController::setHidden):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::TestController::setHidden):
    - Add setHidden method; call this from setVisibilityState.

LayoutTests: 

LayoutTests - remove test for notification on visibility state change to preerender. This test
was covering something nonsensical, and not supported by the spec - the page should never see
a visibility change to prerender, this should only be an initial state. WebKit2 API now only
allows the client to change the state to prerender without sending a notification, and there
is no sense in continuing to support the current test case, since the behaviour is neither
allowed by API nor available in web content.

The prerender state is now properly covered by API tests.

* fast/events/page-visibility-transition-test-expected.txt:
* fast/events/page-visibility-transition-test.html:
    - remove test for notification on visibility state change to preerender.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161105 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] Upstream WebCore/page changes
https://bugs.webkit.org/show_bug.cgi?id=126180

Reviewed by Darin Adler.

Source/WebCore:

* WebCore.xcodeproj/project.pbxproj:
* dom/EventNames.h:
(WebCore::EventNames::isGestureEventType): Added.
* page/AlternativeTextClient.h: Do not define WTF_USE_DICTATION_ALTERNATIVES when building for iOS.
* page/Chrome.cpp:
(WebCore::Chrome::Chrome):
(WebCore::Chrome::dispatchViewportPropertiesDidChange): Added; guarded by PLATFORM(IOS).
(WebCore::Chrome::setCursor): Make this an empty function when building for iOS.
(WebCore::Chrome::setCursorHiddenUntilMouseMoves): Ditto.
(WebCore::Chrome::didReceiveDocType): Added; iOS-specific.
* page/Chrome.h:
(WebCore::Chrome::setDispatchViewportDataDidChangeSuppressed): Added; guarded by PLATFORM(IOS).
* page/ChromeClient.h:
(WebCore::ChromeClient::didFlushCompositingLayers): Added; guarded by PLATFORM(IOS).
(WebCore::ChromeClient::fetchCustomFixedPositionLayoutRect): Added; guarded by PLATFORM(IOS).
(WebCore::ChromeClient::updateViewportConstrainedLayers): Added; guarded by PLATFORM(IOS).
* page/DOMTimer.cpp:
(WebCore::DOMTimer::install): Added iOS-specific code.
(WebCore::DOMTimer::fired): Ditto.
* page/DOMWindow.cpp:
(WebCore::DOMWindow::DOMWindow): Ditto.
(WebCore::DOMWindow::innerHeight): Ditto.
(WebCore::DOMWindow::innerWidth): Ditto.
(WebCore::DOMWindow::scrollX): Ditto.
(WebCore::DOMWindow::scrollY): Ditto.
(WebCore::DOMWindow::scrollBy): Ditto.
(WebCore::DOMWindow::scrollTo): Ditto.
(WebCore::DOMWindow::clearTimeout): Ditto.
(WebCore::DOMWindow::addEventListener): Ditto.
(WebCore::DOMWindow::incrementScrollEventListenersCount): Added; guarded by PLATFORM(IOS).
(WebCore::DOMWindow::decrementScrollEventListenersCount): Added; guarded by PLATFORM(IOS).
(WebCore::DOMWindow::resetAllGeolocationPermission): Added; Also added FIXME comment.
(WebCore::DOMWindow::removeEventListener): Added iOS-specific code.
(WebCore::DOMWindow::dispatchEvent): Modified to prevent dispatching duplicate pageshow and pagehide
events per <http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#event-pageshow>.
(WebCore::DOMWindow::removeAllEventListeners): Added iOS-specific code.
* page/DOMWindow.h:
* page/DOMWindow.idl: Added IOS_GESTURE_EVENTS-guarded attributes: ongesture{change, end, start}. Also
added IOS_TOUCH_EVENTS-guarded attributes: {Touch, TouchList}Constructor.
* page/EditorClient.h:
* page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler): Added iOS-specific code.
(WebCore::EventHandler::clear): Ditto.
(WebCore::EventHandler::startPanScrolling): Make this an empty function when building for iOS.
(WebCore::EventHandler::handleMousePressEvent): Modified to invalidate a click when the clicked node is
null. Also, opt out of code for updating the scrollbars as UIKit manages scrollbars on iOS.
(WebCore::EventHandler::handleMouseMoveEvent): Opt of code for updating the scrollbars and cursor when building on iOS.
(WebCore::hitTestResultInFrame): Made this a file-local static function since it's only used in EventHandler.cpp.
(WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled): Added iOS-specific code.
* page/EventHandler.h:
* page/FocusController.h:
* page/Frame.cpp:
(WebCore::Frame::Frame): Added iOS-specific code.
(WebCore::Frame::scrollOverflowLayer): Added; iOS-specific.
(WebCore::Frame::overflowAutoScrollTimerFired): Added; iOS-specific.
(WebCore::Frame::startOverflowAutoScroll): Added; iOS-specific.
(WebCore::Frame::checkOverflowScroll): Added; iOS-specific.
(WebCore::Frame::willDetachPage): Added iOS-specific code.
(WebCore::Frame::createView): Ditto.
(WebCore::Frame::setSelectionChangeCallbacksDisabled): Added; iOS-specific.
(WebCore::Frame::selectionChangeCallbacksDisabled): Added; iOS-specific.
* page/Frame.h:
(WebCore::Frame::timersPaused): Added; guarded by PLATFORM(IOS).
* page/FrameView.cpp:
(WebCore::FrameView::FrameView): Added iOS-specific code.
(WebCore::FrameView::clear): Ditto.
(WebCore::FrameView::flushCompositingStateForThisFrame): Ditto.
(WebCore::FrameView::graphicsLayerForPlatformWidget): Added.
(WebCore::FrameView::scheduleLayerFlushAllowingThrottling): Added.
(WebCore::FrameView::layout): Added iOS-specific code.
(WebCore::countRenderedCharactersInRenderObjectWithThreshold): Added; helper function used by FrameView::renderedCharactersExceed().
Also added FIXME comment.
(WebCore::FrameView::renderedCharactersExceed): Added.
(WebCore::FrameView::visibleContentsResized): Added iOS-specific code.
(WebCore::FrameView::adjustTiledBackingCoverage): Ditto.
(WebCore::FrameView::performPostLayoutTasks): Ditto.
(WebCore::FrameView::sendResizeEventIfNeeded): Ditto.
(WebCore::FrameView::paintContents): Added iOS-specific code. Also added FIXME comments.
(WebCore::FrameView::setUseCustomFixedPositionLayoutRect): Added; iOS-specific.
(WebCore::FrameView::setCustomFixedPositionLayoutRect): Added; iOS-specific.
(WebCore::FrameView::updateFixedPositionLayoutRect): Added; iOS-specific.
* page/FrameView.h:
* page/Navigator.cpp:
(WebCore::Navigator::standalone): Added; iOS-specific.
* page/Navigator.h:
* page/Navigator.idl: Added WTF_PLATFORM_IOS-guarded attribute: standalone. Also added FIXME comment.
* page/NavigatorBase.cpp:
(WebCore::NavigatorBase::platform): Added iOS-specific code.
* page/Page.h:
(WebCore::Page::hasCustomHTMLTokenizerTimeDelay): Added; guarded by PLATFORM(IOS). Also added FIXME comment
to remove this method.
(WebCore::Page::customHTMLTokenizerTimeDelay): Added; guarded by PLATFORM(IOS). Also added FIXME comment
to remove this method.
* page/PageGroup.cpp:
(WebCore::PageGroup::removeVisitedLink): Added.
* page/PageGroup.h:
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setScriptEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setStandalone): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setAudioSessionCategoryOverride): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::audioSessionCategoryOverride): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setNetworkDataUsageTrackingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::networkDataUsageTrackingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::sharedNetworkInterfaceNameGlobal): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setNetworkInterfaceName): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::networkInterfaceName): Added; guarded by PLATFORM(IOS).
* page/Settings.h:
(WebCore::Settings::setMaxParseDuration): Added; guarded by PLATFORM(IOS). Also added FIXME comment.
(WebCore::Settings::maxParseDuration): Added; guarded by PLATFORM(IOS). Also added FIXME comment.
(WebCore::Settings::standalone): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setTelephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::telephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setMediaDataLoadsAutomatically): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::mediaDataLoadsAutomatically): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setShouldTransformsAffectOverflow): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::shouldTransformsAffectOverflow): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setShouldDispatchJavaScriptWindowOnErrorEvents): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::shouldDispatchJavaScriptWindowOnErrorEvents): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setAlwaysUseBaselineOfPrimaryFont): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::alwaysUseBaselineOfPrimaryFont): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setAlwaysUseAcceleratedOverflowScroll): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::alwaysUseAcceleratedOverflowScroll): Added; guarded by PLATFORM(IOS).
* page/Settings.in: Added IOS_AIRPLAY-guarded setting: mediaPlaybackAllowsAirPlay.
* page/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Added iOS-specific code and FIXME comment.
* page/ios/EventHandlerIOS.mm: Added.
* page/ios/FrameIOS.mm: Added.
* page/mac/ChromeMac.mm:
* page/mac/PageMac.cpp:
(WebCore::Page::addSchedulePair): Opt out of code when building for iOS.
(WebCore::Page::removeSchedulePair): Ditto.
* page/mac/SettingsMac.mm:
(WebCore::Settings::shouldEnableScreenFontSubstitutionByDefault): Added iOS-specific code.
* page/mac/WebCoreFrameView.h:

Source/WebKit/ios:

* WebCoreSupport/WebChromeClientIOS.mm: Substitute ENABLE(IOS_TOUCH_EVENTS) for ENABLE(TOUCH_EVENTS).

Source/WebKit2:

* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm: Added.
* WebProcess/WebPage/WebPage.cpp: Include header <WebCore/HitTestResult.h>.

Source/WTF:

* wtf/FeatureDefines.h: Define ENABLE_IOS_TOUCH_EVENTS to be enabled by default
when building iOS with ENABLE(TOUCH_EVENTS).

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161106 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Attempt to fix the Windows build after <http://trac.webkit.org/changeset/161106>
(https://bugs.webkit.org/show_bug.cgi?id=126180)

Add files platform/audio/AudioSession.{cpp, h} and platform/audio/AudioSessionListener.h
to the Visual Studio project. Note, the contents of these files are guarded by USE(AUDIO_SESSION),
which is only enabled on Mac and iOS at the time of writing.

I thought to try this approach to fix the build so as to avoid adding an extraneous
USE(AUDIO_SESSION)-guard around the #include "AudioSession.h" in Settings.cpp since
the contents of the file AudioSession.h is guarded by USE(AUDIO_SESSION).

* WebCore.vcxproj/WebCore.vcxproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161107 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Another attempt to fix the Windows build after <http://trac.webkit.org/changeset/161106>
(https://bugs.webkit.org/show_bug.cgi?id=126180)

* WebCore.vcxproj/WebCore.vcxproj.filters: Add files platform/audio/{AudioSession, AudioSessionListener}.h
* WebCore.vcxproj/WebCoreCommon.props: Add directory WebCore/platform/audio to the list of
include directories.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161108 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Downloads are broken with the network process enabled
https://bugs.webkit.org/show_bug.cgi?id=126131

Reviewed by Martin Robinson.

The problem is that the network process crashes when trying to
convert the handle to a download, because at that point the
download has finished and the handle is NULL. This happens because
we are not implementing ResourceHandle::continueDidReceiveResponse().

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::nextMultipartResponsePartCallback): Call
continueAfterDidReceiveResponse() when not using async callbacks.
(WebCore::sendRequestCallback): Ditto.
(WebCore::continueAfterDidReceiveResponse): Helper function that
continues the load after didReceiveResponse.
(WebCore::ResourceHandle::continueDidReceiveResponse): Call
continueAfterDidReceiveResponse().

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161109 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Fix release builds with NetworkProcess enabled
https://bugs.webkit.org/show_bug.cgi?id=126247

Patch by Giovanni Campagna <gcampagna@src.gnome.org> on 2013-12-28
Reviewed by Carlos Garcia Campos.

* Source/autotools/symbols.filter:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161110 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Update GObject DOM symbols file after r160733.

* bindings/gobject/webkitdom.symbols:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161111 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2][SOUP] Fix handling of cookies when network process is enabled
https://bugs.webkit.org/show_bug.cgi?id=125576

Patch by Kwang Yul Seo <skyul@company100.net> on 2013-12-28
Reviewed by Carlos Garcia Campos.

Initialize the network process with cookie accept policy, persistent
storage path and type. Use
WebContext::sendToNetworkingProcessRelaunchingIfNecessary instead of
WebContext::sendToAllProcessesRelaunchingThemIfNecessary to send
SetCookiePersistentStorage message.

* NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::platformInitializeNetworkProcess):
* Shared/Network/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):
* Shared/Network/NetworkProcessCreationParameters.h:
* UIProcess/soup/WebContextSoup.cpp:
(WebKit::WebContext::platformInitializeNetworkProcess):
* UIProcess/soup/WebCookieManagerProxySoup.cpp:
(WebKit::WebCookieManagerProxy::setCookiePersistentStorage):
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):

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