diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index c02ea09738..9d9a49a594 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -2080,3 +2080,11 @@ MSG_HASH( MENU_ENUM_SUBLABEL_INPUT_MAX_USERS, "Maximum amount of users supported by RetroArch." ) +MSG_HASH( + MENU_ENUM_SUBLABEL_INPUT_POLL_TYPE_BEHAVIOR, + "Influence how input polling is done inside RetroArch. Setting it to 'Early' or 'Late' can result in less latency, depending on your configuration." + ) +MSG_HASH( + MENU_ENUM_SUBLABEL_INPUT_ALL_USERS_CONTROL_MENU, + "Allows any user to control the menu. When disabled, only User 1 can control the menu." + ) diff --git a/menu/cbs/menu_cbs_sublabel.c b/menu/cbs/menu_cbs_sublabel.c index c22c7e878c..dfd34f6dfe 100644 --- a/menu/cbs/menu_cbs_sublabel.c +++ b/menu/cbs/menu_cbs_sublabel.c @@ -501,6 +501,28 @@ static int action_bind_sublabel_input_max_users( return 0; } +static int action_bind_sublabel_input_poll_type_behavior( + file_list_t *list, + unsigned type, unsigned i, + const char *label, const char *path, + char *s, size_t len) +{ + + strlcpy(s, msg_hash_to_str(MENU_ENUM_SUBLABEL_INPUT_POLL_TYPE_BEHAVIOR), len); + return 0; +} + +static int action_bind_sublabel_input_all_users_control_menu( + file_list_t *list, + unsigned type, unsigned i, + const char *label, const char *path, + char *s, size_t len) +{ + + strlcpy(s, msg_hash_to_str(MENU_ENUM_SUBLABEL_INPUT_ALL_USERS_CONTROL_MENU), len); + return 0; +} + int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs, const char *path, const char *label, unsigned type, size_t idx) { @@ -513,6 +535,12 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs, { switch (cbs->enum_idx) { + case MENU_ENUM_LABEL_INPUT_ALL_USERS_CONTROL_MENU: + BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_input_all_users_control_menu); + break; + case MENU_ENUM_LABEL_INPUT_POLL_TYPE_BEHAVIOR: + BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_input_poll_type_behavior); + break; case MENU_ENUM_LABEL_INPUT_MAX_USERS: BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_input_max_users); break; diff --git a/msg_hash.h b/msg_hash.h index 25e998b493..9fe280e3ad 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -431,13 +431,11 @@ enum msg_hash_enums MENU_ENUM_LABEL_INPUT_BACK_AS_MENU_TOGGLE_ENABLE, MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS_BEGIN, MENU_ENUM_LABEL_INPUT_KEYBOARD_GAMEPAD_MAPPING_TYPE, - MENU_ENUM_LABEL_INPUT_POLL_TYPE_BEHAVIOR, MENU_ENUM_LABEL_INPUT_SETTINGS, MENU_ENUM_LABEL_INPUT_SETTINGS_BEGIN, MENU_ENUM_LABEL_INPUT_OVERLAY_HIDE_IN_MENU, MENU_ENUM_LABEL_INPUT_BACK_AS_MENU_ENUM_TOGGLE_ENABLE, MENU_ENUM_LABEL_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO, - MENU_ENUM_LABEL_INPUT_ALL_USERS_CONTROL_MENU, MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS, MENU_ENUM_LABEL_INPUT_OSK_OVERLAY_ENABLE, MENU_ENUM_LABEL_INPUT_OVERLAY_ENABLE, @@ -575,16 +573,22 @@ enum msg_hash_enums MENU_ENUM_LABEL_VALUE_INPUT_HOTKEY_BINDS, MENU_ENUM_LABEL_VALUE_INPUT_BACK_AS_MENU_ENUM_TOGGLE_ENABLE, MENU_ENUM_LABEL_VALUE_INPUT_MENU_ENUM_TOGGLE_GAMEPAD_COMBO, - MENU_ENUM_LABEL_VALUE_INPUT_ALL_USERS_CONTROL_MENU, MENU_ENUM_LABEL_VALUE_INPUT_OVERLAY_HIDE_IN_MENU, MENU_ENUM_LABEL_VALUE_INPUT_KEYBOARD_GAMEPAD_MAPPING_TYPE, - MENU_ENUM_LABEL_VALUE_INPUT_POLL_TYPE_BEHAVIOR, MENU_ENUM_LABEL_VALUE_INPUT_BACK_AS_MENU_TOGGLE_ENABLE, MENU_ENUM_LABEL_VALUE_INPUT_SMALL_KEYBOARD_ENABLE, MENU_ENUM_LABEL_VALUE_INPUT_TOUCH_ENABLE, MENU_ENUM_LABEL_VALUE_INPUT_PREFER_FRONT_TOUCH, MENU_ENUM_LABEL_VALUE_INPUT_ICADE_ENABLE, + MENU_ENUM_LABEL_INPUT_ALL_USERS_CONTROL_MENU, + MENU_ENUM_SUBLABEL_INPUT_ALL_USERS_CONTROL_MENU, + MENU_ENUM_LABEL_VALUE_INPUT_ALL_USERS_CONTROL_MENU, + + MENU_ENUM_LABEL_INPUT_POLL_TYPE_BEHAVIOR, + MENU_ENUM_SUBLABEL_INPUT_POLL_TYPE_BEHAVIOR, + MENU_ENUM_LABEL_VALUE_INPUT_POLL_TYPE_BEHAVIOR, + /* Video */ MENU_ENUM_LABEL_VIDEO_FONT_ENABLE, MENU_ENUM_LABEL_VIDEO_FONT_PATH,