Revert "[4.0] Add Finalize api for imf-manager" 56/155656/1
authorSeoyeon Kim <seoyeon2.kim@samsung.com>
Mon, 16 Oct 2017 02:08:55 +0000 (11:08 +0900)
committerSeoyeon Kim <seoyeon2.kim@samsung.com>
Mon, 16 Oct 2017 02:09:00 +0000 (11:09 +0900)
This reverts commit 2bcf10a589372e038ffd026de5c352845715a951.

Change-Id: Ia85b326514c8710bebbc0f76a4b198c47acc1fbd

adaptors/devel-api/adaptor-framework/imf-manager.cpp [changed mode: 0755->0644]
adaptors/devel-api/adaptor-framework/imf-manager.h [changed mode: 0755->0644]
adaptors/ecore/wayland/imf-manager-impl-ecore-wl.cpp [changed mode: 0755->0644]
adaptors/ecore/wayland/imf-manager-impl.h [changed mode: 0755->0644]
adaptors/integration-api/x11/imf-manager-impl.h [changed mode: 0755->0644]
adaptors/wayland/input/text/imf/imf-manager-impl-wl.cpp [changed mode: 0755->0644]
adaptors/wayland/input/text/imf/imf-manager-impl.h [changed mode: 0755->0644]
adaptors/x11/imf-manager-impl-x.cpp [changed mode: 0755->0644]

old mode 100755 (executable)
new mode 100644 (file)
index 8571653..620fdd1
@@ -33,11 +33,6 @@ ImfManager::~ImfManager()
 {
 }
 
