From 2a164bb1cb259ed9df9fbd8c67b31cc640ad89bc Mon Sep 17 00:00:00 2001 From: Petr Bartos Date: Tue, 12 Apr 2022 21:59:30 +0200 Subject: [PATCH 1/2] Use thumbsticks as PAGEUP/PAGEDOWN in menus --- android/app/src/main/cpp/code/vr/vr_input.c | 29 ++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/android/app/src/main/cpp/code/vr/vr_input.c b/android/app/src/main/cpp/code/vr/vr_input.c index 4d970950..ae085c8d 100644 --- a/android/app/src/main/cpp/code/vr/vr_input.c +++ b/android/app/src/main/cpp/code/vr/vr_input.c @@ -690,8 +690,35 @@ static void IN_VRJoystick( qboolean isRightController, float joystickX, float jo vr.thumbstick_location[isRightController][0] = joystickX; vr.thumbstick_location[isRightController][1] = joystickY; - if (!vr.virtual_screen && cl.snap.ps.pm_type != PM_INTERMISSION) + if (vr.virtual_screen || cl.snap.ps.pm_type == PM_INTERMISSION) { + + // Use thumbstick UP/DOWN as PAGEUP/PAGEDOWN in menus + if (joystickY > thumbstickPressedThreshold) { + if (!IN_InputActivated(&controller->axisButtons, VR_TOUCH_AXIS_UP)) { + IN_ActivateInput(&controller->axisButtons, VR_TOUCH_AXIS_UP); + Com_QueueEvent(in_vrEventTime, SE_KEY, K_PGUP, qtrue, 0, NULL); + } + } else if (joystickY < -thumbstickPressedThreshold) { + if (!IN_InputActivated(&controller->axisButtons, VR_TOUCH_AXIS_DOWN)) { + IN_ActivateInput(&controller->axisButtons, VR_TOUCH_AXIS_DOWN); + Com_QueueEvent(in_vrEventTime, SE_KEY, K_PGDN, qtrue, 0, NULL); + } + } else if (joystickY < thumbstickReleasedThreshold && joystickY > -thumbstickReleasedThreshold) { + if (IN_InputActivated(&controller->axisButtons, VR_TOUCH_AXIS_UP)) { + IN_DeactivateInput(&controller->axisButtons, VR_TOUCH_AXIS_UP); + Com_QueueEvent(in_vrEventTime, SE_KEY, K_PGUP, qfalse, 0, NULL); + } + if (IN_InputActivated(&controller->axisButtons, VR_TOUCH_AXIS_DOWN)) { + IN_DeactivateInput(&controller->axisButtons, VR_TOUCH_AXIS_DOWN); + Com_QueueEvent(in_vrEventTime, SE_KEY, K_PGDN, qfalse, 0, NULL); + } + } + + } + else + { + if (isRightController == (vr_switchThumbsticks->integer != 0)) { vec3_t positional; VectorClear(positional); From 1bb0e8c6ad93f8f431cfb3ebda6a76b6fa435b9a Mon Sep 17 00:00:00 2001 From: Petr Bartos Date: Tue, 12 Apr 2022 22:00:08 +0200 Subject: [PATCH 2/2] Change arrows on server list to work as PAGEUP/PAGEDOWN --- android/app/src/main/cpp/code/q3_ui/ui_servers2.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/android/app/src/main/cpp/code/q3_ui/ui_servers2.c b/android/app/src/main/cpp/code/q3_ui/ui_servers2.c index 177a05b0..6a1fbb26 100644 --- a/android/app/src/main/cpp/code/q3_ui/ui_servers2.c +++ b/android/app/src/main/cpp/code/q3_ui/ui_servers2.c @@ -1243,11 +1243,11 @@ static void ArenaServers_Event( void* ptr, int event ) { break; case ID_SCROLL_UP: - ScrollList_Key( &g_arenaservers.list, K_UPARROW ); + ScrollList_Key( &g_arenaservers.list, K_PGUP ); break; case ID_SCROLL_DOWN: - ScrollList_Key( &g_arenaservers.list, K_DOWNARROW ); + ScrollList_Key( &g_arenaservers.list, K_PGDN ); break; case ID_BACK: