Browse Source
[android] allow use of mouse and keyboard on motion events (#2652)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2652
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
pull/2739/head
lizzie
2 months ago
committed by
crueter
No known key found for this signature in database
GPG Key ID: 425ACD2D4830EBC6
2 changed files with
15 additions and
4 deletions
-
src/android/app/src/main/java/org/yuzu/yuzu_emu/activities/EmulationActivity.kt
-
src/android/app/src/main/java/org/yuzu/yuzu_emu/features/settings/ui/InputDialogFragment.kt
|
|
|
@ -230,7 +230,9 @@ class EmulationActivity : AppCompatActivity(), SensorEventListener { |
|
|
|
|
|
|
|
override fun dispatchKeyEvent(event: KeyEvent): Boolean { |
|
|
|
if (event.source and InputDevice.SOURCE_JOYSTICK != InputDevice.SOURCE_JOYSTICK && |
|
|
|
event.source and InputDevice.SOURCE_GAMEPAD != InputDevice.SOURCE_GAMEPAD |
|
|
|
event.source and InputDevice.SOURCE_GAMEPAD != InputDevice.SOURCE_GAMEPAD && |
|
|
|
event.source and InputDevice.SOURCE_KEYBOARD != InputDevice.SOURCE_KEYBOARD && |
|
|
|
event.source and InputDevice.SOURCE_MOUSE != InputDevice.SOURCE_MOUSE |
|
|
|
) { |
|
|
|
return super.dispatchKeyEvent(event) |
|
|
|
} |
|
|
|
@ -244,7 +246,9 @@ class EmulationActivity : AppCompatActivity(), SensorEventListener { |
|
|
|
|
|
|
|
override fun dispatchGenericMotionEvent(event: MotionEvent): Boolean { |
|
|
|
if (event.source and InputDevice.SOURCE_JOYSTICK != InputDevice.SOURCE_JOYSTICK && |
|
|
|
event.source and InputDevice.SOURCE_GAMEPAD != InputDevice.SOURCE_GAMEPAD |
|
|
|
event.source and InputDevice.SOURCE_GAMEPAD != InputDevice.SOURCE_GAMEPAD && |
|
|
|
event.source and InputDevice.SOURCE_KEYBOARD != InputDevice.SOURCE_KEYBOARD && |
|
|
|
event.source and InputDevice.SOURCE_MOUSE != InputDevice.SOURCE_MOUSE |
|
|
|
) { |
|
|
|
return super.dispatchGenericMotionEvent(event) |
|
|
|
} |
|
|
|
|
|
|
|
@ -1,3 +1,6 @@ |
|
|
|
// SPDX-FileCopyrightText: Copyright 2025 Eden Emulator Project |
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later |
|
|
|
|
|
|
|
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project |
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later |
|
|
|
|
|
|
|
@ -149,7 +152,9 @@ class InputDialogFragment : DialogFragment() { |
|
|
|
|
|
|
|
private fun onKeyEvent(event: KeyEvent): Boolean { |
|
|
|
if (event.source and InputDevice.SOURCE_JOYSTICK != InputDevice.SOURCE_JOYSTICK && |
|
|
|
event.source and InputDevice.SOURCE_GAMEPAD != InputDevice.SOURCE_GAMEPAD |
|
|
|
event.source and InputDevice.SOURCE_GAMEPAD != InputDevice.SOURCE_GAMEPAD && |
|
|
|
event.source and InputDevice.SOURCE_KEYBOARD != InputDevice.SOURCE_KEYBOARD && |
|
|
|
event.source and InputDevice.SOURCE_MOUSE != InputDevice.SOURCE_MOUSE |
|
|
|
) { |
|
|
|
return false |
|
|
|
} |
|
|
|
@ -173,7 +178,9 @@ class InputDialogFragment : DialogFragment() { |
|
|
|
|
|
|
|
private fun onMotionEvent(event: MotionEvent): Boolean { |
|
|
|
if (event.source and InputDevice.SOURCE_JOYSTICK != InputDevice.SOURCE_JOYSTICK && |
|
|
|
event.source and InputDevice.SOURCE_GAMEPAD != InputDevice.SOURCE_GAMEPAD |
|
|
|
event.source and InputDevice.SOURCE_GAMEPAD != InputDevice.SOURCE_GAMEPAD && |
|
|
|
event.source and InputDevice.SOURCE_KEYBOARD != InputDevice.SOURCE_KEYBOARD && |
|
|
|
event.source and InputDevice.SOURCE_MOUSE != InputDevice.SOURCE_MOUSE |
|
|
|
) { |
|
|
|
return false |
|
|
|
} |
|
|
|
|