Adam Shiervani
e3eb8330fe
refactor: simplify HID RPC keyboard input handling and improve key state management
...
- Updated `handleHidRPCKeyboardInput` to return errors directly instead of keys down state.
- Refactored `rpcKeyboardReport` and `rpcKeypressReport` to return errors instead of states.
- Introduced a queue for managing key down state updates in the `Session` struct to prevent input handling stalls.
- Adjusted the `UpdateKeysDown` method to handle state changes more efficiently.
- Removed unnecessary logging and commented-out code for clarity.
2025-09-18 13:09:43 +02:00
Siyuan Miao
e9b252430f
chore: use the proper key to send release command
2025-09-18 13:09:03 +02:00
Siyuan Miao
e32a265836
fix: handshake won't happen if webrtc reconnects
2025-09-18 13:09:03 +02:00
Siyuan Miao
f10a2283d4
chore: use ordered unreliable channel for pointer events
2025-09-18 13:08:23 +02:00
Siyuan Miao
56dfb4febd
send keepalive when pressing the key
2025-09-18 13:07:25 +02:00
Aveline
72e3013337
feat: send all paste keystrokes to backend ( #789 )
...
* feat: send all paste keystrokes to backend
* feat: cancel paste mode
* wip: send macro using hidRPC channel
* add delay
* feat: allow paste progress to be cancelled
* allow user to override delay
* chore: clear keysDownState
* fix: use currentSession.reportHidRPCKeyboardMacroState
* fix: jsonrpc.go:1142:21: Error return value is not checked (errcheck)
* fix: performance issue of Uint8Array concat
* chore: hide delay option when debugMode isn't enabled
* feat: use clientSide macro if backend doesn't support macros
* fix: update keysDownState handling
* minor issues
* refactor
* fix: send duplicated keyDownState
* chore: add max length for paste text
---------
Co-authored-by: Adam Shiervani <adam.shiervani@gmail.com>
2025-09-18 13:00:57 +02:00
Aveline
bcc307b147
feat: hid rpc channel ( #755 )
...
* feat: use hidRpcChannel to save bandwidth
* chore: simplify handshake of hid rpc
* add logs
* chore: add timeout when writing to hid endpoints
* fix issues
* chore: show hid rpc version
* refactor hidrpc marshal / unmarshal
* add queues for keyboard / mouse event
* chore: change logging level of JSONRPC send event to trace
* minor changes related to logging
* fix: nil check
* chore: add comments and remove unused code
* add useMouse
* chore: log msg data only when debug or trace mode
* chore: make tslint happy
* chore: unlock keyboardStateLock before calling onKeysDownChange
* chore: remove keyPressReportApiAvailable
* chore: change version handle
* chore: clean up unused functions
* remove comments
2025-09-04 22:27:56 +02:00