[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
[chromium] delete unused testRunner methods
https://bugs.webkit.org/show_bug.cgi?id=102479

Reviewed by Adam Barth.

These methods aren't used by any layout test. Remove them to avoid bit rot

* DumpRenderTree/chromium/DRTTestRunner.cpp:
(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::reset):
* DumpRenderTree/chromium/DRTTestRunner.h:
(DRTTestRunner):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::shouldBeginEditing):
(WebViewHost::shouldEndEditing):
(WebViewHost::shouldInsertNode):
(WebViewHost::shouldInsertText):
(WebViewHost::shouldChangeSelectedRange):
(WebViewHost::shouldDeleteRange):
(WebViewHost::shouldApplyStyle):
(WebViewHost::startDragging):
(WebViewHost::enterFullScreenNow):
(WebViewHost::exitFullScreenNow):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134967 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: add missing 'explicit' and fix backing store release
https://bugs.webkit.org/show_bug.cgi?id=102450

Reviewed by Tony Chang.

A inconsequential regression was introduced in http://trac.webkit.org/changeset/134129
which resulted in objects sticking around a bit longer than
expected. This makes sure the LevelDBTransaction is released
at the moment of commit/rollback rather than when IDBTransactionBackendImpl
is destroyed.

No new tests, this is just internal state that will affect
some future refactoring.

* Modules/indexeddb/IDBBackingStore.h:
(Cursor):
(Transaction):
(WebCore::IDBBackingStore::Transaction::reset):
* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::commit):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Copy linux theme related files to default
https://bugs.webkit.org/show_bug.cgi?id=102403

Patch by Scott Violet <sky@chromium.org> on 2012-11-16
Reviewed by Tony Chang

Transitional patch that copies linux WebThemeEngine to default directory.

No new tests, refactoring only.

Source/Platform:

* Platform.gypi:
* chromium/public/default: Added.
* chromium/public/default/WebThemeEngine.h: Copied from Source/Platform/chromium/public/linux/WebThemeEngine.h.

Source/WebCore:

* WebCore.gyp/WebCore.gyp: Update compile rules when use_default_render_theme is set.
* WebCore.gypi: Adds new files.
* platform/chromium/PlatformSupport.h:
* platform/chromium/PlatformThemeChromiumDefault.cpp: Copied from Source/WebCore/platform/chromium/PlatformThemeChromiumLinux.cpp.
* platform/chromium/PlatformThemeChromiumDefault.h: Copied from Source/WebCore/platform/chromium/PlatformThemeChromiumLinux.h.
* platform/chromium/ScrollbarThemeChromiumDefault.cpp: Copied from Source/WebCore/platform/chromium/ScrollbarThemeChromiumLinux.cpp.
* platform/chromium/ScrollbarThemeChromiumDefault.h: Copied from Source/WebCore/platform/chromium/ScrollbarThemeChromiumLinux.h.
* rendering/RenderThemeChromiumDefault.cpp: Copied from Source/WebCore/rendering/RenderThemeChromiumLinux.cpp.
* rendering/RenderThemeChromiumDefault.h: Copied from Source/WebCore/rendering/RenderThemeChromiumLinux.h.

Source/WebKit/chromium:

* features.gypi:
* public/platform/default: Added.
* public/platform/default/WebThemeEngine.h: Copied from Source/WebKit/chromium/public/platform/linux/WebThemeEngine.h.
* src/PlatformSupport.cpp: Includes correct theme files when DEFAULT_RENDER_THEME is set.
(WebCore):
* src/WebViewImpl.cpp: Includes correct theme files when DEFAULT_RENDER_THEME is set.
(WebKit::WebViewImpl::setScrollbarColors): Calls to default theme as necessary.
(WebKit::WebViewImpl::setSelectionColors): Calls to default theme as necessary.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134969 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] MediaStream API: Add missing WebRTCPeerConnectionHandlerClient::didAddRemoteDataChannel
https://bugs.webkit.org/show_bug.cgi?id=102386

Reviewed by Adam Barth.

Source/Platform:

* chromium/public/WebRTCPeerConnectionHandlerClient.h:
(WebRTCPeerConnectionHandlerClient):

Source/WebCore:

Existing tests expanded to cover patch.

* platform/mediastream/RTCDataChannelDescriptor.cpp:
(WebCore::RTCDataChannelDescriptor::RTCDataChannelDescriptor):
(WebCore::RTCDataChannelDescriptor::readyStateChanged):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
(WebCore::RTCPeerConnectionHandlerChromium::didAddRemoteDataChannel):
(WebCore):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
(WebKit):
(RTCPeerConnectionHandlerChromium):

