#include <string>
#include <vconf.h>
#include <vconf-keys.h>
+#include <stdint.h>
+#include <system_info.h>
#include "w-input-selector.h"
#include "w-input-template.h"
#include "w-input-keyboard.h"
#include "w-input-stt-ise.h"
#include "w-input-emoticon.h"
-#include "w-input-stt-tos.h"
#include <stt.h>
Evas_Coord last_step; // 0 ~ 9 for gesture, 10~11 for rotary
+tizen_profile_t _get_tizen_profile()
+{
+ static tizen_profile_t profile = TIZEN_PROFILE_UNKNOWN;
+ if (__builtin_expect(profile != TIZEN_PROFILE_UNKNOWN, 1))
+ return profile;
+
+ char *profileName;
+ system_info_get_platform_string("http://tizen.org/feature/profile", &profileName);
+ switch (*profileName)
+ {
+ case 'm':
+ case 'M':
+ profile = TIZEN_PROFILE_MOBILE;
+ break;
+ case 'w':
+ case 'W':
+ profile = TIZEN_PROFILE_WEARABLE;
+ break;
+ case 't':
+ case 'T':
+ profile = TIZEN_PROFILE_TV;
+ break;
+ case 'i':
+ case 'I':
+ profile = TIZEN_PROFILE_IVI;
+ break;
+ default: // common or unknown ==> ALL ARE COMMON.
+ profile = TIZEN_PROFILE_COMMON;
+ }
+ free(profileName);
+
+ return profile;
+}
+
void _init_app_data(App_Data* app_data);
static void _app_language_changed(app_event_info_h event_info, void *user_data);
string stt_edj_path = get_resource_path();
string app_edj_path = get_resource_path();
- stt_edj_path = stt_edj_path + STT_EDJ_FILE;
- app_edj_path = app_edj_path + APP_EDJ_FILE;
+ if (_WEARABLE) {
+ stt_edj_path = stt_edj_path + STT_EDJ_FILE_WEARABLE;
+ app_edj_path = app_edj_path + APP_EDJ_FILE_WEARABLE;
+ } else if (_MOBILE) {
+ stt_edj_path = stt_edj_path + STT_EDJ_FILE_MOBILE;
+ app_edj_path = app_edj_path + APP_EDJ_FILE_MOBILE;
+ }
elm_theme_extension_add(NULL, stt_edj_path.c_str());
elm_theme_extension_add(NULL, app_edj_path.c_str());
PRINTFUNC(DLOG_DEBUG, "");
- if(!ad)
+ if (!ad)
return;
-#if 0
- bool bAgreed = false;
- stt_get_user_agreement(&bAgreed);
- if(!bAgreed){
-#endif
- if(is_tos_N66_agreed() == EINA_FALSE){
- if(is_sap_connection() == EINA_TRUE){
- ise_show_tos_n66_popup(ad);
- } else {
- launch_bt_connection_popup(ad);
- }
- } else {
- ise_show_stt_popup(ad);
- }
+ ise_show_stt_popup(ad);
}
static void _input_template_notify_cb(void *user_data)
PRINTFUNC(DLOG_DEBUG, "");
- if(!ad)
+ if (!ad)
return;
ise_show_emoticon_list(ad);
if (item) {
elm_genlist_item_selected_set(item, EINA_FALSE);
- index = (unsigned int) elm_object_item_data_get(item);
+ index = (uintptr_t) elm_object_item_data_get(item);
const std::vector<TemplateData> template_list = input_template_get_list();
if (index < (int)template_list.size()) {
static char * __ise_template_gl_text_get(void *data, Evas_Object *obj, const char *part)
{
- if(!strcmp(part, "elm.text")) {
- unsigned int index = (unsigned int)data;
+ if (!strcmp(part, "elm.text")) {
+ unsigned int index = (uintptr_t)data;
const std::vector<TemplateData> template_list = input_template_get_list();
- if(index < template_list.size()) {
- if(template_list[index].use_gettext) {
+ if (index < template_list.size()) {
+ if (template_list[index].use_gettext) {
return strdup(gettext(template_list[index].text.c_str()));
} else {
Eina_Strbuf *buf = NULL;
char *markup = NULL;
buf = eina_strbuf_new();
- if(buf) {
+ if (buf) {
eina_strbuf_append(buf, template_list[index].text.c_str());
eina_strbuf_replace_all(buf, "\n", "");
eina_strbuf_replace_all(buf, "\r", "");
Evas_Object* ic = elm_image_add(btn);
elm_image_resizable_set(ic, EINA_TRUE, EINA_TRUE);
string path = get_resource_path();
+ if (_WEARABLE)
+ path = path + "wearable/";
+ else
+ path = path + "mobile/";
+
if (!strcmp(part, "elm.icon.1")) {
string path_ic;
- if(!strcmp(first_input_type, "input_voice")) {
+ if (!strcmp(first_input_type, "input_voice")) {
elm_object_style_set(btn, "ime_button_stt");
path_ic = path + "images/w_mode_stt_ic.png";
} else if (!strcmp(first_input_type, "input_emoticon")) {
evas_object_layer_set(btn, 32000);
} else if (!strcmp(part, "elm.icon.2")){
string path_ic;
- if(!strcmp(second_input_type, "input_voice")) {
+ if (!strcmp(second_input_type, "input_voice")) {
elm_object_style_set(btn, "ime_button_stt");
path_ic = path + "images/w_mode_stt_ic.png";
} else if (!strcmp(second_input_type, "input_emoticon")) {
string path = get_resource_path();
if (!strcmp(part, "elm.icon.1.touch_area")) {
evas_object_layer_set(btn, 32000);
- if(!strcmp(first_input_type, "input_voice")) {
+ if (!strcmp(first_input_type, "input_voice")) {
evas_object_smart_callback_add(btn, "clicked", _stt_clicked_cb, app_data);
} else if (!strcmp(first_input_type, "input_emoticon")) {
evas_object_smart_callback_add(btn, "clicked", _emoticon_clicked_cb, app_data);
}
} else if (!strcmp(part, "elm.icon.2.touch_area")){
evas_object_layer_set(btn, 32000);
- if(!strcmp(second_input_type, "input_voice")) {
+ if (!strcmp(second_input_type, "input_voice")) {
evas_object_smart_callback_add(btn, "clicked", _stt_clicked_cb, app_data);
} else if (!strcmp(second_input_type, "input_emoticon")) {
evas_object_smart_callback_add(btn, "clicked", _emoticon_clicked_cb, app_data);
Evas_Object* ic = elm_image_add(btn);
elm_image_resizable_set(ic, EINA_TRUE, EINA_TRUE);
string path = get_resource_path();
+ if (_WEARABLE)
+ path = path + "wearable/";
+ else
+ path = path + "mobile/";
+
if (!strcmp(part, "elm.icon.1")) {
elm_object_style_set(btn, "ime_button_stt");
string path_ic = path + "images/w_mode_stt_ic.png";
void set_source_caller_app_id(app_control_h app_control)
{
- if(!app_control){
+ if (!app_control){
PRINTFUNC(DLOG_ERROR, "can't get app_control");
return;
}
char *caller = NULL;
app_control_get_caller(app_data->source_app_control, &caller);
- if(caller){
+ if (caller){
PRINTFUNC(DLOG_DEBUG, "caller = %s", caller);
app_control_add_extra_data(app_control, "caller_appid", caller);
free(caller);
app_control_h app_control;
- if(app_control_create(&app_control) == 0) {
+ if (app_control_create(&app_control) == 0) {
int ret;
if (value)
app_control_h app_control;
- if(app_control_create(&app_control) == 0) {
+ if (app_control_create(&app_control) == 0) {
int ret;
app_control_add_extra_data(app_control, "back_to_composer", "yes");
char* get_resource_path()
{
- if(NULL == app_data->res_path) {
+ if (NULL == app_data->res_path) {
app_data->res_path = app_get_resource_path();
PRINTFUNC(DLOG_INFO, "set resource path = %s", app_data->res_path);
}
char* get_shared_resource_path()
{
- if(NULL == app_data->shared_res_path) {
+ if (NULL == app_data->shared_res_path) {
app_data->shared_res_path = app_get_shared_resource_path();
PRINTFUNC(DLOG_INFO, "set shared resource path = %s", app_data->shared_res_path);
}
}
void show_gl_focus(Eina_Bool bVisible){
- if(app_data->genlist == NULL)
+ if (app_data->genlist == NULL)
return;
- if(bVisible == EINA_TRUE){
+ if (bVisible == EINA_TRUE){
elm_object_signal_emit(app_data->genlist, "elm,state,focus_bg,enable", "elm");
//elm_layout_theme_set(app_data->genlist, "genlist", "base", "focus_bg");
//elm_object_signal_emit(app_data->genlist, "elm,state,focus_bg,show", "elm");
if (check_img) {
string path = get_resource_path();
+ if (_WEARABLE)
+ path = path + "wearable/";
+ else
+ path = path + "mobile/";
string path_ic = path + "/images/toast_check_icon.png";
Evas_Object * img = elm_image_add(popup);
elm_image_file_set(img, path_ic.c_str(), NULL);
elm_object_part_content_set(popup, "toast,icon", img);
}
- if(text) {
+ if (text) {
elm_object_part_text_set(popup, "elm.text", text);
}
static void _popup_close_cb(void *data, Evas_Object *obj, void *event_info)
{
- if(obj){
+ if (obj){
evas_object_hide(obj);
evas_object_del(obj);
}
static void _popup_back_cb(void *data, Evas_Object *obj, void *event_info)
{
- if(obj)
+ if (obj)
elm_popup_dismiss(obj);
}
{
PRINTFUNC(DLOG_DEBUG, "");
- if(!app_data) return;
+ if (!app_data) return;
- if(app_data->app_type == APP_TYPE_STT || app_data->app_type == APP_TYPE_EMOTICON){
+ if (app_data->app_type == APP_TYPE_STT || app_data->app_type == APP_TYPE_EMOTICON){
PRINTFUNC(DLOG_DEBUG, "launched as STT/EMOTICON mode, So exit here.");
reply_to_sender_by_callback(NULL, NULL);
elm_exit();
}
-
- Evas_Object *circle_genlist = (Evas_Object *) evas_object_data_get(app_data->genlist, "circle");
-
- eext_rotary_object_event_activated_set(circle_genlist, EINA_TRUE);
+ if (_WEARABLE) {
+ Evas_Object *circle_genlist = (Evas_Object *) evas_object_data_get(app_data->genlist, "circle");
+ eext_rotary_object_event_activated_set(circle_genlist, EINA_TRUE);
+ }
}
static void _item_realized(void *data, Evas_Object *obj, void *event_info) //called when list scrolled
Evas_Object* _create_genlist(Evas_Object* navi)
{
Evas_Object* genlist = elm_genlist_add(navi);
- if(NULL == genlist)
+ if (NULL == genlist)
return NULL;
elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS);
-
- Evas_Object* circle_object_genlist = eext_circle_object_genlist_add(genlist, app_data->circle_surface);
- eext_circle_object_genlist_scroller_policy_set(circle_object_genlist, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
- evas_object_data_set(genlist, "circle", (void *) circle_object_genlist);
- eext_rotary_object_event_activated_set(circle_object_genlist, EINA_TRUE);
-
+ if (_WEARABLE) {
+ Evas_Object* circle_object_genlist = eext_circle_object_genlist_add(genlist, app_data->circle_surface);
+ eext_circle_object_genlist_scroller_policy_set(circle_object_genlist, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
+ evas_object_data_set(genlist, "circle", (void *) circle_object_genlist);
+ eext_rotary_object_event_activated_set(circle_object_genlist, EINA_TRUE);
+ }
evas_object_size_hint_weight_set(genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(genlist, EVAS_HINT_FILL, EVAS_HINT_FILL);
static void _item_position_changed_cb(void *data, Evas_Object *obj, void *event_info)
{
- if(!obj) return;
- if(!data) return;
+ if (!obj) return;
+ if (!data) return;
Evas_Object *genlist = (Evas_Object *)obj;
Elm_Object_Item *gen_item = (Elm_Object_Item *)data;
{
App_Data* app_data = (App_Data*) user_data;
- if(NULL == app_data->genlist) {
+ if (NULL == app_data->genlist) {
app_data->genlist = _create_genlist(app_data->naviframe);
- if(NULL == app_data->genlist)
+ if (NULL == app_data->genlist)
return;
}
itc0->func.del = NULL;
Elm_Genlist_Item_Class * itc1 = elm_genlist_item_class_new();
- if(g_input_type_data.input_type_array_len == 2){
+ if (g_input_type_data.input_type_array_len == 2){
itc1->item_style = "2button_flat";
itc1->func.text_get = NULL;
itc1->func.content_get = __ise_gl_2button_content_get;
for (i = 0; i < template_list.size(); i++) {
elm_genlist_item_append(app_data->genlist,
itc,
- (void *)i,
+ (void *)(uintptr_t)i,
NULL,
ELM_GENLIST_ITEM_NONE,
__ise_template_gl_sel,
evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
conform = elm_conformant_add(window);
- surface = eext_circle_surface_conformant_add(conform);
- evas_object_size_hint_weight_set(conform, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+ if (_WEARABLE)
+ surface = eext_circle_surface_conformant_add(conform);
+ evas_object_size_hint_weight_set(conform, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
elm_win_resize_object_add(window, conform);
elm_object_content_set(conform, layout);
app_data->reply_type = REPLY_APP_NORMAL;
ret = app_control_is_extra_data_array(service, APP_CONTROL_DATA_INPUT_TYPE, &is_extra_data_array);
- if( is_extra_data_array == true) {
+ if ( is_extra_data_array == true) {
ret = app_control_get_extra_data_array(service, APP_CONTROL_DATA_INPUT_TYPE, &input_type_array, &input_type_array_len);
g_input_type_data.input_type_array = input_type_array;
g_input_type_data.input_type_array_len = input_type_array_len;
ACTIVATE :
elm_win_activate(app_data->win_main);
- if(context)
+ if (context)
free(context);
}
App_Data* app_data = NULL;
app_data = (App_Data*)user_data;
- if(app_data->genlist){
+ if (app_data->genlist){
evas_object_smart_callback_del(app_data->genlist, "elm,item,position,changed", _item_position_changed_cb);
}
- if(app_data->res_path)
+ if (app_data->res_path)
free(app_data->res_path);
- if(app_data->shared_res_path)
+ if (app_data->shared_res_path)
free(app_data->shared_res_path);
input_keyboard_deinit();