Title: [101726] trunk/Source/WebKit/efl
Revision
101726
Author
[email protected]
Date
2011-12-01 17:32:32 -0800 (Thu, 01 Dec 2011)

Log Message

[EFL] Remove the ewk_protocol_handler-related code
https://bugs.webkit.org/show_bug.cgi?id=73018

Patch by Raphael Kubo da Costa <[email protected]> on 2011-12-01
Reviewed by Martin Robinson.

This functionality has been broken since r99364, which stopped setting
the "webkit-resource" property needed by
ewk_protocol_handler_soup.cpp.

After giving it some thought, it looks clear that this code should not
be in ewk at all: it is very backend-specific (even in the function
signatures it expects), and it only allows callers to register schemes
once and provide a single handler to all of them, which does not make
much sense.

Client code using WebKit-EFL with the soup backend should be
responsible for creating their own request handlers (ie. subclass
SoupRequest) instead.

For that to be possible, a function which returns the default
SoupSession used by WebKit has been added.

* CMakeListsEfl.txt:
* ewk/ewk_network.cpp:
(ewk_network_default_soup_session_get):
* ewk/ewk_network.h:
* ewk/ewk_private.h:
* ewk/ewk_protocol_handler.cpp: Removed.
* ewk/ewk_protocol_handler.h: Removed.
* ewk/ewk_protocol_handler_soup.cpp: Removed.
* ewk/ewk_protocol_handler_soup.h: Removed.
* ewk/ewk_view.cpp:
* ewk/ewk_view.h:

Modified Paths

Removed Paths

Diff

Modified: trunk/Source/WebKit/efl/CMakeListsEfl.txt (101725 => 101726)


--- trunk/Source/WebKit/efl/CMakeListsEfl.txt	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/CMakeListsEfl.txt	2011-12-02 01:32:32 UTC (rev 101726)
@@ -82,7 +82,6 @@
     efl/ewk/ewk_main.cpp
     efl/ewk/ewk_network.cpp
     efl/ewk/ewk_settings.cpp
-    efl/ewk/ewk_protocol_handler.cpp
     efl/ewk/ewk_tiled_backing_store.cpp
     efl/ewk/ewk_tiled_matrix.cpp
     efl/ewk/ewk_tiled_model.cpp
@@ -125,7 +124,6 @@
   LIST(APPEND WebKit_SOURCES
     efl/ewk/ewk_auth.cpp
     efl/ewk/ewk_auth_soup.cpp
-    efl/ewk/ewk_protocol_handler_soup.cpp
   )
 ENDIF ()
 
@@ -243,7 +241,6 @@
     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_logging.h
     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_main.h
     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_network.h
-    ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_protocol_handler.h
     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_settings.h
     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_view.h
     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_window_features.h

Modified: trunk/Source/WebKit/efl/ChangeLog (101725 => 101726)


--- trunk/Source/WebKit/efl/ChangeLog	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ChangeLog	2011-12-02 01:32:32 UTC (rev 101726)
@@ -1,3 +1,39 @@
+2011-12-01  Raphael Kubo da Costa  <[email protected]>
+
+        [EFL] Remove the ewk_protocol_handler-related code
+        https://bugs.webkit.org/show_bug.cgi?id=73018
+
+        Reviewed by Martin Robinson.
+
+        This functionality has been broken since r99364, which stopped setting
+        the "webkit-resource" property needed by
+        ewk_protocol_handler_soup.cpp.
+
+        After giving it some thought, it looks clear that this code should not
+        be in ewk at all: it is very backend-specific (even in the function
+        signatures it expects), and it only allows callers to register schemes
+        once and provide a single handler to all of them, which does not make
+        much sense.
+
+        Client code using WebKit-EFL with the soup backend should be
+        responsible for creating their own request handlers (ie. subclass
+        SoupRequest) instead.
+
+        For that to be possible, a function which returns the default
+        SoupSession used by WebKit has been added.
+
+        * CMakeListsEfl.txt:
+        * ewk/ewk_network.cpp:
+        (ewk_network_default_soup_session_get):
+        * ewk/ewk_network.h:
+        * ewk/ewk_private.h:
+        * ewk/ewk_protocol_handler.cpp: Removed.
+        * ewk/ewk_protocol_handler.h: Removed.
+        * ewk/ewk_protocol_handler_soup.cpp: Removed.
+        * ewk/ewk_protocol_handler_soup.h: Removed.
+        * ewk/ewk_view.cpp:
+        * ewk/ewk_view.h:
+
 2011-11-30  Gyuyoung Kim  <[email protected]>
 
         Unreviewed. Fix build error when NOTIFICATIONS feature is enabled.

