EXPORT_API int ime_event_set_prediction_hint_cb(ime_prediction_hint_set_cb callback_func, void *user_data);
/**
+ * @brief Send a private command to the associated text input UI control.
+ * This can be used by IME to deliver specific data to an application.
+ * The data format MUST be negotiated by both application and IME.
+ *
+ * @since_tizen 4.0
+ *
+ * @privlevel public
+ *
+ * @privilege %http://tizen.org/privilege/ime
+ *
+ * @param[in] command The UTF-8 string to be sent
+ *
+ * @return 0 on success, otherwise a negative error value
+ * @retval #IME_ERROR_NONE No error
+ * @retval #IME_ERROR_PERMISSION_DENIED The application does not have the privilege to call this function
+ * @retval #IME_ERROR_NOT_RUNNING IME main loop isn't started yet
+ */
+EXPORT_API int ime_send_private_command(const char *command);
+
+/**
* @}
*/
return IME_ERROR_NONE;
}
+int ime_send_private_command(const char *command)
+{
+ ime_error_e retVal = IME_ERROR_NONE;
+
+ if (!command) {
+ LOGW("IME_ERROR_INVALID_PARAMETER");
+ return IME_ERROR_INVALID_PARAMETER;
+ }
+
+ if (!g_running) {
+ LOGW("IME_ERROR_NOT_RUNNING");
+ return IME_ERROR_NOT_RUNNING;
+ }
+
+ retVal = _check_privilege();
+ if (retVal != IME_ERROR_NONE) {
+ LOGE("_check_privilege returned %d.", retVal);
+ return retVal;
+ }
+
+ g_core.send_private_command(command);
+
+ return IME_ERROR_NONE;
+}
+
int ime_context_get_layout(ime_context_h context, Ecore_IMF_Input_Panel_Layout *layout)
{
ime_error_e retVal = IME_ERROR_NONE;