Use the instance of the internal package manager to skip the privilege check and...
authorbs0111.cho <bs0111.cho@samsung.com>
Mon, 24 Jun 2013 02:50:58 +0000 (11:50 +0900)
committerbs0111.cho <bs0111.cho@samsung.com>
Mon, 24 Jun 2013 02:50:58 +0000 (11:50 +0900)
Change-Id: Ic04efff6374f0d32d511eef5c300231ab2711d24
Signed-off-by: bs0111.cho <bs0111.cho@samsung.com>
src/FUiImeInputMethodManager.cpp [changed mode: 0644->0755]
src/FUiIme_InputMethodManagerImpl.cpp

old mode 100644 (file)
new mode 100755 (executable)
index 2d8e206..66e8b7c
@@ -114,7 +114,11 @@ InputMethodManager::SetInputMethod(const AppId& id)
        r = _AccessController::CheckUserPrivilege(_PRV_IMEMANAGER);\r
        SysTryReturnResult(NID_UI_IME, r == E_SUCCESS, E_PRIVILEGE_DENIED, "The application does not have the privilege to call this method.");\r
 \r
-       return __pInputMethodManagerImpl->SetInputMethod(id);\r
+       r = __pInputMethodManagerImpl->SetInputMethod(id);\r
+       SysTryReturnResult(NID_UI_IME, r == E_SUCCESS, E_APP_NOT_INSTALLED,\r
+                                       "The specified ID does not match with any of the application IDs for the input methods installed in the system.");\r
+\r
+       return r;\r
 }\r
 \r
 bool\r
index aa7eab9..45fa5be 100755 (executable)
@@ -29,7 +29,7 @@
 #include <isf_control.h>\r
 \r
 #include <FAppPkgPackageAppInfo.h>\r
-#include <FAppPkgPackageManager.h>\r
+#include <FAppPkg_PackageManagerImpl.h>\r
 #include <FBaseColArrayList.h>\r
 #include <FBaseColTypes.h>\r
 #include <FBaseString.h>\r
@@ -324,7 +324,7 @@ _InputMethodManagerImpl::GetInputMethodInfoListN(void) const
        IList* pLanguageList = null;\r
 \r
        const AppId* pAppId = null;\r
-       const PackageManager* pPackageManager = null;\r
+       const _PackageManagerImpl* pPackageManagerImpl = null;\r
        PackageAppInfo* pPackageAppInfo = null;\r
 \r
        std::unique_ptr<ArrayList> pInputMethodInfoList(new(std::nothrow) ArrayList(SingleObjectDeleter));\r
@@ -391,11 +391,11 @@ _InputMethodManagerImpl::GetInputMethodInfoListN(void) const
                r = GetLastResult();\r
                SysTryCatch(NID_UI_IME, pAppId, , r, "[%s] Propagating.", GetErrorMessage(r));\r
 \r
-               pPackageManager = PackageManager::GetInstance();\r
+               pPackageManagerImpl = _PackageManagerImpl::GetInstance();\r
                r = GetLastResult();\r
-               SysTryCatch(NID_UI_IME, pPackageManager, , r, "[%s] Propagating.", GetErrorMessage(r));\r
+               SysTryCatch(NID_UI_IME, pPackageManagerImpl, , r, "[%s] Propagating.", GetErrorMessage(r));\r
 \r
-               pPackageAppInfo = pPackageManager->GetPackageAppInfoN(*pAppId);\r
+               pPackageAppInfo = pPackageManagerImpl->GetPackageAppInfoN(*pAppId);\r
                r = GetLastResult();\r
                SysTryCatch(NID_UI_IME, pPackageAppInfo, , r, "[%s] Propagating.", GetErrorMessage(r));\r
 \r
@@ -446,11 +446,11 @@ _InputMethodManagerImpl::SetInputMethod(const AppId& id)
 {\r
        result r = E_SUCCESS;\r
 \r
-       PackageManager* pPackageManager = PackageManager::GetInstance();\r
+       _PackageManagerImpl* pPackageManagerImpl = _PackageManagerImpl::GetInstance();\r
        r = GetLastResult();\r
-       SysTryReturnResult(NID_UI_IME, pPackageManager, r, "Propagating.");\r
+       SysTryReturnResult(NID_UI_IME, pPackageManagerImpl, r, "Propagating.");\r
 \r
-       std::unique_ptr<PackageAppInfo> pPackageAppInfo(pPackageManager->GetPackageAppInfoN(id));\r
+       std::unique_ptr<PackageAppInfo> pPackageAppInfo(pPackageManagerImpl->GetPackageAppInfoN(id));\r
        r = GetLastResult();\r
        SysTryReturnResult(NID_UI_IME, pPackageAppInfo, r, "Propagating.");\r
 \r