X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=bt-core%2Fbt-core-noti-handler.c;h=d992b44379cac298191baf33139b818717ff2e8d;hb=cd9e35acccf53453cf686a5b82e7ceac7707bea9;hp=7615e5d738e5c257deb5f61a1ae4265099f70d61;hpb=7e0f02a5ee654e81353a9aec00ca743d9f8e5a3d;p=platform%2Fcore%2Fconnectivity%2Fbluetooth-frwk.git diff --git a/bt-core/bt-core-noti-handler.c b/bt-core/bt-core-noti-handler.c index 7615e5d..d992b44 100644 --- a/bt-core/bt-core-noti-handler.c +++ b/bt-core/bt-core-noti-handler.c @@ -53,100 +53,6 @@ static gboolean __bt_off_cause_conflict_check(void) return ret; } -static void __bt_core_handle_adapter_with_flight_mode(gboolean flight_mode) -{ - bt_status_t adapter_status; - bt_le_status_t adapter_status_le; - - adapter_status = _bt_core_get_status(); - adapter_status_le = _bt_core_get_le_status(); - - BT_INFO("bt status %d, le status %d", adapter_status, adapter_status_le); - if (flight_mode == TRUE) { - BT_INFO_C("Flight mode on. Turn off BT"); - - if (adapter_status == BT_ACTIVATING || adapter_status_le == BT_LE_ACTIVATING) { - BT_INFO("BT adapter is activating. Turn off BT after activation"); - _bt_set_flightmode_request(TRUE); - return; - } - if (adapter_status != BT_ACTIVATED && adapter_status_le != BT_LE_ACTIVATED) { - BT_INFO("No need to control bt status"); - return; - } - - if (vconf_set_int(BT_OFF_DUE_TO_FLIGHT_MODE, 1) != 0) - BT_ERR("Set vconf failed"); - - if (adapter_status == BT_ACTIVATED) { - int bt_status_before_mode = 0; - - if (vconf_get_int(VCONFKEY_BT_STATUS, &bt_status_before_mode) == 0) - _bt_core_set_bt_status(BT_FLIGHT_MODE, bt_status_before_mode); - -#ifdef TIZEN_FEATURE_BUSACT - _bt_core_service_request_adapter(BT_DISABLE_ADAPTER); -#endif - if (!TIZEN_FEATURE_BT_USB_DONGLE) - _bt_disable_adapter(); - } - - if (adapter_status_le == BT_LE_ACTIVATED) { - int bt_le_status_before_mode = 0; - - if (vconf_get_int(VCONFKEY_BT_LE_STATUS, &bt_le_status_before_mode) == 0) - _bt_core_set_bt_le_status(BT_FLIGHT_MODE, bt_le_status_before_mode); - -#ifdef TIZEN_FEATURE_BUSACT - _bt_core_service_request_adapter(BT_DISABLE_ADAPTER_LE); -#endif - if (!TIZEN_FEATURE_BT_USB_DONGLE) - _bt_disable_adapter_le(); - } - } else { - int flight_mode_value = 0; - - BT_INFO_C("Flight mode off. Turn on BT"); - - if (adapter_status == BT_DEACTIVATING || adapter_status_le == BT_LE_DEACTIVATING) { - BT_INFO("BT adapter is activating. Turn off BT after activation"); - _bt_set_flightmode_request(TRUE); - return; - } - if (adapter_status != BT_DEACTIVATED && adapter_status_le != BT_LE_DEACTIVATED) { - BT_INFO("No need to control bt status"); - return; - } - - if (vconf_get_int(BT_OFF_DUE_TO_FLIGHT_MODE, &flight_mode_value)) - BT_ERR("Fail get flight mode value"); - - if (flight_mode_value == 0) - return; - - if (vconf_set_int(BT_OFF_DUE_TO_FLIGHT_MODE, 0) != 0) - BT_ERR("Set vconf failed"); - - ret_if(__bt_off_cause_conflict_check()); - - if (adapter_status == BT_DEACTIVATED && - _bt_core_get_bt_status(BT_FLIGHT_MODE) != 0) { - _bt_core_set_bt_status(BT_FLIGHT_MODE, 0); - _bt_core_service_request_adapter(BT_ENABLE_ADAPTER); - if (!TIZEN_FEATURE_BT_USB_DONGLE) - _bt_enable_adapter(); - } - - if (adapter_status_le == BT_LE_DEACTIVATED && - _bt_core_get_bt_le_status(BT_FLIGHT_MODE) != 0) { - _bt_core_set_bt_le_status(BT_FLIGHT_MODE, 0); - _bt_core_service_request_adapter(BT_ENABLE_ADAPTER_LE); - if (!TIZEN_FEATURE_BT_USB_DONGLE) - _bt_enable_adapter_le(); - } - } -} - static void __bt_core_handle_adapter_with_power_saving_mode(int power_saving_mode) { bt_status_t adapter_status; @@ -165,9 +71,6 @@ static void __bt_core_handle_adapter_with_power_saving_mode(int power_saving_mod if (vconf_get_int(VCONFKEY_BT_STATUS, &bt_status_before_mode) == 0) _bt_core_set_bt_status(BT_POWER_SAVING_MODE, bt_status_before_mode); -#ifdef TIZEN_FEATURE_BUSACT - _bt_core_service_request_adapter(BT_DISABLE_ADAPTER); -#endif if (!TIZEN_FEATURE_BT_USB_DONGLE) _bt_disable_adapter(); } @@ -177,10 +80,6 @@ static void __bt_core_handle_adapter_with_power_saving_mode(int power_saving_mod if (vconf_get_int(VCONFKEY_BT_LE_STATUS, &bt_le_status_before_mode) == 0) _bt_core_set_bt_le_status(BT_POWER_SAVING_MODE, bt_le_status_before_mode); -#ifdef TIZEN_FEATURE_BUSACT - /* Disable the BT LE */ - _bt_core_service_request_adapter(BT_DISABLE_ADAPTER_LE); -#endif if (!TIZEN_FEATURE_BT_USB_DONGLE) _bt_disable_adapter_le(); } @@ -219,65 +118,22 @@ static void __bt_core_handle_adapter_with_power_saving_mode(int power_saving_mod } } -static void __bt_core_flight_mode_cb(keynode_t *node, void *data) -{ - gboolean flight_mode = FALSE; - int type; - - BT_DBG("key = %s", vconf_keynode_get_name(node)); - - type = vconf_keynode_get_type(node); - if (type != VCONF_TYPE_BOOL) { - BT_ERR("Invaild vconf key type : %d", type); - return; - } - - flight_mode = vconf_keynode_get_bool(node); - - __bt_core_handle_adapter_with_flight_mode(flight_mode); -} - -#ifdef ENABLE_TIZEN_2_4 -static void __bt_core_power_saving_mode_cb(keynode_t *node, void *data) -{ - int power_saving_mode = 0; - - DBG_SECURE("key=%s", vconf_keynode_get_name(node)); - - if (vconf_keynode_get_type(node) != VCONF_TYPE_INT) { - BT_ERR("Wrong vconf type"); - return; - } - - power_saving_mode = vconf_keynode_get_int(node); - - BT_DBG("value=%d", power_saving_mode); - - __bt_core_handle_adapter_with_power_saving_mode(power_saving_mode); -} -#endif - void _bt_core_init_vconf_value(void) { gboolean flight_mode = FALSE; -#ifndef ENABLE_TIZEN_2_4 int power_saving_mode = 0; -#endif int bt_flight_mode = 0; int bt_ps_mode = 0; - _bt_core_handle_flight_mode_noti(); - _bt_core_handle_power_saving_mode_noti(); - + //_bt_core_handle_flight_mode_noti(); flight_mode = _bt_core_is_flight_mode_enabled(); -#ifndef ENABLE_TIZEN_2_4 if (!TIZEN_PROFILE_WEARABLE) { if (vconf_get_int(VCONFKEY_SETAPPL_PSMODE, &power_saving_mode) != 0) BT_ERR("Fail to get the power_saving_mode status value"); BT_DBG("flight_mode = %d, power_saving_mode = %d", flight_mode, power_saving_mode); } -#endif + BT_DBG("flight_mode = %d, power_saving_mode = %d", flight_mode, power_saving_mode); if (vconf_get_int(BT_OFF_DUE_TO_FLIGHT_MODE, &bt_flight_mode)) @@ -288,62 +144,14 @@ void _bt_core_init_vconf_value(void) BT_ERR("Fail get power saving mode value"); _bt_core_set_bt_status(BT_POWER_SAVING_MODE, bt_ps_mode); - if (flight_mode == TRUE) - __bt_core_handle_adapter_with_flight_mode(flight_mode); -#ifndef ENABLE_TIZEN_2_4 - else if (power_saving_mode > 0) + if (power_saving_mode > 0) __bt_core_handle_adapter_with_power_saving_mode(power_saving_mode); -#endif else BT_ERR(""); } -void _bt_core_handle_flight_mode_noti(void) -{ - int ret; - - if (TIZEN_FEATURE_FLIGHTMODE_ENABLED) { - BT_DBG("+"); - - ret = vconf_notify_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE, - (vconf_callback_fn)__bt_core_flight_mode_cb, NULL); - if (ret < 0) - BT_ERR("Unable to register key handler"); - } else { - BT_DBG("Telephony is disabled"); - } -} - -void _bt_core_handle_power_saving_mode_noti(void) -{ - int ret = 0; - - if (TIZEN_PROFILE_WEARABLE) - return; - - BT_DBG("+"); -#ifdef ENABLE_TIZEN_2_4 - ret = vconf_notify_key_changed(VCONFKEY_SETAPPL_PSMODE, - (vconf_callback_fn)__bt_core_power_saving_mode_cb, NULL); -#endif - if (ret < 0) - BT_ERR("Unable to register key handler"); -} - void _bt_core_unregister_vconf_handler(void) { - if (TIZEN_FEATURE_FLIGHTMODE_ENABLED) { - vconf_ignore_key_changed(VCONFKEY_TELEPHONY_FLIGHT_MODE, - (vconf_callback_fn)__bt_core_flight_mode_cb); - } - -#ifdef ENABLE_TIZEN_2_4 - if (!TIZEN_PROFILE_WEARABLE) { - vconf_ignore_key_changed(VCONFKEY_SETAPPL_PSMODE, - (vconf_callback_fn)__bt_core_power_saving_mode_cb); - } -#endif - return; }