Tools:

Adding mock data channel functionality.

* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:
(MockWebRTCPeerConnectionHandler::openDataChannel):

LayoutTests:

* fast/mediastream/RTCPeerConnection-datachannel.html:
* fast/mediastream/RTCPeerConnection-datachannel-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134970 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix assertion bug of build fix r134961
https://bugs.webkit.org/show_bug.cgi?id=102533

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

Assertion condition should be '!d->m_currentWebChallenge.isNull()'

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


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134971 268f45cc-cd09-0410-ab3c-d52691b4dbfc
audiopannernode-basic.html should cover default value of attribute.
https://bugs.webkit.org/show_bug.cgi?id=102332

Patch by Li Yin <li.yin@intel.com> on 2012-11-16
Reviewed by Chris Rogers.

Spec: https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#PannerNode
Currently almost all attributes of PannerNode are specified default value clearly,
the test should cover them.

* webaudio/audiopannernode-basic-expected.txt:
* webaudio/audiopannernode-basic.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134972 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Remove cookie-related functions from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=99340

Reviewed by Adam Barth.

Move cookie-related functions out of PlatformSupport and implement
new PlatformCookieJar interface via NetworkContext.

Source/WebCore:

* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* loader/CookieJar.cpp:
* loader/chromium/CookieJarChromium.cpp: Removed.
* platform/chromium/PlatformSupport.h:
(WebCore):
(PlatformSupport):
* platform/network/NetworkingContext.h:
(WebKit):
(NetworkingContext):
* platform/network/chromium/CookieJarChromium.cpp: Copied from Source/WebCore/loader/chromium/CookieJarChromium.cpp.
(WebCore::setCookiesFromDOM):
(WebCore::cookiesForDOM):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
(WebCore::deleteCookie):
(WebCore::getHostnamesWithCookies):
(WebCore::deleteCookiesForHostname):
(WebCore::deleteAllCookies):

Source/WebKit/chromium:

* WebKit.gyp:
* src/FrameNetworkingContextImpl.cpp: Added.
(WebKit):
(WebKit::FrameNetworkingContextImpl::cookieJar):
* src/FrameNetworkingContextImpl.h:
(FrameNetworkingContextImpl):
* src/PlatformSupport.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@134973 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: [GTK] [WebKit2] Move GtkAuthenticationDialog to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=101843

Reviewed by Gustavo Noronha Silva.

Make GtkAuthenticationDialog more general, so that it can be subclassed in
WebKit2. We cannot use the WebCore authentication-related classes directly there.

No new tests. This patch does not change behavior.

* platform/gtk/GtkAuthenticationDialog.cpp:
(WebCore::GtkAuthenticationDialog::GtkAuthenticationDialog): Remove an unused include and reorder
some field initializers.
(WebCore::GtkAuthenticationDialog::authenticate): Now handle both the okay and cancel case here. This
makes it simpler to subclass.
(WebCore::GtkAuthenticationDialog::authenticationDialogResponseCallback): Handle fetching the username
and password here, so that it can be shared with subclasses.
* platform/gtk/GtkAuthenticationDialog.h: Make some methods virtual and protected so they can be
subclasses.

Source/WebKit2: Move authentication dialog to the UIProcess

[GTK] [WebKit2] Move GtkAuthenticationDialog to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=101843

Reviewed by Gustavo Noronha Silva.

Move the use of GtkAuthenticationDialog to the UIProcess along with the rest of
the GTK+ widgets. This will allow us to to embed the dialog into the WebView
in the future and to test authentication with the WebKit2 C API.

* GNUmakefile.list.am: Add the new class to the source list and remove the
GTK+-only WebFrameLoader implementation file.
* UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp: Added. A subclass of GtkAuthenticationDialog
which uses the WebKit2 classes to do the UIProcess-side authentication.
* UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h: Added.
* UIProcess/API/gtk/WebKitLoaderClient.cpp: Add a callback for didReceiveAuthenticationChallengeInFrame.
(didReceiveAuthenticationChallengeInFrame): Added.
(attachLoaderClientToView): Use the new callback.
* UIProcess/Authentication/AuthenticationChallengeProxy.h:
(WebKit::AuthenticationChallengeProxy::core): Add this getter for the WebCore class.
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): Share the implementation
again.
* WebProcess/WebCoreSupport/gtk/WebFrameLoaderClientGtk.cpp: Removed.

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