Short-circuit Element::hasEquivalentAttributes() if elements share attribute data.
<http://webkit.org/b/102498>

Reviewed by Antti Koivisto.

Add a fast path to hasEquivalentAttributes() that checks if both elements are using
the same ElementAttributeData.

* dom/Element.cpp:
(WebCore::Element::hasEquivalentAttributes):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134947 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Texmap][CSS Shaders] Make the CustomFilterValidatedProgram maintain the platform compiled program
https://bugs.webkit.org/show_bug.cgi?id=102414

Reviewed by Noam Rosenthal.

Source/WebCore:

Added WebCore classes needed for the WebKit2 implementation of Texture Mapper to keep a reference to the
platform compiled custom filter. It is just used to maintain the life-time of the objects. WebKit2 injects a
client in TextureMapperPlatformCompiledProgram and receives a callback when the custom filter program is not
used to render any layer on the page.

Note that CustomFilterValidatedProgram are reused across multiple elements of the same page. Also, the instances
are reused across frames, so animations should reuse the same pre-validated program. In this case, the mechanism is
extended and reused in the platform compositor.

No new tests, existing tests for CSS Custom Filters already cover this path.

* CMakeLists.txt:
* GNUmakefile.am:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.pri:
* platform/graphics/filters/CustomFilterValidatedProgram.cpp:
(WebCore):
* platform/graphics/filters/CustomFilterValidatedProgram.h:
(WebCore):
(CustomFilterValidatedProgram):
* platform/graphics/filters/texmap/CustomFilterValidatedProgramTextureMapper.cpp: Added.
(WebCore):
(WebCore::CustomFilterValidatedProgram::platformCompiledProgram): Platform implementation for creating and deleting the reference.
(WebCore::CustomFilterValidatedProgram::platformInit):
(WebCore::CustomFilterValidatedProgram::platformDestroy):
* platform/graphics/filters/texmap/TextureMapperPlatformCompiledProgram.h: Added.
(WebCore):
(TextureMapperPlatformCompiledProgramClient):
(WebCore::TextureMapperPlatformCompiledProgramClient::ref):
(WebCore::TextureMapperPlatformCompiledProgramClient::deref):
(TextureMapperPlatformCompiledProgram):
Stores a link to a TextureMapperPlatformCompiledProgramClient. It's main purpose is to call unref on the client when
the shader is not needed anymore. WebKit2 can use that to delete the corresponding shader from the compositor side.
(WebCore::TextureMapperPlatformCompiledProgram::create):
(WebCore::TextureMapperPlatformCompiledProgram::setClient): Used by WebKit2 to inject the platform client.
(WebCore::TextureMapperPlatformCompiledProgram::client):
(WebCore::TextureMapperPlatformCompiledProgram::TextureMapperPlatformCompiledProgram):

Source/WebKit2:

This is the first part of shader caching implementation for the Custom Filters in WK2 LayerTreeCoordinator.
In this patch it will just make the LayerTreeCoordinator knowledgeable about the life-time
of the custom filter programs. It can allocate IDs for the filters and it also gets a callback when the
filters are not needed anymore.

The UI process is still recreating the shader every time, but https://bugs.webkit.org/show_bug.cgi?id=101801
will fix that and try to reuse existing custom filters.

