* limitations under the License.\r
*/\r
\r
-\r
#include <Elementary.h>\r
\r
#include <vconf.h>\r
-#include <system_settings.h>\r
-#include <bundle_internal.h>\r
#include <tzsh.h>\r
#include <tzsh_quickpanel_service.h>\r
\r
if (quickpanel_setting_module_is_immediate_actionable(module, QP_SETTING_ICON_LONGPRESSED) == false)\r
return;\r
\r
- quickpanel_setting_icon_handler_longpress(module->setting_pkgname, "viewtype", "main");\r
+ quickpanel_setting_icon_handler_longpress(module->setting_pkgname, NULL, NULL);\r
}\r
\r
static void _view_update(Evas_Object *view, int state, int flag_extra_1, int flag_extra_2)\r
{\r
+ DBG(">>> view_update , state = %d",state);\r
Evas_Object *image = NULL;\r
const char *icon_path = NULL;\r
\r
\r
static void _status_update(QP_Module_Setting *module, int flag_extra_1, int flag_extra_2)\r
{\r
+ DBG(">>>> _status_update <<<");\r
int ret = 0;\r
- bool status = false;\r
+ bool status = 0;\r
retif(module == NULL, , "Invalid parameter!");\r
\r
- ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, &status);\r
- msgif(ret != SYSTEM_SETTINGS_ERROR_NONE , "failed to notify key SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO : %d", ret);\r
-\r
- if (status == true)\r
+ quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);\r
+ quickpanel_setting_module_icon_timer_del(module);\r
+ ret = vconf_get_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL, &status);\r
+ msgif(ret != 0, "fail to get VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL:%d", ret);\r
+ DBG(">>>> status == %s <<<",status == true ? "TRUE" : "FALSE");\r
+ if (status == true) {\r
quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_ON);\r
- else\r
+ }\r
+ else {\r
quickpanel_setting_module_icon_state_set(module, ICON_VIEW_STATE_OFF);\r
-\r
-\r
- quickpanel_setting_module_icon_view_update(module, quickpanel_setting_module_icon_state_get(module), FLAG_VALUE_VOID);\r
+ }\r
+ quickpanel_setting_module_icon_view_update(module,\r
+ quickpanel_setting_module_icon_state_get(module),\r
+ FLAG_VALUE_VOID);\r
}\r
\r
-static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)\r
+static void _state_change(QP_Module_Setting *module)\r
{\r
- /*\r
int ret = 0;\r
- bool status = false;\r
-\r
- ret = system_settings_get_value_bool(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, &status);\r
- msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to notify key SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO : %d", ret);\r
-\r
- ret = system_settings_set_value_bool(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, !status);\r
- msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to notify key SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO : %d", ret);\r
- */\r
- quickpanel_common_launch_app("org.tizen.setting" ,NULL);\r
+ bool enable = 0;\r
+ DBG(">>> Entered state_change");\r
+ Eina_Bool state = quickpanel_setting_module_icon_state_get(module);\r
+ DBG(">>>> _state_change , state value = %s <<<", state == false ? "FALSE" : "TRUE");\r
+ /*ret = vconf_set_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL, !state);\r
+ msgif(ret != 0, "failed set VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL:%d", ret);*/\r
+ /* new vconf_key for softkey-container will replace the above commneted code */\r
+ ret = vconf_get_bool(VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL, &state);\r
+ msgif(ret != 0, "fail to get VCONFKEY_SETAPPL_TOUCH_SOUNDS_BOOL:%d", ret);\r
+ DBG("softkey check value = %s", state == false ? "FALSE" : "TRUE");\r
+ DBG(">>> END");\r
}\r
\r
-static void _autorotation_vconf_cb(system_settings_key_e key, void *data)\r
+static void _mouse_clicked_cb(void *data, Evas_Object *obj, const char *emission, const char *source)\r
{\r
+ QP_Module_Setting *module = (QP_Module_Setting *)data;\r
+\r
+ retif(module == NULL, , "Invalid parameter!");\r
+ DBG(">>> calling state_change <<<");\r
+ _state_change(module);\r
_status_update(data, FLAG_VALUE_VOID, FLAG_VALUE_VOID);\r
}\r
\r
static int _register_module_event_handler(void *data)\r
{\r
int ret = 0;\r
-\r
- ret = system_settings_set_changed_cb(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO, _autorotation_vconf_cb, data);\r
- msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to notify key(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO) : %d", ret);\r
-\r
return QP_OK;\r
}\r
\r
static int _unregister_module_event_handler(void *data)\r
{\r
int ret = 0;\r
-\r
- ret = system_settings_unset_changed_cb(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO);\r
- msgif(ret != SYSTEM_SETTINGS_ERROR_NONE, "failed to ignore key(SYSTEM_SETTINGS_KEY_DISPLAY_SCREEN_ROTATION_AUTO) : %d", ret);\r
-\r
return QP_OK;\r
}\r
\r
quickpanel_setting_module_icon_view_update_text(module);\r
}\r
\r
+static void _reset_icon(QP_Module_Setting *module)\r
+{\r
+ retif(module == NULL, , "Invalid parameter!");\r
+\r
+ quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_VALUE_VOID);\r
+ _status_update(module, FLAG_VALUE_VOID, FLAG_VALUE_VOID);\r
+}\r
+\r
+static void _handler_on(void *data)\r
+{\r
+ QP_Module_Setting *module = (QP_Module_Setting *)data;\r
+ retif(module == NULL, , "Invalid parameter!");\r
+\r
+ quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);\r
+ quickpanel_setting_module_icon_timer_del(module);\r
+\r
+ if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_OFF) {\r
+ quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_ON);\r
+ quickpanel_setting_module_icon_timer_add(module);\r
+ } else {\r
+ ERR("the button is already turned on");\r
+ _reset_icon(module);\r
+ }\r
+}\r
+\r
+static void _handler_off(void *data)\r
+{\r
+ QP_Module_Setting *module = (QP_Module_Setting *)data;\r
+ retif(module == NULL, , "Invalid parameter!");\r
+\r
+ quickpanel_setting_module_progress_mode_set(module, FLAG_DISABLE, FLAG_TURN_OFF);\r
+ quickpanel_setting_module_icon_timer_del(module);\r
+\r
+ if (quickpanel_setting_module_icon_state_get(module) == ICON_VIEW_STATE_ON) {\r
+ quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_TURN_OFF);\r
+ quickpanel_setting_module_icon_timer_add(module);\r
+ } else {\r
+ ERR("the button is already turned off");\r
+ _reset_icon(module);\r
+ }\r
+}\r
+\r
+static void _handler_progress_on(void *data)\r
+{\r
+ QP_Module_Setting *module = (QP_Module_Setting *)data;\r
+ retif(module == NULL, , "Invalid parameter!");\r
+\r
+ quickpanel_setting_module_progress_mode_set(module, FLAG_ENABLE, FLAG_VALUE_VOID);\r
+}\r
+\r
+static void _handler_progress_off(void *data)\r
+{\r
+ QP_Module_Setting *module = (QP_Module_Setting *)data;\r
+ retif(module == NULL, , "Invalid parameter!");\r
+\r
+ _reset_icon(module);\r
+}\r
+\r
+static int _handler_ipc(const char *command, void *data)\r
+{\r
+ int i = 0;\r
+ retif(data == NULL, EINA_FALSE, "item data is NULL");\r
+ retif(command == NULL, EINA_FALSE, "command is NULL");\r
+\r
+ static Setting_Activity_Handler __table_handler[] = {\r
+ {\r
+ .command = "on",\r
+ .handler = _handler_on,\r
+ },\r
+ {\r
+ .command = "off",\r
+ .handler = _handler_off,\r
+ },\r
+ {\r
+ .command = "progress_on",\r
+ .handler = _handler_progress_on,\r
+ },\r
+ {\r
+ .command = "progress_off",\r
+ .handler = _handler_progress_off,\r
+ },\r
+ {\r
+ .command = NULL,\r
+ .handler = NULL,\r
+ },\r
+ };\r
+\r
+ for (i = 0; __table_handler[i].command; i++) {\r
+ if (strcasecmp(__table_handler[i].command, command))\r
+ continue;\r
+\r
+\r
+ if (__table_handler[i].handler != NULL) {\r
+ DBG("process:%s", command);\r
+ __table_handler[i].handler(data);\r
+ }\r
+ break;\r
+ }\r
+\r
+ return EINA_TRUE;\r
+}\r
+\r
QP_Module_Setting softkey = {\r
.name = "softkey",\r
- .setting_pkgname = "org.tizen.setting-display",\r
+ .setting_pkgname = "org.tizen.softkey-container",\r
.init = _init,\r
.fini = _fini,\r
.lang_changed = _lang_changed,\r
.status_update = _status_update,\r
.handler_longpress = _long_press_cb,\r
.handler_press = _mouse_clicked_cb,\r
-};\r
+};
\ No newline at end of file