-void ImfManager::Finalize()
-{
-  Internal::Adaptor::ImfManager::GetImplementation(*this).Finalize();
-}
-
 ImfManager ImfManager::Get()
 {
   return Internal::Adaptor::ImfManager::Get();
old mode 100755 (executable)
new mode 100644 (file)
index 0efdeac..2780d9a
@@ -170,13 +170,6 @@ public:
 public:
 
   /**
-   * @brief Finalize the IMF.
-   *
-   * It means that the context will be deleted.
-   */
-  void Finalize();
-
-  /**
    * @brief Retrieve a handle to the instance of ImfManager.
    * @return A handle to the ImfManager.
    */
old mode 100755 (executable)
new mode 100644 (file)
index 942d96c..69e5e41
@@ -258,18 +258,6 @@ TypeRegistration IMF_MANAGER_TYPE( typeid(Dali::ImfManager), typeid(Dali::BaseHa
 
 } // unnamed namespace
 
-void ImfManager::Finalize()
-{
-  DALI_LOG_INFO( gLogFilter, Debug::General, "ImfManager::Finalize\n" );
-  if ( mInited )
-  {
-    DisconnectCallbacks();
-    DeleteContext();
-    ecore_imf_shutdown();
-    mInited = false;
-  }
-}
-
 bool ImfManager::IsAvailable()
 {
   bool available( false );
@@ -286,7 +274,6 @@ bool ImfManager::IsAvailable()
 Dali::ImfManager ImfManager::Get()
 {
   Dali::ImfManager manager;
-  ImfManager *imfManager = NULL;
 
   Dali::SingletonService service( SingletonService::Get() );
   if ( service )
@@ -296,12 +283,12 @@ Dali::ImfManager ImfManager::Get()
     if( handle )
     {
       // If so, downcast the handle
-      imfManager = dynamic_cast< ImfManager* >( handle.GetObjectPtr() );
-      manager = Dali::ImfManager( imfManager );
+      manager = Dali::ImfManager( dynamic_cast< ImfManager* >( handle.GetObjectPtr() ) );
     }
     else if ( Adaptor::IsAvailable() )
     {
       // Create instance and register singleton only if the adaptor is available
+
       Adaptor& adaptorImpl( Adaptor::GetImplementation( Adaptor::Get() ) );
       Any nativeWindow = adaptorImpl.GetNativeWindowHandle();
 
@@ -313,8 +300,8 @@ Dali::ImfManager ImfManager::Get()
         // If we fail to get Ecore_Wl_Window, we can't use the ImfManager correctly.
         // Thus you have to call "ecore_imf_context_client_window_set" somewhere.
         // In EvasPlugIn, this function is called in EvasPlugin::ConnectEcoreEvent().
-        imfManager = new ImfManager( ecoreWwin );
-        manager = Dali::ImfManager( imfManager );
+
+        manager = Dali::ImfManager( new ImfManager( ecoreWwin ) );
         service.Register( typeid( manager ), manager );
       }
       else
@@ -324,37 +311,35 @@ Dali::ImfManager ImfManager::Get()
     }
   }
 
-  if ( ( imfManager != NULL ) && !imfManager->mInited )
-  {
-    ecore_imf_init();
-    imfManager->CreateContext( imfManager->mEcoreWlwin );
-
-    imfManager->ConnectCallbacks();
-    imfManager->mInited = true;
-  }
-
   return manager;
 }
 
 ImfManager::ImfManager( Ecore_Wl_Window *ecoreWlwin )
 : mIMFContext(),
-  mEcoreWlwin( ecoreWlwin ),
   mIMFCursorPosition( 0 ),
   mSurroundingText(),
-  mInited( false ),
   mRestoreAfterFocusLost( false ),
   mIdleCallbackConnected( false )
 {
+  ecore_imf_init();
+  CreateContext( ecoreWlwin );
+
+  ConnectCallbacks();
 }
 
 ImfManager::~ImfManager()
 {
-  Finalize();
+  DisconnectCallbacks();
+
+  DeleteContext();
+  ecore_imf_shutdown();
 }
 
+
 void ImfManager::CreateContext( Ecore_Wl_Window *ecoreWlwin )
 {
   DALI_LOG_INFO( gLogFilter, Debug::General, "ImfManager::CreateContext\n" );
+
   const char *contextId = ecore_imf_context_default_id_get();
   if( contextId )
   {
old mode 100755 (executable)
new mode 100644 (file)
index 3d2d451..e3a73ad
@@ -53,11 +53,6 @@ public:
 public:
 
   /**
-   * @copydoc Dali::ImfManager::Finalize()
-   */
-  void Finalize();
-
-  /**
    * Check whether the ImfManager is available.
    * @return true if available, false otherwise
    */
@@ -288,11 +283,9 @@ private:
 
 private:
   Ecore_IMF_Context* mIMFContext;
-  Ecore_Wl_Window *mEcoreWlwin;
   int mIMFCursorPosition;
   std::string mSurroundingText;
 
-  bool mInited:1;                            ///< Whether the imf is already inited.
   bool mRestoreAfterFocusLost:1;             ///< Whether the keyboard needs to be restored (activated ) after focus regained.
   bool mIdleCallbackConnected:1;             ///< Whether the idle callback is already connected.
 
old mode 100755 (executable)
new mode 100644 (file)
index f069d42..aab3f9f
@@ -50,11 +50,6 @@ public:
 public:
 
   /**
-   * @copydoc Dali::ImfManager::Finalize()
-   */
-  void Finalize();
-
-  /**
    * Check whether the ImfManager is available.
    * @return true if available, false otherwise
    */
@@ -72,7 +67,7 @@ public:
    * Constructor
    * @param[in] ecoreXwin, The window is created by application.
    */
-  ImfManager( Ecore_X_Window* ecoreXwin );
+  ImfManager( Ecore_X_Window ecoreXwin );
 
   /**
    * Connect Callbacks required for IMF.
@@ -270,7 +265,7 @@ private:
    * Context created the first time and kept until deleted.
    * @param[in] ecoreXwin, The window is created by application.
    */
-  void CreateContext( Ecore_X_Window* ecoreXwin );
+  void CreateContext( Ecore_X_Window ecoreXwin );
 
   /**
    * @copydoc Dali::ImfManager::DeleteContext()
@@ -284,11 +279,9 @@ private:
 
 private:
   Ecore_IMF_Context* mIMFContext;
-  Ecore_X_Window* mEcoreXWin;
   int mIMFCursorPosition;
   std::string mSurroundingText;
 
-  bool mInited:1;                            ///< Whether the imf is already inited.
   bool mRestoreAfterFocusLost:1;             ///< Whether the keyboard needs to be restored (activated ) after focus regained.
   bool mIdleCallbackConnected:1;             ///< Whether the idle callback is already connected.
   InputMethodOptions        mOptions;
old mode 100755 (executable)
new mode 100644 (file)
index 37a86e4..ec7cdc7
@@ -104,18 +104,8 @@ BaseHandle Create()
 
 TypeRegistration IMF_MANAGER_TYPE( typeid(Dali::ImfManager), typeid(Dali::BaseHandle), Create );
 
-}
 
-void ImfManager::Finalize()
-{
-  DALI_LOG_INFO( gLogFilter, Debug::General, "ImfManager::Finalize\n" );
-  if ( mInited )
-  {
-    DisconnectCallbacks();
-    mInited = false;
-  }
 }
-
 bool ImfManager::IsAvailable()
 {
   bool available( false );
@@ -131,7 +121,6 @@ bool ImfManager::IsAvailable()
 Dali::ImfManager ImfManager::Get()
 {
   Dali::ImfManager manager;
-  ImfManager *imfManager = NULL;
 
   Dali::SingletonService service( SingletonService::Get() );
   if (! service )
@@ -144,42 +133,31 @@ Dali::ImfManager ImfManager::Get()
   if( handle )
   {
     // If so, downcast the handle
-    imfManager = dynamic_cast< ImfManager* >( handle.GetObjectPtr() );
-    manager = Dali::ImfManager( imfManager );
+    manager = Dali::ImfManager( dynamic_cast< ImfManager* >( handle.GetObjectPtr() ) );
   }
   else if ( Adaptor::IsAvailable() )
   {
     // Create instance and register singleton only if the adaptor is available
-    imfManager = new ImfManager();
-    manager = Dali::ImfManager( imfManager );
+    manager = Dali::ImfManager( new ImfManager() );
     service.Register( typeid( manager ), manager );
   }
   else
   {
     DALI_LOG_ERROR("Failed to get native window handle\n");
   }
-
-  if ( ( imfManager != NULL ) && !imfManager->mInited )
-  {
-    imfManager->ConnectCallbacks();
-    imfManager->mInited = true;
-  }
-
   return manager;
 }
-
 ImfManager::ImfManager()
 : mTextInputManager( TextInputManager::Get() ),
   mPreEditCursorPosition( 0 ),
   mEditCursorPosition( 0 ),
-  mInited( false ),
   mRestoreAfterFocusLost( false )
 {
+  ConnectCallbacks();
 }
-
 ImfManager::~ImfManager()
 {
-  Finalize();
+  DisconnectCallbacks();
 }
 
 void ImfManager::ConnectCallbacks()
old mode 100755 (executable)
new mode 100644 (file)
index 8b4df80..d0739a8
@@ -60,10 +60,6 @@ public:
   typedef Dali::ImfManager::KeyboardTypeSignalType ImfKeyboardTypeSignalType;
 
 public:
-  /**
-   * @copydoc Dali::ImfManager::Finalize()
-   */
-  void Finalize();
 
   /**
    * @brief Check whether the ImfManager is available.
@@ -310,7 +306,6 @@ private:
   std::string mSurroundingText;
   int mPreEditCursorPosition;
   int mEditCursorPosition;
-  bool mInited:1;                 ///< Whether the imf is already inited.
   bool mRestoreAfterFocusLost:1;  ///< Whether the keyboard needs to be restored (activated ) after focus regained.
 
 public:
old mode 100755 (executable)
new mode 100644 (file)
index 1d9294f..6d9d2a2
@@ -122,19 +122,6 @@ void ImfDeleteSurrounding( void *data, Ecore_IMF_Context *imfContext, void *even
 
 } // unnamed namespace
 
-void ImfManager::Finalize()
-{
-  DALI_LOG_INFO( gLogFilter, Debug::General, "ImfManager::Finalize\n" );
-  if ( mInited )
-  {
-    VirtualKeyboard::DisconnectCallbacks( mIMFContext );
-    DisconnectCallbacks();
-    DeleteContext();
-    ecore_imf_shutdown();
-    mInited = false;
-  }
-}
-
 bool ImfManager::IsAvailable()
 {
   bool available( false );
@@ -151,7 +138,6 @@ bool ImfManager::IsAvailable()
 Dali::ImfManager ImfManager::Get()
 {
   Dali::ImfManager manager;
-  ImfManager *imfManager = NULL;
 
   Dali::SingletonService service( SingletonService::Get() );
   if ( service )
@@ -161,8 +147,7 @@ Dali::ImfManager ImfManager::Get()
     if( handle )
     {
       // If so, downcast the handle
-      imfManager = dynamic_cast< ImfManager* >( handle.GetObjectPtr() );
-      manager = Dali::ImfManager( imfManager );
+      manager = Dali::ImfManager( dynamic_cast< ImfManager* >( handle.GetObjectPtr() ) );
     }
     else if ( Adaptor::IsAvailable() )
     {
@@ -173,14 +158,14 @@ Dali::ImfManager ImfManager::Get()
 
       // The Ecore_X_Window needs to use the ImfManager.
       // Only when the render surface is window, we can get the Ecore_X_Window.
-      Ecore_X_Window *ecoreXwin( AnyCast< Ecore_X_Window* >( nativeWindow ) );
-      if ( ecoreXwin )
+      Ecore_X_Window ecoreXwin( AnyCast<Ecore_X_Window>(nativeWindow) );
+      if (ecoreXwin)
       {
         // If we fail to get Ecore_X_Window, we can't use the ImfManager correctly.
         // Thus you have to call "ecore_imf_context_client_window_set" somewhere.
         // In EvasPlugIn, this function is called in EvasPlugin::ConnectEcoreEvent().
-        imfManager = new ImfManager( ecoreXwin );
-        manager = Dali::ImfManager( imfManager );
+
+        manager = Dali::ImfManager( new ImfManager( ecoreXwin ) );
         service.Register( typeid( manager ), manager );
       }
       else
@@ -190,36 +175,33 @@ Dali::ImfManager ImfManager::Get()
     }
   }
 
-  if ( ( imfManager != NULL ) !imfManager->mInited )
-  {
-    ecore_imf_init();
-    imfManager->CreateContext( imfManager->mEcoreXWin );
-
-    imfManager->ConnectCallbacks();
-    VirtualKeyboard::ConnectCallbacks( mIMFContext );
-    imfManager->mInited = true;
-  }
-
   return manager;
 }
 
-ImfManager::ImfManager( Ecore_X_Window* ecoreXwin )
+ImfManager::ImfManager( Ecore_X_Window ecoreXwin )
 : mIMFContext(),
-  mEcoreXWin( ecoreXwin ),
   mIMFCursorPosition( 0 ),
   mSurroundingText(),
-  mInited( false ),
   mRestoreAfterFocusLost( false ),
   mIdleCallbackConnected( false )
 {
+  ecore_imf_init();
+  CreateContext( ecoreXwin );
+
+  ConnectCallbacks();
+  VirtualKeyboard::ConnectCallbacks( mIMFContext );
 }
 
 ImfManager::~ImfManager()
 {
-  Finalize();
+  VirtualKeyboard::DisconnectCallbacks( mIMFContext );
+  DisconnectCallbacks();
+
+  DeleteContext();
+  ecore_imf_shutdown();
 }
 
-void ImfManager::CreateContext( Ecore_X_Window* ecoreXwin )
+void ImfManager::CreateContext( Ecore_X_Window ecoreXwin )
 {
   DALI_LOG_INFO( gLogFilter, Debug::General, "ImfManager::CreateContext\n" );