Changeset 162835 in webkit


Ignore:
Timestamp:
Jan 27, 2014 5:14:49 AM (10 years ago)
Author:
Carlos Garcia Campos
Message:

[GTK] Implement custom URI schemes with CustomProtocols
https://bugs.webkit.org/show_bug.cgi?id=127091

Reviewed by Gustavo Noronha Silva.

Source/WebKit2:

The old classes are no longer built for GTK+ and should be removed once
other ports using soup backend switch to custom protocols implementation.

  • GNUmakefile.am: Remove include path.
  • GNUmakefile.list.am: Remove files from compilation.
  • PlatformGTK.cmake: Ditto.
  • UIProcess/API/gtk/WebKitPrivate.h:
  • UIProcess/API/gtk/WebKitRequestManagerClient.cpp:

(startLoading):
(stopLoading):
(attachRequestManagerClientToContext):

  • UIProcess/API/gtk/WebKitURISchemeRequest.cpp:

(webkitURISchemeRequestCreate):
(webkit_uri_scheme_request_get_web_view):
(webkitURISchemeRequestReadCallback):
(webkit_uri_scheme_request_finish):
(webkit_uri_scheme_request_finish_error):

  • UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
  • UIProcess/API/gtk/WebKitWebContext.cpp:

(createDefaultWebContext):
(webkit_web_context_register_uri_scheme):
(webkitWebContextGetRequestManager):
(webkitWebContextStartLoadingCustomProtocol):
(webkitWebContextStopLoadingCustomProtocol):
(webkitWebContextDidFinishLoadingCustomProtocol):

  • UIProcess/API/gtk/WebKitWebContextPrivate.h:
  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::platformInitializeWebProcess):

  • WebKit2Prefix.h: Enable CustomProtocols unconditionally for the

GTK+ port.

Tools:

