twinaphex
4a91b11806
Further input driver standardization
2020-06-12 18:28:07 +02:00
twinaphex
eb78b608d3
Cut down on code duplication
2020-06-12 00:50:08 +02:00
twinaphex
dee0c5dbca
CTR buildfix + cleanups
2020-06-11 19:33:27 +02:00
twinaphex
9c1d40c364
(Android) Buildfix
2020-06-11 17:37:23 +02:00
twinaphex
6ddbf911e3
(SDL input) Build fix - and further cleanups in other
...
drivers
2020-06-11 17:12:08 +02:00
twinaphex
5d58acd2c0
(Android) Input driver optimizations - fill in device_model one time
...
inside the init function - mistake previously was putting it erroneously
inside an inner loop
2020-06-11 08:08:21 +02:00
twinaphex
108bbf0bf6
Turn this into static function
2020-06-11 07:12:54 +02:00
twinaphex
d893e880ec
Revert "(Android) android_input.c - optimize - hose code that always remains"
...
This reverts commit df4428bd7a
.
2020-06-11 07:10:15 +02:00
twinaphex
df4428bd7a
(Android) android_input.c - optimize - hose code that always remains
...
the same outside of loops
2020-06-11 06:46:40 +02:00
twinaphex
703cc7198d
(input drivers) cleanup log spam
2020-06-11 05:37:40 +02:00
twinaphex
a7a03984f1
(input drivers) Cleanups
2020-06-10 04:00:40 +02:00
twinaphex
26b3ccf2e5
Don't pass joypad_info by value
2020-02-27 07:33:14 +01:00
twinaphex
0ec3a8a449
(Input) Settings cleanups
2020-02-23 06:05:23 +01:00
twinaphex
a034909ae9
Cleanups
2020-01-30 16:35:59 +01:00
Vladimir Serbinenko
193d40bae4
Cleanup AMotionEvent_getAxisValue check
...
I though it was a weak loading but in fact it's explicit so
loading with some define magic, so we need to check for p_AMotionEvent_getAxisValue
to be clean. Binary code is actually the same
Tested by reverting path fix
2020-01-28 17:32:38 +01:00
Vladimir Serbinenko
6d8cbd2c4b
Fix so file for x64 android
...
In particular it affects Pixelbook which implements x64 Android
2020-01-28 17:23:46 +01:00
Vladimir Serbinenko
14c24e1fab
Remove unnecessarry check for AMotionEvent_getX
...
Unlike getAxis getX is always present and doesn't need to be checked
2020-01-28 17:04:32 +01:00
Vladimir Serbinenko
e290e9193d
Fix crash on Pixelbook
...
AMotionEvent_getAxisValue is a weak symbol and we need
to check for its presence before calling it.
2020-01-28 15:03:16 +01:00
twinaphex
65b4c2595e
Update set keyboard mapping code for input driver
2019-07-27 02:21:24 +02:00
twinaphex
f9f2e2f48d
(Android) This should fix the hotkey binding problems
2019-07-22 00:19:05 +02:00
orbea
e13ec54dc6
Fix --disable-overlay.
2019-07-21 10:26:42 -07:00
twinaphex
f4104f5c9a
Regression in
...
9c73d3305d
- joykey needs to be uint64_t and then is later cast to uint16_t -
is apparently important for hotkeys
2019-07-21 16:22:41 +02:00
twinaphex
66b88b60f2
Simplify this
2019-07-21 16:06:12 +02:00
twinaphex
4c69dad0ce
Define DEFAULT_MAX_PADS inside config.def.h - get rid of the messy
...
MAX_PADS macros everywhere
2019-07-19 12:55:38 +02:00
twinaphex
e1ab933bf2
(Android) These arrays should be at least as big as MAX_USERS
2019-07-18 23:40:32 +02:00
twinaphex
61746c8179
(Android) Refactor android_input_set_rumble to be safer
2019-07-18 20:47:51 +02:00
twinaphex
09c727c0ee
(Android) Fix one potential crash on older Android
2019-07-18 18:16:52 +02:00
twinaphex
0257e01bee
Refactor input_autoconfigure_connect - don't return
...
value - set input device name upon failure implicitly
2019-07-16 15:28:22 +02:00
twinaphex
2c7e7ac083
(Android) Buildfix
2019-07-04 22:26:19 +02:00
twinaphex
13aab06d2d
(Android) Should hopefully fix hotkey binds being mappable for
...
gamepad
2019-07-04 15:20:10 +02:00
twinaphex
584c0f5de5
(Android) Buildfix
2019-06-24 01:11:20 +02:00
twinaphex
9c73d3305d
Insert input_joypad_pressed into drivers themselves
2019-06-23 18:20:48 +02:00
twinaphex
439a07eecd
(Android) Put extra parentheses around this
2019-06-23 15:56:34 +02:00
twinaphex
334c64d159
(Android) Simplify input code
2019-06-23 15:55:40 +02:00
twinaphex
1e863b0f4d
Optimal way of grabbing all button states in a bitmasked value -
...
should allow us to do only one function call to the RA input
driver's input state callback
2019-06-23 06:09:45 +02:00
twinaphex
e51a98a295
Simplify android input code
2019-06-23 01:57:12 +02:00
twinaphex
ee3208ac39
Integrate video_driver.c into retroarch.c
2019-06-17 15:10:22 +02:00
Yoshi Sugawara
2dde223d23
Support returning the number of touches in the current input to support multi-touch inputs, like using a 2 finger touch to reload or secondary fire in lightgun games
2019-06-11 11:49:27 -10:00
Brad Parker
145013074e
android buildfix
2019-03-14 21:26:39 -04:00
Brad Parker
15e489fd0a
android: allow stylus/pen to move mouse without pressing down
2019-03-14 19:33:51 -04:00
Brad Parker
2f659e3e17
style nits
2019-03-14 19:33:02 -04:00
Twinaphex
ae35484eea
Merge pull request #8456 from phcoder/kbd
...
Fix keyboard on android
2019-03-13 11:35:27 +01:00
Brad Parker
44a06d69a6
android: add gamepad rumble support
2019-03-13 03:32:18 -04:00
Vladimir Serbinenko
fa1603127f
Fix keyboard on Android
...
This bug interferes with my BK-0010 libretro port.
2019-03-12 23:45:52 +01:00
Brad Parker
954c54baee
add device vibration option for cores that support rumble (with initial android implementation)
2019-03-12 13:07:16 -04:00
Brad Parker
f6dc7f4f02
android: add option to vibrate on touch
2019-03-10 21:36:52 -04:00
radius
b549f5181b
try to fix #8121 by making the interval configurable
2019-02-07 22:34:18 -05:00
orbea
28ff4b391a
Clean up white space.
2019-02-03 16:00:50 -08:00
orbea
bfc366decc
Squeeze extra blank lines with cat(1).
...
Example:
find . -type f -iname '*.c' | while read -r i; do
cat -s "$i" > "$i.new"
mv "$i.new" "$i"
done
2019-01-08 11:04:58 -08:00
Royerson
ba435ce22a
add more model names for Xperia Play hack
2018-11-21 14:06:34 -07:00
radius
390c9a4dde
xperia play hack
2018-11-18 17:34:54 -05:00
twinaphex
a6941fb4ed
Initial work done on VS2017 solution for Android
2018-08-14 16:02:31 +02:00
twinaphex
ea09c29e04
Update implementations for other input drivers - not all input
...
drivers support this yet
2018-07-15 14:34:02 +02:00
radius
717e45dc52
Add mouse wheel support
...
enable hold to bind on android
cleanup
2018-06-29 21:12:47 -05:00
radius
fef9b63bc0
Revert "Disable ENABLE_TOUCH_SCREEN_MOUSE for now until issues are resolved"
...
This reverts commit 2b02616512
.
2018-06-29 21:12:47 -05:00
twinaphex
981b0eec91
Take this out
2018-06-19 06:28:38 +02:00
twinaphex
54a95eed83
These defines are not available on Android NDK APIs lower than 24
2018-06-18 01:56:22 +02:00
twinaphex
2b02616512
Disable ENABLE_TOUCH_SCREEN_MOUSE for now until issues are resolved
2018-02-15 14:50:14 +01:00
radius
3ee75e86c5
ake the hack less specific
2018-01-06 13:47:54 -05:00
twinaphex
69f85556a3
Get rid of meta_key_pressed
2017-12-18 05:59:57 +01:00
twinaphex
7b210ccf37
Don't call meta key pressed if not bound
2017-12-18 05:49:17 +01:00
gblues
6904101c44
Clean up trailing whitespace
...
== DETAILS
Really simple code cleanup, because my editor flags trailing whitespaces
and it's pretty annoying.
2017-12-12 00:24:18 -08:00
twinaphex
e16371b8a5
Merge input_config.c and input_driver.c
2017-08-31 02:25:04 +02:00
radius
f5360d0d82
extra devices
2017-08-04 01:17:32 -05:00
radius
2ef75cb300
buildfix
2017-08-04 01:11:31 -05:00
radius
a6b24b4d42
fire tv hack
2017-08-04 01:09:05 -05:00
twinaphex
f087419165
Rename platform_linux.c to platform_unix.c
2017-06-19 17:38:49 +02:00
twinaphex
9b13894438
Slightly rewrite input_state for android input driver
2017-06-10 12:48:09 +02:00
twinaphex
6b3dbff75f
Merge input_driver.c and input_joypad_driver.c
2017-06-06 05:56:02 +02:00
radius
304a647248
dlopen libandroid from lib64 instead
2017-06-04 21:20:39 -05:00
twinaphex
59fb7700b8
Combine menu_driver.c and menu_display.c
2017-05-19 15:25:14 +02:00
twinaphex
bf3188eac4
Combine runloop_ctl and rarch_ctl
2017-05-15 05:06:23 +02:00
twinaphex
9a6e137a56
Get rid of header include
2017-05-10 07:10:05 +02:00
twinaphex
ef8094836f
Create input_driver_get_float
2017-05-10 07:07:06 +02:00
twinaphex
6d4ac23f26
Cleanup
2017-04-29 16:20:26 +02:00
twinaphex
fa9b641ef0
(Android) Buildfix
2017-04-28 15:53:38 +02:00
twinaphex
b9f110679a
Remove unused variable
2017-04-27 21:38:39 +02:00
twinaphex
549ed6fc6b
(Android) Buildfix
2017-04-26 15:43:16 +02:00
twinaphex
e179108080
Cleanups
2017-04-26 00:24:59 +02:00
twinaphex
a146dfee79
Use input_config_binds directly
2017-04-25 23:47:23 +02:00
twinaphex
fc5d240297
Get rid of some now-unused functions
2017-04-25 23:30:50 +02:00
twinaphex
53c9acacd6
Wrap access to settings->input.binds completely
2017-04-25 18:50:49 +02:00
twinaphex
d66aff8fbd
Start wrapping settings->input.binds
2017-04-25 18:12:13 +02:00
twinaphex
6ace8ce66a
Rewrite autoconf_binds and move it to task_autodetect.c - take
...
it out of the settings struct
2017-04-25 16:33:30 +02:00
twinaphex
20ed6eb90a
Start using input_config_get_device_name
2017-04-25 16:04:28 +02:00
radius
d70d04c473
improve shield portable hack
2017-04-16 16:48:37 -05:00
twinaphex
7f4b490fdb
Prevent implicit memsets with struct video_viewport
2017-04-15 19:43:52 +02:00
twinaphex
75188800b1
Use C comments
2017-02-19 04:37:40 +01:00
Diablodiab
2cbd1898e8
Android input driver mouse support fixes:
...
- Fix bug with cursor moving down to the right
- Remove handling of "copy" and "thread" input states simplifying the driver
2017-02-19 02:57:28 +01:00
Diablodiab
47d5242dd7
Add middle mouse button support to Android input driver
...
Add lightgun support to Android input driver
2017-02-16 21:52:52 +01:00
Diablodiab
4f039cac22
This adds external mouse support to the Android input driver. It also adds support for using the touch screen as mouse in cores with mouse support (eg. ScummVM).
...
It has been tested with the ScummVM core on:
- NVIDIA Shield TV running Android Nougat 7.0
- NVIDIA Shield Tablet running Android Nougat 7.0
- NVIDIA Shield Tablet running Android Lollipop 5.1
- Huawei Honor 7 running Android Marshmallow 6.0
- HTC Desire 500 running Android Jelly Bean 4.1
It's been tested using the touch screen, a USB mouse/keyboard combo, and a bluetooth mouse.
The Android version running on the device limits the functionality and user experience of the external mouse support.
Android Nougat and/or an NVIDIA SHIELD device with NVIDIA extensions provides the best user experience:
Android API < 14:
- Only left mouse button supported
- The Android mouse cursor will be visible along with the in game mouse cursor
- When the Android mouse cursor hits the edge of the screen it will not be possible to move the in-game mouse cursor further in that direction
Android API < 24 and no NVIDIA extensions available:
- Both left and right mouse buttons supported
- The Android mouse cursor will be visible along with the in game mouse cursor
- When the Android mouse cursor hits the edge of the screen it will not be possible to move the in-game mouse cursor further in that direction
Android API > 23 and/or NVIDIA extensions available (SHIELD devices):
- Both left and right mouse buttons supported
- The Android mouse cursor will be hidden
- The mouse is not limited by the (hidden) Android mouse cursor hitting the edge of the screen
Description of how the the touchscreen mouse support works:
- You can move the in-game mouse cursor using the touch screen. The in-game mouse cursor will move relative to your movements on the touch screen, it will not be centered on where you press the screen.
- One quick tap on the touch screen results in the left mouse button being clicked
- Two taps on the screen and keeping the second tap pressed down results in a left mouse being held down until you release
- Two fingers on the touch screen results in the right mouse button being clicked
The touch screen mouse functionality is active at the same time as overlay support. This might cause some confusion when using cores that are designed for mouse support but where you have also enabled overlay controls. At the top of android_input.c there's a define that can be used to turn off this functionality if it causes more problems than it solves.
2017-02-14 22:34:46 +01:00
twinaphex
96c8ca5a09
Header update #1
2017-01-22 13:40:32 +01:00
Aaron Kling
8a2585f8dc
Handle motion events if source is touchscreen or mouse regardless
...
of other sources being set.
API level 9 doesn't support stylus, but still needs to be handled.
Current code throws out additional sources that it doesn't
recognize. This instead ignores whether other sources are set.
2017-01-13 18:37:50 -06:00
twinaphex
ea3dd6a95b
Set device name when autoconfig connect task fails for all
...
other input drivers too
2017-01-13 05:00:13 +01:00
twinaphex
8bd12368ef
Pass joypad_driver name to input_driver_init function and make
...
sure we don't need to access the settings struct from the
input driver
2017-01-10 17:59:48 +01:00
twinaphex
d48141041d
Pass joypad_info to input_state function callback - less
...
settings pointer grabbing
2017-01-10 17:40:21 +01:00
twinaphex
da4d2a9f42
Remove conditionals for device JOYPAD from input_state callback functions
2017-01-10 17:05:04 +01:00
twinaphex
b9945f05f1
Pass joypad_info to input_joypad_analog
2017-01-10 03:53:57 +01:00
twinaphex
6376f2af68
Add rarch_joypad_info_t
2017-01-10 03:44:53 +01:00
twinaphex
103042de96
Rewrite task_autodetect.c
2016-12-31 07:43:34 +01:00