Source/WebCore: Update low memory handler to use new memory pressure notifications on new OS versions.
<rdar://problem/14027095>

Reviewed by Mark Rowe.

No change in functionality.

* WebCore.exp.in:
* platform/mac/MemoryPressureHandlerMac.mm:
(WebCore::MemoryPressureHandler::install): Call new API
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac: Update low memory handler to use new memory pressure notifications on new OS versions.
<rdar://problem/14027095>

Reviewed by Mark Rowe.

* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

Source/WebKit2: Update low memory handler to use new memory pressure notifications on new OS versions.
<rdar://problem/14027095>

Reviewed by Mark Rowe.

* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151040 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Take the normal NSView code path when drawing into an inclusive layer
https://bugs.webkit.org/show_bug.cgi?id=117094
<rdar://problem/13812355>

Reviewed by Sam Weinig.

For now, take the normal code path when drawing into an inclusive layer.

* platform/mac/WidgetMac.mm:
(WebCore::Widget::paint):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151042 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Need the ability to get the information for a plug-in with a particular process id that may
be running on a page
https://bugs.webkit.org/show_bug.cgi?id=117090

Reviewed by Anders Carlsson.

* UIProcess/API/C/mac/WKPagePrivateMac.cpp:
(callGetInformationForPlugInWithProcessIDBlockAndDispose):
Get the block from the context, invoke it with the result, and dispose of it.
(WKPageGetInformationForPlugInWithProcessID):
Ask the WebPageProxy and provide it with a dictionary callback that uses the
above function to invoke the passed in block.
* UIProcess/API/C/mac/WKPagePrivateMac.h:
Add WKPageGetInformationForPlugInWithProcessID and a typedef for the callback block.

* UIProcess/Plugins/PluginProcessManager.h:
Add ways to get the PluginProcessProxy associated with a process id or process token.
* UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
(WebKit::PluginProcessManager::plugInProcessWithProcessID):
Return the first PluginProcessProxy with the passed in process ID.
(WebKit::PluginProcessManager::plugInProcessWithToken):
Return the first PluginProcessProxy with the passed in process token.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::close):
Invalidate any outstanding requests for plug-in information.
* UIProcess/WebPageProxy.h:
Keep track of the callbacks for the requests for plug-in information.
* UIProcess/WebPageProxy.messages.in:
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::getInformationForPlugInWithProcessID):
If there are no known plug-ins with the provided process ID, invoke the callback with a null
dictionary of plug-in information.
Otherwise, keep track of the callback and send a message to the web process asking for the
information.
(WebKit::WebPageProxy::containsPlugInCallback):
If the page did not contain the plug-in, invoke the callback with a null dictionary of
plug-in information.
Invoke the callback with a dictionary containing the PlugInModuleInfo.

* WebProcess/Plugins/Netscape/NetscapePlugin.h:
Return 0 for the plugInProcessToken.
* WebProcess/Plugins/PDF/SimplePDFPlugin.h:
Ditto.
* WebProcess/Plugins/Plugin.h:
Add a pure virtual method for plugInProcessToken so it can be accessed from from the Plugin
on the PluginView.
* WebProcess/Plugins/PluginProxy.h:
Return the actual plug-in process token.

* WebProcess/Plugins/PluginView.h:
(WebKit::PluginView::plugIn):
Make it possible to get at the plug-in process token through the Plugin.

* WebProcess/WebPage/WebPageMac.mm:
(WebKit::WebPage::containsPluginViewsWithPluginProcessToken):
If there is an instance of the plug-in with that token, send a confirmation to the ui
process.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151043 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Modify AssembleBuildLogs project to WebKit solution in preparation for moving buildbots to VCExpress 2010.
Add it to the WebKit solution as well.

* win/AssembleBuildLogs/AssembleLogs.cmd:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151044 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Incorrect assertion in DFG::Graph::uncheckedActivationRegisterFor()
<rdar://problem/13989324>

Rubber stamped by Mark Hahnenberg.
        
This has a bogus assertion that checks that the passed CodeOrigin doesn't have
an inline call frame. This was well intentioned in the sense that it is true
that inlined call frames wouldn't have an activation register. But that doesn't
mean that people won't ask. Removing the assertion fixes a debug-only crash and
has no impact on production code. This change adds a comment to that effect.

* dfg/DFGGraph.h:
(JSC::DFG::Graph::uncheckedActivationRegisterFor):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151045 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Windows] Use WinLauncher to display LayoutTest results
https://bugs.webkit.org/show_bug.cgi?id=117085

Reviewed by Oliver Hunt.

* Scripts/webkitdirs.pm:
(runSafari): Use WinLauncher to display content
* WinLauncher/WinLauncher.cpp:
(dllLauncherEntryPoint): Check for URL argument.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151047 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        <rdar://problem/14036464> Sandbox violation when using Web SpeechSynthesis

        Reviewed by Anders Carlsson

        * WebProcess/com.apple.WebProcess.sb.in: Allow com.apple.speech.synthesis.console.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151049 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Need the ability to get the information for a plug-in with a particular process id that may
be running on a page
https://bugs.webkit.org/show_bug.cgi?id=117090

Rubber-stamped by Anders Carlsson.

