.setappl_psmode = -1,
.starter_reserved_apps_status = -1,
.setappl_sound_lock_bool = -1,
- .setappl_motion_activation = -1,
- .setappl_use_pick_up = -1,
+ .setappl_double_press_home_key = -1,
.setappl_3rd_lock_pkg_name_str = NULL,
};
s_status_passive.wms_wakeup_by_gesture_setting = vconf_keynode_get_int(node);
} else if (!strcmp(key_name, VCONFKEY_SETAPPL_AMBIENT_MODE_BOOL)) {
s_status_passive.setappl_ambient_mode_bool = vconf_keynode_get_int(node);
+ } else if (!strcmp(key_name, VCONFKEY_SETAPPL_DOUBLE_PRESS_HOME_KEY)) {
+ s_status_passive.setappl_double_press_home_key = vconf_keynode_get_int(node);
} else
#endif
if (!strcmp(key_name, VCONFKEY_PM_KEY_IGNORE)) {
s_status_passive.setappl_ambient_mode_bool = -1;
}
+ if (vconf_notify_key_changed(VCONFKEY_SETAPPL_DOUBLE_PRESS_HOME_KEY, _status_passive_change_cb, NULL) < 0) {
+ _E("Failed to register add the callback for %s", VCONFKEY_SETAPPL_DOUBLE_PRESS_HOME_KEY);
+ } else if (vconf_get_int(VCONFKEY_SETAPPL_DOUBLE_PRESS_HOME_KEY, &s_status_passive.setappl_double_press_home_key) < 0) {
+ _E("Failed to get vconfkey[%s]", VCONFKEY_SETAPPL_DOUBLE_PRESS_HOME_KEY);
+ s_status_passive.setappl_double_press_home_key = -1;
+ }
+
#endif
if (vconf_notify_key_changed(VCONFKEY_PM_KEY_IGNORE, _status_passive_change_cb, NULL) < 0) {
s_status_passive.setappl_sound_lock_bool = -1;
}
- if (vconf_notify_key_changed(VCONFKEY_SETAPPL_MOTION_ACTIVATION, _status_passive_change_cb, NULL) < 0) {
- _E("Failed to regitster add the callback for %s", VCONFKEY_SETAPPL_MOTION_ACTIVATION);
- } else if (vconf_get_bool(VCONFKEY_SETAPPL_MOTION_ACTIVATION, &s_status_passive.setappl_motion_activation) < 0) {
- _E("Failed to get vconfkey[%s]", VCONFKEY_SETAPPL_MOTION_ACTIVATION);
- s_status_passive.setappl_motion_activation = -1;
- }
-
- if (vconf_notify_key_changed(VCONFKEY_SETAPPL_USE_PICK_UP, _status_passive_change_cb, NULL) < 0) {
- _E("Failed to regitster add the callback for %s", VCONFKEY_SETAPPL_USE_PICK_UP);
- } else if (vconf_get_bool(VCONFKEY_SETAPPL_USE_PICK_UP, &s_status_passive.setappl_use_pick_up) < 0) {
- _E("Failed to get vconfkey[%s]", VCONFKEY_SETAPPL_USE_PICK_UP);
- s_status_passive.setappl_use_pick_up = -1;
- }
-
if (vconf_notify_key_changed(VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR, _status_passive_change_cb, NULL) < 0) {
_E("Failed to register add the callback for %s", VCONFKEY_SETAPPL_3RD_LOCK_PKG_NAME_STR);
}
_E("Failed to unregister the callback for %s", VCONFKEY_SETAPPL_AMBIENT_MODE_BOOL);
}
+ if (vconf_ignore_key_changed(VCONFKEY_SETAPPL_DOUBLE_PRESS_HOME_KEY, _status_passive_change_cb) < 0) {
+ _E("Failed to unregister the callback for %s", VCONFKEY_SETAPPL_DOUBLE_PRESS_HOME_KEY);
+ }
#endif
if (vconf_ignore_key_changed(VCONFKEY_PM_KEY_IGNORE, _status_passive_change_cb) < 0) {
_E("Failed to unregister the callback for %s", VCONFKEY_SETAPPL_SOUND_LOCK_BOOL);
}
- if (vconf_ignore_key_changed(VCONFKEY_SETAPPL_MOTION_ACTIVATION, _status_passive_change_cb) < 0) {
- _E("Failed to unregister the callback for %s", VCONFKEY_SETAPPL_MOTION_ACTIVATION);
- }
-
if (vconf_ignore_key_changed(VCONFKEY_SETAPPL_USE_PICK_UP, _status_passive_change_cb) < 0) {
_E("Failed to unregister the callback for %s", VCONFKEY_SETAPPL_USE_PICK_UP);
}
#define POWERKEY_LCDOFF_TIMER_SEC 0.4
#define POWERKEY_TIMER_SEC 0.25
+#define APP_CONTROL_OPERATION_MAIN_KEY "__APP_SVC_OP_TYPE__"
+#define APP_CONTROL_OPERATION_MAIN_VALUE "http://tizen.org/appcontrol/operation/main"
+
#define USE_DBUS_POWEROFF 1
+#define W_TASKMGR_PKGNAME "org.tizen.task-mgr"
const char *key_name[KEY_NAME_MAX] = {
"XF86AudioRaiseVolume",
+static void _do_double_home_key_operation(void)
+{
+ int op = 0;
+
+ op = status_passive_get()->setappl_double_press_home_key;
+ _D("Dobule home key operation : %d", op);
+
+ switch(op) {
+ case VCONFKEY_DOUBLE_PRESS_HOME_KEY_NONE:
+ break;
+ case VCONFKEY_DOUBLE_PRESS_HOME_KEY_LAST_APP:
+ break;
+ case VCONFKEY_DOUBLE_PRESS_HOME_KEY_RECENT_APPS:
+ process_mgr_must_launch(W_TASKMGR_PKGNAME, NULL, NULL, NULL, NULL);
+ break;
+ default:
+ _E("invalid operation(%d)", op);
+ break;
+ }
+}
+
+
+
static Eina_Bool _powerkey_timer_cb(void *data)
{
_W("%s, powerkey count[%d]", __func__, key_info.powerkey_count);
/* double press */
_W("powerkey double press");
key_info.powerkey_count = 0;
+ _do_double_home_key_operation();
return ECORE_CALLBACK_CANCEL;
}
key_info.powerkey_count = 0;