[4.0] Fix finalize issue 56/163756/2
authorxb.teng <xb.teng@samsung.com>
Wed, 13 Dec 2017 16:21:19 +0000 (00:21 +0800)
committerxb.teng <xb.teng@samsung.com>
Wed, 13 Dec 2017 16:33:09 +0000 (00:33 +0800)
Change-Id: I45633ba56658a813bb8f0f87e59a77777995f788

adaptors/ecore/wayland/imf-manager-impl-ecore-wl.cpp
adaptors/x11/imf-manager-impl-x.cpp

index 7fd3857..6f10a2d 100755 (executable)
@@ -265,7 +265,6 @@ void ImfManager::Finalize()
   {
     DisconnectCallbacks();
     DeleteContext();
-    ecore_imf_shutdown();
     mInited = false;
   }
 }
@@ -326,9 +325,7 @@ Dali::ImfManager ImfManager::Get()
 
   if ( ( imfManager != NULL ) && !imfManager->mInited )
   {
-    ecore_imf_init();
     imfManager->CreateContext( imfManager->mEcoreWlwin );
-
     imfManager->ConnectCallbacks();
     imfManager->mInited = true;
   }
@@ -345,11 +342,13 @@ ImfManager::ImfManager( Ecore_Wl_Window *ecoreWlwin )
   mRestoreAfterFocusLost( false ),
   mIdleCallbackConnected( false )
 {
+  ecore_imf_init();
 }
 
 ImfManager::~ImfManager()
 {
   Finalize();
+  ecore_imf_shutdown();
 }
 
 void ImfManager::CreateContext( Ecore_Wl_Window *ecoreWlwin )
index ac52681..98f57dd 100755 (executable)
@@ -130,7 +130,6 @@ void ImfManager::Finalize()
     VirtualKeyboard::DisconnectCallbacks( mIMFContext );
     DisconnectCallbacks();
     DeleteContext();
-    ecore_imf_shutdown();
     mInited = false;
   }
 }
@@ -192,7 +191,6 @@ Dali::ImfManager ImfManager::Get()
 
   if ( ( imfManager != NULL ) &&!imfManager->mInited )
   {
-    ecore_imf_init();
     imfManager->CreateContext( imfManager->mEcoreXWin );
 
     imfManager->ConnectCallbacks();
@@ -212,11 +210,13 @@ ImfManager::ImfManager(Ecore_X_Window ecoreXwin )
   mRestoreAfterFocusLost( false ),
   mIdleCallbackConnected( false )
 {
+  ecore_imf_init();
 }
 
 ImfManager::~ImfManager()
 {
   Finalize();
+  ecore_imf_shutdown();
 }
 
 void ImfManager::CreateContext( Ecore_X_Window ecoreXwin )