Commit Graph

359 Commits

Author SHA1 Message Date
Siyuan Miao 81063425ac add build cache to dev_deploy.sh 2025-09-25 19:35:26 +00:00
Aveline afec360f65
Merge branch 'dev' into feat/native-as-lib 2025-09-25 20:09:53 +02:00
Siyuan Miao 2a22f234f8 show video debugging info 2025-09-25 18:01:49 +00:00
Siyuan Miao 462613e129 makefile 2025-09-25 16:46:40 +00:00
Siyuan Miao 23a3aaa61d dd script to build inside docker 2025-09-25 16:27:01 +00:00
Siyuan Miao 358512fa83 cleanup 2025-09-25 15:21:08 +00:00
Siyuan Miao 70db172287 update state 2025-09-25 15:08:43 +00:00
Siyuan Miao 76c4144565 fix ipv6 address truncation 2025-09-25 13:05:50 +00:00
Siyuan Miao e9bcdc5f3f minor ui fixes 2025-09-25 13:00:29 +00:00
Siyuan Miao 028cb7ddd6 feat: add reset config and reboot buttons to UI 2025-09-25 12:35:03 +00:00
Siyuan Miao e930363b24 add locks and missing comments 2025-09-25 09:51:59 +00:00
Siyuan Miao f106d308a3 chore: use log_error in native library 2025-09-25 08:39:29 +00:00
Siyuan Miao b042adac67 fix: race condition in native library 2025-09-25 08:33:53 +00:00
Adam Shiervani 703625d59a
fix: faster paste speed (#824)
* fix: update delay handling in PasteModal component

- Changed default delay value to 20 and adjusted validation to allow values between 0 and 65534.
- Cleaned up code formatting for better readability.

* fix: formatting
2025-09-25 10:26:11 +02:00
Siyuan Miao e582486bec remove lldp 2025-09-24 21:05:05 +00:00
Siyuan Miao 358981128b fix(native): add video init to native start 2025-09-24 20:54:14 +00:00
Siyuan Miao b9f7b3a787 hide unfinished features 2025-09-24 16:23:28 +00:00
Marc Brooks cb24ef6d4f
Update UI dependencies (#819) 2025-09-24 12:16:02 +02:00
Siyuan Miao 0181f6d392 add native library to make build process faster 2025-09-24 09:48:20 +00:00
Siyuan Miao 4b9f869adb ignore generated include & lib files 2025-09-23 09:01:02 +00:00
Siyuan Miao f49de75c1f chore: add built ui files 2025-09-23 08:59:59 +00:00
Siyuan Miao 7c188d73d0 fix linting issues 2025-09-22 13:27:58 +00:00
Siyuan Miao b3d354e949 add no network screen 2025-09-22 13:24:33 +00:00
Siyuan Miao d8dc2a809a update development guide 2025-09-22 12:15:08 +00:00
Siyuan Miao fe77acd5f0 chore: bump to 0.4.8 2025-09-22 12:51:19 +02:00
Siyuan Miao f455d6cc18 add missing deps 2025-09-20 15:24:50 +00:00
Siyuan Miao d71b6537d2 fix deps 2025-09-20 15:24:06 +00:00
Siyuan Miao 1f9aeff313 resolve conflicts 2025-09-19 19:13:27 +00:00
Siyuan Miao 51d546d5f2 chore: upgrade deps 2025-09-19 19:12:52 +00:00
Siyuan Miao 616b625a5c chore: use UIObjSetState instead of Add+Remove 2025-09-19 19:12:30 +00:00
Siyuan Miao 82c2d6df25 remove useless lvgl config 2025-09-19 19:12:11 +00:00
Siyuan Miao 1e58e3d1bc move event handling to native 2025-09-19 19:12:11 +00:00
Siyuan Miao a05ffea205 chore: upgrade deps 2025-09-19 19:12:11 +00:00
Siyuan Miao 4f1ddc8783 refactor functions 2025-09-19 19:11:54 +00:00
Siyuan Miao 0361b24c7d remove build_afpacket from Makefile 2025-09-19 19:11:41 +00:00
Siyuan Miao aaab8beb1a feat: update github actions 2025-09-19 19:11:40 +00:00
Siyuan Miao 800100aebd feat: remove lvgl examples and demos 2025-09-19 19:11:13 +00:00
Siyuan Miao 2fcecda8c7 chore: add LV_STATE_DISABLED to obj set state 2025-09-19 19:11:13 +00:00
Siyuan Miao ff56128dc5 feat: implement about screen 2025-09-19 19:11:13 +00:00
Siyuan Miao fa1eb7332b feat: add video frame handling 2025-09-19 19:11:13 +00:00
Siyuan Miao 06ea0970eb feat: native as lib 2025-09-19 19:10:48 +00:00
Siyuan Miao 0a3e966684 fix lint issues 2025-09-19 19:09:04 +00:00
Siyuan Miao 3c67060269 feat(lldp): show neighbors in UI 2025-09-19 19:09:04 +00:00
Siyuan Miao 269222d471 feat(lldp): implement rx 2025-09-19 19:08:28 +00:00
Aveline 83caa8f82d
feat: get local version only (#813) 2025-09-19 13:45:59 +02:00
Adam Shiervani 27750b9cc2
feat: re-add keyboard and keypress report handlers to RPC (#811) 2025-09-18 17:33:08 +02:00
Adam Shiervani 5112bef19c
fix: remove unnecessary grow-0 utility from in keyboard (#810) 2025-09-18 17:02:08 +02:00
Siyuan Miao 1ffdca4fd6 build: use immediate assignment for VERSION_DEV and other vars 2025-09-18 15:41:39 +02:00
Siyuan Miao c6dba4d59f chore: bump to 0.4.7 2025-09-18 13:53:08 +02:00
Aveline afb146d78c
feat: release keyPress automatically (#796)
* feat: release keyPress automatically

* send keepalive when pressing the key

* remove logging

* clean up logging

* chore: use unreliable channel to send keepalive events

* chore: use ordered unreliable channel for pointer events

* chore: adjust auto release key interval

* chore: update logging for kbdAutoReleaseLock

* chore: update comment for KEEPALIVE_INTERVAL

* fix: should cancelAutorelease when pressed is true

* fix: handshake won't happen if webrtc reconnects

* chore: add trace log for writeWithTimeout

* chore: add timeout for KeypressReport

* chore: use the proper key to send release command

* 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.

* refactor: enhance keyboard auto-release functionality and key state management

* fix: correct Windows default auto-repeat delay comment from 1ms to 1s

* refactor: send keypress as early as possible

* refactor: replace console.warn with console.info for HID RPC channel events

* refactor: remove unused NewKeypressKeepAliveMessage function from HID RPC

* fix: handle error in key release process and log warnings

* fix: log warning on keypress report failure

* fix: update auto-release keyboard interval to 225

* refactor: enhance keep-alive handling and jitter compensation in HID RPC

- Implemented staleness guard to ignore outdated keep-alive packets.
- Added jitter compensation logic to adjust timer extensions based on packet arrival times.
- Introduced new methods for managing keep-alive state and reset functionality in the Session struct.
- Updated auto-release delay mechanism to use dynamic durations based on keep-alive timing.
- Adjusted keep-alive interval in the UI to improve responsiveness.

* gofmt

* clean up code

* chore: use dynamic duration for scheduleAutoRelease

* Use harcoded timer reset value for now

* fix: prevent nil pointer dereference when stopping timers in Close method

* refactor: remove nil check for kbdAutoReleaseTimers in DelayAutoReleaseWithDuration

* refactor: optimize dependencies in useHidRpc hooks

* refactor: streamline keep-alive timer management in useKeyboard hook

* refactor: clarify comments in useKeyboard hook for resetKeyboardState function

* refactor: reduce keysDownStateQueueSize

* refactor: close and reset keysDownStateQueue in newSession function

* chore: resolve conflicts

* resolve conflicts

---------

Co-authored-by: Adam Shiervani <adam.shiervani@gmail.com>
2025-09-18 13:35:47 +02:00