Modified: trunk/Source/WebKit/efl/ewk/ewk_network.cpp (101725 => 101726)


--- trunk/Source/WebKit/efl/ewk/ewk_network.cpp	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ewk/ewk_network.cpp	2011-12-02 01:32:32 UTC (rev 101726)
@@ -74,3 +74,12 @@
 {
     WebCore::networkStateNotifier().setOnLine(online);
 }
+
+SoupSession* ewk_network_default_soup_session_get()
+{
+#if USE(SOUP)
+    return WebCore::ResourceHandle::defaultSession();
+#else
+    return 0;
+#endif
+}

Modified: trunk/Source/WebKit/efl/ewk/ewk_network.h (101725 => 101726)


--- trunk/Source/WebKit/efl/ewk/ewk_network.h	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ewk/ewk_network.h	2011-12-02 01:32:32 UTC (rev 101726)
@@ -54,6 +54,19 @@
  */
 EAPI void             ewk_network_state_notifier_online_set(Eina_Bool online);
 
+typedef struct _SoupSession SoupSession;
+
+/**
+ * Returns the default @c SoupSession used by all views.
+ *
+ * This function is meaningful only if WebKit has been compiled with the
+ * @c Soup network backend.
+ *
+ * @return The default @c SoupSession in use, or @c NULL if another network
+ *         backend was used.
+ */
+EAPI SoupSession*     ewk_network_default_soup_session_get(void);
+
 #ifdef __cplusplus
 }
 #endif

Modified: trunk/Source/WebKit/efl/ewk/ewk_private.h (101725 => 101726)


--- trunk/Source/WebKit/efl/ewk/ewk_private.h	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ewk/ewk_private.h	2011-12-02 01:32:32 UTC (rev 101726)
@@ -145,7 +145,6 @@
 void ewk_view_viewport_attributes_set(Evas_Object* o, const WebCore::ViewportArguments& arguments);
 
 void ewk_view_download_request(Evas_Object* o, Ewk_Download* download);
-void* ewk_view_protocol_handler_resource_get(Evas_Object* o, size_t* bytesRead, char** mime, const char* file);
 
 void ewk_view_editor_client_contents_changed(Evas_Object* o);
 void ewk_view_editor_client_selection_changed(Evas_Object* o);

Deleted: trunk/Source/WebKit/efl/ewk/ewk_protocol_handler.cpp (101725 => 101726)


--- trunk/Source/WebKit/efl/ewk/ewk_protocol_handler.cpp	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ewk/ewk_protocol_handler.cpp	2011-12-02 01:32:32 UTC (rev 101726)
@@ -1,45 +0,0 @@
-/*
-    Copyright (C) 2011 ProFUSION embedded systems
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Library General Public
-    License as published by the Free Software Foundation; either
-    version 2 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Library General Public License for more details.
-
-    You should have received a copy of the GNU Library General Public License
-    along with this library; see the file COPYING.LIB.  If not, write to
-    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-    Boston, MA 02110-1301, USA.
-*/
-
-#include "config.h"
-#include "ewk_protocol_handler.h"
-
-#if USE(SOUP)
-#include "ewk_protocol_handler_soup.h"
-#endif
-
-Eina_Bool ewk_custom_protocol_handler_set(const char** protocols)
-{
-#if USE(SOUP)
-    return ewk_custom_protocol_handler_soup_set(protocols);
-#else
-    EINA_LOG_CRIT("Not implemented");
-    return false;
-#endif
-}
-
-Eina_Bool ewk_custom_protocol_handler_all_unset()
-{
-#if USE(SOUP)
-    return ewk_custom_protocol_handler_soup_all_unset();
-#else
-    EINA_LOG_CRIT("Not implemented");
-    return false;
-#endif
-}

Deleted: trunk/Source/WebKit/efl/ewk/ewk_protocol_handler.h (101725 => 101726)


--- trunk/Source/WebKit/efl/ewk/ewk_protocol_handler.h	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ewk/ewk_protocol_handler.h	2011-12-02 01:32:32 UTC (rev 101726)
@@ -1,54 +0,0 @@
-/*
-    Copyright (C) 2011 ProFUSION embedded systems
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Library General Public
-    License as published by the Free Software Foundation; either
-    version 2 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Library General Public License for more details.
-
-    You should have received a copy of the GNU Library General Public License
-    along with this library; see the file COPYING.LIB.  If not, write to
-    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-    Boston, MA 02110-1301, USA.
-*/
-
-/**
- * @file    ewk_protocol_handler.h
- * @brief   Describes the custom protocol handler API.
- */
-
-#ifndef ewk_protocol_handler_h
-#define ewk_protocol_handler_h
-
-#include <Eina.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * Register a protocol handler.
- *
- * @param protocols the protocols that will be handled.
- * @return @c EINA_TRUE if success, @c EINA_FALSE if not.
- */
-EAPI Eina_Bool ewk_custom_protocol_handler_set(const char** protocols);
-
-/**
- * Remove protocol handler.
- *
- * @return @c EINA_TRUE if success, @c EINA_FALSE if not.
- */
-EAPI Eina_Bool ewk_custom_protocol_handler_all_unset();
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // ewk_protocol_handler_h
-

Deleted: trunk/Source/WebKit/efl/ewk/ewk_protocol_handler_soup.cpp (101725 => 101726)