* CMakeLists.txt:
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(CoreIPC::::encode):
* Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.cpp: Added.
(WebKit):
(WebKit::WebCustomFilterProgramProxy::~WebCustomFilterProgramProxy):
* Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h: Added.
(WebKit):
(WebCustomFilterProgramProxyClient):
(WebCustomFilterProgramProxy):
(WebKit::WebCustomFilterProgramProxy::create):
(WebKit::WebCustomFilterProgramProxy::id):
(WebKit::WebCustomFilterProgramProxy::refFromValidatedProgram):
(WebKit::WebCustomFilterProgramProxy::derefFromValidatedProgram):
(WebKit::WebCustomFilterProgramProxy::setClient):
(WebKit::WebCustomFilterProgramProxy::client):
(WebKit::WebCustomFilterProgramProxy::WebCustomFilterProgramProxy):
* Target.pri:
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
(WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
(WebKit::LayerTreeCoordinator::syncLayerFilters):
(WebKit):
(WebKit::LayerTreeCoordinator::checkCustomFilterProgramProxies):
(WebKit::LayerTreeCoordinator::removeCustomFilterProgramProxy):
(WebKit::LayerTreeCoordinator::disconnectCustomFilterPrograms):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134948 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update DOMException name: InvalidAccessError
https://bugs.webkit.org/show_bug.cgi?id=102400

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 15 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

* dom/DOMCoreException.cpp:

LayoutTests:

Updated tests and expectations.

* editing/undomanager/undomanager-reenter-expected.txt:
* editing/undomanager/undomanager-reenter.html:
* editing/undomanager/undoscopehost-use-after-free-expected.txt:
* editing/undomanager/undoscopehost-use-after-free.html:
* fast/css/CSSPrimitiveValue-exceptions-expected.txt:
* fast/css/getFloatValueForUnit-expected.txt:
* fast/css/getFloatValueForUnit.html:
* fast/css/resources/CSSPrimitiveValue-exceptions.js:
* fast/dom/XMLSerializer-doctype2-expected.txt:
* fast/dom/XMLSerializer-doctype2.html:
* fast/dom/setPrimitiveValue-exceptions-expected.txt:
* fast/xmlhttprequest/xmlhttprequest-responsetype-before-open-sync-request-expected.txt:
* fast/xmlhttprequest/xmlhttprequest-responsetype-sync-request-expected.txt:
* fast/xmlhttprequest/xmlhttprequest-sync-disabled-expected.txt:
* http/tests/media/media-source/video-media-source-add-and-remove-buffers-expected.txt:
* http/tests/media/media-source/video-media-source-duration-changed-expected.txt:
* http/tests/websocket/tests/hybi/close-expected.txt:
* http/tests/websocket/tests/hybi/close.html:
* platform/chromium-mac/fast/dom/setPrimitiveValue-exceptions-expected.txt:
* platform/chromium-win/fast/dom/setPrimitiveValue-exceptions-expected.txt:
* webintents/web-intents-api-expected.txt:
* webintents/web-intents-api.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134949 268f45cc-cd09-0410-ab3c-d52691b4dbfc
add 7 bit strings capabilities to the v8 binding layer
https://bugs.webkit.org/show_bug.cgi?id=91850

Patch by Dan Carney <dcarney@google.com> on 2012-11-16
Reviewed by Adam Barth.

This change enables the v8 binding layer to make use of webkit's
8 bit string capabilities. Using 8 bit strings leads to certain
benchmark performance improvemnts as can be seen in
https://bug-91850-attachments.webkit.org/attachment.cgi?id=163334.

No new tests.  Test coverage already extensive.

* bindings/v8/V8PerIsolateData.cpp:
(WebCore::V8PerIsolateData::visitExternalStrings):
* bindings/v8/V8StringResource.cpp:
(StringTraits):
(WebCore::false):
(WebCore):
(WebCore::true):
(WebCore::v8StringToWebCoreString):
* bindings/v8/V8ValueCache.cpp:
(WebCore::makeExternalString):
(WebCore::WebCoreStringResourceBase::toWebCoreStringResourceBase):
(WebCore):
(WebCore::WebCoreStringResourceBase::visitStrings):
* bindings/v8/V8ValueCache.h:
(WebCoreStringResourceBase):
(WebCore::WebCoreStringResourceBase::WebCoreStringResourceBase):
(WebCore::WebCoreStringResourceBase::~WebCoreStringResourceBase):
(WebCore::WebCoreStringResourceBase::atomicString):
(WebCore::WebCoreStringResourceBase::memoryConsumption):
(WebCoreStringResource16):
(WebCore::WebCoreStringResource16::WebCoreStringResource16):
(WebCore):
(WebCoreStringResource8):
(WebCore::WebCoreStringResource8::WebCoreStringResource8):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134950 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2][GTK][EFL] Share WebKit2-GTK's WebProcess Accessibility implementation with other WebKit ports.
https://bugs.webkit.org/show_bug.cgi?id=101748

Patch by Krzysztof Czech <k.czech@samsung.com> on 2012-11-16
Reviewed by Martin Robinson.

Remove and rename files related to Accessibility from WebPage/gtk to WebPage/atk.

