Skip to content

Commit 4705590

Browse files
authored
RDKEMW-10311 : RF4CE update key mapping (#140)
1 parent 6342f27 commit 4705590

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

src/input_event/ctrlm_input_event_writer.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ const std::map<ctrlm_key_code_t, linux_ui_code_values_t> ctrlm_key_to_linux_map
6666
{CTRLM_KEY_CODE_CH_DOWN, linux_ui_code_values_t(KEY_PAGEDOWN, 0x59, KEY_LEFTCTRL)},
6767
{CTRLM_KEY_CODE_LAST, linux_ui_code_values_t(KEY_ESC, 0x0, KEY_LEFTCTRL)},
6868
{CTRLM_KEY_CODE_INPUT_SELECT, linux_ui_code_values_t(KEY_F15, 0x0, KEY_RESERVED)},
69-
{CTRLM_KEY_CODE_INFO, linux_ui_code_values_t(KEY_F9, 0xcb, KEY_LEFTCTRL)},
69+
{CTRLM_KEY_CODE_INFO, linux_ui_code_values_t(KEY_F20, 0x0, KEY_RESERVED)},
7070
{CTRLM_KEY_CODE_VOL_UP, linux_ui_code_values_t(KEY_KPPLUS, 0x0, KEY_RESERVED)},
7171
{CTRLM_KEY_CODE_VOL_DOWN, linux_ui_code_values_t(KEY_KPMINUS, 0x0, KEY_RESERVED)},
7272
{CTRLM_KEY_CODE_MUTE, linux_ui_code_values_t(KEY_KPASTERISK, 0x0, KEY_RESERVED)},
@@ -86,6 +86,7 @@ const std::map<ctrlm_key_code_t, linux_ui_code_values_t> ctrlm_key_to_linux_map
8686
{CTRLM_KEY_CODE_OCAP_C, linux_ui_code_values_t(KEY_RESERVED, 0x0, KEY_RESERVED)},
8787
{CTRLM_KEY_CODE_OCAP_D, linux_ui_code_values_t(KEY_RESERVED, 0x0, KEY_RESERVED)},
8888
{CTRLM_KEY_CODE_ASTERISK, linux_ui_code_values_t(KEY_F14, 0x0, KEY_RESERVED)},
89+
{CTRLM_KEY_CODE_PUSH_TO_TALK, linux_ui_code_values_t(KEY_F8, 0x0, KEY_RESERVED)}
8990
};
9091

9192
enum class key_stroke {

src/rf4ce/ctrlm_rf4ce_network.cpp

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3660,6 +3660,11 @@ void ctrlm_obj_network_rf4ce_t::ind_process_voice_session_request(void *data, in
36603660
device_type = CTRLM_VOICE_DEVICE_FF;
36613661
}
36623662

3663+
if(device_type == CTRLM_VOICE_DEVICE_PTT) {
3664+
// Send voice key down event since the session was requested
3665+
process_event_key(dqm->controller_id, CTRLM_KEY_STATUS_DOWN, CTRLM_KEY_CODE_PUSH_TO_TALK);
3666+
}
3667+
36633668
bool command_status = (controller_type == RF4CE_CONTROLLER_TYPE_XR11 ||
36643669
controller_type == RF4CE_CONTROLLER_TYPE_XR19) ? true : false;
36653670

@@ -3842,6 +3847,11 @@ void ctrlm_obj_network_rf4ce_t::ind_process_voice_session_request(void *data, in
38423847
property.state = CTRLM_HAL_FREQUENCY_AGILITY_ENABLE;
38433848
ctrlm_network_property_set(network_id_get(), CTRLM_HAL_NETWORK_PROPERTY_FREQUENCY_AGILITY, (void *)&property, sizeof(property));
38443849
}
3850+
3851+
if(device_type == CTRLM_VOICE_DEVICE_PTT) {
3852+
// Send voice key up event since the session was not accepted
3853+
process_event_key(dqm->controller_id, CTRLM_KEY_STATUS_UP, CTRLM_KEY_CODE_PUSH_TO_TALK);
3854+
}
38453855
}
38463856

38473857
if(dqm->status != VOICE_SESSION_RESPONSE_AVAILABLE && dqm->status != VOICE_SESSION_RESPONSE_AVAILABLE_SKIP_CHAN_CHECK) { // Session was aborted
@@ -3937,6 +3947,17 @@ void ctrlm_obj_network_rf4ce_t::ind_process_voice_session_stop(void *data, int s
39373947
g_assert(dqm);
39383948
g_assert(size == sizeof(ctrlm_main_queue_msg_voice_session_stop_t));
39393949

3950+
if(!controller_exists(dqm->controller_id)) {
3951+
XLOGD_INFO("invalid controller id (%u)", dqm->controller_id);
3952+
return;
3953+
}
3954+
3955+
ctrlm_rf4ce_controller_type_t controller_type = controllers_[dqm->controller_id]->controller_type_get();
3956+
if(!ctrlm_is_voice_assistant((ctrlm_rcu_controller_type_t) controller_type)) {
3957+
// Send voice key up event since the session stop was received
3958+
process_event_key(dqm->controller_id, CTRLM_KEY_STATUS_UP, CTRLM_KEY_CODE_PUSH_TO_TALK);
3959+
}
3960+
39403961
// Check adjacent key press
39413962
if(CTRLM_VOICE_SESSION_END_REASON_OTHER_KEY_PRESSED == dqm->session_end_reason && true == is_key_adjacent(dqm->controller_id, dqm->key_code)) {
39423963
dqm->session_end_reason = CTRLM_VOICE_SESSION_END_REASON_ADJACENT_KEY_PRESSED;

0 commit comments

Comments
 (0)