Commit Graph

9 Commits

Author SHA1 Message Date
Z User
3f0893cdf7 refactor: switch from sidecar IPC to webview-based RustDesk integration
Previous approach used Tauri sidecar binary with IPC commands. New approach
uses the RustDesk web architecture correctly:

- RustDesk server runs as native binary in --server mode (ports 21115-21119)
- RustDesk web client (Flutter web build) loaded in a Tauri webview window
- Web client communicates with server via WebSocket (21118/21119)

Backend changes:
- main.rs: Simplified IPC - start/stop server + open webview window
- Removed tokio dependency (no longer needed)
- Removed sidecar bundle config from tauri.conf.json

Frontend changes:
- RemoteDesktop.js: Toggle server on/off, launch web client webview
- New UI with server control section + web client launcher
- Updated CSS for the new layout
- Updated HTML with server URL input and launch button

Documentation:
- Updated binaries/README.md with full build pipeline:
  1. Build RustDesk native binary
  2. Build Flutter web client
  3. WASM bridge dependency note
  4. Server ports reference
2026-04-06 19:35:50 +00:00
Z User
f88e2c8fb4 feat: integrate RustDesk remote desktop into Shelled OS
- Add hbb_common as git submodule (was missing)
- Add Tauri sidecar configuration for RustDesk binary
- Implement Rust backend IPC commands:
  - start_rustdesk: Launch RustDesk sidecar process
  - stop_rustdesk: Kill running RustDesk process
  - get_rustdesk_status: Check if RustDesk is running
  - connect_to_peer: Connect to a remote peer by ID
- Create RemoteDesktop JS component with:
  - Peer ID input and connect/disconnect buttons
  - Real-time status indicator (disconnected/connecting/connected/error)
  - Recent connections list with quick reconnect
  - Tauri event listener for backend status updates
- Add Remote Desktop taskbar button (remote_login icon)
- Add full CSS styling with glassmorphism design
- Create binaries/ directory with build instructions
- Update capabilities with shell:allow-spawn permission
- Add tokio dependency for async runtime
2026-04-06 19:16:19 +00:00
e0b6c5d245 add ref tmp 2026-04-06 12:04:19 -07:00
Z User
d9622d07a8 fix: generate proper BMP-based ICO for Windows RC compiler
RC.EXE doesn't accept PNG-in-ICO format. Created a valid ICO with
multiple sizes (16, 32, 48, 256) using proper BMP DIB format.
2026-04-06 18:32:07 +00:00
Z User
a56a4f230f fix: replace invalid .ico with proper ICO format file
The previous icon.ico was a renamed PNG which caused RC2175 error
on Windows. Generated a valid ICO file with proper header structure.
2026-04-06 18:24:24 +00:00
Z User
c08b4a9863 fix: resolve Tauri 2.0 build issues
- Add missing build.rs (required by tauri_build crate)
- Add capabilities/default.json (Tauri 2 mandatory permissions system)
- Add default app icons (32x32, 128x128, 128x128@2x, ico, png)
- Upgrade from pre-release 2.0.0-rc to stable Tauri 2.x
- Fix tauri.conf.json: use frontendDist instead of deprecated devPath/distDir
- Add tauri script to package.json
2026-04-06 18:06:04 +00:00
701c6be0d3 add shelled-ui 2026-04-06 10:45:18 -07:00
c161af5f04 move files 2026-04-05 17:30:07 -07:00
9ddfcd647b Initial commit 2026-03-29 13:13:48 -07:00