* GNUmakefile.am:
* GNUmakefile.list.am:
* WebProcess/WebPage/atk/WebPageAccessibilityObject.h: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.h.
(WebKit):
(_WebPageAccessibilityObject):
(_WebPageAccessibilityObjectClass):
* WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.cpp.
(accessibilityRootObjectWrapper):
(webPageAccessibilityObjectInitialize):
(webPageAccessibilityObjectGetIndexInParent):
(webPageAccessibilityObjectGetNChildren):
(webPageAccessibilityObjectRefChild):
(web_page_accessibility_object_init):
(web_page_accessibility_object_class_init):
(webPageAccessibilityObjectNew):
(webPageAccessibilityObjectRefresh):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Coordinated Graphics: support the "freeze animations" API
https://bugs.webkit.org/show_bug.cgi?id=100703

Reviewed by Noam Rosenthal.

Typo fix after previous patch.

No new tests, it's just a typo that only takes effect in the browser.

* platform/graphics/GraphicsLayerAnimation.cpp:
(WebCore::GraphicsLayerAnimation::GraphicsLayerAnimation):
Initialize members.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134952 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WK2] White flicker when scrolling big pages with dark background on slower hardware.
https://bugs.webkit.org/show_bug.cgi?id=102000

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-11-16
Reviewed by Kenneth Rohde Christiansen.

Add matching of view background color to the page background. This helps to reduce
visibility of flicker during scrolling/scaling/repainting where page tiles are not
ready. View background color matching is disabled by default and can be enabled
with new API function ewk_view_draws_page_background_set .
View background color can interfere with semi-transparent pages and should be
disabled by default.
Upstreaming changes by Youngtaeck Song(youngtaeck.song@samsung.com).

* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::EwkViewImpl):
(EwkViewImpl::displayTimerFired):
* UIProcess/API/efl/EwkViewImpl.h:
(EwkViewImpl::setDrawsBackground):
(EwkViewImpl):
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_draws_page_background_set):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
(WebKit::LayerTreeCoordinatorProxy::setBackgroundColor):
(WebKit):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
(LayerTreeCoordinatorProxy):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
* UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
(WebKit::LayerTreeRenderer::LayerTreeRenderer):
(WebKit::LayerTreeRenderer::paintToCurrentGLContext):
(WebKit::LayerTreeRenderer::paintToGraphicsContext):
(WebKit::LayerTreeRenderer::setBackgroundColor):
(WebKit):
* UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
(LayerTreeRenderer):
(WebKit::LayerTreeRenderer::setDrawsBackground):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
(WebKit::LayerTreeCoordinator::setBackgroundColor):
(WebKit):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):
* WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setBackgroundColor):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::mainFrameDidLayout):
* WebProcess/WebPage/WebPage.h:
(WebPage):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134953 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update DOMException name: TypeMismatchError
https://bugs.webkit.org/show_bug.cgi?id=102418

Reviewed by Kentaro Hara.

Source/WebCore:

Patch 17 of 25 to update DOMException name to match the spec and Firefox.

Updated existing tests.

* dom/DOMCoreException.cpp:
(WebCore):
* dom/ExceptionCode.h:

LayoutTests:

Updated tests and expectations.

* editing/selection/extend-expected.txt:
* fast/dom/Element/attr-param-typechecking-expected.txt:
* fast/dom/Geolocation/argument-types-expected.txt:
* fast/dom/Geolocation/not-enough-arguments-expected.txt:
* fast/dom/Geolocation/script-tests/argument-types.js:
(test):
* fast/dom/HTMLSelectElement/select-selectedIndex-expected.txt:
* fast/dom/HTMLSelectElement/select-selectedIndex-multiple-expected.txt:
* fast/js/select-options-add-expected.txt:
* fast/mediastream/RTCIceCandidate-expected.txt:
* fast/mediastream/RTCPeerConnection-expected.txt:
* fast/mediastream/RTCSessionDescription-expected.txt:
* platform/chromium/fast/dynamic/insertAdjacentElement-expected.txt:
* platform/efl/fast/dynamic/insertAdjacentElement-expected.txt:
* platform/gtk/fast/dynamic/insertAdjacentElement-expected.txt:
* platform/mac/fast/dynamic/insertAdjacentElement-expected.txt:
* platform/qt/fast/dynamic/insertAdjacentElement-expected.txt:
* security/crypto-random-values-types-expected.txt:
* svg/dom/SVGTransformList-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Move CredentialBackingStore usage from GtkAuthenticationDialog to ResourceHandleSoup
https://bugs.webkit.org/show_bug.cgi?id=101840

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-11-16
Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Make ResourceHandleSoup aware of per-session CredentialStorage and persistent CredentialStorage.
Persistent credential storage interaction is moved from GtkAuthenticationDialog, so that it can
be used whether or not GtkAuthenticationDialog is used or not. We try to properly handle redirects
in the manner that the CFNet backend does.