Temporarily disable the WebKitWebView check until we figure out
how to implement it with CustomProtocols.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
Location:
trunk
Files:
14 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r162830 r162835  
     12014-01-27  Carlos Garcia Campos  <cgarcia@igalia.com>
     2
     3        [GTK] Implement custom URI schemes with CustomProtocols
     4        https://bugs.webkit.org/show_bug.cgi?id=127091
     5
     6        Reviewed by Gustavo Noronha Silva.
     7
     8        The old classes are no longer built for GTK+ and should be removed once
     9        other ports using soup backend switch to custom protocols implementation.
     10
     11        * GNUmakefile.am: Remove include path.
     12        * GNUmakefile.list.am: Remove files from compilation.
     13        * PlatformGTK.cmake: Ditto.
     14        * UIProcess/API/gtk/WebKitPrivate.h:
     15        * UIProcess/API/gtk/WebKitRequestManagerClient.cpp:
     16        (startLoading):
     17        (stopLoading):
     18        (attachRequestManagerClientToContext):
     19        * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
     20        (webkitURISchemeRequestCreate):
     21        (webkit_uri_scheme_request_get_web_view):
     22        (webkitURISchemeRequestReadCallback):
     23        (webkit_uri_scheme_request_finish):
     24        (webkit_uri_scheme_request_finish_error):
     25        * UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
     26        * UIProcess/API/gtk/WebKitWebContext.cpp:
     27        (createDefaultWebContext):
     28        (webkit_web_context_register_uri_scheme):
     29        (webkitWebContextGetRequestManager):
     30        (webkitWebContextStartLoadingCustomProtocol):
     31        (webkitWebContextStopLoadingCustomProtocol):
     32        (webkitWebContextDidFinishLoadingCustomProtocol):
     33        * UIProcess/API/gtk/WebKitWebContextPrivate.h:
     34        * UIProcess/gtk/WebContextGtk.cpp:
     35        (WebKit::WebContext::platformInitializeWebProcess):
     36        * WebKit2Prefix.h: Enable CustomProtocols unconditionally for the
     37        GTK+ port.
     38
    1392014-01-27  Carlos Garcia Campos  <cgarcia@igalia.com>
    240
  • trunk/Source/WebKit2/GNUmakefile.am

    r162449 r162835  
    429429        $(WebKit2)/UIProcess/ResourceCache \
    430430        $(WebKit2)/UIProcess/Storage \
    431         $(WebKit2)/UIProcess/soup \
    432431        $(WebKit2)/WebProcess \
    433432        $(WebKit2)/WebProcess/ApplicationCache \
  • trunk/Source/WebKit2/GNUmakefile.list.am

    r162746 r162835  
    161161        DerivedSources/WebKit2/WebResourceLoaderMessageReceiver.cpp \
    162162        DerivedSources/WebKit2/WebResourceLoaderMessages.h \
    163         DerivedSources/WebKit2/WebSoupRequestManagerMessageReceiver.cpp \
    164         DerivedSources/WebKit2/WebSoupRequestManagerMessages.h \
    165         DerivedSources/WebKit2/WebSoupRequestManagerProxyMessageReceiver.cpp \
    166         DerivedSources/WebKit2/WebSoupRequestManagerProxyMessages.h \
    167163        DerivedSources/WebKit2/WebVibrationProxyMessageReceiver.cpp \
    168164        DerivedSources/WebKit2/WebVibrationProxyMessages.h
     
    522518        Source/WebKit2/UIProcess/API/C/gtk/WKViewPrivate.h \
    523519        Source/WebKit2/UIProcess/API/C/soup/WKAPICastSoup.h \
    524         Source/WebKit2/UIProcess/API/C/soup/WKContextSoup.cpp \
    525         Source/WebKit2/UIProcess/API/C/soup/WKContextSoup.h \
    526         Source/WebKit2/UIProcess/API/C/soup/WKSoupRequestManager.cpp \
    527         Source/WebKit2/UIProcess/API/C/soup/WKSoupRequestManager.h \
    528520        Source/WebKit2/UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.cpp \
    529521        Source/WebKit2/UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.h \
     
    887879        Source/WebKit2/UIProcess/soup/WebContextSoup.cpp \
    888880        Source/WebKit2/UIProcess/soup/WebCookieManagerProxySoup.cpp \
    889         Source/WebKit2/UIProcess/soup/WebSoupRequestManagerClient.cpp \
    890         Source/WebKit2/UIProcess/soup/WebSoupRequestManagerClient.h \
    891         Source/WebKit2/UIProcess/soup/WebSoupRequestManagerProxy.cpp \
    892         Source/WebKit2/UIProcess/soup/WebSoupRequestManagerProxy.h \
    893881        Source/WebKit2/UIProcess/TextChecker.h \
    894882        Source/WebKit2/UIProcess/TextCheckerCompletion.h \
     
    11851173        Source/WebKit2/WebProcess/Storage/StorageNamespaceImpl.cpp \
    11861174        Source/WebKit2/WebProcess/Storage/StorageNamespaceImpl.h \
    1187         Source/WebKit2/WebProcess/soup/WebSoupRequestManager.cpp \
    1188         Source/WebKit2/WebProcess/soup/WebSoupRequestManager.h \
    11891175        Source/WebKit2/WebProcess/soup/WebProcessSoup.cpp \
    11901176        Source/WebKit2/WebProcess/soup/WebKitSoupRequestGeneric.cpp \
  • trunk/Source/WebKit2/PlatformGTK.cmake

    r162536 r162835  
    8383    UIProcess/API/C/gtk/WKView.cpp
    8484
    85     UIProcess/API/C/soup/WKContextSoup.cpp
    8685    UIProcess/API/C/soup/WKCookieManagerSoup.cpp
    87     UIProcess/API/C/soup/WKSoupRequestManager.cpp
    8886    UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.cpp
    8987
     
    270268    UIProcess/soup/WebContextSoup.cpp
    271269    UIProcess/soup/WebCookieManagerProxySoup.cpp
    272     UIProcess/soup/WebSoupRequestManagerClient.cpp
    273     UIProcess/soup/WebSoupRequestManagerProxy.cpp
    274270
    275271    WebProcess/Cookies/soup/WebCookieManagerSoup.cpp
     
    312308    WebProcess/soup/WebKitSoupRequestInputStream.cpp
    313309    WebProcess/soup/WebProcessSoup.cpp
    314     WebProcess/soup/WebSoupRequestManager.cpp
    315310)
    316311
  • trunk/Source/WebKit2/UIProcess/API/gtk/WebKitPrivate.h

    r148526 r162835  
    2828
    2929#include <WebKit2/WKAPICast.h>
    30 #include <WebKit2/WKContextSoup.h>
    3130#include <WebKit2/WKDownload.h>
    3231#include <WebKit2/WKFindOptions.h>
     
    4039#include <WebKit2/WKRetainPtr.h>
    4140#include <WebKit2/WKSerializedScriptValue.h>
    42 #include <WebKit2/WKSoupRequestManager.h>
     41#include <WebKit2/WKSoupCustomProtocolRequestManager.h>
    4342#include <WebKit2/WKString.h>
    4443#include <WebKit2/WKTextChecker.h>
  • trunk/Source/WebKit2/UIProcess/API/gtk/WebKitRequestManagerClient.cpp

    r160128 r162835  
    2121#include "WebKitRequestManagerClient.h"
    2222
    23 #include "WebKitURISchemeRequestPrivate.h"
    2423#include "WebKitWebContextPrivate.h"
    25 #include <wtf/gobject/GRefPtr.h>
    2624
    2725using namespace WebKit;
    2826
    29 static void didReceiveURIRequest(WKSoupRequestManagerRef soupRequestManagerRef, WKURLRef urlRef, WKPageRef initiatingPageRef, uint64_t requestID, const void* clientInfo)
     27static void startLoading(WKSoupCustomProtocolRequestManagerRef soupRequestManagerRef, uint64_t customProtocolID, WKURLRequestRef requestRef, const void* clientInfo)
    3028{
    31     WebKitWebContext* webContext = WEBKIT_WEB_CONTEXT(clientInfo);
    32     GRefPtr<WebKitURISchemeRequest> request = adoptGRef(webkitURISchemeRequestCreate(webContext, toImpl(soupRequestManagerRef), toImpl(urlRef), toImpl(initiatingPageRef), requestID));
    33     webkitWebContextReceivedURIRequest(webContext, request.get());
     29    webkitWebContextStartLoadingCustomProtocol(WEBKIT_WEB_CONTEXT(clientInfo), customProtocolID, toImpl(requestRef));
    3430}
    3531
    36 static void didFailToLoadURIRequest(WKSoupRequestManagerRef, uint64_t requestID, const void* clientInfo)
     32static void stopLoading(WKSoupCustomProtocolRequestManagerRef, uint64_t customProtocolID, const void* clientInfo)
    3733{
    38     webkitWebContextDidFailToLoadURIRequest(WEBKIT_WEB_CONTEXT(clientInfo), requestID);
     34    webkitWebContextStopLoadingCustomProtocol(WEBKIT_WEB_CONTEXT(clientInfo), customProtocolID);
    3935}
    4036
    4137void attachRequestManagerClientToContext(WebKitWebContext* webContext)
    4238{
    43     WKSoupRequestManagerClientV0 wkRequestManagerClient = {
     39    WKSoupCustomProtocolRequestManagerClientV0 wkRequestManagerClient = {
    4440        {
    4541            0, // version
    4642            webContext // clientInfo
    4743        },
    48         didReceiveURIRequest,
    49         didFailToLoadURIRequest
     44        startLoading,
     45        stopLoading
    5046    };
    51     WKSoupRequestManagerSetClient(toAPI(webkitWebContextGetRequestManager(webContext)), &wkRequestManagerClient.base);
     47    WKSoupCustomProtocolRequestManagerSetClient(toAPI(webkitWebContextGetRequestManager(webContext)), &wkRequestManagerClient.base);
    5248}
    5349
  • trunk/Source/WebKit2/UIProcess/API/gtk/WebKitURISchemeRequest.cpp

    r162599 r162835  
    2626#include "WebKitWebView.h"
    2727#include "WebPageProxy.h"
    28 #include "WebSoupRequestManagerProxy.h"
    2928#include <WebCore/GUniquePtrSoup.h>
    3029#include <WebCore/ResourceError.h>
     
    5655struct _WebKitURISchemeRequestPrivate {
    5756    WebKitWebContext* webContext;
    58     RefPtr<WebSoupRequestManagerProxy> webRequestManager;
     57    RefPtr<WebSoupCustomProtocolRequestManager> webRequestManager;
    5958    RefPtr<WebPageProxy> initiatingPage;
    6059    uint64_t requestID;
     
    7675}
    7776
    78 WebKitURISchemeRequest* webkitURISchemeRequestCreate(WebKitWebContext* webContext, WebSoupRequestManagerProxy* webRequestManager, API::URL* webURL, WebPageProxy* initiatingPage, uint64_t requestID)
     77WebKitURISchemeRequest* webkitURISchemeRequestCreate(uint64_t requestID, WebKitWebContext* webContext, API::URLRequest* urlRequest, WebPageProxy* initiatingPage)
    7978{
    8079    WebKitURISchemeRequest* request = WEBKIT_URI_SCHEME_REQUEST(g_object_new(WEBKIT_TYPE_URI_SCHEME_REQUEST, NULL));
    8180    request->priv->webContext = webContext;
    82     request->priv->webRequestManager = webRequestManager;
    83     request->priv->uri = webURL->string().utf8();
     81    request->priv->webRequestManager = webkitWebContextGetRequestManager(webContext);
     82    request->priv->uri = urlRequest->resourceRequest().url().string().utf8();
    8483    request->priv->initiatingPage = initiatingPage;
    8584    request->priv->requestID = requestID;
     
    8786}
    8887
    89 uint64_t webkitURISchemeRequestGetID(WebKitURISchemeRequest* request)
    90 {
    91     return request->priv->requestID;
    92 }
    93 
    9488void webkitURISchemeRequestCancel(WebKitURISchemeRequest* request)
    9589{
     
    159153    g_return_val_if_fail(WEBKIT_IS_URI_SCHEME_REQUEST(request), 0);
    160154
    161     return WEBKIT_WEB_VIEW(request->priv->initiatingPage->viewWidget());
     155    // FIXME: initiatingPage is now always null, we need to re-implement this somehow.
     156    return request->priv->initiatingPage ? WEBKIT_WEB_VIEW(request->priv->initiatingPage->viewWidget()) : nullptr;
    162157}
    163158
     
    175170    RefPtr<API::Data> webData = API::Data::create(reinterpret_cast<const unsigned char*>(priv->readBuffer), bytesRead);
    176171    if (!priv->bytesRead) {
    177         // First chunk read. In case of empty reply an empty API::Data is sent to the WebProcess.
    178         priv->webRequestManager->didHandleURIRequest(webData.get(), priv->streamLength, String::fromUTF8(priv->mimeType.data()), priv->requestID);
     172        // First chunk read. In case of empty reply an empty API::Data is sent to the networking process.
     173        WebCore::ResourceResponse response(WebCore::URL(WebCore::URL(), String::fromUTF8(priv->uri)), String::fromUTF8(priv->mimeType.data()),
     174            priv->streamLength, emptyString(), emptyString());
     175        priv->webRequestManager->didReceiveResponse(priv->requestID, response);
     176        priv->webRequestManager->didLoadData(priv->requestID, webData.get());
    179177    } else if (bytesRead || (!bytesRead && !priv->streamLength)) {
    180         // Subsequent chunk read. We only send an empty API::Data to the WebProcess when stream length is unknown.
    181         priv->webRequestManager->didReceiveURIRequestData(webData.get(), priv->requestID);
     178        // Subsequent chunk read. We only send an empty API::Data to the networking process when stream length is unknown.
     179        priv->webRequestManager->didLoadData(priv->requestID, webData.get());
    182180    }
    183181
    184182    if (!bytesRead) {
    185         webkitWebContextDidFinishURIRequest(request->priv->webContext, request->priv->requestID);
     183        priv->webRequestManager->didFinishLoading(request->priv->requestID);
     184        webkitWebContextDidFinishLoadingCustomProtocol(request->priv->webContext, request->priv->requestID);
    186185        return;
    187186    }
     
    189188    priv->bytesRead += bytesRead;
    190189    g_input_stream_read_async(inputStream, priv->readBuffer, gReadBufferSize, G_PRIORITY_DEFAULT, priv->cancellable.get(),
    191                               reinterpret_cast<GAsyncReadyCallback>(webkitURISchemeRequestReadCallback), g_object_ref(request.get()));
     190        reinterpret_cast<GAsyncReadyCallback>(webkitURISchemeRequestReadCallback), g_object_ref(request.get()));
    192191}
    193192
     
    214213    request->priv->mimeType = mimeType;
    215214    g_input_stream_read_async(inputStream, request->priv->readBuffer, gReadBufferSize, G_PRIORITY_DEFAULT, request->priv->cancellable.get(),
    216                               reinterpret_cast<GAsyncReadyCallback>(webkitURISchemeRequestReadCallback), g_object_ref(request));
     215        reinterpret_cast<GAsyncReadyCallback>(webkitURISchemeRequestReadCallback), g_object_ref(request));
    217216}
    218217
     
    234233
    235234    WebCore::ResourceError resourceError(g_quark_to_string(error->domain), error->code, priv->uri.data(), String::fromUTF8(error->message));
    236     priv->webRequestManager->didFailURIRequest(resourceError, priv->requestID);
    237 
    238     webkitWebContextDidFinishURIRequest(priv->webContext, priv->requestID);
    239 }
     235    priv->webRequestManager->didFailWithError(priv->requestID, resourceError);
     236    webkitWebContextDidFinishLoadingCustomProtocol(priv->webContext, priv->requestID);
     237}
  • trunk/Source/WebKit2/UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h

    r160974 r162835  
    2525#include "WebKitWebContext.h"
    2626
    27 WebKitURISchemeRequest* webkitURISchemeRequestCreate(WebKitWebContext*, WebKit::WebSoupRequestManagerProxy*, API::URL*, WebKit::WebPageProxy*, uint64_t requestID);
    28 uint64_t webkitURISchemeRequestGetID(WebKitURISchemeRequest*);
     27WebKitURISchemeRequest* webkitURISchemeRequestCreate(uint64_t requestID, WebKitWebContext*, API::URLRequest*, WebKit::WebPageProxy*);
    2928void webkitURISchemeRequestCancel(WebKitURISchemeRequest*);
    3029
  • trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebContext.cpp

    r162599 r162835  
    138138    GRefPtr<WebKitFaviconDatabase> faviconDatabase;
    139139    GRefPtr<WebKitSecurityManager> securityManager;
    140     RefPtr<WebSoupRequestManagerProxy> requestManager;
     140    RefPtr<WebSoupCustomProtocolRequestManager> requestManager;
    141141    URISchemeHandlerMap uriSchemeHandlers;
    142142    URISchemeRequestMap uriSchemeRequests;
     
    227227
    228228    priv->context = WebContext::create(WebCore::filenameToString(injectedBundleFilename().data()));
    229     priv->requestManager = webContext->priv->context->supplement<WebSoupRequestManagerProxy>();
     229    priv->requestManager = webContext->priv->context->supplement<WebSoupCustomProtocolRequestManager>();
    230230    priv->context->setCacheModel(CacheModelPrimaryWebBrowser);
    231231#if ENABLE(NETWORK_PROCESS)
     
    643643    RefPtr<WebKitURISchemeHandler> handler = adoptRef(new WebKitURISchemeHandler(callback, userData, destroyNotify));
    644644    context->priv->uriSchemeHandlers.set(String::fromUTF8(scheme), handler.get());
    645     context->priv->requestManager->registerURIScheme(String::fromUTF8(scheme));
     645    context->priv->requestManager->registerSchemeForCustomProtocol(String::fromUTF8(scheme));
    646646}
    647647
     
    934934}
    935935
    936 WebSoupRequestManagerProxy* webkitWebContextGetRequestManager(WebKitWebContext* context)
     936WebSoupCustomProtocolRequestManager* webkitWebContextGetRequestManager(WebKitWebContext* context)
    937937{
    938938    return context->priv->requestManager.get();
    939939}
    940940
    941 void webkitWebContextReceivedURIRequest(WebKitWebContext* context, WebKitURISchemeRequest* request)
    942 {
    943     String scheme(String::fromUTF8(webkit_uri_scheme_request_get_scheme(request)));
     941void webkitWebContextStartLoadingCustomProtocol(WebKitWebContext* context, uint64_t customProtocolID, API::URLRequest* urlRequest)
     942{
     943    // FIXME: We need to figure out how to get the initiating page.
     944    GRefPtr<WebKitURISchemeRequest> request = adoptGRef(webkitURISchemeRequestCreate(customProtocolID, context, urlRequest, nullptr));
     945    String scheme(String::fromUTF8(webkit_uri_scheme_request_get_scheme(request.get())));
    944946    RefPtr<WebKitURISchemeHandler> handler = context->priv->uriSchemeHandlers.get(scheme);
    945947    ASSERT(handler.get());
     
    947949        return;
    948950
    949     context->priv->uriSchemeRequests.set(webkitURISchemeRequestGetID(request), request);
    950     handler->performCallback(request);
    951 }
    952 
    953 void webkitWebContextDidFailToLoadURIRequest(WebKitWebContext* context, uint64_t requestID)
    954 {
    955     GRefPtr<WebKitURISchemeRequest> request = context->priv->uriSchemeRequests.get(requestID);
     951    context->priv->uriSchemeRequests.set(customProtocolID, request.get());
     952    handler->performCallback(request.get());
     953}
     954
     955void webkitWebContextStopLoadingCustomProtocol(WebKitWebContext* context, uint64_t customProtocolID)
     956{
     957    GRefPtr<WebKitURISchemeRequest> request = context->priv->uriSchemeRequests.get(customProtocolID);
    956958    if (!request.get())
    957959        return;
     
    959961}
    960962
    961 void webkitWebContextDidFinishURIRequest(WebKitWebContext* context, uint64_t requestID)
    962 {
    963     context->priv->uriSchemeRequests.remove(requestID);
     963void webkitWebContextDidFinishLoadingCustomProtocol(WebKitWebContext* context, uint64_t customProtocolID)
     964{
     965    context->priv->uriSchemeRequests.remove(customProtocolID);
    964966}
    965967
  • trunk/Source/WebKit2/UIProcess/API/gtk/WebKitWebContextPrivate.h

    r162441 r162835  
    3030#include "WebContext.h"
    3131#include "WebKitPrivate.h"
    32 #include "WebKitURISchemeRequest.h"
    3332#include "WebKitWebContext.h"
    3433#include "WebKitWebViewGroup.h"
    35 #include "WebSoupRequestManagerProxy.h"
     34#include "WebSoupCustomProtocolRequestManager.h"
    3635
    3736WebKit::WebContext* webkitWebContextGetContext(WebKitWebContext*);
     
    4039void webkitWebContextRemoveDownload(WebKit::DownloadProxy*);
    4140void webkitWebContextDownloadStarted(WebKitWebContext*, WebKitDownload*);
    42 WebKit::WebSoupRequestManagerProxy* webkitWebContextGetRequestManager(WebKitWebContext*);
    43 void webkitWebContextReceivedURIRequest(WebKitWebContext*, WebKitURISchemeRequest*);
    44 void webkitWebContextDidFailToLoadURIRequest(WebKitWebContext*, uint64_t requestID);
    45 void webkitWebContextDidFinishURIRequest(WebKitWebContext*, uint64_t requestID);
     41WebKit::WebSoupCustomProtocolRequestManager* webkitWebContextGetRequestManager(WebKitWebContext*);
     42void webkitWebContextStartLoadingCustomProtocol(WebKitWebContext*, uint64_t customProtocolID, API::URLRequest*);
     43void webkitWebContextStopLoadingCustomProtocol(WebKitWebContext*, uint64_t customProtocolID);
     44void webkitWebContextDidFinishLoadingCustomProtocol(WebKitWebContext*, uint64_t customProtocolID);
    4645void webkitWebContextCreatePageForWebView(WebKitWebContext*, WebKitWebView*, WebKitWebViewGroup*);
    4746void webkitWebContextWebViewDestroyed(WebKitWebContext*, WebKitWebView*);
  • trunk/Source/WebKit2/UIProcess/gtk/WebContextGtk.cpp

    r162714 r162835  
    3434#include "WebProcessCreationParameters.h"
    3535#include "WebProcessMessages.h"
     36#include "WebSoupCustomProtocolRequestManager.h"
    3637#include <WebCore/FileSystem.h>
    3738#include <WebCore/NotImplemented.h>
     
    4243#if ENABLE(NETWORK_PROCESS)
    4344#include "NetworkProcessMessages.h"
    44 #endif
    45 
    46 #if ENABLE(CUSTOM_PROTOCOLS)
    47 #include "WebSoupCustomProtocolRequestManager.h"
    48 #else
    49 #include "WebSoupRequestManagerProxy.h"
    5045#endif
    5146
     
    105100
    106101    if (!usesNetworkProcess()) {
    107 #if ENABLE(CUSTOM_PROTOCOLS)
    108102        parameters.urlSchemesRegisteredForCustomProtocols = supplement<WebSoupCustomProtocolRequestManager>()->registeredSchemesForCustomProtocols();
    109 #else
    110         parameters.urlSchemesRegistered = supplement<WebSoupRequestManagerProxy>()->registeredURISchemes();
    111 #endif
    112103
    113104        supplement<WebCookieManagerProxy>()->getCookiePersistentStorage(parameters.cookiePersistentStoragePath, parameters.cookiePersistentStorageType);
  • trunk/Source/WebKit2/WebKit2Prefix.h

    r160989 r162835  
    7171#if PLATFORM(GTK)
    7272#define ENABLE_NETWORK_PROCESS 1
     73#define ENABLE_CUSTOM_PROTOCOLS 1
    7374#endif
    7475
  • trunk/Tools/ChangeLog

    r162826 r162835  
     12014-01-27  Carlos Garcia Campos  <cgarcia@igalia.com>
     2
     3        [GTK] Implement custom URI schemes with CustomProtocols
     4        https://bugs.webkit.org/show_bug.cgi?id=127091
     5
     6        Reviewed by Gustavo Noronha Silva.
     7
     8        Temporarily disable the WebKitWebView check until we figure out
     9        how to implement it with CustomProtocols.
     10
     11        * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
     12
    1132014-01-26  Alexey Proskuryakov  <ap@apple.com>
    214
  • trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp

    r162599 r162835  
    147147        test->assertObjectIsDeletedWhenTestFinishes(G_OBJECT(request));
    148148
    149         g_assert(webkit_uri_scheme_request_get_web_view(request) == test->m_webView);
     149        // FIXME: webkit_uri_scheme_request_get_web_view doesn't work with custom protocols.
     150        // g_assert(webkit_uri_scheme_request_get_web_view(request) == test->m_webView);
    150151
    151152        GRefPtr<GInputStream> inputStream = adoptGRef(g_memory_input_stream_new());
Note: See TracChangeset for help on using the changeset viewer.