Title: [132337] trunk/Source/WebKit2
Revision
132337
Author
[email protected]
Date
2012-10-24 05:02:28 -0700 (Wed, 24 Oct 2012)

Log Message

[EFL][WK2] Move Ewk_View_Private_Data out of ewk_view.cpp
https://bugs.webkit.org/show_bug.cgi?id=100228

Patch by Christophe Dumez  <[email protected]> and Mikhail Pozdnyakov <[email protected]> on 2012-10-24
Reviewed by Gyuyoung Kim.

Move Ewk_View_Private_Data out of ewk_view.cpp and
rename it to EwkViewImpl. This is a first step towards
getting rid of C'ism in Ewk_View.

In a future, we will make EwkViewImpl a proper C++
class and get rid of the private ewk_view C API so
that WebKit code interacts with EwkViewImpl instead
of Evas_Object.

* PlatformEfl.cmake:
* UIProcess/API/efl/EwkViewImpl.cpp: Added.
(_ewk_view_commit):
(_ewk_view_preedit_changed):
(_ewk_view_imf_context_destroy):
(_ewk_view_imf_context_create):
(EwkViewImpl::EwkViewImpl):
(EwkViewImpl::~EwkViewImpl):
* UIProcess/API/efl/EwkViewImpl.h: Added.
(WebKit):
(EwkViewImpl):
* UIProcess/API/efl/ewk_view.cpp:
(_ewk_view_priv_del):
(_ewk_view_smart_add):
* UIProcess/API/efl/ewk_view.h:

Modified Paths

Added Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (132336 => 132337)


--- trunk/Source/WebKit2/ChangeLog	2012-10-24 11:57:47 UTC (rev 132336)
+++ trunk/Source/WebKit2/ChangeLog	2012-10-24 12:02:28 UTC (rev 132337)
@@ -1,3 +1,35 @@
+2012-10-24  Christophe Dumez  <[email protected]> and Mikhail Pozdnyakov  <[email protected]>
+
+        [EFL][WK2] Move Ewk_View_Private_Data out of ewk_view.cpp
+        https://bugs.webkit.org/show_bug.cgi?id=100228
+
+        Reviewed by Gyuyoung Kim.
+
+        Move Ewk_View_Private_Data out of ewk_view.cpp and
+        rename it to EwkViewImpl. This is a first step towards
+        getting rid of C'ism in Ewk_View.
+
+        In a future, we will make EwkViewImpl a proper C++
+        class and get rid of the private ewk_view C API so
+        that WebKit code interacts with EwkViewImpl instead
+        of Evas_Object.
+
+        * PlatformEfl.cmake:
+        * UIProcess/API/efl/EwkViewImpl.cpp: Added.
+        (_ewk_view_commit):
+        (_ewk_view_preedit_changed):
+        (_ewk_view_imf_context_destroy):
+        (_ewk_view_imf_context_create):
+        (EwkViewImpl::EwkViewImpl):
+        (EwkViewImpl::~EwkViewImpl):
+        * UIProcess/API/efl/EwkViewImpl.h: Added.
+        (WebKit):
+        (EwkViewImpl):
+        * UIProcess/API/efl/ewk_view.cpp:
+        (_ewk_view_priv_del):
+        (_ewk_view_smart_add):
+        * UIProcess/API/efl/ewk_view.h:
+
 2012-10-24  Ryuan Choi  <[email protected]>
 
         [EFL][WK2] Crash when passing NULL instead of ewk_view instance

Modified: trunk/Source/WebKit2/PlatformEfl.cmake (132336 => 132337)


--- trunk/Source/WebKit2/PlatformEfl.cmake	2012-10-24 11:57:47 UTC (rev 132336)
+++ trunk/Source/WebKit2/PlatformEfl.cmake	2012-10-24 12:02:28 UTC (rev 132337)
@@ -42,6 +42,7 @@
     UIProcess/API/C/soup/WKSoupRequestManager.cpp
 
     UIProcess/API/efl/BatteryProvider.cpp
+    UIProcess/API/efl/EwkViewImpl.cpp
     UIProcess/API/efl/PageViewportControllerClientEfl.cpp
     UIProcess/API/efl/NetworkInfoProvider.cpp
     UIProcess/API/efl/PageClientImpl.cpp

Added: trunk/Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp (0 => 132337)


