FOREACH(flag ${pkgs_CFLAGS})
SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
ENDFOREACH(flag)
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall")
## Add definitions ##
ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
Name: capi-ui-sticker
Summary: Sticker client library and daemon
-Version: 0.1.44
+Version: 0.1.46
Release: 1
Group: Graphics & UI Framework/Input
License: Apache-2.0
FOREACH(flag ${pkgs_CFLAGS})
SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
ENDFOREACH(flag)
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall")
## Add definitions ##
ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"")
ADD_DEFINITIONS("-DEXPORTED=__attribute__((visibility(\"default\")))")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIE")
-SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -fPIE")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall -fPIE")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -Wall -fPIE")
SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
FIND_PROGRAM(UNAME NAMES uname)
int create_sticker_provider_handle(void);
void destroy_sticker_provider_handle(void);
void delete_sticker_data(const char *fileName);
+void delete_all_bitmoji_stickers();
#endif /* __STICKER_INFO_H__ */
enum {
SYNC_START_RSP_SUCCESS = 1000,
- SYNC_START_RSP_NO_STICKER = 1001
+ SYNC_START_RSP_NO_STICKER = 1001,
+ SYNC_START_RSP_BITMOJI_ALL_DELETE = 1002
};
struct sap_info_s {
static void save_last_sync_time()
{
// save last sync time in preference
- double current_time = ecore_time_get();
+ double current_time = ecore_time_unix_get();
if (preference_set_double(LAST_SYNC_TIME, current_time) == PREFERENCE_ERROR_NONE) {
LOGI("Succeed to set last sync time : %f", current_time);
}
int feature_flag = 0;
string response_to_app;
switch (result_code) {
- case SYNC_START_RSP_SUCCESS:
+ case SYNC_START_RSP_SUCCESS || SYNC_START_RSP_BITMOJI_ALL_DELETE:
{
response_to_app = "success";
if (current_request.category == string("arsticker"))
send_sync_start_response(result_code);
- if (result_code != SYNC_START_RSP_SUCCESS) {
+ if (result_code == SYNC_START_RSP_NO_STICKER) {
if (!process_request_queue()) {
#ifdef VCONFKEY_STICKER_SUPPORTED_FEATURE
int feature_flag = 0;
#endif /* VCONFKEY_STICKER_SUPPORTED_FEATURE */
set_sync_progressing(FALSE);
- if (result_code == SYNC_START_RSP_NO_STICKER)
- save_last_sync_time();
+ save_last_sync_time();
quit();
}
+ } else if (result_code == SYNC_START_RSP_BITMOJI_ALL_DELETE) {
+ LOGD("Delete all bitmoji stickers");
+ if (create_sticker_provider_handle() == STICKER_ERROR_NONE) {
+ delete_all_bitmoji_stickers();
+ destroy_sticker_provider_handle();
+ }
+
+ set_sync_progressing(FALSE);
+ save_last_sync_time();
+
+ if (!process_request_queue()) {
+ sync_success_cnt = 0;
+ quit();
+ }
}
} else if (msg_id == STICKER_SEND_START_REQ) {
LOGD("msg : %s", msg_id.c_str());
}
// compare time
- LOGD("current time : %f, last_sync_time : %f", ecore_time_get(), last_sync_time);
+ LOGD("current time : %f, last_sync_time : %f", ecore_time_unix_get(), last_sync_time);
- if (ecore_time_get() - last_sync_time > MAX_WAIT_TIME) {
+ if (ecore_time_unix_get() - last_sync_time > MAX_WAIT_TIME) {
initialize_sap();
request_show_sync_notification();
result = false;
} else {
- if (ecore_time_get() - last_sync_time > SYNC_INTERVAL)
+ if (ecore_time_unix_get() - last_sync_time > SYNC_INTERVAL)
result = true;
else
result = false;
ret = sticker_provider_delete_data_by_uri(sticker_provider, fileName);
if (ret != STICKER_ERROR_NONE)
LOGE("Failed to delete sticker. ret : %d", ret);
+}
+
+static void _delete_all_bitmoji_stickers_cb(sticker_data_h data_handle, void *user_data)
+{
+ int ret;
+ char *group = NULL;
+
+ ret = sticker_data_get_group_name(data_handle, &group);
+ if (ret != STICKER_ERROR_NONE)
+ LOGE("Failed to get group name. ret : %d", ret);
+
+ if (strcmp(group, "bitmoji") == 0) {
+ ret = sticker_provider_delete_data(sticker_provider, data_handle);
+ if (ret != STICKER_ERROR_NONE)
+ LOGE("Failed to delete sticker. ret : %d", ret);
+ }
+}
+
+void delete_all_bitmoji_stickers()
+{
+ int ret;
+ int total_cnt;
+ int result;
+
+ ret = sticker_provider_get_sticker_count(sticker_provider, &total_cnt);
+ if (ret != STICKER_ERROR_NONE)
+ LOGE("Failed to get sticker count. ret : %d", ret);
+
+ ret = sticker_provider_data_foreach_all(sticker_provider, 0, total_cnt, &result, _delete_all_bitmoji_stickers_cb, NULL);
+ if (ret != STICKER_ERROR_NONE)
+ LOGE("Failed to retrieve all sticker data. ret : %d", ret);
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns="http://tizen.org/ns/packages" api-version="5.5" package="org.tizen.sticker-receiver" version="1.0.44">
+<manifest xmlns="http://tizen.org/ns/packages" api-version="5.5" package="org.tizen.sticker-receiver" version="1.0.46">
<profile name="wearable" />
<service-application appid="org.tizen.sticker-receiver" exec="sticker-receiver" type="capp" multiple="false" taskmanage="false" nodisplay="true" launch_mode="single">
<label>sticker-receiver</label>