Cameron Gutman
c356862ac1
Avoid unnecessary reinitialization of PS4/PS5 gamepads during stream exit
...
onInputDeviceChanged() is triggered by starting/stopping pointer capture, so we should
unregister our callbacks before that happens to avoid triggering several gamepad context
reinitializations right as the stream is exiting
2023-10-29 16:45:07 -05:00
Cameron Gutman
0da47da8d8
Move shortcut creation/updates off the main thread for the common cases
...
These caused quite a few ANRs due to long Binder calls in ShortcutManager.getDynamicShortcuts()
2023-10-26 00:24:44 -05:00
Cameron Gutman
885b59fd52
Fix NPE when receiving non-view-associated mouse events with absolute mouse mode enabled
2023-10-25 23:13:54 -05:00
Cameron Gutman
720595091e
Change AV1 bitrate multiplier to match HEVC
2023-10-15 12:49:42 -05:00
Cameron Gutman
bc27492206
Split ControllerHandler teardown into stop() and destroy() functions
2023-10-07 00:35:36 -05:00
Cameron Gutman
081cca48fb
Implement cursor visibility and quit key shortcuts
...
Fixes #1255
2023-09-23 02:20:26 -04:00
Cameron Gutman
394a57a26d
Disable native touch passthrough for now
2023-09-16 15:59:07 -05:00
Cameron Gutman
62bae62386
Fix end of stream toast for AV1
2023-08-03 21:10:06 -05:00
Cameron Gutman
2636d79b86
Fix handling of ACTION_CANCEL for multi-pointer gestures
2023-08-03 02:29:55 -05:00
Cameron Gutman
c9c1ef91fd
Fix mishandling ACTION_MOVE events for native pen/touch events
2023-07-27 23:15:26 -05:00
Cameron Gutman
67b2853ef0
Add contact area and orientation for pen/touch events
2023-07-22 17:18:57 -05:00
Cameron Gutman
18b6aae381
Disable gamepad sensors while in PiP mode
2023-07-12 01:07:14 -05:00
Cameron Gutman
1f72c82acb
Consolidate AV1 and HEVC options into a single preference
2023-07-09 15:04:26 -05:00
Cameron Gutman
f1bcc217a9
Update to new HDR support option in moonlight-common-c
2023-07-02 23:48:19 -05:00
Cameron Gutman
458460515d
Plumb AV1 preference and rework HEVC preference to match
2023-07-02 23:48:13 -05:00
Cameron Gutman
3a78095574
Initial implementation of AV1
2023-07-02 22:49:42 -05:00
Cameron Gutman
d4079940b4
Implement controller LED and battery state extensions
2023-07-02 19:03:31 -05:00
Cameron Gutman
0d72a0e009
Implement latest pen/touch protocol updates
2023-06-27 22:21:39 -05:00
Cameron Gutman
69a4502f90
Fix pen/touch coordinates when reported from the background touch view
2023-06-25 00:50:17 -05:00
Cameron Gutman
daaa7f4e63
Fix pen rotation values
2023-06-25 00:26:32 -05:00
Cameron Gutman
5890fff240
Add pen and touch events
2023-06-24 23:13:59 -05:00
Cameron Gutman
eed4327d26
Add controller touchpad support
2023-06-24 19:09:10 -05:00
Cameron Gutman
ddefda3afa
Plumb new Sunshine protocol extensions
2023-06-24 15:19:50 -05:00
Cameron Gutman
370dbb1a10
Send non-ASCII soft keys as UTF-8
2023-02-25 12:49:55 -06:00
luten145
f77543cd9b
Added clipboard support
...
You can paste Android's clipboard contents.
2023-02-25 12:30:58 -06:00
Cameron Gutman
80acd9b9eb
Modernize HTTPS launch/resume for Sunshine
2023-02-20 22:04:41 -06:00
Cameron Gutman
b961636f02
Plumb HDR metadata into MediaCodec
2023-02-20 21:42:45 -06:00
Cameron Gutman
f4df0714b5
Implement horizontal scrolling with Sunshine
2023-02-20 19:56:01 -06:00
Cameron Gutman
91dd7b7049
Plumb non-normalized key flag extension for Sunshine
2023-02-20 19:52:52 -06:00
Cameron Gutman
b47f3ef397
Remove input batching to replace with common-c implementation
2023-02-20 13:19:59 -06:00
Cameron Gutman
1e828a10b9
Request our desired refresh rate rather than the actual frame rate
...
This ensures we'll get the highest compatible refresh rate rather than the lowest.
2022-12-15 22:53:25 -06:00
Cameron Gutman
970423f873
Use setFrameRate() instead of preferredDisplayModeId if the modes differ only by refresh rate
...
This seems to avoid a bug on the Chromecast 4K where it can decide to switch to 4K24 instead of 4K60
Fixes #1151
2022-12-14 23:05:22 -06:00
Cameron Gutman
33f0f7ecf0
Use Ctrl+Alt+Shift+Z as the unbind toggle to match other Moonlight clients
2022-11-29 23:28:13 -06:00
Cameron Gutman
6777e79e70
Fix inverted mouse capture bug
2022-11-29 23:25:39 -06:00
luten145
26bff28e4d
Added MetaKey(WindowKey) Packet
...
Allows you to use Windows key combinations.
ex) Win+Tab , Win+D
2022-11-13 17:15:22 -06:00
Cameron Gutman
4a64967b1f
Ungrab meta key capture when toggling input capture
2022-11-13 13:19:23 -06:00
Cameron Gutman
de54b27013
Plumb HTTPS port into the Game activity to avoid having to look it up again
2022-11-09 19:55:42 -06:00
Cameron Gutman
7af290b6e1
Implement support for non-default ports with Sunshine
...
Fixes #1115
2022-11-06 17:36:46 -06:00
Cameron Gutman
99fcd3c669
Improve LAN/WAN detection for IPv6 and cellular connections
2022-11-03 22:19:48 -05:00
Cameron Gutman
d0432de981
Plumb colorspace and color range into MediaCodecDecoderRenderer
2022-10-13 00:51:15 -05:00
Cameron Gutman
aa6c32968b
Add a special termination message for ML_ERROR_FRAME_CONVERSION
2022-10-04 19:51:49 -05:00
Alexandru-Marian Buza
41cedfa6ec
Fix requestMetaKeyEvent for Samsung devices with android 10+ ( #1134 )
...
Co-authored-by: Alexandru Buza <abuza@iqnox.com >
2022-10-03 22:50:04 -05:00
Cameron Gutman
23bc4daf9f
Refactor input event handling in the Game activity
2022-10-03 21:25:43 -05:00
Cameron Gutman
ac0e784417
Make StreamView transparent to touch events and handle everything in the background view
...
This is much simpler than trying to play games with touch handling between 2 views
2022-09-21 01:07:49 -05:00
Cameron Gutman
48cab6b203
Allow multi-finger gestures and absolute motion to pass seamlessly between the StreamView and background view
2022-09-21 00:21:43 -05:00
Cameron Gutman
e1c0472069
Properly split touch events between regions outside the StreamView and the OSC
...
This restores the ability to use area outside the StreamView for the virtual trackpad and adds the ability to use OSC and the non-StreamView region for input at the same time.
Fixes #1129
2022-09-20 22:29:54 -05:00
Cameron Gutman
313ef06c86
Only exclude touch events from non-view processing
...
Mouse events that go out of the StreamView area are okay
2022-09-17 13:36:44 -05:00
Cameron Gutman
6b79340c15
Don't handle motion events outside of Views to avoid spurious stream input while using OSC
2022-09-17 13:34:14 -05:00
Cameron Gutman
03f9ea8435
Use Handlers instead of Timers for one-shot events
2022-09-16 00:08:48 -05:00
Cameron Gutman
d1b24ea6af
Consolidate touch tracking timers
2022-09-15 02:05:40 -05:00