Follow-up to r151043 incorprating some feedback I got from Darin after I had already
committed the patch.

* UIProcess/API/C/mac/WKPagePrivateMac.cpp:
(callGetPlugInInformationBlockAndDispose):
Renamed to be less wordy.
(WKPageGetPlugInInformation):
Ditto.
* UIProcess/API/C/mac/WKPagePrivateMac.h:
Ditto.

* UIProcess/Plugins/PluginProcessManager.h:
* UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
(WebKit::PluginProcessManager::findPlugInProcessByID):
Renamed to not use "Cocoa method style" in non-Cocoa functions.
(WebKit::PluginProcessManager::findPlugInProcessByToken):
Ditto.

* UIProcess/WebPageProxy.h:
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::getPlugInInformation):
Reduce ref count churn and fix a variable name.
Updated for the change to findPlugInProcessByID.
(WebKit::WebPageProxy::containsPlugInCallback):
Updated for the change to findPlugInProcessByToken.

* WebProcess/Plugins/PDF/SimplePDFPlugin.h:
Move the override of a virtual function to the private section.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151054 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        Sandbox violations when trying to access fonts in non-standard locations
        https://bugs.webkit.org/show_bug.cgi?id=117097
        <rdar://problem/9264746>

        Reviewed by Anders Carlsson.

        The issue was that lack of a main xib was resulting in font machinery being
        initialized too early, before we entered sandbox.

        * Resources/WebContentProcess.xib: Added.
        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
        * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
        * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151055 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make build-webkit output VCExpress 2010 build logs properly.
https://bugs.webkit.org/show_bug.cgi?id=117096

Reviewed by Brent Fulgham.

Make it so that output from VCExpress is always printed to console.
Get build log results from AssembleBuildLogs project output.
We don't need those old VCExpress scripts anymore either. 

* Scripts/build-webkit:
* Scripts/print-msvc-project-dependencies: Removed.
* Scripts/print-vse-failure-logs: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151056 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[wk2] All intrinsic content size changes should go through the 0-delay timer
https://bugs.webkit.org/show_bug.cgi?id=117058
<rdar://problem/13935042>

Reviewed by Anders Carlsson.

In r146913, I added a 0-delay timer so that we'd coalesce intrinsic
content size changes. However, didUpdateGeometry was still immediately
invalidating the intrinsic content size without coalescing.

Move that update to the WebProcess to share the timer.

* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::didUpdateGeometry):
* UIProcess/DrawingAreaProxy.messages.in:
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
(WebKit::TiledCoreAnimationDrawingAreaProxy::didUpdateGeometry):
Remove the newIntrinsicContentSize argument, and don't invalidate intrinsic
content size inside didUpdateGeometry.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
Start the intrinsic content size update timer when we finish updateGeometry.


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

* Scripts/build-webkit:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151059 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix bug in active page tracking that lead to plugins hanging during destruction
https://bugs.webkit.org/show_bug.cgi?id=117099

Reviewed by Anders Carlsson.

NPRuntimeObjectMap no longer keeps its own reference to the
throttler, and no longer reports activity during destruction.

* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::NPRuntimeObjectMap):
(WebKit::NPRuntimeObjectMap::evaluate):
* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::PluginView):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151060 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] Add a null checking condition to in hide() of EwkContextMenu
https://bugs.webkit.org/show_bug.cgi?id=117014

Reviewed by Christophe Dumez.

m_viewImpl is able to be null. So, we need to protect this function against such case.

* UIProcess/API/efl/ewk_context_menu.cpp:
(EwkContextMenu::hide):
(ewk_context_menu_hide):
* UIProcess/API/efl/ewk_context_menu_private.h:
(EwkContextMenu):


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

* Scripts/build-webkit:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151063 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Windows build fix. One more time!

* BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct):
(extractBuiltProduct):


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

* BuildSlaveSupport/built-product-archive:
(createZip):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151065 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Make windows test bots search in the correct directory for build output.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests.start):
* Scripts/webkitdirs.pm:
(determineConfigurationProductDir):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151066 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Curl] Unable to download files.
https://bugs.webkit.org/show_bug.cgi?id=116150

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-05-31
Reviewed by Brent Fulgham.

Implemented basic download functionality for Curl.

Source/WebCore:

* WebCore.vcproj/WebCore.vcproj: Added file.
* WebCore.vcxproj/WebCore.vcxproj: Added file.
* WebCore.vcxproj/WebCore.vcxproj.filters: Added file.
* platform/network/curl/CurlDownload.h: Added.
* platform/network/curl/CurlDownload.cpp: Added.

Source/WebKit/win:

* WebDownload.h:
* WebDownloadCurl.cpp:
(WebDownload::init):
(WebDownload::start):
(WebDownload::cancel):
(WebDownload::deletesFileUponFailure):
(WebDownload::setDeletesFileUponFailure):
(WebDownload::setDestination):
(WebDownload::useCredential):
(WebDownload::didReceiveResponse):
(WebDownload::didReceiveDataOfLength):
(WebDownload::didFinish):
(WebDownload::didFail):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151067 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, EFL gardening. Remove passed accessibility test from EFL WK1.

* platform/efl-wk1/TestExpectations:
* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

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