--- trunk/Source/WebKit/efl/ewk/ewk_protocol_handler_soup.cpp	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ewk/ewk_protocol_handler_soup.cpp	2011-12-02 01:32:32 UTC (rev 101726)
@@ -1,197 +0,0 @@
-/*
-    Copyright (C) 2011 ProFUSION embedded systems
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Library General Public
-    License as published by the Free Software Foundation; either
-    version 2 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Library General Public License for more details.
-
-    You should have received a copy of the GNU Library General Public License
-    along with this library; see the file COPYING.LIB.  If not, write to
-    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-    Boston, MA 02110-1301, USA.
-*/
-
-#include "config.h"
-#include "ewk_protocol_handler_soup.h"
-
-#include "FrameLoaderClientEfl.h"
-#include "FrameNetworkingContextEfl.h"
-#include "ResourceHandle.h"
-#include "ResourceHandleClient.h"
-#include "ResourceHandleInternal.h"
-#include "ewk_private.h"
-#include <glib-object.h>
-#include <glib.h>
-#include <libsoup/soup-requester.h>
-#include <libsoup/soup.h>
-
-struct _EwkProtocolHandlerPrivate {
-    char* mime;
-    size_t bytesRead;
-};
-
-G_DEFINE_TYPE(EwkCustomProtocolHandler, ewk_custom_protocol_handler, SOUP_TYPE_REQUEST)
-
-static char** schemes = 0;
-static unsigned customProtocolAddedCount = 0;
-
-static void ewk_custom_protocol_handler_init(EwkCustomProtocolHandler* customProtocolHandler)
-{
-    customProtocolHandler->priv = G_TYPE_INSTANCE_GET_PRIVATE(customProtocolHandler, EWK_TYPE_CUSTOM_PROTOCOL_HANDLER,
-                                                              EwkProtocolHandlerPrivate);
-    EINA_SAFETY_ON_NULL_RETURN(customProtocolHandler->priv);
-
-    customProtocolHandler->priv->mime = 0;
-    customProtocolHandler->priv->bytesRead = 0;
-}
-
-static void ewk_custom_protocol_handler_finalize(GObject* object)
-{
-    EwkProtocolHandlerPrivate* priv  = G_TYPE_INSTANCE_GET_PRIVATE(object, EWK_TYPE_CUSTOM_PROTOCOL_HANDLER,
-                                                                   EwkProtocolHandlerPrivate);
-    if (priv)
-        free(priv->mime);
-
-    G_OBJECT_CLASS(ewk_custom_protocol_handler_parent_class)->finalize(object);
-}
-
-static gboolean ewk_custom_protocol_handler_check_uri(SoupRequest* request, SoupURI* uri, GError** error)
-{
-    return TRUE;
-}
-
-static GInputStream* ewk_custom_protocol_handler_send(SoupRequest* request, GCancellable* cancellable, GError** error)
-{
-    void* buffer;
-    char* mime = 0;
-    size_t bytesRead = 0;
-
-    WebCore::ResourceHandle* resource = static_cast<
-        WebCore::ResourceHandle*>(g_object_get_data(G_OBJECT(request), "webkit-resource"));
-    EINA_SAFETY_ON_NULL_RETURN_VAL(resource, 0);
-
-    const WebCore::FrameNetworkingContextEfl* frameContext = static_cast<
-        WebCore::FrameNetworkingContextEfl*>(resource->getInternal()->m_context.get());
-    EINA_SAFETY_ON_NULL_RETURN_VAL(frameContext, 0);
-
-    const WebCore::FrameLoaderClientEfl* frameLoaderClient = static_cast<
-        WebCore::FrameLoaderClientEfl*>(frameContext->coreFrame()->loader()->client());
-    EINA_SAFETY_ON_NULL_RETURN_VAL(frameLoaderClient, 0);
-
-    SoupURI* uri = soup_request_get_uri(request);
-    EINA_SAFETY_ON_NULL_RETURN_VAL(uri, 0);
-
-    EwkProtocolHandlerPrivate* priv = G_TYPE_INSTANCE_GET_PRIVATE(
-        reinterpret_cast<EwkCustomProtocolHandler*>(request),
-        EWK_TYPE_CUSTOM_PROTOCOL_HANDLER,
-        EwkProtocolHandlerPrivate);
-
-    EINA_SAFETY_ON_NULL_RETURN_VAL(priv, 0);
-
-
-    if (uri->path[0] == '/') {
-        buffer = ewk_view_protocol_handler_resource_get(frameLoaderClient->webView(),
-                                                        &bytesRead, &mime, uri->path + 1); // The path is always initialized with /.
-    } else
-        buffer = ewk_view_protocol_handler_resource_get(frameLoaderClient->webView(), &bytesRead, &mime, uri->host);
-
-    priv->bytesRead = bytesRead;
-    if (mime)
-        priv->mime = strdup(mime);
-
-    return g_memory_input_stream_new_from_data(buffer, bytesRead, free);
-}
-
-static goffset ewk_custom_protocol_handler_get_content_length(SoupRequest* request)
-{
-    EwkProtocolHandlerPrivate* priv  = G_TYPE_INSTANCE_GET_PRIVATE(reinterpret_cast<EwkCustomProtocolHandler*>(request),
-                                                                   EWK_TYPE_CUSTOM_PROTOCOL_HANDLER,
-                                                                   EwkProtocolHandlerPrivate);
-    return (priv) ? priv->bytesRead : 0;
-}
-
-static const char* ewk_custom_protocol_handler_get_content_type(SoupRequest* request)
-{
-    EwkProtocolHandlerPrivate* priv  = G_TYPE_INSTANCE_GET_PRIVATE(reinterpret_cast<EwkCustomProtocolHandler*>(request),
-                                                                   EWK_TYPE_CUSTOM_PROTOCOL_HANDLER,
-                                                                   EwkProtocolHandlerPrivate);
-    return (priv && priv->mime) ? priv->mime : "text/html";
-}
-
-static void ewk_custom_protocol_handler_class_init(EwkCustomProtocolHandlerClass* customProtocolHandlerClass)
-{
-    GObjectClass* gobjectClass = G_OBJECT_CLASS(customProtocolHandlerClass);
-    SoupRequestClass* requestClass = SOUP_REQUEST_CLASS(customProtocolHandlerClass);
-
-    gobjectClass->finalize = ewk_custom_protocol_handler_finalize;
-    requestClass->schemes = const_cast<const char**>(schemes);
-    requestClass->check_uri = ewk_custom_protocol_handler_check_uri;
-    requestClass->send = ewk_custom_protocol_handler_send;
-    requestClass->get_content_length = ewk_custom_protocol_handler_get_content_length;
-    requestClass->get_content_type = ewk_custom_protocol_handler_get_content_type;
-
-    g_type_class_add_private(customProtocolHandlerClass, sizeof(EwkProtocolHandlerPrivate));
-}
-
-Eina_Bool ewk_custom_protocol_handler_soup_set(const char** protocols)
-{
-    guint protocolsSize;
-    SoupSession* session = WebCore::ResourceHandle::defaultSession();
-    SoupSessionFeature* requester;
-
-    protocolsSize = g_strv_length(const_cast<gchar**>(protocols));
-
-    // This array must be null terminated.
-    EINA_SAFETY_ON_TRUE_RETURN_VAL(!protocolsSize || protocols[protocolsSize], false);
-
-    requester = soup_session_get_feature(session, SOUP_TYPE_REQUESTER);
-    if (!requester) {
-        requester = SOUP_SESSION_FEATURE(soup_requester_new());
-        soup_session_add_feature(session, requester);
-        g_object_unref(requester);
-    }
-
-    if (soup_session_feature_has_feature(requester, EWK_TYPE_CUSTOM_PROTOCOL_HANDLER)) {
-        customProtocolAddedCount++;
-        return true;
-    }
-
-    schemes = g_strdupv(const_cast<gchar**>(protocols));
-    if (!(schemes && soup_session_feature_add_feature(requester, EWK_TYPE_CUSTOM_PROTOCOL_HANDLER)))
-        return false;
-
-    customProtocolAddedCount++;
-    return true;
-}
-
-Eina_Bool ewk_custom_protocol_handler_soup_all_unset()
-{
-    SoupSession* session = WebCore::ResourceHandle::defaultSession();
-    SoupSessionFeature* requester;
-
-    if (!customProtocolAddedCount)
-        return false;
-
-    requester = soup_session_get_feature(session, SOUP_TYPE_REQUESTER);
-    if (!requester)
-        return false;
-
-    if (!soup_session_feature_has_feature(requester, EWK_TYPE_CUSTOM_PROTOCOL_HANDLER))
-        return false;
-
-    if (customProtocolAddedCount == 1) {
-        if (soup_session_feature_remove_feature(requester, EWK_TYPE_CUSTOM_PROTOCOL_HANDLER))
-            g_strfreev(schemes);
-        else
-            return false;
-    }
-
-    customProtocolAddedCount--;
-    return true;
-}

