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
twinaphex
aafae944cb
Don't memset autoconfig_params_t
2016-12-17 14:26:13 +01:00
twinaphex
2153f3f011
Check if autodetect is enabled at beginning of connect task
2016-12-16 15:18:04 +01:00
twinaphex
209305f944
Connect task now sets PID/VID too
2016-12-16 14:02:11 +01:00
twinaphex
dc7549434f
Add headers
2016-12-07 08:10:02 +01:00
twinaphex
a12d0d082d
Move input_translate_coord_viewport to video_driver.c
2016-12-07 08:07:11 +01:00
twinaphex
2ba311274e
Simplify input_translate_coord_viewport
2016-12-05 05:18:36 +01:00
twinaphex
779b680264
(Android) Buildfix
2016-12-01 23:05:36 +01:00
twinaphex
d3c22cb0e4
Move input/input_autodetect.c to tasks/task_autodetect.c
2016-12-01 20:38:20 +01:00
twinaphex
76d0380e45
Rename input_autoconfigure_joypad to input_autoconfigure_connect
2016-12-01 18:57:44 +01:00
twinaphex
e689d55414
Rename autoconfig functions
2016-12-01 18:52:34 +01:00
twinaphex
31a95b8972
(android_input.c) Get rid of HAVE_MENU ifdefs
2016-12-01 17:31:26 +01:00
twinaphex
e9846aae68
(Android) Remove unused variables
2016-11-27 15:02:14 +01:00
twinaphex
95254aa79b
Remove 'back as menu toggle' setting
2016-11-21 13:05:23 +01:00
twinaphex
763a925a17
Fix Android build
2016-10-29 04:59:56 +02:00
twinaphex
ce98a4dd19
Get rid of now unused input_driver_key_pressed
2016-10-29 04:57:28 +02:00
radius
6a950526d5
add group for other android atv devices
2016-10-28 20:49:44 -05:00
twinaphex
d246d320c7
Get rid of messy 'all_users_control_menu' hack - will be dealt
...
with better once menu_input branch has been merged
2016-10-27 07:00:13 +02:00
twinaphex
8ce882c829
Should hopefully fix most of the remaining issues
2016-10-26 10:29:26 +02:00
twinaphex
b0ed69f05c
Optimize android_keyboard_port_input_pressed
2016-10-23 20:43:14 +02:00
twinaphex
647ffca76c
Optimize input_joypad_pressed code
2016-10-23 20:37:12 +02:00
twinaphex
a4a1e96210
Prevent more implicit memsets
2016-10-16 01:40:29 +02:00
twinaphex
51b0e61712
Cleanups
2016-09-11 16:24:02 +02:00
twinaphex
012e069f86
Get rid of general.h includes
2016-09-11 13:21:56 +02:00
twinaphex
d4122806ab
(Android) Buildfix
2016-09-05 18:34:21 +02:00
twinaphex
acd4dd527b
Header include cleanups
2016-09-05 18:31:32 +02:00
Brad Parker
a17679a0c5
add input option to allow any user to control the menu
2016-09-03 19:01:29 -04:00
twinaphex
2f7684c743
(Android) Cleanups
2016-05-25 16:03:32 +02:00
radius
b6b2fdfaa6
comment out xbox 360 & dualshock hacks that are not needed anymore, friendly labels can be applied on the autoconf files instead
2016-05-25 00:47:01 -05:00
twinaphex
b79b2dca13
Create performance_counters
2016-05-10 08:53:14 +02:00
twinaphex
2691ab0c7d
Rename command_event enums
2016-05-09 20:51:53 +02:00
twinaphex
a98ef36d36
Rename event_cmd_ctl to command_event
2016-05-09 20:20:50 +02:00
twinaphex
725c202498
Remove input_driver_ctl
2016-05-08 23:12:04 +02:00
Hans-Kristian Arntzen
8870e85395
More fixes for menu_display_ctl.
...
Grep shows nothing now.
2016-05-08 14:18:12 +02:00
Hans-Kristian Arntzen
66c4f608e6
Clear out rest of video_driver_ctl use.
2016-05-08 14:10:28 +02:00
Diablodiab
58c5cc6f46
Change ALooper_pollAll in android_input_poll from a non blocking call into a 1 ms
...
blocking call. For some reason this allows more input events to queue up in the
input queue for processing making it easier to press multiple gamepad buttons and
have it register within a single frame.
2016-04-29 00:42:09 +02:00
twinaphex
6f80e09ce1
Change MIN/MAX to upper-case
2016-03-02 00:07:31 +01:00
Diablodiab
84b6b505ad
Fix crash when defining gamepad keys
2016-02-08 01:53:33 +01:00
Diablodiab
bdb9471d13
Added support for using keyboards in the Retroarch menu and for mapping to gamepad keys.
2016-02-08 01:06:15 +01:00
twinaphex
372d673a26
Rename event_command to event_cmd_ctl - add second parameter
2016-01-22 15:34:43 +01:00
twinaphex
fbd2e9aa84
Use string_is_equal more
2016-01-21 02:48:00 +01:00
Diablodiab
e738b57cf8
Add handling of Nvidia Shield Virtual Controller
...
The NVIDIA Button on the Nvidia Shield Controller and inputs received from CEC remotes
are detected as a "Virtual" controller on the Shield TV.
If a virtual controller is detected on the Shield TV before an actual game controller
then it will be configured as "Shield Virtual Device". This allows the use of the
buttons on a CEC remote to control the Retroarch menu and games.
When an actual controller is connected the Virtual Device will be overwritten and
the NVIDIA button of the Virtual device will be mapped to the controller as the
menu button.
This also fixes the situation where you press the NVIDIA Button before any other
button on the game controller and it does nothing. Now it will go into the
Retroarch menu even if it is the first button pressed.
A matching profile for "Nvidia Shield Virtual Controller" has been sent as a pull request to
the "retroarch-joypad-autoconfig" repository.
2016-01-15 18:41:17 +01:00
Diablodiab
9245113738
Fix if clause that could result in a keyboard key being handled as gamepad input
2016-01-14 21:16:54 +01:00
Diablodiab
2c08dc0f4f
Extends Android keyboard functionality to allow for up to three keyboards.
...
This solves the problem with volume buttons on phones being detected as
keyboards and blocking a real keyboard from being mapped afterwards.
Renamed id_1 and id_2 to pad_id1 and pad_id2
Renamed id_3 to kbd_id and change it to an array
Implement function is_keyboard_id(int id) which checks if an id is mapped as
a keyboard
2016-01-14 20:59:25 +01:00
Diablodiab
afe8d2d617
Fixed two bugs in Android keyboard functionality and changed the way the keyboard
...
is registered (introduced an id_3 value)
2016-01-12 21:48:09 +01:00
twinaphex
f374af9dbc
Revert "Add keyboard input functionality to Android version"
...
This reverts commit 17bdb549d4
.
2016-01-12 15:52:42 +01:00
Twinaphex
db51b5a2c0
Merge pull request #2636 from diablodiab/android-keyboard-support
...
Add keyboard input functionality to Android version
2016-01-11 22:26:51 +01:00
Diablodiab
17bdb549d4
Add keyboard input functionality to Android version
2016-01-11 21:06:46 +01:00
twinaphex
347a18cb30
Update input headers
2016-01-10 04:33:01 +01:00
twinaphex
697351ee67
(input) Use string_is_empty
2015-12-26 07:54:17 +01:00
radius
4b082daa7e
fix input labels empty on android
2015-12-12 20:56:42 -05:00
radius
48fbc5eda4
Improve the shield portable workaround and reimplement the workaround for the shield atv,
...
This workaround could be used as a foundation for other console like devices.
2015-12-11 17:25:03 -05:00
twinaphex
4727ddb52d
Create RARCH_INPUT_CTL_KEY_PRESSED
2015-12-10 12:47:36 +01:00
twinaphex
7a791fa6e8
Turn primary_id/secondary_id into static variables
2015-12-09 22:17:55 +01:00
Twinaphex
2bb440bc08
Merge pull request #2535 from fr500/master
...
new workaround for pads implemented as two independents hid devices
2015-12-09 22:16:43 +01:00
twinaphex
23c13c0043
Delay reinit, gets rid of the remaining concurrency errors
2015-12-09 20:30:55 +01:00
radius
08f42beefb
add ARCHOS gamepad
2015-12-09 10:00:32 -05:00
twinaphex
959b781c06
(Android) Implement input_alive
2015-12-08 13:47:46 +01:00
twinaphex
629a660af4
Check if android_app or android variables are NULL in android_input_poll_memcpy
2015-12-08 08:53:26 +01:00
twinaphex
c1312d3b41
Buildfix
2015-12-07 21:21:13 +01:00
twinaphex
84bcf896b6
Set SET/UNSET_FRAME for Android
2015-12-07 21:17:55 +01:00
twinaphex
1e522f4035
(Android) Start calling SET_STUB_FRAME for LOST_FOCUS/GAINED_FOCUS
2015-12-07 21:07:04 +01:00
radius
e28450368f
reset the ids when the driver is reinitialized
2015-12-06 23:39:42 -05:00
radius
17aa00db1a
change variables
2015-12-06 23:20:47 -05:00
radius
cbd8819fb3
new workaround for pads implemented as two independents hid devices
2015-12-06 22:58:54 -05:00
Higor Eurípedes
b64ecfae92
(android_input) Fix negative port issue
2015-12-06 21:08:27 -03:00
Higor Eurípedes
1cd0a0ff0a
(android_input.c) Fix usage of signed/unsigned
...
This caused a segmentation failure in android_keyboard_state_get()
2015-12-05 19:23:02 -03:00
twinaphex
3517fdc02a
(Android) Buildfix
2015-12-05 21:18:06 +01:00
twinaphex
c0a1a6a3fe
Move system->shutdown to runloop_ctl, turn it into a local
...
static variable
2015-12-04 12:44:12 +01:00
twinaphex
071912871b
(android_input.c) Attempt to only grab dlopen handle once
2015-12-03 21:19:16 +01:00
twinaphex
8ae39377e7
(Android) Cleanups
2015-12-03 01:59:43 +01:00
twinaphex
694e64831b
Create thread duplicate variant of android_input_data_t variable
2015-12-02 23:23:21 +01:00
twinaphex
923433ead7
Move engine_handle_dpad code to android_input.c - copy
...
hat and analog state to intermediary on android_app during
poll time
2015-12-02 22:33:27 +01:00
twinaphex
69ee18cea6
Create android_input_data_t
2015-12-02 22:12:43 +01:00
twinaphex
e859fae4ee
(Android) Move sensorManager and sensorEventQueue to android_app
2015-12-02 21:38:21 +01:00
twinaphex
b7d7dcef1c
Expand android_app
2015-12-02 19:28:15 +01:00
twinaphex
cfe5491b05
(Android) Reimplement how shutdown gets signalled
2015-12-02 17:55:31 +01:00
twinaphex
d6b5dd6ac4
Flesh out android_native_app_glue.c implementation some more
2015-12-02 17:46:20 +01:00
twinaphex
986e4bf40d
(Android) Native activity updates
2015-12-02 08:54:24 +01:00
twinaphex
0db7cda264
Start moving rewind code to rewind.c
2015-11-30 22:25:13 +01:00
twinaphex
9824eb7ea9
Rename rarch_main_ctl to runloop_ctl
2015-11-30 21:42:59 +01:00
twinaphex
4e333302ae
Rename RARCH_MAIN_CTL* to RUNLOOP_CTL*
2015-11-30 21:35:50 +01:00
twinaphex
9a743ec357
Create input_driver_key_pressed
2015-11-29 16:45:38 +01:00
twinaphex
025d2c6328
(Android) Cleanups
2015-11-29 16:20:04 +01:00
twinaphex
2d455d78b3
Move inptu state to android_joypad.c
2015-11-29 16:18:29 +01:00
twinaphex
7856c4e940
(Android) Cleanups
2015-11-28 18:39:43 +01:00
twinaphex
b06d08a32e
Remove some references to driver->input_data
2015-11-28 18:33:59 +01:00
twinaphex
c23846c5dc
Merged input_joypad.c and input_joypad_driver.c
2015-11-28 16:22:49 +01:00
twinaphex
a6ccc188a8
Rename input_common.c to input_config.c
2015-11-28 02:22:58 +01:00
twinaphex
a8d868f187
(Android) Implement 'focused' callback for androidegl_ctx
2015-11-27 20:38:29 +01:00
twinaphex
a1ecc5eee3
(Android) Some cleanups in engine_handle_cmd
2015-11-27 18:27:30 +01:00
twinaphex
daeb8cacaf
Set idle when APP_CMD_LOST_FOCUS
2015-11-27 00:23:47 +01:00
Twinaphex
57e8cfe1f9
Totally reimplemented MFi support
2015-11-16 02:39:38 +01:00
twinaphex
53c0e57d6d
(Android) Buildfix
2015-11-07 21:13:11 +01:00
twinaphex
22f85b11df
Don't need this anymore
2015-11-07 20:59:12 +01:00
twinaphex
6ac88eed54
Cleanups
2015-10-23 08:34:15 +02:00