Begin stubbing out a StorageNamespaceProvider class
https://bugs.webkit.org/show_bug.cgi?id=139203

Reviewed by Tim Horton.

* CMakeLists.txt:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
Add new files.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::localStorage):
If the page has a storage namespace provider, get the local storage from it.

* page/Page.cpp:
(WebCore::Page::Page):
Move the storage namespace provider from the configuration.

(WebCore::Page::setStorageNamespaceProvider):
Add a setter. This will be used by setGroupName.

* page/Page.h:
(WebCore::Page::storageNamespaceProvider):
Add a getter.

* page/PageConfiguration.cpp:
* page/PageConfiguration.h:
Add a storage namespace provider member.

* storage/StorageNamespaceProvider.cpp:
(WebCore::StorageNamespaceProvider::StorageNamespaceProvider):
(WebCore::StorageNamespaceProvider::~StorageNamespaceProvider):
(WebCore::StorageNamespaceProvider::addPage):
(WebCore::StorageNamespaceProvider::removePage):
(WebCore::StorageNamespaceProvider::localStorageNamespace):
(WebCore::StorageNamespaceProvider::transientLocalStorageNamespace):
* storage/StorageNamespaceProvider.h:
Stub out a storage namespace provider class.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@176696 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove a SnowLeopard-era quirk for QuickLook
https://bugs.webkit.org/show_bug.cgi?id=139208
<rdar://problem/19121822>

Reviewed by Alexey Proskuryakov.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* loader/EmptyClients.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::subresourceCachePolicy):
* loader/FrameLoaderClient.h:
* platform/mac/QuickLookMac.h: Removed.
* platform/mac/QuickLookMac.mm: Removed.

* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:

* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformInitializeWebProcess):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::needsQuickLookResourceCachingQuirks): Deleted.
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess):
* WebProcess/WebProcess.h:
(WebKit::WebProcess::needsQuickLookResourceCachingQuirks): Deleted.
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@176697 268f45cc-cd09-0410-ab3c-d52691b4dbfc
http/tests/appcache/main-resource-fallback-for-network-error-crash.html can break subsequent tests
https://bugs.webkit.org/show_bug.cgi?id=139149

Reviewed by Anders Carlsson.

Source/WebCore:

* WebCore.exp.in: Added ApplicationCache::deleteAllCaches.

* loader/appcache/ApplicationCache.h:
* loader/appcache/ApplicationCache.cpp:
(WebCore::ApplicationCache::deleteAllCaches): Added.

* loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::ApplicationCacheStorage::getManifestURLs): Removed logging. It is OK to
have this function called when there is no database file.

* loader/appcache/ApplicationCacheStorage.h: Renamed manifestURLs to getManifestURLs,
because WebKit style.

Source/WebKit/mac:

This changes API behavior. I think that it's OK, because existing behavior made no sense.
We used to delete caches from disk, but they were still active in memory. Now we also
obsolete them in memory, so documents that use a cache still work, but new ones don't
pick one up.

* WebCoreSupport/WebApplicationCache.mm:
(+[WebApplicationCache setMaximumSize:]): Changing maximum on-disk size doesn't
need to delete in-momry caches too. Keep existing behavior.
(+[WebApplicationCache deleteAllApplicationCaches]): Use the new WebCore function
that properly deletes caches.

Source/WebKit2:

This changes API behavior. I think that it's OK, because existing behavior made no sense.
We used to delete caches from disk, but they were still active in memory. Now we also
obsolete them in memory, so documents that use a cache still work, but new ones don't
pick one up.

* WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
(WebKit::WebApplicationCacheManager::deleteAllEntries): Use the new WebCore function
that properly deletes caches.

Tools:

WebKit2 already cleared application caches between runs (although it wasn't entirely
effective without WebCore changes in this patch).

* DumpRenderTree/mac/DumpRenderTree.mm: (runTest): Clear applicaiton caches between runs.

* DumpRenderTree/win/DumpRenderTree.cpp: (runTest): Ditto (unfortunately, this
function is not implemented on Windows, see below).

* DumpRenderTree/win/TestRunnerWin.cpp: (TestRunner::clearAllApplicationCaches):
Ameded a FIXME.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@176698 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: CSS Minification breaks some selectors with colons
https://bugs.webkit.org/show_bug.cgi?id=139206

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-12-02
Reviewed by Simon Fraser.

Do not remove spaces preceeding colons, as they may change the semantics
of selectors with colon prefixes (e.g. "a :not(b)").

At the same time, we can strip spaces around "!" characters, for example
a space is not required before "!important" priority.

* Scripts/cssmin.py:
(cssminify):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@176699 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Change CallFrame::globalThisValue() to not use CallFrame::scope()
https://bugs.webkit.org/show_bug.cgi?id=139202

Reviewed by Mark Lam.

Changed to use the globalThis() on the globalObject associated with the
callee.  Moved the inline definition to JSGlobalObject.h instead of
including JSGlobalObject.h in JSScope.h.  Also moved it as JSScope
objects are no longer involved in getting the value.

* runtime/JSGlobalObject.h:
(JSC::ExecState::globalThisValue):
* runtime/JSScope.h:
(JSC::ExecState::globalThisValue): Deleted.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@176700 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<rdar://problem/18441138> [iOS] Text selection in WKWebView with WKSelectionGranularityCharacter only works in the most recent WKWebView to load
https://bugs.webkit.org/show_bug.cgi?id=139211

Reviewed by Anders Carlsson.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView becomeFirstResponder]): Override to activate the text selection for when
becoming first resopnder.
(-[WKContentView resignFirstResponder]): Deactiavte the text selection when resigning first
responder. This ensures that if another WKWebView becomes first responder, and it uses
block selection, we don’t end up with two active selection views.
(-[WKContentView useSelectionAssistantWithMode:]): Only activate the text selection if this
is the first responder. This ensures that loading content into a non-first-responder
WKWebView doesn‘t deactivate the text selection in the current first responder.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@176701 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix the build.

* UIProcess/mac/WebContextMac.mm:
* WebCoreSupport/WebFrameLoaderClient.mm:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@176703 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove empty directories

Reviewed by Anders Carlsson.

* Source: Removed.
* Source/WebKit: Removed.
* Source/WebKit/mac: Removed.
* Source/WebKit/mac/Resources: Removed.



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