- Convert cursor positions to canvas world coordinates (screen→world on send, world→screen on render) so remote cursors appear at correct canvas locations regardless of pan/zoom - Add PresenceManager.setCamera() to reproject cursors on pan/zoom - Add loading spinner overlay dismissed on first cache hit or sync - Guard WebSocket open handler with readyState check after async load Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| public | ||
| admin.html | ||
| canvas.html | ||
| create-space.html | ||
| index.html | ||
| shell.ts | ||
| sw.ts | ||
| test-stack.html | ||