Deleted: trunk/Source/WebKit/efl/ewk/ewk_protocol_handler_soup.h (101725 => 101726)


--- trunk/Source/WebKit/efl/ewk/ewk_protocol_handler_soup.h	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ewk/ewk_protocol_handler_soup.h	2011-12-02 01:32:32 UTC (rev 101726)
@@ -1,64 +0,0 @@
-/*
-    Copyright (C) 2011 ProFUSION embedded systems
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Library General Public
-    License as published by the Free Software Foundation; either
-    version 2 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Library General Public License for more details.
-
-    You should have received a copy of the GNU Library General Public License
-    along with this library; see the file COPYING.LIB.  If not, write to
-    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-    Boston, MA 02110-1301, USA.
-*/
-
-#ifndef ewk_protocol_handler_soup_h
-#define ewk_protocol_handler_soup_h
-
-#include "ewk_protocol_handler.h"
-
-#include <glib-object.h>
-#include <glib.h>
-#define LIBSOUP_USE_UNSTABLE_REQUEST_API
-#include <libsoup/soup-request.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define EWK_TYPE_CUSTOM_PROTOCOL_HANDLER            (ewk_custom_protocol_handler_get_type ())
-#define EWK_CUSTOM_PROTOCOL_HANDLER(object)         (G_TYPE_CHECK_INSTANCE_CAST ((object), EWK_TYPE_CUSTOM_PROTOCOL_HANDLER, EwkCustomProtocolHandler))
-#define EWK_CUSTOM_PROTOCOL_HANDLER_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), EWK_TYPE_CUSTOM_PROTOCOL_HANDLER, EwkCustomProtocolHandlerClass))
-#define EWK_IS_CUSTOM_PROTOCOL_HANDLER(object)      (G_TYPE_CHECK_INSTANCE_TYPE ((object), EWK_TYPE_CUSTOM_PROTOCOL_HANDLER))
-#define EWK_IS_CUSTOM_PROTOCOL_HANDLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EWK_TYPE_CUSTOM_PROTOCOL_HANDLER))
-#define EWK_CUSTOM_PROTOCOL_HANDLER_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), EWK_TYPE_CUSTOM_PROTOCOL_HANDLER, EwkCustomProtocolHandlerClass))
-
-typedef struct _EwkProtocolHandlerPrivate EwkProtocolHandlerPrivate;
-
-typedef struct {
-    SoupRequest parent;
-    EwkProtocolHandlerPrivate* priv;
-} EwkCustomProtocolHandler;
-
-typedef struct {
-    SoupRequestClass parent;
-} EwkCustomProtocolHandlerClass;
-
-
-GType ewk_custom_protocol_handler_get_type();
-
-Eina_Bool ewk_custom_protocol_handler_soup_set(const char** protocols);
-
-Eina_Bool ewk_custom_protocol_handler_soup_all_unset();
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif // ewk_protocol_handler_soup_h
-