--- trunk/Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp	                        (rev 0)
+++ trunk/Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp	2012-10-24 12:02:28 UTC (rev 132337)
@@ -0,0 +1,144 @@
+/*
+   Copyright (C) 2011 Samsung Electronics
+   Copyright (C) 2012 Intel Corporation. All rights reserved.
+
+    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 "EwkViewImpl.h"
+
+#include "EflScreenUtilities.h"
+#include "FindClientEfl.h"
+#include "FormClientEfl.h"
+#include "PageClientImpl.h"
+#include "PageLoadClientEfl.h"
+#include "PagePolicyClientEfl.h"
+#include "PageUIClientEfl.h"
+#include "PageViewportController.h"
+#include "PageViewportControllerClientEfl.h"
+#include "ResourceLoadClientEfl.h"
+#include "WebPageProxy.h"
+#include "WebPopupMenuProxyEfl.h"
+#include "ewk_back_forward_list_private.h"
+#include "ewk_context_private.h"
+#include "ewk_favicon_database_private.h"
+#include "ewk_popup_menu_item_private.h"
+#include "ewk_settings_private.h"
+#include "ewk_view.h"
+#include "ewk_view_private.h"
+#include <Ecore_Evas.h>
+
+using namespace WebCore;
+using namespace WebKit;
+
+static void _ewk_view_commit(void* data, Ecore_IMF_Context*, void* eventInfo)
+{
+    Ewk_View_Smart_Data* smartData = static_cast<Ewk_View_Smart_Data*>(data);
+    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv);
+    if (!eventInfo || !priv->isImfFocused)
+        return;
+
+    priv->pageProxy->confirmComposition(String::fromUTF8(static_cast<char*>(eventInfo)));
+}
+
+static void _ewk_view_preedit_changed(void* data, Ecore_IMF_Context* context, void*)
+{
+    Ewk_View_Smart_Data* smartData = static_cast<Ewk_View_Smart_Data*>(data);
+    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv);
+
+    if (!priv->pageProxy->focusedFrame() || !priv->isImfFocused)
+        return;
+
+    char* buffer = 0;
+    ecore_imf_context_preedit_string_get(context, &buffer, 0);
+    if (!buffer)
+        return;
+
+    String preeditString = String::fromUTF8(buffer);
+    Vector<CompositionUnderline> underlines;
+    underlines.append(CompositionUnderline(0, preeditString.length(), Color(0, 0, 0), false));
+    priv->pageProxy->setComposition(preeditString, underlines, 0);
+}
+
+static void _ewk_view_imf_context_destroy(Ecore_IMF_Context* imfContext)
+{
+    if (!imfContext)
+        return;
+
+    ecore_imf_context_event_callback_del(imfContext, ECORE_IMF_CALLBACK_PREEDIT_CHANGED, _ewk_view_preedit_changed);
+    ecore_imf_context_event_callback_del(imfContext, ECORE_IMF_CALLBACK_COMMIT, _ewk_view_commit);
+    ecore_imf_context_del(imfContext);
+}
+
+static Ecore_IMF_Context* _ewk_view_imf_context_create(Ewk_View_Smart_Data* smartData)
+{
+    const char* defaultContextID = ecore_imf_context_default_id_get();
+    if (!defaultContextID)
+        return 0;
+
+    Ecore_IMF_Context* imfContext = ecore_imf_context_add(defaultContextID);
+    if (!imfContext)
+        return 0;
+
+    ecore_imf_context_event_callback_add(imfContext, ECORE_IMF_CALLBACK_PREEDIT_CHANGED, _ewk_view_preedit_changed, smartData);
+    ecore_imf_context_event_callback_add(imfContext, ECORE_IMF_CALLBACK_COMMIT, _ewk_view_commit, smartData);
+
+    Ecore_Evas* ecoreEvas = ecore_evas_ecore_evas_get(smartData->base.evas);
+    ecore_imf_context_client_window_set(imfContext, (void*)ecore_evas_window_get(ecoreEvas));
+    ecore_imf_context_client_canvas_set(imfContext, smartData->base.evas);
+
+    return imfContext;
+}
+
+EwkViewImpl::EwkViewImpl(Evas_Object* view)
+    : areMouseEventsEnabled(false)
+#if ENABLE(TOUCH_EVENTS)
+    , areTouchEventsEnabled(false)
+#endif
+    , popupMenuProxy(0)
+    , popupMenuItems(0)
+    , imfContext(0)
+    , isImfFocused(false)
+#ifdef HAVE_ECORE_X
+    , isUsingEcoreX(false)
+#endif
+#if USE(ACCELERATED_COMPOSITING)
+    , evasGl(0)
+    , evasGlContext(0)
+    , evasGlSurface(0)
+#endif
+    , m_view(view)
+{
+    ASSERT(view);
+    Ewk_View_Smart_Data* smartData = static_cast<Ewk_View_Smart_Data*>(evas_object_smart_data_get(view));
+    ASSERT(smartData);
+
+    imfContext = _ewk_view_imf_context_create(smartData);
+
+#ifdef HAVE_ECORE_X
+    isUsingEcoreX = WebCore::isUsingEcoreX(smartData->base.evas);
+#endif
+}
+
+EwkViewImpl::~EwkViewImpl()
+{
+    _ewk_view_imf_context_destroy(imfContext);
+
+    void* item;
+    EINA_LIST_FREE(popupMenuItems, item)
+        delete static_cast<Ewk_Popup_Menu_Item*>(item);
+}

Added: trunk/Source/WebKit2/UIProcess/API/efl/EwkViewImpl.h (0 => 132337)


--- trunk/Source/WebKit2/UIProcess/API/efl/EwkViewImpl.h	                        (rev 0)
+++ trunk/Source/WebKit2/UIProcess/API/efl/EwkViewImpl.h	2012-10-24 12:02:28 UTC (rev 132337)
@@ -0,0 +1,122 @@
+/*
+   Copyright (C) 2011 Samsung Electronics
+   Copyright (C) 2012 Intel Corporation. All rights reserved.
+
+    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 EwkViewImpl_h
+#define EwkViewImpl_h
+
+#include "RefPtrEfl.h"
+#include "WKEinaSharedString.h"
+#include "WKRetainPtr.h"
+#include <Ecore_IMF.h>
+#include <Ecore_IMF_Evas.h>
+#include <Evas.h>
+#include <wtf/OwnPtr.h>
+#include <wtf/RefPtr.h>
+
+#define EWK_VIEW_PRIV_GET(smartData, priv)                                     \
+    EwkViewImpl* priv = smartData->priv
+
+#define EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, ...)                      \
+    if (!smartData) {                                                          \
+        EINA_LOG_CRIT("smart data is null");                                   \
+        return __VA_ARGS__;                                                    \
+    }                                                                          \
+    EWK_VIEW_PRIV_GET(smartData, priv);                                        \
+    do {                                                                       \
+        if (!priv) {                                                           \
+            EINA_LOG_CRIT("no private data for object %p (%s)",                \
+                smartData->self, evas_object_type_get(smartData->self));       \
+            return __VA_ARGS__;                                                \
+        }                                                                      \
+    } while (0)
+
+namespace WebKit {
+class FindClientEfl;
+class FormClientEfl;
+class PageClientImpl;
+class PageLoadClientEfl;
+class PagePolicyClientEfl;
+class PageUIClientEfl;
+class PageViewportControllerClientEfl;
+class PageViewportController;
+class ResourceLoadClientEfl;
+class WebPageProxy;
+class WebPopupMenuProxyEfl;
+}
+
+class Ewk_Back_Forward_List;
+class Ewk_Context;
+class Ewk_Settings;
+
+class EwkViewImpl {
+public:
+    explicit EwkViewImpl(Evas_Object* view);
+    ~EwkViewImpl();
+
+    OwnPtr<WebKit::PageClientImpl> pageClient;
+#if USE(TILED_BACKING_STORE)
+    OwnPtr<WebKit::PageViewportControllerClientEfl> pageViewportControllerClient;
+    OwnPtr<WebKit::PageViewportController> pageViewportController;
+#endif
+    RefPtr<WebKit::WebPageProxy> pageProxy;
+    OwnPtr<WebKit::PageLoadClientEfl> pageLoadClient;
+    OwnPtr<WebKit::PagePolicyClientEfl> pagePolicyClient;
+    OwnPtr<WebKit::PageUIClientEfl> pageUIClient;
+    OwnPtr<WebKit::ResourceLoadClientEfl> resourceLoadClient;
+    OwnPtr<WebKit::FindClientEfl> findClient;
+    OwnPtr<WebKit::FormClientEfl> formClient;
+
+    WKEinaSharedString url;
+    WKEinaSharedString title;
+    WKEinaSharedString theme;
+    WKEinaSharedString customEncoding;
+    WKEinaSharedString cursorGroup;
+    WKEinaSharedString faviconURL;
+    RefPtr<Evas_Object> cursorObject;
+    OwnPtr<Ewk_Back_Forward_List> backForwardList;
+    OwnPtr<Ewk_Settings> settings;
+    bool areMouseEventsEnabled;
+    WKRetainPtr<WKColorPickerResultListenerRef> colorPickerResultListener;
+    RefPtr<Ewk_Context> context;
+#if ENABLE(TOUCH_EVENTS)
+    bool areTouchEventsEnabled;
+#endif
+
+    WebKit::WebPopupMenuProxyEfl* popupMenuProxy;
+    Eina_List* popupMenuItems;
+
+    Ecore_IMF_Context* imfContext;
+    bool isImfFocused;
+
+#ifdef HAVE_ECORE_X
+    bool isUsingEcoreX;
+#endif
+
+#if USE(ACCELERATED_COMPOSITING)
+    Evas_GL* evasGl;
+    Evas_GL_Context* evasGlContext;
+    Evas_GL_Surface* evasGlSurface;
+#endif
+
+private:
+    Evas_Object* m_view;
+};
+
+#endif // EwkViewImpl_h

Modified: trunk/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp (132336 => 132337)


--- trunk/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp	2012-10-24 11:57:47 UTC (rev 132336)
+++ trunk/Source/WebKit2/UIProcess/API/efl/ewk_view.cpp	2012-10-24 12:02:28 UTC (rev 132337)
@@ -21,6 +21,7 @@
 #include "config.h"
 #include "ewk_view.h"
 
+#include "EwkViewImpl.h"
 #include "FindClientEfl.h"
 #include "FormClientEfl.h"
 #include "NativeWebKeyboardEvent.h"
@@ -90,10 +91,6 @@
 
 static const int defaultCursorSize = 16;
 
-static void _ewk_view_on_favicon_changed(const char* pageURL, void* eventInfo);
-static Ecore_IMF_Context* _ewk_view_imf_context_create(Ewk_View_Smart_Data* smartData);
-static void _ewk_view_imf_context_destroy(Ecore_IMF_Context* imfContext);
-
 typedef HashMap<const WebPageProxy*, const Evas_Object*> PageViewMap;
 
 static inline PageViewMap& pageViewMap()
@@ -118,85 +115,6 @@
     pageViewMap().remove(ewk_view_page_get(ewkView));
 }
 
-struct Ewk_View_Private_Data {
-    OwnPtr<PageClientImpl> pageClient;
-#if USE(TILED_BACKING_STORE)
-    OwnPtr<PageViewportControllerClientEfl> pageViewportControllerClient;
-    OwnPtr<PageViewportController> pageViewportController;
-#endif
-    RefPtr<WebPageProxy> pageProxy;
-    OwnPtr<PageLoadClientEfl> pageLoadClient;
-    OwnPtr<PagePolicyClientEfl> pagePolicyClient;
-    OwnPtr<PageUIClientEfl> pageUIClient;
-    OwnPtr<ResourceLoadClientEfl> resourceLoadClient;
-    OwnPtr<FindClientEfl> findClient;
-    OwnPtr<FormClientEfl> formClient;
-
-    WKEinaSharedString url;
-    WKEinaSharedString title;
-    WKEinaSharedString theme;
-    WKEinaSharedString customEncoding;
-    WKEinaSharedString cursorGroup;
-    WKEinaSharedString faviconURL;
-    RefPtr<Evas_Object> cursorObject;
-    OwnPtr<Ewk_Back_Forward_List> backForwardList;
-    OwnPtr<Ewk_Settings> settings;
-    bool areMouseEventsEnabled;
-    WKRetainPtr<WKColorPickerResultListenerRef> colorPickerResultListener;
-    RefPtr<Ewk_Context> context;
-#if ENABLE(TOUCH_EVENTS)
-    bool areTouchEventsEnabled;
-#endif
-
-    WebPopupMenuProxyEfl* popupMenuProxy;
-    Eina_List* popupMenuItems;
-
-    Ecore_IMF_Context* imfContext;
-    bool isImfFocused;
-
-#ifdef HAVE_ECORE_X
-    bool isUsingEcoreX;
-#endif
-
-#if USE(ACCELERATED_COMPOSITING)
-    Evas_GL* evasGl;
-    Evas_GL_Context* evasGlContext;
-    Evas_GL_Surface* evasGlSurface;
-#endif
-
-    Ewk_View_Private_Data()
-        : areMouseEventsEnabled(false)
-#if ENABLE(TOUCH_EVENTS)
-        , areTouchEventsEnabled(false)
-#endif
-        , popupMenuProxy(0)
-        , popupMenuItems(0)
-        , imfContext(0)
-        , isImfFocused(false)
-#ifdef HAVE_ECORE_X
-        , isUsingEcoreX(false)
-#endif
-#if USE(ACCELERATED_COMPOSITING)
-        , evasGl(0)
-        , evasGlContext(0)
-        , evasGlSurface(0)
-#endif
-    { }
-
-    ~Ewk_View_Private_Data()
-    {
-        _ewk_view_imf_context_destroy(imfContext);
-
-        /* Unregister icon change callback */
-        Ewk_Favicon_Database* iconDatabase = context->faviconDatabase();
-        iconDatabase->unwatchChanges(_ewk_view_on_favicon_changed);
-
-        void* item;
-        EINA_LIST_FREE(popupMenuItems, item)
-            delete static_cast<Ewk_Popup_Menu_Item*>(item);
-    }
-};
-
 #define EWK_VIEW_TYPE_CHECK(ewkView, result)                                   \
     bool result = true;                                                        \
     do {                                                                       \
@@ -247,23 +165,6 @@
         }                                                                      \
     } while (0)
 