No new tests. There are tests for this behavior, but they cannot be activated until we finish
plumbing this through to the API layer. Once that patch lands, the tests will be turned on.

* platform/gtk/GtkAuthenticationDialog.cpp: No longer store credentials into the persistent
storage manually, instead rely on ResourceHandleSoup. Also, we no longer get proposed credentials
from the persistent storage here as well. They are pre-loaded by the ResourceHanndle.
* platform/gtk/GtkAuthenticationDialog.h: Remove callbacks and members associated with saving
credentials to the persistent credential store.
* platform/network/ResourceHandle.h:
(ResourceHandle): Add a method which is used to continue asynchronously after looking for
proposed credentials in the persistent credential store.
* platform/network/ResourceHandleInternal.h: Add a member which tracks persistent credentials to be added once we know
an authentication succeeded.
* platform/network/gtk/CredentialBackingStore.cpp:
(CredentialForChallengeAsyncReadyCallbackData): Added this data structure used for asynchronous access
of stored credentials.
(WebCore::credentialForChallengeAsyncReadyCallback): Ditto for this callback.
(WebCore::CredentialBackingStore::credentialForChallenge): Make this method asynchronous.
* platform/network/gtk/CredentialBackingStore.h:
(CredentialBackingStore): Update method signatures for for making credentialForChallenge asynchronous.
* platform/network/soup/AuthenticationChallenge.h:
(WebCore::AuthenticationChallenge::setProposedCredential): Added a setter so that ResourceHandleSoup
can set proposed credentials from the persistent credential store.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::gotHeadersCallback): For GTK+ save any pending credential in the persistent credential storage
if the authentication succeeded.
(WebCore::applyAuthenticationToRequest): Added this method which generically embeds stored credentials
in the request URI. This is the method that Soup uses to override any soup-stored session credential.
(WebCore::restartedCallback): Strip credentials for requests that span a security origin. Handle
authenticating requests from the session store.
(WebCore::createSoupRequestAndMessageForHandle): Make the local request reference mutable.
(WebCore::ResourceHandle::start): Remove some code which is now part of applyAuthenticationToRequest.
Call applyAuthenticationToRequest and clear the user and password members like the CFNet backend does.
(WebCore::getCredentialFromPersistentStoreCallback): Added this callback for getting persistently stored credentials.
(WebCore::ResourceHandle::continueDidReceiveAuthenticationChallenge): Split out didReceiveAuthenticationChallenge
into this asynchronous bit.
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge): For GTK+ continue handling this situation after
first looking in the persistent credential store.
(WebCore::ResourceHandle::receivedCredential): Store session credentials in the session storage, which is
at the moment a redundant version of the Soup session storage and also prepare any persistent credentials
for storage later (see gotHeadersCallback).

Source/WebKit/gtk:

Enable the CredentialStore by default for the WebKit1 GTK+ port. Before this value
didn't have an bearing on whether or not the persistent credential storage was used.
Now is does.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::shouldUseCredentialStorage): Enable credential storage by default.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134955 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Updated WebCore.gypi after r134939.

* WebCore.gypi: Renamed acessibility/gtk to accessibility/atk.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134956 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Use proper keycode value for space instead of hardcoded value.
https://bugs.webkit.org/show_bug.cgi?id=102518

Reviewed by Rob Buis.

Remove hard coded value for space.

Reviewed Internally by Gen Mak.

* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::setText):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134957 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Just yank the whole accessibility/atk dir out of WebCore.gypi.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134958 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Land a proper fix for r134939.

