(Menu) Add OSK enable option
This commit is contained in:
parent
a58820d927
commit
5bb7097fbb
|
@ -1982,7 +1982,9 @@ void menu_populate_entries(void *data, unsigned menu_type)
|
|||
|
||||
file_list_push(rgui->selection_buf, "Configure All (RetroPad)", RGUI_SETTINGS_CUSTOM_BIND_ALL, 0);
|
||||
file_list_push(rgui->selection_buf, "Default All (RetroPad)", RGUI_SETTINGS_CUSTOM_BIND_DEFAULT_ALL, 0);
|
||||
|
||||
#ifdef HAVE_OSK
|
||||
file_list_push(rgui->selection_buf, "Onscreen Keyboard Enable", RGUI_SETTINGS_ONSCREEN_KEYBOARD_ENABLE, 0);
|
||||
#endif
|
||||
last = (driver.input && driver.input->set_keybinds && !driver.input->get_joypad_driver) ? RGUI_SETTINGS_BIND_R3 : RGUI_SETTINGS_BIND_MENU_TOGGLE;
|
||||
for (i = RGUI_SETTINGS_BIND_BEGIN; i <= last; i++)
|
||||
file_list_push(rgui->selection_buf, input_config_bind_map[i - RGUI_SETTINGS_BIND_BEGIN].desc, i, 0);
|
||||
|
|
|
@ -240,6 +240,7 @@ typedef enum
|
|||
RGUI_SETTINGS_CUSTOM_BIND,
|
||||
RGUI_SETTINGS_CUSTOM_BIND_ALL,
|
||||
RGUI_SETTINGS_CUSTOM_BIND_DEFAULT_ALL,
|
||||
RGUI_SETTINGS_ONSCREEN_KEYBOARD_ENABLE,
|
||||
RGUI_SETTINGS_BIND_LAST = RGUI_SETTINGS_BIND_ANALOG_RIGHT_Y_MINUS,
|
||||
|
||||
|
||||
|
|
|
@ -1607,11 +1607,19 @@ int menu_set_settings(void *data, unsigned setting, unsigned action)
|
|||
#endif
|
||||
break;
|
||||
case RGUI_SETTINGS_RSOUND_SERVER_IP_ADDRESS:
|
||||
#if defined(HAVE_RSOUND) && defined(HAVE_OSK)
|
||||
#ifdef HAVE_RSOUND
|
||||
if (action == RGUI_ACTION_OK)
|
||||
{
|
||||
#ifdef HAVE_OSK
|
||||
if (g_settings.osk.enable)
|
||||
{
|
||||
g_extern.osk.cb_init = osk_callback_enter_rsound_init;
|
||||
g_extern.osk.cb_callback = osk_callback_enter_rsound;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
}
|
||||
}
|
||||
#endif
|
||||
break;
|
||||
|
@ -1723,9 +1731,15 @@ int menu_set_settings(void *data, unsigned setting, unsigned action)
|
|||
if (action == RGUI_ACTION_OK)
|
||||
{
|
||||
#ifdef HAVE_OSK
|
||||
g_extern.osk.cb_init = osk_callback_enter_filename_init;
|
||||
g_extern.osk.cb_callback = osk_callback_enter_filename;
|
||||
if (g_settings.osk.enable)
|
||||
{
|
||||
g_extern.osk.cb_init = osk_callback_enter_filename_init;
|
||||
g_extern.osk.cb_callback = osk_callback_enter_filename;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
}
|
||||
}
|
||||
break;
|
||||
case RGUI_SETTINGS_CUSTOM_BGM_CONTROL_ENABLE:
|
||||
|
@ -1842,6 +1856,14 @@ int menu_set_settings(void *data, unsigned setting, unsigned action)
|
|||
else if (action == RGUI_ACTION_START)
|
||||
g_extern.netplay_is_spectate = false;
|
||||
break;
|
||||
#endif
|
||||
#ifdef HAVE_OSK
|
||||
case RGUI_SETTINGS_ONSCREEN_KEYBOARD_ENABLE:
|
||||
if (action == RGUI_ACTION_OK || action == RGUI_ACTION_LEFT || action == RGUI_ACTION_RIGHT)
|
||||
g_settings.osk.enable = !g_settings.osk.enable;
|
||||
else if (action == RGUI_ACTION_START)
|
||||
g_settings.osk.enable = false;
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
break;
|
||||
|
@ -2269,6 +2291,11 @@ void menu_set_settings_label(char *type_str, size_t type_str_size, unsigned *w,
|
|||
case RGUI_SETTINGS_NETPLAY_SPECTATOR_MODE_ENABLE:
|
||||
snprintf(type_str, type_str_size, g_extern.netplay_is_spectate ? "ON" : "OFF");
|
||||
break;
|
||||
#endif
|
||||
#ifdef HAVE_OSK
|
||||
case RGUI_SETTINGS_ONSCREEN_KEYBOARD_ENABLE:
|
||||
snprintf(type_str, type_str_size, g_settings.osk.enable ? "ON" : "OFF");
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
*type_str = '\0';
|
||||
|
|
|
@ -210,6 +210,7 @@ struct settings
|
|||
struct
|
||||
{
|
||||
char driver[32];
|
||||
bool enable;
|
||||
} osk;
|
||||
#endif
|
||||
|
||||
|
|
|
@ -571,7 +571,7 @@ SCREENSHOTS
|
|||
MENU
|
||||
============================================================ */
|
||||
#ifdef HAVE_MENU
|
||||
#include "../frontend/menu/menu_input_line.c"
|
||||
#include "../frontend/menu/menu_input_line_cb.c"
|
||||
#include "../frontend/menu/menu_common.c"
|
||||
#include "../frontend/menu/menu_navigation.c"
|
||||
#include "../frontend/menu/menu_context.c"
|
||||
|
|
Loading…
Reference in New Issue