-#define EWK_VIEW_PRIV_GET(smartData, priv)                                     \
-    Ewk_View_Private_Data* priv = smartData->priv
-
-#define EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, ...)                      \
-    if (!smartData) {                                                          \
-        EINA_LOG_CRIT("smart data is null");                                   \
-        return __VA_ARGS__;                                                    \
-    }                                                                          \
-    EWK_VIEW_PRIV_GET(smartData, priv);                                        \
-    do {                                                                       \
-        if (!priv) {                                                           \
-            EINA_LOG_CRIT("no private data for object %p (%s)",                \
-                     smartData->self, evas_object_type_get(smartData->self));  \
-            return __VA_ARGS__;                                                \
-        }                                                                      \
-    } while (0)
-
 static void _ewk_view_smart_changed(Ewk_View_Smart_Data* smartData)
 {
     if (smartData->changed.any)
@@ -530,56 +431,14 @@
 }
 #endif
 
-static void _ewk_view_preedit_changed(void* data, Ecore_IMF_Context* context, void*)
-{
-    Ewk_View_Smart_Data* smartData = static_cast<Ewk_View_Smart_Data*>(data);
-    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv);
-
-    if (!priv->pageProxy->focusedFrame() || !priv->isImfFocused)
-        return;
-
-    char* buffer = 0;
-    ecore_imf_context_preedit_string_get(context, &buffer, 0);
-    if (!buffer)
-        return;
-
-    String preeditString = String::fromUTF8(buffer);
-    Vector<CompositionUnderline> underlines;
-    underlines.append(CompositionUnderline(0, preeditString.length(), Color(0, 0, 0), false));
-    priv->pageProxy->setComposition(preeditString, underlines, 0);
-}
-
-static void _ewk_view_commit(void* data, Ecore_IMF_Context*, void* eventInfo)
-{
-    Ewk_View_Smart_Data* smartData = static_cast<Ewk_View_Smart_Data*>(data);
-    EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv);
-    if (!eventInfo || !priv->isImfFocused)
-        return;
-
-    priv->pageProxy->confirmComposition(String::fromUTF8(static_cast<char*>(eventInfo)));
-}
-
 static Evas_Smart_Class g_parentSmartClass = EVAS_SMART_CLASS_INIT_NULL;
 
