Clean up which storage cookie jar functions use
https://bugs.webkit.org/show_bug.cgi?id=101395

Reviewed by Brady Eidson.

Source/WebCore:

* WebCore.exp.in:
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebCoreSystemInterface.mm:
Updated for two new WKSI functions.

* platform/CookieJar.h: Added explanatory comments.

* platform/mac/CookieJar.mm:
(WebCore::cookies): Removed fallback on NSHTTPCookieStorage, the WKSI function
already implements it.
(WebCore::cookieRequestHeaderFieldValue): Ditto.
(WebCore::setCookies): Ditto.
(WebCore::cookiesEnabled): Ditto.
(WebCore::getRawCookies): Ditto.
(WebCore::deleteCookie): Ditto.
(WebCore::getHostnamesWithCookies): This function used to look at NSHTTPCookieStorage
exclusively. While it makes sense to bypass private storage session, default storage
session (currently only used for testing on Mac) is never OK to bypass. Changed to
use a WKSI function that supports both.
(WebCore::deleteCookiesForHostname): Ditto.
(WebCore::deleteAllCookies): Ditto.

* platform/network/cf/CookieJarCFNet.cpp:
(WebCore::getHostnamesWithCookies):
(WebCore::deleteCookiesForHostname):
(WebCore::deleteAllCookies):
Updated to match Foundation, so now these functions bypass private session.

* platform/network/cf/CookieStorageCFNet.cpp:
(WebCore::currentCFHTTPCookieStorage): Updated a comment.
(WebCore::defaultCFHTTPCookieStorage):  Added a function that returns cookie storage
for non-private session (or null if that would be an NSHTTPCookieStorage).
(WebCore::startObservingCookieChanges): We do not want to observe private cookies
here, and we certainly don't want a mismatch between start/stop due to private
browsing mode changes.
(WebCore::stopObservingCookieChanges): Ditto.

* platform/network/cf/CookieStorageCFNet.h: Added defaultCFHTTPCookieStorage().

Source/WebKit/mac:

* WebCoreSupport/WebSystemInterface.mm: (InitWebCoreSystemInterface): Updated for
two new functions.

Source/WebKit2:

* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: (InitWebCoreSystemInterface):
Updated for two new functions.

WebKitLibraries:

* WebKitSystemInterface.h:
* libWebKitSystemInterfaceLion.a:
* libWebKitSystemInterfaceMountainLion.a:
Added WKHTTPCookies() and WKDeleteAllHTTPCookies(). Updated ifdefs for currently
supported OS versions.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133694 268f45cc-cd09-0410-ab3c-d52691b4dbfc
(r125185) http/tests/images/jpg-img-partial-load.html timeout on Lion
https://bugs.webkit.org/show_bug.cgi?id=93636

Reviewed by Simon Fraser.

Remove this test: fast/images/jpeg-partial-load.html is now used to test
partial jpeg image loads.

* http/tests/images/jpg-img-partial-load-expected.png: Removed.
* http/tests/images/jpg-img-partial-load-expected.txt: Removed.
* http/tests/images/jpg-img-partial-load.html: Removed.
* platform/mac/TestExpectations:
* platform/win/TestExpectations:
* platform/wincairo/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133695 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Don't write pixels for crash-hw-sw-switch test; if it doesn't crash, it
passes.  Unreviewed.

* css3/filters/crash-hw-sw-switch.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133696 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Exclusions] Changeset r133384 defeated the rectilinear polygon tests
https://bugs.webkit.org/show_bug.cgi?id=101405

Patch by Hans Muller <hmuller@adobe.com> on 2012-11-06
Reviewed by Dirk Schulze.

