<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.app.debug.1191133626" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings/>
<extensions>
- <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.app.release.1746658826" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/>
<extensions>
- <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
#include <widget_service.h>
#include <widget_errno.h>
#include <feedback.h>
-#ifdef TIZEN_SDK
-#include <package_manager.h>
-#else
#include <pkgmgr-info.h>
#include <package-manager.h>
-#endif
#include <bundle.h>
#include "key.h"
#include "util.h"
#define IDS_IDLE_BODY_APPS "Apps"
#define EDJE_FILE "edje/add_to_shortcut.edj"
-
#define SCHEDULE_ICON_ARABIC "res/schedule_arabic_%s.png"
#define LANGUAGE_ARABIC "ar"
-
#define PACKAGE_MANAGER_PKGINFO_PROP_NODISPALY "PMINFO_PKGINFO_PROP_PACKAGE_NODISPLAY_SETTING"
#define APP_WIDGET_PKGID "org.tizen.app-widget"
-
-
#define DEFAULT_APP_ORDER "org.tizen.apptray-widget-app empty org.tizen.watch-setting empty"
#define APPS_PKG "org.tizen.apptray-widget-app"
-
#define APP_WIDGET_CONTENT_KEY "org.tizen.apptray-widget"
typedef struct appdata {
_terminate_add_to_shortcut();
}
}
-
-
return ECORE_CALLBACK_PASS_ON;
}
bundle_add_str(b, "test", "delete");
updateContent();
-// ret = widget_service_trigger_update(APP_WIDGET_PKGID, widget_id, b, 1);
- //ret = widget_service_trigger_update(APP_WIDGET_PKGID, NULL, b, 1);
if(WIDGET_ERROR_NONE != ret){
_E("app-widget widget trigger failed %d", ret);
}
_D("content : %s", content);
updateContent();
-// ret = widget_service_trigger_update(APP_WIDGET_PKGID, widget_id, b, 1);
- //ret = widget_service_trigger_update(APP_WIDGET_PKGID, NULL, b, 1);
-
if(WIDGET_ERROR_NONE != ret){
_E("app widget widget trigger failed %d", ret);
}
}
}
-#ifdef TIZEN_SDK
-Evas_Object *_set_app_slot(const char *appid, int pos){
- _ENTER;
- package_info_h appinfo_h = NULL;
- _D("%s", appid);
- char *icon_path_tmp = NULL;
- int ret = 0;
- Evas_Object *slot = NULL;
- Evas_Object *icon = NULL;
- char index[10] = {0};
- snprintf(index, sizeof(index)-1, "index%d", pos+1);
- char *label = NULL;
-
- if(!strcmp(appid, "empty")){
- slot = elm_layout_add(g_info->edit_layout);
- char full_path[PATH_MAX] = { 0, };
- _get_resource(EDJE_FILE, full_path, sizeof(full_path));
- _D("full_path:%s",full_path);
- ret = elm_layout_file_set(slot, full_path, "empty_slot");
- if(ret == EINA_FALSE){
- _E("failed to set empty slot");
- return NULL;
- }
- evas_object_size_hint_weight_set(slot, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_resize(slot, 100, 100);
-
- evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_DOWN, _down_cb, slot);
- evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_MOVE, _move_cb, &pos);
- evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_UP, _up_cb, slot);
- elm_object_signal_callback_add(slot, "mouse_clicked", "*", _plus_mouse_clicked_cb, &pos);
-
- elm_object_part_content_set(g_info->edit_layout, index, slot);
- evas_object_show(slot);
- g_info->appid_list[pos] = strdup(appid);
- empty_count++;
- }
- else{
- package_manager_get_package_info(appid, &appinfo_h);
-
- if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_icon(appinfo_h, &icon_path_tmp)){
- _E("get icon path failed");
- }
- if (icon_path_tmp) {
- if (strlen(icon_path_tmp) > 0) {
- } else {
- icon_path_tmp = strdup(DEFAULT_ICON);
- }
- } else {
- icon_path_tmp = strdup(DEFAULT_ICON);
- }
-
-
- if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_label(appinfo_h, &label)){
- _E("get label failed");
- g_info->applabel_list[pos] = strdup("");
- }
- else{
- g_info->applabel_list[pos] = strdup(label);
- }
- _D("icon path in object info %s", icon_path_tmp);
-
- slot = elm_layout_add(g_info->edit_layout);
- char full_path[PATH_MAX] = { 0, };
- _get_resource(EDJE_FILE, full_path, sizeof(full_path));
- _D("full_path:%s",full_path);
- ret = elm_layout_file_set(slot, full_path, "icon_slot");
- if(ret == EINA_FALSE){
- _E("failed to set empty slot");
- if(icon_path_tmp)
- free(icon_path_tmp);
- return NULL;
- }
-
- evas_object_size_hint_weight_set(slot, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_resize(slot, 100, 100);
- elm_object_part_content_set(g_info->edit_layout, index, slot);
- evas_object_show(slot);
-
- icon = evas_object_image_add(evas_object_evas_get(slot));
- evas_object_repeat_events_set(icon, EINA_TRUE);
- evas_object_image_file_set(icon, icon_path_tmp, NULL);
- evas_object_image_filled_set(icon, EINA_TRUE);
- evas_object_show(icon);
-
- evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_DOWN, _down_cb, slot);
- evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_MOVE, _move_cb, slot);
- evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_UP, _up_cb, slot);
-
- elm_object_signal_callback_add(slot, "del_mouse_down", "*", _del_mouse_down_cb, slot);
- elm_object_signal_callback_add(slot, "del_mouse_up", "*", _del_mouse_up_cb, slot);
- elm_object_signal_callback_add(slot, "del_mouse_clicked", "*", _del_mouse_clicked_cb, slot);
- elm_object_signal_callback_add(slot, "del_mouse_clicked_icon", "*", _del_mouse_clicked_cb, slot);
-
- elm_object_part_content_set(slot, "icon", icon);
- elm_object_part_text_set(slot, "name", label);
- evas_object_show(icon);
- g_info->appid_list[pos] = strdup(appid);
-
- if (appinfo_h) package_info_destroy(appinfo_h);
- }
- return slot;
-}
-#else
Evas_Object *_set_app_slot(const char *appid, int pos){
_ENTER;
evas_object_resize(slot, 100, 100);
evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_DOWN, _down_cb, slot);
- evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_MOVE, _move_cb, pos);
+ evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_MOVE, _move_cb, &pos);
evas_object_event_callback_add(slot, EVAS_CALLBACK_MOUSE_UP, _up_cb, slot);
- elm_object_signal_callback_add(slot, "mouse_clicked", "*", _plus_mouse_clicked_cb, pos);
+ elm_object_signal_callback_add(slot, "mouse_clicked", "*", _plus_mouse_clicked_cb, &pos);
elm_object_part_content_set(g_info->edit_layout, index, slot);
evas_object_show(slot);
}
return slot;
}
-#endif
+
static void _create_edit_layout(appdata_s *info){
_ENTER;
int ret = 0;
int ret = 0;
Eina_List *item_info_list = NULL;
item_info_s *item_info = NULL;
- Evas_Object *page = NULL;
-
layout = elm_layout_add(info->select_win);
char full_path[PATH_MAX] = { 0, };
_get_resource(EDJE_FILE, full_path, sizeof(full_path));
g_info->item_list = eina_list_append(g_info->item_list, page_item);
}
eina_list_free(item_info_list);
-
- page = home_custom_scroller_get_current_page(scroller);
- //elm_object_signal_emit(page, "focus_out_effect", "item");
-
Evas_Object *index = home_custom_scroller_index_add(layout, scroller);
if(!index) return;
{
_ENTER;
item_info_s *item_info = NULL;
- #ifdef TIZEN_SDK
- package_info_h appinfo_h = NULL;
- #else
pkgmgrinfo_appinfo_h appinfo_h = NULL;
pkgmgrinfo_pkginfo_h pkghandle = NULL;
char *pkgid = NULL;
- int support_mode = 0;
- #endif
char *icon = NULL;
char *type = NULL;
if (NULL == item_info) {
return NULL;
}
-#ifdef TIZEN_SDK
- goto_if(0 > package_manager_get_package_info(appid, &appinfo_h), ERROR);
- goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_icon(appinfo_h, &icon), ERROR);
- goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_type(appinfo_h, &type), ERROR);
- if (appid) {
- item_info->pkgid = strdup(appid);
- goto_if(NULL == item_info->pkgid, ERROR);
- }
-#else
goto_if(0 > pkgmgrinfo_appinfo_get_appinfo(appid, &appinfo_h), ERROR);
goto_if(PMINFO_R_OK != pkgmgrinfo_appinfo_get_icon(appinfo_h, &icon), ERROR);
do {
item_info->pkgid = strdup(pkgid);
goto_if(NULL == item_info->pkgid, ERROR);
}
-#endif
item_info->appid = strdup(appid);
goto_if(NULL == item_info->appid, ERROR);
item_info->removable = removable;
- #ifdef TIZEN_SDK
- package_info_destroy(appinfo_h);
- #else
- pkgmgrinfo_appinfo_destroy_appinfo(appinfo_h);
+ pkgmgrinfo_appinfo_destroy_appinfo(appinfo_h);
if (pkghandle) pkgmgrinfo_pkginfo_destroy_pkginfo(pkghandle);
- #endif
return item_info;
ERROR:
apps_item_info_destroy(item_info);
- #ifdef TIZEN_SDK
- package_info_destroy(appinfo_h);
- #else
- pkgmgrinfo_appinfo_destroy_appinfo(appinfo_h);
+ pkgmgrinfo_appinfo_destroy_appinfo(appinfo_h);
if (pkghandle) pkgmgrinfo_pkginfo_destroy_pkginfo(pkghandle);
- #endif
-
return NULL;
}
{
_ENTER;
item_info_s *item_info = NULL;
- #ifdef TIZEN_SDK
- package_info_h appinfo_h = NULL;
- #else
pkgmgrinfo_appinfo_h appinfo_h = NULL;
pkgmgrinfo_pkginfo_h pkghandle = NULL;
char *pkgid = NULL;
- int support_mode = 0;
- #endif
-
char *icon = NULL;
char *type = NULL;
char *name = NULL;
return NULL;
}
- #ifdef TIZEN_SDK
- goto_if(0 > package_manager_get_package_info(appid, &appinfo_h), ERROR);
- goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_label(appinfo_h, &name), ERROR);
- goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_icon(appinfo_h, &icon), ERROR);
- goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_label(appinfo_h, &type), ERROR);
- item_info->pkgid = strdup(appid);
- #else
goto_if(0 > pkgmgrinfo_appinfo_get_appinfo(appid, &appinfo_h), ERROR);
goto_if(PMINFO_R_OK != pkgmgrinfo_appinfo_get_label(appinfo_h, &name), ERROR);
goto_if(PMINFO_R_OK != pkgmgrinfo_appinfo_get_icon(appinfo_h, &icon), ERROR);
item_info->pkgid = strdup(pkgid);
goto_if(NULL == item_info->pkgid, ERROR);
}
- #endif
-
item_info->appid = strdup(appid);
goto_if(NULL == item_info->appid, ERROR);
}
item_info->removable = removable;
- #ifdef TIZEN_SDK
- package_info_destroy(appinfo_h);
- #else
pkgmgrinfo_appinfo_destroy_appinfo(appinfo_h);
if (pkghandle) pkgmgrinfo_pkginfo_destroy_pkginfo(pkghandle);
- #endif
-
return item_info;
ERROR:
apps_item_info_destroy(item_info);
- #ifdef TIZEN_SDK
- if (appinfo_h) package_info_destroy(appinfo_h);
- #else
pkgmgrinfo_appinfo_destroy_appinfo(appinfo_h);
if (pkghandle) pkgmgrinfo_pkginfo_destroy_pkginfo(pkghandle);
- #endif
- return NULL;
-}
-#ifdef TIZEN_SDK
-item_info_s *apps_item_info_create(const char *appid)
-{
- _ENTER;
- item_info_s *item_info = NULL;
- package_info_h appinfo_h = NULL;
-
- char *name = NULL;
- char *icon = NULL;
- char *type = NULL;
-
- bool nodisplay = false;
- bool removable = false;
-
- retv_if(!appid, NULL);
-
- item_info = calloc(1, sizeof(item_info_s));
- if (NULL == item_info) {
- return NULL;
- }
- package_manager_get_package_info(appid, &appinfo_h);
-
- goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_label(appinfo_h, &name), ERROR);
- goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_icon(appinfo_h, &icon), ERROR);
-
- if (nodisplay) goto ERROR;
-
-
- goto_if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_type(appinfo_h, &type), ERROR);
-
-
- _D("name:%s,type:%s,icon:%s",name,type,icon);
- item_info->pkgid = strdup(appid);
- goto_if(NULL == item_info->pkgid, ERROR);
- item_info->appid = strdup(appid);
- goto_if(NULL == item_info->appid, ERROR);
-
- if (name) {
- item_info->name = strdup(name);
- goto_if(NULL == item_info->name, ERROR);
- }
-
- if (type) {
- item_info->type = strdup(type);
- goto_if(NULL == item_info->type, ERROR);
- if (!strncmp(item_info->type, APP_TYPE_WGT, strlen(APP_TYPE_WGT))) {
- item_info->open_app = 1;
- } else {
- item_info->open_app = 0;
- }
- }
-
-
- if (icon) {
- if (strlen(icon) > 0) {
- item_info->icon = strdup(icon);
- goto_if(NULL == item_info->icon, ERROR);
- } else {
- item_info->icon = strdup(DEFAULT_ICON);
- goto_if(NULL == item_info->icon, ERROR);
- }
- } else {
- item_info->icon = strdup(DEFAULT_ICON);
- goto_if(NULL == item_info->icon, ERROR);
- }
- _D("name:%s,type:%s,icon:%s",item_info->name,item_info->type,item_info->icon);
- item_info->removable = removable;
-
- package_info_destroy(appinfo_h);
-
-
- return item_info;
-
-ERROR:
- apps_item_info_destroy(item_info);
- package_info_destroy(appinfo_h);
-
return NULL;
}
-#else
item_info_s *apps_item_info_create(const char *appid)
{
bool nodisplay = false;
bool enabled = false;
bool removable = false;
- int support_mode = 0;
+ //int support_mode = 0;
retv_if(!appid, NULL);
break_if(NULL == pkghandle);
} while (0);
- if(appid != APPS_PKG){
+ if(strncmp(appid, APPS_PKG, strlen(APPS_PKG))){
goto_if(PMINFO_R_OK != pkgmgrinfo_appinfo_is_nodisplay(appinfo_h, &nodisplay), ERROR);
if (nodisplay) goto ERROR;
return NULL;
}
-#endif
-
static int _apps_sort_cb(const void *d1, const void *d2)
{
_ENTER;
#define VCONFKEY_WMS_HOST_STATUS_VENDOR "db/wms/host_status/vendor"
#endif
-#ifdef TIZEN_SDK
-bool
-package_info_cb(package_info_h handle, void *user_data)
-{
-
- _ENTER;
- Eina_List **list = user_data;
- char *appid = NULL;
- item_info_s *item_info = NULL;
-
- if(NULL == handle) return false;
- if(NULL == user_data) return false;
-
- package_info_get_package(handle, &appid);
- if(NULL == appid) return true;
- _D("appid:%s",appid);
- item_info = apps_item_info_create(appid);
-
- if (NULL == item_info) {
- _E("%s does not have the item_info", appid);
- return false;
- }
-
- *list = eina_list_append(*list, item_info);
- return true;
-
-}
-
-
-static Eina_List *_read_all_apps(Eina_List **list)
-{
- _ENTER;
- package_manager_filter_h handle = NULL;
- int ret = package_manager_filter_create(&handle);
- if(ret !=PACKAGE_MANAGER_ERROR_NONE )
- {
- _E("Error in createing package manager filter ret :%d",ret);
- }
- ret = package_manager_filter_add_bool(handle,"PMINFO_PKGINFO_PROP_PACKAGE_NODISPLAY_SETTING",0);
- if(ret != PACKAGE_MANAGER_ERROR_NONE )
- {
- _E("Error in adding filter ret:%d",ret);
- goto ERROR;
- }
-
- ret = package_manager_filter_foreach_package_info(handle,package_info_cb,list);
- if(ret != PACKAGE_MANAGER_ERROR_NONE)
- {
- _E("Error in package_manager_filter_foreach_package_info ret:%d",ret);
- goto ERROR;
- }
-
- *list = eina_list_sort(*list, eina_list_count(*list), _apps_sort_cb);
-
-ERROR:
- if(handle)
- package_manager_filter_destroy(handle);
-
- return *list;
-
-}
-#else
static int _apps_all_cb(pkgmgrinfo_appinfo_h handle, void *user_data)
{
_ENTER;
return *list;
}
-#endif
+
static Eina_Bool _load_list(void* data){
Eina_List *pkgmgr_list = NULL;
g_info->app_list = _read_all_apps(&pkgmgr_list);
return ECORE_CALLBACK_CANCEL;
}
-/*
-void create_add_to_shortcut(const char *widget_name, const char *index){
- _D("check");
- _create_layout(NULL);
-
-}
-*/
static void
app_pause(void *data)
char *tmp = NULL;
char *first = NULL;
- char* save;
+ char* save = NULL;
int i = 0;
int reset = 0;
int ret = 0;
- //todo: this is requried: check how we are passing data to app control
-#if 0
- char *instance_id = NULL;
- app_control_get_extra_data(service, "content", &content);
- app_control_get_extra_data(service, "instance_id", &instance_id);
- _D("content value : %s", content);
- _D("instance_id value : %s", instance_id);
- widget_id = strdup(instance_id);
- free(instance_id);
-#else
- //content = strdup(DEFAULT_APP_ORDER);
- //todo: content
- //read from preference key, if not exist then load default app order string else, load the existing app order string
char *instance_id = NULL;
ret = app_control_get_extra_data(service, "instance_id", &instance_id);
if(!ret)
{
_E("widget id is null check");
}
- //todo: change this when whome is able to fetch widget instance id.
- //widget_id = strdup(instance_id);
widget_id = strdup(APP_WIDGET_CONTENT_KEY);
bool prefkey_exist = false;
ret = preference_is_existing(widget_id, &prefkey_exist);
}
}
_D("content: %s",content);
-#endif
+
if(!content){
_E("there is no content info.");
bundle_add_str(b, "test", tmp);
_D("content : %s", tmp);
-// ret = widget_service_trigger_update(APP_WIDGET_PKGID, widget_id, b, 1);
- //ret = widget_service_trigger_update(APP_WIDGET_PKGID, NULL, b, 1);
if(WIDGET_ERROR_NONE != ret){
_E("app-widget trigger failed %x", ret);
}
if (!cur_inserted) {
cur_start_idx = index_number;
}
-
cur_inserted++;
idx_it = elm_index_item_append(index, NULL, NULL, (void *) index_number);
-#ifdef RUN_ON_DEVICE
elm_object_item_style_set(idx_it, _index_style_get(style_base + index_number, style_even));
-#endif
index_number++;
}
}
#include <Elementary.h>
#include <app_control.h>
-//#include <vconf.h>
#include <efl_extension.h>
-//#include <uxt_scroller.h>
-
-
#include "common/home_custom_scroller.h"
#include "common/home_custom_scroller_info.h"
#include "common/home_custom_index.h"
Evas_Object *page = home_custom_scroller_get_current_page(scroller);
ret_if(!page);
-
-// elm_object_signal_emit(page, "focus_out_effect", "item");
-
Evas_Object *index = evas_object_data_get(scroller, PRIVATE_DATA_KEY_INDEX);
if(index) home_custom_index_bring_in_page(index, page);
}
if(_drag_start_cb) _drag_start_cb(data, scroller, event_info);
/* _drag_start_cb is called even if the scroller is not moved. */
- //evas_object_data_set(scroller, PRIVATE_DATA_KEY_IS_SCROLLING, (void *) 1);
-
Evas_Object *page = home_custom_scroller_get_current_page(scroller);
ret_if(!page);
-
-// elm_object_signal_emit(page, "focus_in_effect", "item");
scroll_transit_go = EINA_TRUE;
}
{
_ENTER;
_D("Initialize the rotary event");
-// eext_rotary_event_callback_set(scroller, _rotary_cb, NULL);
}
{
_ENTER;
_D("Finish the rotary event");
-// eext_rotary_event_callback_set(scroller, NULL, NULL);
}
scroller_info_s *home_custom_scroller_info_create(void)
Evas_Object *home_custom_scroller_add(Evas_Object *parent, scroller_info_s *scroller_info)
{
_ENTER;
-// Evas_Object *win = NULL;
Evas_Object *scroller = NULL;
Evas_Object *box_layout = NULL;
Evas_Object *box = NULL;
-
-// int height;
-
scroller = elm_scroller_add(parent);
retv_if(!scroller, NULL);
_D("scroller is added");
elm_scroller_policy_set(scroller, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
elm_scroller_page_scroll_limit_set(scroller, 1, 0);
elm_object_scroll_lock_y_set(scroller, EINA_TRUE);
-// elm_scroller_bounce_set(scroller, EINA_FALSE, EINA_FALSE);
-// uxt_scroller_set_page_flick_enabled(scroller, EINA_TRUE);
-
-#if 0 /* Scroll to move pages at a time */
- elm_scroller_page_size_set(scroller, instance_info->root_w, ITEM_HEIGHT * apps_main_get_info()->scale);
- elm_scroller_page_scroll_limit_set(scroller, 0, 3);
-#endif
-// elm_scroller_content_min_limit(scroller, EINA_FALSE, EINA_TRUE);
-// elm_scroller_single_direction_set(scroller, ELM_SCROLLER_SINGLE_DIRECTION_HARD);
Evas_Object *circle_scroller = eext_circle_object_scroller_add(scroller, NULL);
eext_circle_object_scroller_policy_set(circle_scroller, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_OFF);
scroller_info->box = box;
evas_object_data_set(scroller, PRIVATE_DATA_KEY_SCROLLER_INFO, scroller_info);
-
-// uxt_scroller_set_rotary_event_enabled(scroller, EINA_TRUE);
-
_init_rotary(scroller);
_D("scroller created success");
return scroller;
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.app.debug.300657015" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings/>
<extensions>
- <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="org.tizen.nativecore.config.sbi.gcc45.app.release.1730367982" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/>
<extensions>
- <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.tizen.nativecore.NativeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+ <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
-#undef TIZEN_SDK
#include <Evas.h>
#include <Elementary.h>
#include <dlog.h>
#include <widget_errno.h>
#include <app_control.h>
-#ifdef TIZEN_SDK
-#include <package_manager.h>
-#include <app_manager.h>
-#else
#include <pkgmgr-info.h>
#include <package-manager.h>
#include <aul.h>
-#endif
+
#include <badge.h>
#include "app-widget_log.h"
#define PUBLIC __attribute__((visibility("default")))
-//#define EDJE_FILE "/usr/apps/com.samsung.app-widget/shared/res/app_shortcut.edj"
#define EDJE_FILE "edje/app_shortcut.edj"
#define DEFAULT_ICON "images/unknown.png"
#define SCHEDULE_ICON "res/schedule_%s.png"
#define WHOME_APP_CONTROL "home_op"
#define DEFAULT_APP_ORDER "org.tizen.apptray-widget-app empty org.tizen.watch-setting empty"
+#define BADGE_SIGNAL_LEN 16
+#define MAX_BADGE_COUNT 999
+#define SHORTCUT_W 123
+#define SHORTCUT_H 123
-static Eina_List *s_list;
-//int errno;
-//Ea_Theme_Color_Table *color_theme;
+static Eina_List *s_list;
Eina_List *font_theme;
Elm_Theme *theme;
char *icon_path;
-
-//samsung_log_manager_h log_manager_h = NULL;
-
struct info {
- //widget_context_h id;
char* id;
char *content;
int size_type;
char *icon;
char *label;
char *pkgid;
-// widget_context_h dbox_id;
char* dbox_id;
int open_app;
int index;
Evas_Object *obj;
};
-#define SHORTCUT_W 123
-#define SHORTCUT_H 123
+
EINA_LIST_FOREACH(s_list, l, item) {
_D("item->id:%s,id:%s",item->id,id);
- if (!strncmp(item->id, id,sizeof(id))) {
+ if (!strncmp(item->id, id, strlen(id))) {
return item;
}
}
- //widget_app_context_get_tag(id, (void**) &item);
-
return item;
}
+PUBLIC int widget_update_content(const char* id);
void preference_changed_cb_impl(const char *key, void *user_data)
{
_ENTER;
-// int ret = 0;
-// widget_context_h *id= user_data;
char *id= *((char**)user_data);
_D("id:%s, key:%s",id,key);
struct info *item;
- //preference_remove_all();
if(!id)
{
_E("id is null");
return;
}
- item = find_item(id);
-// widget_app_context_get_tag(id, (void**) &item);
+ item = find_item((char*)id);
if (!item) {
_E("id is invalid");
_E("item is not found");
return;
}
_D("before content: %s",item->content);
-// preference_get_string(id, &item->content);
preference_get_string(APP_WIDGET_CONTENT_KEY, &item->content);
_D("after content: %s",item->content);
- widget_update_content(id);
+ widget_update_content((const char *)id);
_EXIT;
}
{
_ENTER;
_D("dbox initialized");
- /**
- * @TODO
- * Do one-time initialize.
- * This will be called only once right before the first box is creating
- */
+
return 0;
}
{
_ENTER;
_D("dbox finalized");
- /**
- * @TODO
- * Do one-time finalization.
- * This will be called only once right after the last box is destroyed
- */
+
_fini_theme();
return 0;
}
// NOTE: This function is going to be invoked for release all resources
static int widget_destroy(char* id, widget_app_destroy_type_e reason, bundle *content, void *user_data)
-//PUBLIC int widget_destroy(const char *id)
{
_ENTER;
struct info *item;
_D("[%s:%d]\n", __func__, __LINE__);
- item = find_item(id);
- //widget_app_context_get_tag(id, (void**) &item);
+ item = find_item((char *)id);
if (!item) {
/*!
* \NOTE
if (item->dbox_win) {
evas_object_del(item->dbox_win);
}
- item->first_loaded = 0;
- item->w= item->h=0;
+ item->first_loaded = 0;
+ item->w= item->h=0;
free(item->content);
free(item->id);
free(item);
-// preference_unset_changed_cb(id);
preference_unset_changed_cb(APP_WIDGET_CONTENT_KEY);
return WIDGET_ERROR_NONE;
}
_D("[%s]\n", id);
- item = find_item(id);
- //widget_app_context_get_tag(id, (void**) &item);
+ item = find_item((char *)id);
if (!item) {
- /* Hmm, there is no matched instance. */
+
_E("id is invalid");
return WIDGET_ERROR_NOT_EXIST;
}
_ENTER;
elm_object_signal_emit((Evas_Object *)data, "complete_effect", "widget");
-
-// edje_object_message_signal_process(ad->ly_tray);
}
void app_shortcut_remove_package(const char *package){
struct info *item;
int update = 0;
char content[255] = {0};
-// int ret = 0;
int i = 0;
EINA_LIST_FOREACH(s_list, l, item) {
}
if(update){
snprintf(content, sizeof(content)-1, "%s %s %s %s", item->obj[0]->appid, item->obj[1]->appid, item->obj[2]->appid, item->obj[3]->appid);
- //todo: check widget apis
- #if 0
- ret = widget_set_extra_info(item->id, content, NULL, NULL, NULL);
- if(ret != WIDGET_ERROR_NONE){
- _E("set content error %x", ret);
- }
- #endif
free(item->content);
item->content = NULL;
item->content = strdup(content);
return (int) count;
}
-#define BADGE_SIGNAL_LEN 16
-#define MAX_BADGE_COUNT 999
void item_badge_show(struct object_info *item, int count)
{
_ENTER;
_D("launch %s", info->appid);
if(info->open_app){
_D("launch wgt");
-#ifdef TIZEN_SDK
- int ret_aul = app_manager_open_app(info->appid);
-#else
int ret_aul = aul_open_app(info->appid);
-#endif
if (ret_aul < AUL_R_OK) {
_E("wgt launch failed");
return;
return;
}else{
_D("need to update slot%d", pos+1);
-#ifdef TIZEN_SDK
- int ret = 0;
- int badge_count = 0;
- Evas_Object *slot = NULL;
- Evas_Object *icon = NULL;
- package_info_h package_info = NULL;
-
- package_manager_get_package_info(appid, &package_info);
-
-
- char index[10] = {0};
- snprintf(index, sizeof(index)-1, "index%d", pos+1);
- char signal[20] = {0,};
- snprintf(signal, sizeof(signal), "mouse_clicked_%d", pos+1);
- char signal_l[30] = {0,};
- snprintf(signal_l, sizeof(signal_l), "mouse_clicked_l_%d", pos+1);
- char signal_r[30] = {0,};
- snprintf(signal_r, sizeof(signal_r), "mouse_clicked_r_%d", pos+1);
- _D("index:%s, signal:%s, signal_l:%s, signal_r:%s",index,signal,signal_l,signal_r);
-
- elm_object_part_content_unset(item->layout, index);
- if(item->obj[pos]->obj)
- evas_object_del(item->obj[pos]->obj);
- item->obj[pos]->obj = NULL;
-
- /*set new slot */
- item->obj[pos]->appid = strdup(appid);
-
- if(!strcmp(appid, "empty")){
- _W("let it empty slot");
- _D("removing mouse even callbacks from layout");
- elm_object_signal_callback_del(item->layout, signal, "*", _slot_mouse_clicked_cb);
- elm_object_signal_callback_del(item->layout, signal_l, "*", _slot_l_mouse_clicked_cb);
- elm_object_signal_callback_del(item->layout, signal_r, "*", _slot_r_mouse_clicked_cb);
- return;
- }
- slot = elm_layout_add(item->layout);
- item->obj[pos]->obj = slot;
-
- char full_path[PATH_MAX] = { 0, };
- _get_resource(EDJE_FILE, full_path, sizeof(full_path));
- _D("full_path:%s",full_path);
- ret = elm_layout_file_set(slot, full_path, "icon_slot");
- if(ret == EINA_FALSE){
- LOGE("failed to set empty slot");
- _D("removing mouse even callbacks from item layout");
- elm_object_signal_callback_del(item->layout, signal, "*", _slot_mouse_clicked_cb);
- elm_object_signal_callback_del(item->layout, signal_l, "*", _slot_l_mouse_clicked_cb);
- elm_object_signal_callback_del(item->layout, signal_r, "*", _slot_r_mouse_clicked_cb);
- return;
- }
-
- evas_object_size_hint_weight_set(slot, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
- evas_object_resize(slot, SHORTCUT_W, SHORTCUT_H);
- elm_object_part_content_set(item->layout, index, slot);
- evas_object_show(slot);
-
- char *label = NULL;
-
- item->obj[pos]->pkgid = strdup(appid);
-
-
- if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_label(package_info, &label)){
- _E("get label failed");
- item->obj[pos]->label = strdup("");
- }
- else{
- item->obj[pos]->label = strdup(label);
- }
- _D("label: %s",label);
- elm_object_part_text_set(slot, "name", label);
-
- char *type = NULL;
- if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_type(package_info, &type)){
- LOGE("get app type failed");
- }
- _D("type :%s,APP_TYPE_WGT:%s",type,APP_TYPE_WGT);
- if (type) {
- if (!strncmp(type, APP_TYPE_WGT, strlen(APP_TYPE_WGT))) {
- item->obj[pos]->open_app = 1;
- } else {
- item->obj[pos]->open_app = 0;
- }
- }
-
- _D("appid: %s", appid);
- char *icon_path_tmp = NULL;
- if(PACKAGE_MANAGER_ERROR_NONE != package_info_get_icon(package_info, &icon_path_tmp)){
- LOGE("get icon path failed");
- }
- if (icon_path_tmp) {
- if (strlen(icon_path_tmp) > 0) {
- icon_path = strdup(icon_path_tmp);
- } else {
- icon_path = strdup(DEFAULT_ICON);
- }
- } else {
- icon_path = strdup(DEFAULT_ICON);
- }
- _D("icon_path: %s", icon_path);
- item->obj[pos]->icon = strdup(icon_path);
- _D("icon path in object info %s, label %s", item->obj[pos]->icon, item->obj[pos]->label);
- icon = evas_object_image_add(evas_object_evas_get(slot));
- evas_object_repeat_events_set(icon, EINA_TRUE);
- evas_object_image_file_set(icon, icon_path, NULL);
- evas_object_image_filled_set(icon, EINA_TRUE);
- evas_object_show(icon);
- _D("icon is added");
- if(icon_path){
- free(icon_path);
- icon_path = NULL;
- }
-
- badge_count = item_badge_count(item->obj[pos]);
- if (badge_count) item_badge_show(item->obj[pos], badge_count);
- else item_badge_hide(item->obj[pos]);
-
- elm_object_part_content_set(slot, "icon", icon);
- //evas_object_show(icon);
- _D("removing mouse even callbacks from layout");
- elm_object_signal_callback_del(item->layout, signal, "*", _slot_mouse_clicked_cb);
- elm_object_signal_callback_del(item->layout, signal_l, "*", _slot_l_mouse_clicked_cb);
- elm_object_signal_callback_del(item->layout, signal_r, "*", _slot_r_mouse_clicked_cb);
-
- _D("adding mouse even callbacks to layout");
- elm_object_signal_callback_add(item->layout, signal, "*", _slot_mouse_clicked_cb, item->obj[pos]);
- elm_object_signal_callback_add(item->layout, signal_l, "*", _slot_l_mouse_clicked_cb, item->obj[pos]);
- elm_object_signal_callback_add(item->layout, signal_r, "*", _slot_r_mouse_clicked_cb, item->obj[pos]);
-
- _D("adding mouse even callbacks to slot");
- elm_object_signal_callback_add(slot, "mouse_down", "*", _slot_mouse_down_cb, icon);
- elm_object_signal_callback_add(slot, "mouse_up", "*", _slot_mouse_up_cb, icon);
- elm_object_signal_callback_add(slot, "complete,launch_effect", "event", _glow_effect_done, slot);
-
-
- package_info_destroy(package_info);
-#else
int ret = 0;
int badge_count = 0;
Evas_Object *slot = NULL;
else item_badge_hide(item->obj[pos]);
elm_object_part_content_set(slot, "icon", icon);
-// evas_object_show(icon);
elm_object_signal_callback_del(item->layout, signal, "*", _slot_mouse_clicked_cb);
elm_object_signal_callback_del(item->layout, signal_l, "*", _slot_l_mouse_clicked_cb);
char log[10] = {0};
snprintf(log, sizeof(log)-1, "ASS%d", pos+1);
-#endif
_D("slot is added %d",pos+1);
{
_ENTER;
struct info *item;
- item = find_item(id);
- //widget_app_context_get_tag(id, (void**) &item);
+ item = find_item((char*)id);
int i = 0;
char *tmp = NULL;
char *first = NULL;
- char* save;
+ char* save = NULL;
int ret = 0;
if (!item) {
_E("id is invalid");
_W("content : %s", item->content);
tmp = strdup(item->content);
- //todo: check widget api
-// ret = widget_set_extra_info(id, tmp, NULL, NULL, NULL);
if(ret != WIDGET_ERROR_NONE){
_E("set content error %x", ret);
}
return WIDGET_ERROR_DISABLED;
}
-static char *_set_content_data(char *content, char *updated_data){
- _ENTER;
- return NULL;
-}
-
PUBLIC int widget_set_content_info(const char* id, bundle *b)
{
_E("[%s]\n", id);
- item = find_item(id);
- //widget_app_context_get_tag(id, (void**) &item);
+ item = find_item((char*)id);
if (!item) {
_E("id is invalid");
return WIDGET_ERROR_NOT_EXIST;
}else{
_W("content : %s", content);
_E("ex-content info : %s", item->content);
-
- //todo: check widget api
- #if 0
- tmp = _set_content_data(item->content, content);
- ret = widget_set_extra_info(id, content, NULL, NULL, NULL);
- if(ret != WIDGET_ERROR_NONE){
- _E("set content error %x", ret);
- }
- #endif
free(item->content);
item->content = NULL;
item->content = strdup(content);
_D("ID:%s",id);
_D("dbox clicked");
struct info *item;
- item = find_item(id);
- //widget_app_context_get_tag(id, (void**) &item);
+ item = find_item((char*)id);
if (!item) {
_E("id is invalid");
return WIDGET_ERROR_NOT_EXIST;
return NULL;
}
- ret = widget_app_get_elm_win(id, &win);
+ ret = widget_app_get_elm_win((widget_context_h)id, &win);
if (ret != WIDGET_ERROR_NONE) {
dlog_print(DLOG_ERROR, LOG_TAG, "failed to get window. err = %d", ret);
return NULL;
Evas_Object *layout = NULL;
Evas_Object *bg = NULL;
char *tmp = NULL;
-
- //preference_remove_all();
item = find_item((char*)id);
- //widget_app_context_get_tag(id,(void**)&item);
+ if (!item) {
+ _E("id is invalid");
+ return WIDGET_ERROR_NOT_EXIST;
+ }
if( item->first_loaded && w == item->w && h == item->h)
{
return WIDGET_ERROR_NONE;
}
item->first_loaded = 1;
- if (!item) {
- _E("id is invalid");
- return WIDGET_ERROR_NOT_EXIST;
- }
+
_D("WIDGET is resized\n");
item->dbox_win = _create_win(id,w,h);
- if (!item->dbox_win) {
- _E("item dbox win is not found");
- return WIDGET_ERROR_FAULT;
- }
+ if (!item->dbox_win) {
+ _E("item dbox win is not found");
+ return WIDGET_ERROR_FAULT;
+ }
_init_theme();
item->obj[2] = _add_empty_slot(layout, 3, item);
item->obj[3] = _add_empty_slot(layout, 4, item);
_D("four slots added");
-//todo: item->content
- //read from preference key, if not exist then load default app order string else, load the existing app order string
+
bool prefkey_exist = false;
-// ret = preference_is_existing(id, &prefkey_exist);
+ //read from preference key, if not exist then load default app order string else, load the existing app order string
ret = preference_is_existing(APP_WIDGET_CONTENT_KEY, &prefkey_exist);
if(ret !=PREFERENCE_ERROR_NONE)
if(prefkey_exist)
{
_D("preference key is already exist");
-// ret = preference_get_string(id, &item->content);
ret = preference_get_string(APP_WIDGET_CONTENT_KEY, &item->content);
if(ret != PREFERENCE_ERROR_NONE)
else
{
_E("preference_key is not exist. might be first boot so load default app order and store in preference key");
-// ret = preference_set_string(id, DEFAULT_APP_ORDER);
ret = preference_set_string(APP_WIDGET_CONTENT_KEY, DEFAULT_APP_ORDER);
if(ret != PREFERENCE_ERROR_NONE)
_D("item->content :%s",item->content);
preference_unset_changed_cb(APP_WIDGET_CONTENT_KEY);
preference_set_changed_cb(APP_WIDGET_CONTENT_KEY,preference_changed_cb_impl,&item->id);
-//todo: by any chance content string is lost, we should load default apps. this has to be handle
tmp = strdup(item->content);
char *first = NULL;
- char* save;
+ char* save = NULL;
int i = 0;
for(i = 0 ; i < 4 ; i++){
return WIDGET_ERROR_OUT_OF_MEMORY;
}
-// info->id = id;
info->id = strdup(id);
_D("ID:%s",id);
if (!info->id) {
return WIDGET_ERROR_OUT_OF_MEMORY;
}
- //info->content = strdup(content);
-// bundle_get_str(b,"test",&info->content);
-// if (!info->content) {
-// free(info->id);
-// free(info);
-// return WIDGET_ERROR_OUT_OF_MEMORY;
-// }
-
/**
* @NOTE
* cluster == 'user,created'
* You create the default output image from here now.
* So you HAVE TO return WIDGET_OUTPUT_UPDATED
*/
- //preference_set_changed_cb(id,preference_changed_cb_impl,id);
-
- //widget_app_context_set_tag(id, info);
widget_resize(id,w, h, user_data);
return WIDGET_ERROR_NONE;
}
_ENTER;
struct info *item;
- item = find_item(id);
+ item = find_item((char*)id);
//widget_app_context_get_tag(id, (void**) &item);
if (!item) {
_E("id is invalid");
_ENTER;
struct info *item;
- item = find_item(id);
-// widget_app_context_get_tag(id, (void**) &item);
+ item = find_item((char*)id);
if (!item) {
_E("id is invalid");
return NULL;
_D("ID:%s",id);
struct info *item;
- item = find_item(id);
- //widget_app_context_get_tag(id, (void**) &item);
+ item = find_item((char*)id);
if (!item) {
return WIDGET_ERROR_NOT_EXIST;
}
APP_EVENT_REGION_FORMAT_CHANGED, widget_app_region_changed, user_data);
widget_instance_lifecycle_callback_s ops = {
- .create = widget_create,
- .destroy = widget_destroy,
- .pause = widget_pause,
- .resume = widget_resume,
- .update = widget_update,
- .resize = widget_resize,
+ .create = (void *)widget_create,
+ .destroy = (void *)widget_destroy,
+ .pause = (void *)widget_pause,
+ .resume = (void *)widget_resume,
+ .update = (void *)widget_update,
+ .resize = (void *)widget_resize,
};
return widget_app_class_create(ops, user_data);