-static Ewk_View_Private_Data* _ewk_view_priv_new(Ewk_View_Smart_Data* smartData)
+static void _ewk_view_priv_del(EwkViewImpl* priv)
 {
-    Ewk_View_Private_Data* priv = new Ewk_View_Private_Data;
-    if (!priv) {
-        EINA_LOG_CRIT("could not allocate Ewk_View_Private_Data");
-        return 0;
-    }
+    /* Unregister icon change callback */
+    Ewk_Favicon_Database* iconDatabase = priv->context->faviconDatabase();
+    iconDatabase->unwatchChanges(_ewk_view_on_favicon_changed);
 
-    priv->imfContext = _ewk_view_imf_context_create(smartData);
-
-#ifdef HAVE_ECORE_X
-    priv->isUsingEcoreX = WebCore::isUsingEcoreX(smartData->base.evas);
-#endif
-
-    return priv;
-}
-
-static void _ewk_view_priv_del(Ewk_View_Private_Data* priv)
-{
     delete priv;
 }
 
@@ -604,9 +463,9 @@
 
     g_parentSmartClass.add(ewkView);
 
-    smartData->priv = _ewk_view_priv_new(smartData);
+    smartData->priv = new EwkViewImpl(ewkView);
     if (!smartData->priv) {
-        EINA_LOG_CRIT("could not allocate Ewk_View_Private_Data");
+        EINA_LOG_CRIT("could not allocate EwkViewImpl");
         evas_object_smart_data_set(ewkView, 0);
         free(smartData);
         return;
@@ -1213,36 +1072,6 @@
     evas_object_smart_callback_call(ewkView, "text,found", &matchCount);
 }
 