* WebCore.gyp/WebCore.gyp: Added exclusion for "atk".
* WebCore.gypi: Put the accessibility/atk directory back into WebCore.gypi.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134959 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        Private Browsing is a per-page setting that sets a global value
        https://bugs.webkit.org/show_bug.cgi?id=67870

        Reviewed by Sam Weinig.

        Make ResourceHandle{Mac,CFNet} use context to access storage session.

        * WebCore.exp.in: We track less session state in WebCore now, so we need fewer
        exports.

        * loader/FrameNetworkingContext.h: Added an OVERRIDE.

        * page/Settings.cpp: (WebCore::Settings::setPrivateBrowsingEnabled): WebCore
        no longer keeps track of a globally enabled private CFNetwork storage session.

        * platform/CookiesStrategy.h: Added defaultCookieStorage(). Some cookie jar methods
        don't have a NetworkingContext pointer, and have to use whatever a client expects
        them to do. Perhaps we should move those methods away from WebCore eventually.

        * platform/network/NetworkingContext.h: Added storageSession().

        * platform/network/ResourceHandle.h: Removed sttaic methods for dealing with global
        sessions.

        * platform/network/ResourceHandleInternal.h: Added m_storageSession. We need to
        remember it post-creation to do things in willSendRequest. Alternatively, we could
        keep a reference to NetworkingContext itself.

        * platform/network/cf/CookieJarCFNet.cpp:
        (WebCore::setCookiesFromDOM): currentCFHTTPCookieStorage now needs a context,
        there is no globally current one any more. Also, we don't really expect cookie
        stirage to be 0 when not using NSURLConnection.
        (WebCore::cookiesForDOM): Ditto.
        (WebCore::cookieRequestHeaderFieldValue): Ditto.
        (WebCore::cookiesEnabled): Ditto.
        (WebCore::getRawCookies): Ditto.
        (WebCore::deleteCookie): Ditto.
        (WebCore::getHostnamesWithCookies): Ditto.
        (WebCore::deleteCookiesForHostname): Ditto.
        (WebCore::deleteAllCookies): Ditto.
        * platform/network/cf/CookieStorageCFNet.cpp:
        (WebCore::currentCFHTTPCookieStorage): Use a context.
        (WebCore::defaultCFHTTPCookieStorage): Except for Windows-only override session,
        this is implemented in a strategy.
        (WebCore::overridenCookieStorage): Exposed the override for WebKit use on Windows.

        * platform/network/cf/CookieStorageCFNet.h: Ditto.

        * platform/network/cf/ResourceHandleCFNet.cpp:
        (WebCore::willSendRequest): Use storage session from the context, not global one.
        (WebCore::makeFinalRequest): Merged this into the only remaining caller. This
        function didn't really make any sense on its own.
        (WebCore::shouldRelaxThirdPartyCookiePolicy): Factored out of createCFURLConnection
        to match Mac.
        (WebCore::ResourceHandle::createCFURLConnection): While merging makeFinalRequest()
        in, removed some seemingly nonsensical code that was getting and immediately re-applying
        cookie storage accept policy.
        (WebCore::ResourceHandle::start): Store context->storageSession() for use in willSendRequest.
        (WebCore::ResourceHandle::willSendRequest): Apply the stored session, not global one.
        (WebCore::ResourceHandle::storageSession): An accessor for static methods that cannot
        access "d".
        (WebCore::ResourceHandle::loadResourceSynchronously): Store context->storageSession() for use in willSendRequest.
        (WebCore::ResourceHandle::willLoadFromCache): Don't call makeFinalRequest here.
        It didn't match Mac, and nothing in makeFinalRequest should have affected the result.

        * platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdatePlatformRequest):
        This function used to apply current storage session to every request for no apparent
        reason.

        * platform/network/mac/CookieJarMac.mm:
        (WebCore::cookiesForDOM): Changed to pass context to currentCFHTTPCookieStorage.
        (WebCore::cookieRequestHeaderFieldValue): Ditto.
        (WebCore::setCookiesFromDOM): Ditto.
        (WebCore::cookiesEnabled): Ditto.
        (WebCore::getRawCookies): Ditto.
        (WebCore::deleteCookie): Ditto.
        (WebCore::getHostnamesWithCookies): Ditto.
        (WebCore::deleteCookiesForHostname): Ditto.
        (WebCore::deleteAllCookies): Ditto.
        * platform/network/mac/ResourceHandleMac.mm:
        (WebCore::shouldRelaxThirdPartyCookiePolicy): There was no need to special case
        null currentCFHTTPCookieStorage, WKSI handles that internally. Added a context
        argument, so that the function can access current session.
        (WebCore::ResourceHandle::createNSURLConnection): Updated for other code changes.
        (WebCore::ResourceHandle::start): Store context->storageSession() for use in willSendRequest.
        (WebCore::ResourceHandle::willLoadFromCache): Style fix.
        (WebCore::ResourceHandle::loadResourceSynchronously): Store context->storageSession()
        for use in willSendRequest. 
        (WebCore::ResourceHandle::willSendRequest): Use stored session, not global one.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134960 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][GTK] Build fix after r134955