When the exclusions/shape-inside subpixel layout JS code was refactored,
(see https://bugs.webkit.org/show_bug.cgi?id=100704) these two tests were not
properly updated. They now include subpixel-utils.js, which simple-polygon.js depends on.

* fast/exclusions/shape-inside/shape-inside-rectilinear-polygon-001-expected.html:
* fast/exclusions/shape-inside/shape-inside-rectilinear-polygon-001.html:
* fast/exclusions/shape-inside/shape-inside-rectilinear-polygon-002-expected.html:
* fast/exclusions/shape-inside/shape-inside-rectilinear-polygon-002.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133697 268f45cc-cd09-0410-ab3c-d52691b4dbfc
fast/forms/select-set-length-with-mutation-remove is slow on chromium debug builds
https://bugs.webkit.org/show_bug.cgi?id=60092

[Chromium] Unreviewed gardening - so slow it's timing out at 60s rather often.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133698 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add application occlusion criterion to enable/disable process suppression on Mac
https://bugs.webkit.org/show_bug.cgi?id=100997

Patch by Kiran Muppala <cmuppala@apple.com> on 2012-11-06
Reviewed by Alexey Proskuryakov.

Provide support for enabling and disabling process suppression when application is completely occluded on Mac.

* NetworkProcess/NetworkProcess.messages.in: Added message to update application occlusion status.
* NetworkProcess/mac/NetworkProcessMainMac.mm:
(WebKit::NetworkProcessMain): Removed call to take process suppression assertion since ChildProcess
takes one on constrution.
* PluginProcess/PluginProcess.messages.in: Added message to update application occlusion status.
* PluginProcess/mac/PluginProcessMainMac.mm:
(WebKit::PluginProcessMain): Removed call to take process suppression assertion since ChildProcess
takes one on construction.
* Shared/ChildProcess.cpp:
(WebKit::ChildProcess::ChildProcess): Take process suppression assertion on construction.
* Shared/ChildProcess.h:
(WebKit::ChildProcess::applicationIsOccluded):
* Shared/mac/ChildProcessMac.mm: Added.
(WebKit::ChildProcess::setApplicationIsOccluded): Release process suppression assertion if application
becomes occluded or take a new assertion if application becomes visible.
(WebKit::ChildProcess::disableProcessSuppression):
(WebKit::ChildProcess::enableProcessSuppression):
Helper methods to take and release process suppression assertion.
* SharedWorkerProcess/SharedWorkerProcess.messages.in: Added message to update application occlusion status.
* SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm:
(WebKit::SharedWorkerProcessMain): Removed call to take process suppression assertion since ChildProcess
takes one on construction.
* UIProcess/Network/NetworkProcessManager.h:
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::didFinishLaunching): Update application occlusion status post launch.
* UIProcess/Network/NetworkProcessProxy.h:
(WebKit::NetworkProcessProxy::isValid):
* UIProcess/Network/mac/NetworkProcessManagerMac.mm: Added.
(WebKit::NetworkProcessManager::setApplicationIsOccluded):
* UIProcess/Network/mac/NetworkProcessProxyMac.mm:
(WebKit::NetworkProcessProxy::setApplicationIsOccluded):
* UIProcess/Plugins/PluginProcessManager.h:
* UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::didFinishLaunching): Update application occlusion status post launch.
* UIProcess/Plugins/PluginProcessProxy.h:
(WebKit::PluginProcessProxy::isValid):
* UIProcess/Plugins/mac/PluginProcessManagerMac.mm: Added.
(WebKit::PluginProcessManager::setApplicationIsOccluded):
* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::setApplicationIsOccluded):
* UIProcess/SharedWorkers/SharedWorkerProcessManager.h:
* UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:
(WebKit::SharedWorkerProcessProxy::didFinishLaunching): Update application occlusion status post launch.
* UIProcess/SharedWorkers/SharedWorkerProcessProxy.h:
(WebKit::SharedWorkerProcessProxy::isValid):
* UIProcess/SharedWorkers/mac/SharedWorkerProcessManagerMac.mm: Added.
(WebKit::SharedWorkerProcessManager::setApplicationIsOccluded):
* UIProcess/SharedWorkers/mac/SharedWorkerProcessProxyMac.mm: Added.
(WebKit::SharedWorkerProcessProxy::setApplicationIsOccluded):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::create): Added call to initialize process suppression support.
* UIProcess/WebContext.h:
(WebKit::WebContext::applicationIsOccluded):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didFinishLaunching): Update application occlusion status post launch.
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::applicationBecameVisible):
(WebKit::WebContext::applicationBecameOccluded):
Notification handlers for informing non UI WebKit2 processes of changes to application occlusion state.
(WebKit::WebContext::registerOcclusionNotificationHandlers):
(WebKit::WebContext::initializeProcessSuppressionSupport):
Helper method to register occlusion notification handlers if process suppression support is enabled.
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebProcess.messages.in: Added message to update application occlusion status.
* WebProcess/mac/WebProcessInitialization.mm:
(WebKit::InitializeWebProcess): Removed call to take process supression assertion since ChildProcess
takes one on construction.

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