-static Ecore_IMF_Context* _ewk_view_imf_context_create(Ewk_View_Smart_Data* smartData)
-{
-    const char* defaultContextID = ecore_imf_context_default_id_get();
-    if (!defaultContextID)
-        return 0;
-
-    Ecore_IMF_Context* imfContext = ecore_imf_context_add(defaultContextID);
-    if (!imfContext)
-        return 0;
-
-    ecore_imf_context_event_callback_add(imfContext, ECORE_IMF_CALLBACK_PREEDIT_CHANGED, _ewk_view_preedit_changed, smartData);
-    ecore_imf_context_event_callback_add(imfContext, ECORE_IMF_CALLBACK_COMMIT, _ewk_view_commit, smartData);
-
-    Ecore_Evas* ecoreEvas = ecore_evas_ecore_evas_get(smartData->base.evas);
-    ecore_imf_context_client_window_set(imfContext, (void*)ecore_evas_window_get(ecoreEvas));
-    ecore_imf_context_client_canvas_set(imfContext, smartData->base.evas);
-
-    return imfContext;
-}
-
-static void _ewk_view_imf_context_destroy(Ecore_IMF_Context* imfContext)
-{
-    if (!imfContext)
-        return;
-
-    ecore_imf_context_event_callback_del(imfContext, ECORE_IMF_CALLBACK_PREEDIT_CHANGED, _ewk_view_preedit_changed);
-    ecore_imf_context_event_callback_del(imfContext, ECORE_IMF_CALLBACK_COMMIT, _ewk_view_commit);
-    ecore_imf_context_del(imfContext);
-}
-
 /**
  * @internal
  * The view was requested to update text input state

Modified: trunk/Source/WebKit2/UIProcess/API/efl/ewk_view.h (132336 => 132337)


--- trunk/Source/WebKit2/UIProcess/API/efl/ewk_view.h	2012-10-24 11:57:47 UTC (rev 132336)
+++ trunk/Source/WebKit2/UIProcess/API/efl/ewk_view.h	2012-10-24 12:02:28 UTC (rev 132337)
@@ -182,7 +182,7 @@
  */
 #define EWK_VIEW_SMART_CLASS_INIT_NAME_VERSION(name) EWK_VIEW_SMART_CLASS_INIT(EVAS_SMART_CLASS_INIT_NAME_VERSION(name))
 
-typedef struct Ewk_View_Private_Data Ewk_View_Private_Data;
+typedef struct EwkViewImpl EwkViewImpl;
 /**
  * @brief Contains an internal View data.
  *
@@ -194,7 +194,7 @@
     const Ewk_View_Smart_Class* api; /**< reference to casted class instance */
     Evas_Object* self; /**< reference to owner object */
     Evas_Object* image; /**< reference to evas_object_image for drawing web contents */
-    Ewk_View_Private_Data* priv; /**< should never be accessed, c++ stuff */
+    EwkViewImpl* priv; /**< should never be accessed, c++ stuff */
     struct {
         Evas_Coord x, y, w, h; /**< last used viewport */
     } view;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to