https://bugs.webkit.org/show_bug.cgi?id=102527

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-11-16
Reviewed by Martin Robinson.

Fix the EFL,GTK debug bulid fails after r134955.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandle::continueDidReceiveAuthenticationChallenge):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134961 268f45cc-cd09-0410-ab3c-d52691b4dbfc
StyleResolver: Optimize sharing candidate evaluation for elements with shared attribute data.
<http://webkit.org/b/102507>

Reviewed by Antti Koivisto.

When evaluating two elements as potential style sharing candidate, we have a whole bunch of code
comparing the various attributes that would prevent sharing.

If the two elements both share the same ElementAttributeData, we can skip all those checks
since they are guaranteed to have equal attributes.

Cuts the time spent in canShareStyleWithElement() by 25% on the HTML5 spec at <http://whatwg.org/c>.

* css/StyleResolver.cpp:
(WebCore::haveIdenticalStyleAffectingAttributes):
(WebCore::StyleResolver::canShareStyleWithElement):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134962 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium-Android] Stack overflow in MediaControlsChromiumAndroid.cpp
https://bugs.webkit.org/show_bug.cgi?id=102444

Reviewed by Adam Barth.

No new tests. Have been covered by many existing layout tests.

* html/shadow/MediaControlsChromiumAndroid.cpp:
(WebCore::MediaControls::create): Calls createControls instead of itself.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134963 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Removed incorrect baseline.

* platform/chromium-mac/canvas/philip/tests/2d.shadow.enable.blur-expected.txt: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134964 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Handle gesture events on scrollbars.
https://bugs.webkit.org/show_bug.cgi?id=101516

Patch by Robert Flack <flackr@chromium.org> on 2012-11-16
Reviewed by Antonio Gomes.

Adds a gesture event handler to scrollbars and sends gestures beginning
over a scrollbar to this handler to allow touch scrolling scrollbars.

Source/WebCore:

Test: fast/events/touch/gesture/gesture-scrollbar.html

* page/EventHandler.cpp:
(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::isScrollbarHandlingGestures):
(WebCore):
* page/EventHandler.h:
(EventHandler):
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::Scrollbar):
(WebCore):
(WebCore::Scrollbar::gestureEvent):
(WebCore::Scrollbar::mouseMoved):
(WebCore::Scrollbar::mouseUp):
(WebCore::Scrollbar::mouseDown):
* platform/Scrollbar.h:
(WebCore):
(Scrollbar):
* platform/ScrollbarTheme.h:
(WebCore::ScrollbarTheme::hitTest):
* platform/ScrollbarThemeComposite.cpp:
(WebCore::ScrollbarThemeComposite::hitTest):
* platform/ScrollbarThemeComposite.h:
(ScrollbarThemeComposite):
* platform/qt/ScrollbarThemeQStyle.cpp:
(WebCore::ScrollbarThemeQStyle::hitTest):
* platform/qt/ScrollbarThemeQStyle.h:
(ScrollbarThemeQStyle):

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleGestureEvent):

LayoutTests:

* fast/events/touch/gesture/gesture-scrollbar-expected.txt: Added.
* fast/events/touch/gesture/gesture-scrollbar.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134965 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] One last tweak to WebCore.gypi to make Win build not sad.

* WebCore.gypi: Removed one last mention of accessibility/gtk file.

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