Modified: trunk/Source/WebKit/efl/ewk/ewk_view.cpp (101725 => 101726)


--- trunk/Source/WebKit/efl/ewk/ewk_view.cpp	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ewk/ewk_view.cpp	2011-12-02 01:32:32 UTC (rev 101726)
@@ -51,7 +51,6 @@
 #include "RenderTheme.h"
 #include "c_instance.h"
 #include "ewk_private.h"
-#include "ewk_protocol_handler.h"
 
 #include <Ecore.h>
 #include <Eina.h>
@@ -132,10 +131,6 @@
     WebCore::ViewportArguments viewportArguments;
     Ewk_History* history;
     struct {
-        void* context;
-        Ewk_View_Resource_Handler_Cb function;
-    } customResourceHandler;
-    struct {
         Ewk_Menu menu;
         WebCore::PopupMenuClient* menuClient;
     } popup;
@@ -3701,46 +3696,6 @@
 #endif // ENABLE(NETSCAPE_PLUGIN_API)
 }
 
-Eina_Bool ewk_view_protocol_handler_set(Evas_Object* ewkView, const char** protocols, Ewk_View_Resource_Handler_Cb handler, void* context)
-{
-    EWK_VIEW_SD_GET(ewkView, smartData);
-    EWK_VIEW_PRIV_GET(smartData, priv);
-
-    if (!handler)
-        return false;
-
-    priv->customResourceHandler.function = handler;
-    priv->customResourceHandler.context = context;
-
-    return ewk_custom_protocol_handler_set(protocols);
-}
-
-Eina_Bool ewk_view_protocol_handler_unset(Evas_Object* ewkView)
-{
-    EWK_VIEW_SD_GET(ewkView, smartData);
-    EWK_VIEW_PRIV_GET(smartData, priv);
-    Eina_Bool ret = ewk_custom_protocol_handler_all_unset();
-
-    if (ret) {
-        priv->customResourceHandler.function = 0;
-        priv->customResourceHandler.context = 0;
-    }
-
-    return ret;
-}
-
-void* ewk_view_protocol_handler_resource_get(Evas_Object* ewkView, size_t* bytesRead, char** mime, const char* file)
-{
-    EWK_VIEW_SD_GET(ewkView, smartData);
-    EWK_VIEW_PRIV_GET(smartData, priv);
-
-    Ewk_View_Resource_Handler_Cb function = priv->customResourceHandler.function;
-    if (function)
-        return function(file, bytesRead, mime, priv->customResourceHandler.context);
-
-    return 0;
-}
-
 /**
  * @internal
  * Reports that the contents have resized. The ewk_view calls contents_resize,

Modified: trunk/Source/WebKit/efl/ewk/ewk_view.h (101725 => 101726)


--- trunk/Source/WebKit/efl/ewk/ewk_view.h	2011-12-02 01:14:12 UTC (rev 101725)
+++ trunk/Source/WebKit/efl/ewk/ewk_view.h	2011-12-02 01:32:32 UTC (rev 101726)
@@ -2231,25 +2231,6 @@
  */
 EAPI Eina_Bool ewk_view_js_object_add(Evas_Object *o, Ewk_JS_Object *obj, const char *obj_name);
 
-/**
- * Register a new protocol handler for handling an specific protocol (scheme).
- *
- * @param o view.
- * @param protocols the protocols that will be handled.
- * @param handler the function that will be executed for the protocols
- * @param ctxt the handler context
- * @return @c EINA_TRUE if success, @c EINA_FALSE if not.
- */
-EAPI Eina_Bool ewk_view_protocol_handler_set(Evas_Object* o, const char** protocol, Ewk_View_Resource_Handler_Cb handler, void* ctxt);
-
-/**
- * Remove the custom protocol handler.
- *
- * @param o view.
- * @return @c EINA_TRUE if success, @c EINA_FALSE if not.
- */
-EAPI Eina_Bool ewk_view_protocol_handler_unset(Evas_Object* o);
-
 /// Defines the page visibility status.
 enum _Ewk_Page_Visibility_State {
     EWK_PAGE_VISIBILITY_STATE_VISIBLE,
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to