Fix crash issue occured when terminating
[platform/core/uifw/inputdelegator.git] / inc / w-input-selector.h
index 5bfbc5e..cedcf17 100755 (executable)
 
 #define _(str) gettext(str)
 
-#define APP_EDJ_FILE "edje/w-input-selector.edj"
-#define STT_EDJ_FILE "edje/w-input-stt.edj"
+#define APP_EDJ_FILE_WEARABLE "edje/wearable/w-input-selector.edj"
+#define STT_EDJ_FILE_WEARABLE "edje/wearable/w-input-stt.edj"
+
+#define APP_EDJ_FILE_MOBILE "edje/mobile/w-input-selector.edj"
+#define STT_EDJ_FILE_MOBILE "edje/mobile/w-input-stt.edj"
+
+#define APP_EDJ_FILE_TV "edje/tv/w-input-selector.edj"
+#define STT_EDJ_FILE_TV "edje/tv/w-input-stt.edj"
+
 #define LOCALEDIR      "/usr/apps/org.tizen.inputdelegator/res/locale"
 #define RESOURCEDIR "/usr/apps/org.tizen.inputdelegator/res/"
 
@@ -37,6 +44,9 @@
 #include <Elementary.h>
 #include <Evas.h>
 #include <efl_extension.h>
+#include <string>
+
+using namespace std;
 
 enum {
        APP_TYPE_SELECT_MODE = 1,
@@ -45,7 +55,8 @@ enum {
        APP_TYPE_REPLY,
        APP_TYPE_HANDWRITING,
        APP_TYPE_KEYBOARD,
-       APP_TYPE_KEYBOARD_FROM_SMS,
+       APP_TYPE_DRAWING,
+       APP_TYPE_RECORDING,
 };
 
 enum {
@@ -53,6 +64,31 @@ enum {
        REPLY_APP_CONTROL,
 };
 
+enum {
+    MIME_TYPE_ALL = 0,
+    MIME_TYPE_IMAGE,
+    MIME_TYPE_AUDIO,
+    MIME_TYPE_TEXT,
+};
+
+typedef enum {
+   TIZEN_PROFILE_UNKNOWN = 0,
+   TIZEN_PROFILE_MOBILE = 0x1,
+   TIZEN_PROFILE_WEARABLE = 0x2,
+   TIZEN_PROFILE_TV = 0x4,
+   TIZEN_PROFILE_IVI = 0x8,
+   TIZEN_PROFILE_COMMON = 0x10,
+} tizen_profile_t;
+extern tizen_profile_t _get_tizen_profile();
+#if !defined(_TV)
+#define _TV (_get_tizen_profile() == TIZEN_PROFILE_TV)
+#endif
+#if !defined(_MOBILE)
+#define _MOBILE (_get_tizen_profile() == TIZEN_PROFILE_MOBILE)
+#endif
+#if !defined(_WEARABLE)
+#define _WEARABLE (_get_tizen_profile() == TIZEN_PROFILE_WEARABLE)
+#endif
 
 typedef struct appdata{
        Evas_Object* win_main;
@@ -64,6 +100,7 @@ typedef struct appdata{
 
        app_control_h source_app_control;
        int app_type;
+       int mime_type;
        int reply_type;
        char* res_path;
        char* shared_res_path;
@@ -80,21 +117,24 @@ typedef enum
 
 struct _InputKeyboardData
 {
-       char *app_id;
-       char **data_array;
-       int data_array_len;
-       char *guide_text;
-       char *default_text;
+       string guide_text;
+       string default_text;
+       string return_key_type;
+       int max_text_length;
+       int cursor_position_set;
 };
-
 typedef struct _InputKeyboardData InputKeyboardData;
 
-
+struct _InputTypeData
+{
+       char **input_type_array;
+       int input_type_array_len;
+};
+typedef struct _InputTypeData InputTypeData;
 
 void _app_terminate(void* user_data);
 void reply_to_sender_by_callback_for_back();
-void reply_to_sender_by_callback(const char *value, const char *type);
-void reply_to_sender_by_appcontrol(void *data, const char *value, const char *type);
+void reply_to_sender_by_callback(const char *value, const char *type, const char *path[], const char *cursor_pos);
 char* get_resource_path();
 char* get_shared_resource_path();
 void show_gl_focus(Eina_Bool bVisible);