Miroslav Šedivý
09acada1af
fix icon.
2024-02-20 18:28:26 +01:00
Miroslav Šedivý
4e693ae4a3
Upgrade to node 18 and dependencies ( #46 )
...
* upgrade to nodejs 18.
* npm update.
* upgrade linter.
* upgrade axios.
* upgrade saas loader.
* upgrade typescript.
2024-01-26 19:25:22 +01:00
Miroslav Šedivý
91dee46db4
Add Xorg modifiers ( #44 )
...
* add modifiers.
* use modifiers.
* scroll rename to delta and add ctrl key.
2023-09-11 16:38:12 +02:00
Miroslav Šedivý
c71a9d7626
split touch events to enabled and supported. ( #43 )
2023-08-31 13:50:57 +02:00
Miroslav Šedivý
0d830998e5
Native touch events ( #42 )
...
* add webrtc touch events.
* bind touch events to overlay.
* we care only for changed touches.
* switch to int32.
* pressure uint16.
* add implicit control.
* add touch to controls.
* fix iteration of changedTouches.
* switch pressure to uint8.
* convert force to pressure.
* add hasTouchEvents.
* add touch_events to state.
* bind touch or gesture handler on demand.
* remove duplicate gesture detach.
2023-08-17 16:16:08 +02:00
Miroslav Šedivý
e13c97299d
disable pointer events when session can not control. ( #41 )
2023-07-16 16:54:28 +02:00
Miroslav Šedivý
4918c62c9a
Add support for touch gestures ( #40 )
...
* implement control using webrtc.
* overlay to use NekoControl.
* WIP.
* add is_host to control state.
* control use webrtc only if hosting.
* add proper links to 3rd party code.
* fix button events for gestureHandler.
* lint.
* fix implicit control gain for touch events.
2023-07-07 14:59:54 +02:00
Miroslav Šedivý
e58aecc49c
Refactor signaling for video and audio ( #39 )
...
* refactor webrtc video and audio.
* do not reconnect if video is disabled.
* export webrtc types.
2023-06-26 21:27:26 +02:00
Miroslav Šedivý
810759b641
hotfix: capslock on macos chrome.
2023-06-13 23:39:15 +02:00
Miroslav Šedivý
2c67394a7a
add locked_controls to settings clear.
2023-06-07 17:36:20 +02:00
Miroslav Šedivý
4f08056c59
do not fail on remote ICE candidate error in offer.
2023-06-02 12:54:10 +02:00
Miroslav Šedivý
720c2f7a3d
call onDisconnected in webrtc close.
2023-06-02 12:54:10 +02:00
Miroslav Šedivý
78a9a31624
add await to setLocalDescription.
2023-06-02 12:54:10 +02:00
Miroslav Šedivý
147c94958e
add plugins to state.
2023-05-20 18:27:22 +02:00
Miroslav Šedivý
8d39a95e92
WebRTC congestion control ( #24 )
...
* Move congestion control to server
* Address MR comments
* lint.
* bring back webrtc stats sync with state.
* update webrtc messages.
* set bitrate & video auto for signal request.
* clear up bitrate & video_auto.
* add bitrate and audio for connect function.
* reintroduce server side congestion control if video auto is false.
* mov ecode around.
* fix default video_auto.
* revert bitrate addition.
* remove video from signal provide.
---------
Co-authored-by: Aleksandar Sukovic <aleksandar.sukovic@gmail.com>
2023-05-15 19:32:21 +02:00
Miroslav Šedivý
da252dfd31
add stats to session state.
2023-05-15 17:09:19 +02:00
Miroslav Šedivý
0f9679d6d6
update api.
2023-05-15 17:09:08 +02:00
Miroslav Šedivý
af5aefd669
add locked_controls to state.
2023-05-15 17:09:08 +02:00
Miroslav Šedivý
13caeb3746
fix autoplay.
2023-05-14 22:20:10 +02:00
Miroslav Šedivý
645c4aa184
fix autoconnect for set url.
2023-05-14 22:20:10 +02:00
Miroslav Šedivý
2ee592baf3
audio & video devices select.
2023-04-30 23:57:39 +02:00
Miroslav Šedivý
fa0ac9d82e
Add touch events ( #33 )
...
* add touch events handler.
* bind events as non-passive.
* fix touch events.
2023-04-28 19:44:35 +02:00
Miroslav Šedivý
8df29744b0
Screen sync add custom multiplier and rate settings ( #32 )
...
* screen sync add custom multiplier and rate settings.
* fix rate.
* add to page.
2023-04-28 19:39:11 +02:00
Miroslav Šedivý
1d076cc20c
Add TS types support for build ( #28 )
...
* build ts types.
* fix default export for lib.
2023-04-22 14:23:17 +02:00
Miroslav Šedivý
9f8310fe10
ensure that close is not intercepted by any other event. ( #29 )
2023-04-22 14:23:06 +02:00
Miroslav Šedivý
9b851aac61
use window matchMedia.
2023-04-19 12:32:48 +02:00
Miroslav Šedivý
f9417db520
add pixel ratio change listener.
2023-04-19 12:32:48 +02:00
Miroslav Šedivý
a79a5cfd39
use canvas size when clearing canvas.
2023-04-19 12:32:48 +02:00
Miroslav Šedivý
d3514b9698
Fix textarea focus for touchscreens with keyboard ( #30 )
...
* check if touchscreen has mouse.
* add inputMode to props.
* fix formatting.
2023-04-18 10:19:52 +02:00
Miroslav Šedivý
1f461cb322
Optimizing canvas for cursor rendering ( #27 )
...
* use dpr as canvas scale.
* wheel use event timestamp.
* remove vue set.
* add cursor rendering fps.
2023-04-13 12:25:36 +02:00
Miroslav Šedivý
84dcd1807c
Throttle cursor events ( #26 )
...
* clear inactive cursors.
* add mouse move throttle.
2023-04-12 13:19:57 +02:00
Miroslav Šedivý
ebeaf9bb30
fix ice servers type.
2023-03-26 21:05:11 +02:00
Miroslav Šedivý
3eeb589f3f
add click on color.
2023-02-18 21:52:57 +01:00
Miroslav Šedivý
9b579a8cbd
Screen size sync ( #23 )
...
* allow choosing any screen configuration.
* add screen sync option.
* round size to int.
* lint.
2023-02-14 21:20:05 +01:00
Miroslav Šedivý
ae80753378
skip onnegotiationneeded if in progress. ( #22 )
2023-01-30 11:33:52 +01:00
Miroslav Šedivý
dc2ef37e17
Add mobile keyboard API ( #21 )
...
* fix page for mobile - minor changes.
* fix textarea overlay to hide caret and avodi zooming on mobiles.
* fix typo.
* show keyboard btn if is touch device.
* lint fix.
* add to API.
* mobile keybaord fix andorid blur.
* add mobile keybaord toggle.
* fix overlay.
* mobile keybaord, skip if not a touch device.
2023-01-27 19:21:42 +01:00
Miroslav Šedivý
a22c48c4ca
WebRTC latency in stats ( #20 )
...
* webrtc stats full report.
* add ping+pong latency counter.
* single console log.
* remove report & add latency to webrtc stats.
* fix.
2023-01-20 23:09:01 +01:00
Miroslav Šedivý
737bf7da02
fix stereo for chromium. ( #18 )
2023-01-13 12:02:35 +01:00
Miroslav Šedivý
863de78b70
Add WebSocket heartbeat ( #16 )
...
* add heartbeat.
* rename.
2022-11-11 18:00:36 +01:00
Miroslav Šedivý
b27b8e028d
add bitrate switcher. ( #15 )
2022-11-07 19:40:36 +01:00
Miroslav Šedivý
ba931ea52e
fix upload dialog files - forEach not found.
2022-10-24 22:21:39 +02:00
Miroslav Šedivý
9307fbea97
fix default cursor tag pos.
2022-10-22 16:37:44 +02:00
Miroslav Šedivý
0371a7dc4c
Add NoVnc keyboard ( #13 )
...
* novnc wip.
* remove blacklistKeys.
* eslint ignore all js files.
* ad common keyboard interface.
* upgrade novnc.
* fix novnc.
* fix novnc keyboard.
* fix keyboard remapping.
* conditionally include novnc at build time.
2022-10-04 20:28:07 +02:00
Miroslav Šedivý
3a75b1bf54
do not trigger changes during IME composition.
2022-10-04 20:23:09 +02:00
Miroslav Šedivý
a6698a3ef2
register mouseup globally.
2022-09-16 10:51:29 +02:00
Miroslav Šedivý
cc6722fee2
remove keybaord reset on mouse leave.
2022-09-16 10:51:29 +02:00
Miroslav Šedivý
fb5d9affd9
logger: color only if enabled in env.
2022-09-16 10:50:57 +02:00
Miroslav Šedivý
84a1d16de3
accept ?token= in server URL.
2022-09-16 10:50:57 +02:00
Miroslav Šedivý
80e5277fb6
set URL from query.
2022-09-16 10:50:57 +02:00
Miroslav Šedivý
a1860d5f56
fix implicit control req: race condition deadlock.
2022-09-15 21:11:42 +02:00