Commit Graph
1693 Commits
Author SHA1 Message Date
webadderall e8aa5ac5ad fix: add setDevicePermissionHandler for Windows 11 webcam access
Chromium (Electron 17+) requires setDevicePermissionHandler in addition
to setPermissionCheckHandler/setPermissionRequestHandler. Without it,
device-level access is silently denied on Windows 11 even though the
permission check passes, causing getUserMedia to throw NotAllowedError.
2026-03-30 15:41:01 +11:00
webadderall 9b5e612b96 fix: add Windows camera/microphone permission status logging
- Check systemPreferences.getMediaAccessStatus on Windows startup
- Log warnings when camera/mic access is denied so users know to check
  Windows Settings > Privacy > Camera/Microphone
2026-03-30 15:27:47 +11:00
webadderall ae392e573e fix: add COM init on WASAPI capture thread for Windows 11 compatibility
- Call CoInitializeEx(MTA) at start of captureThread() and CoUninitialize() on exit
- Windows 11 enforces per-thread COM initialization more strictly than Win10,
  causing GetBuffer/GetNextPacketSize to fail silently without this
- Add HRESULT error logging for WASAPI capture failures (GetNextPacketSize, GetBuffer)
2026-03-30 15:27:40 +11:00
webadderall 6f8891529a fix: use CGWindowID bounds for highlight animation instead of AppleScript
- Remove AppleScript 'front window' bounds query which returned wrong window
  for multi-window apps (e.g. Arc highlighting invisible auxiliary window)
- Use resolveMacWindowBounds() which queries by exact CGWindowID
- Keep AppleScript 'activate' call for bringing the app to front
2026-03-30 15:16:35 +11:00
webadderall 27a2be2d3b fix: filter auxiliary windows and remove thumbnail requirement from source list
- Swift helper: filter out untitled auxiliary windows from multi-window apps (e.g. Arc sidebar/tab-bar chrome)
- Swift helper: increase minimum window size from 1x1 to 50x50
- Remove .filter(source => Boolean(source.thumbnail)) that hid valid sources
- Remove hasUsableSourceThumbnail filter in fallback path
- Recompile prebundled openscreen-window-list binary
2026-03-30 15:16:28 +11:00
webadderall 0a30df9872 make dragger register 2026-03-30 14:21:00 +11:00
webadderall 3ff71f6a0b fix(sources): gracefully handle desktopCapturer.getSources failure
Catch errors from desktopCapturer.getSources() in the get-sources IPC
handler and return an empty array instead of crashing the handler.
Prevents repeated 'Failed to get sources' errors when screen recording
permission is not granted (common in dev mode on macOS 26).
2026-03-30 13:33:49 +11:00
webadderall 9aac961c1d fix(hud): make transparent areas click-through
- Set setIgnoreMouseEvents(true, {forward: true}) on HUD overlay window
  so transparent areas pass clicks to apps behind
- Add hud-overlay-set-ignore-mouse IPC to toggle mouse events
- Re-enable mouse events on mouseenter over visible HUD content,
  disable again on mouseleave
2026-03-30 13:32:24 +11:00
webadderall ee29ca0947 fix(recording): make video validation non-blocking and use single timestamp
- finalizeStoredVideo now catches validateRecordedVideo errors instead of
  propagating them, so the editor opens even if ffmpeg validation fails
  (restores v1.1.3/v1.1.5 resilient behavior)
- Use a single Date.now() call for all native capture filenames on macOS
  to prevent timestamp drift between video/audio files
2026-03-30 13:32:16 +11:00
webadderall 3b755f85ab chore: release v1.1.8 v1.1.8 2026-03-29 20:09:04 +11:00
webadderall 275d5ad896 merge: Windows update UX fixes (#windows-fixes) 2026-03-29 19:45:51 +11:00
webadderall 86671debe1 chore(native): rebuild win32-x64 native helper binaries
- Rebuild wgc-capture.exe and cursor-monitor.exe from unchanged source
- Update helpers-manifest.json with new binary hashes and timestamps
2026-03-29 19:30:02 +11:00
webadderall 199f35d9b4 feat(launch): add update status badge to launch window toolbar
- Add update badge button that shows current updater state
  (idle, checking, up-to-date, available, downloading, ready, error)
- Badge triggers check/download/install based on current state
- Poll update status summary every 2.5s for live state reflection
- Add CSS module styles for badge variants (quiet, hot, spin)
- Add i18n strings for badge labels and tooltips (en, es, zh-CN)
2026-03-29 19:30:02 +11:00
webadderall 53c7aa7e77 feat(updater): Windows native notifications and toast window fixes
- Use native OS Notification on Windows instead of transparent overlay
  toast window (transparent BrowserWindows are unreliable on Windows)
- Set app user model ID on Windows for proper notification grouping
- Make toast window opaque with solid background on Windows
- Only set transparent body background on macOS for update-toast window
- Refactor UpdateToastWindow to inline styles for Windows compatibility
- Add primaryAction-based button rendering in toast UI
- Add polling fallback for toast payload in UpdateToastWindow
- Add global CSS variables for brand accent color
2026-03-29 19:30:02 +11:00
webadderall f5c92964a4 feat(updater): add update status summary, logging, and new IPC channels
- Add UpdateStatusSummary type and getUpdateStatusSummary() for exposing
  updater state to renderer processes
- Add writeUpdaterLog() for persistent updater diagnostics
- Add configureUpdateFeed() for feed URL configuration
- Wire up get-update-status-summary and check-for-app-updates IPC handlers
- Add primaryAction field to UpdateToastState for actionable toast buttons
- Add checking-for-update event handler with status tracking
- Surface automatic check errors via toast when appropriate
2026-03-29 19:30:01 +11:00
webadderall ac14768a62 fix: TCC permission handling for native helpers on macOS 26
- Add CGPreflightScreenCaptureAccess pre-check in Swift helper
- Add microphone TCC pre-flight when mic capture is requested
- Warm up TCC via desktopCapturer.getSources before spawning helper
- Request mic access from Electron before helper spawn
- Remove unreliable systemPreferences.getMediaAccessStatus pre-checks
- Add camera entitlements to plist files for webcam support
- Guard getScreen() calls behind app.isReady()
- Make tray icons lazy to avoid early screen access
- Suppress duplicate permission error alerts in renderer
2026-03-29 19:15:18 +11:00
webadderall cbde700ab7 fix video editor not opening sometimes in prod 2026-03-29 13:13:15 +11:00
webadderall 5dcbef6c46 add macos camera perm metadata v1.1.7 2026-03-29 11:11:12 +11:00
webadderall e717c812a7 fix invalid/stale mic selection windows 2026-03-29 11:07:34 +11:00
webadderall beb64e88f6 release 1.1.7 2026-03-29 10:49:11 +11:00
webadderall 81efdd4f6a fire autosuuggestions once 2026-03-29 10:48:49 +11:00
webadderall ba5fac0f06 fixed webcam disappearing 2026-03-29 10:31:50 +11:00
webadderall 94011f2772 fix(release): align linux asset naming v1.1.6 2026-03-29 01:03:51 +11:00
webadderall 6a84493fba fix(release): avoid duplicate prerelease runs 2026-03-29 00:55:22 +11:00
webadderall bf3a36e621 fix(release): align asset names and upload globs 2026-03-29 00:30:16 +11:00
webadderall f8ac27b791 fix(release): add libxt for linux rebuild 2026-03-29 00:18:57 +11:00
webadderall c44225e174 fix(release): add remaining linux X11 deps 2026-03-29 00:15:31 +11:00
webadderall 5978ef42be fix(release): restore packaging assets and CI deps 2026-03-29 00:13:01 +11:00
webadderall 241ab2cff4 fix(updater): remove stale preview timer call 2026-03-29 00:05:12 +11:00
webadderall 665d558da7 fix(editor): trigger wand auto-zoom after preview load 2026-03-28 23:50:05 +11:00
webadderall c4898231a3 fix(editor): retry auto-zoom telemetry for fresh recordings 2026-03-28 23:43:42 +11:00
webadderall 160121c8cc fix(editor): wire preview-ready callback 2026-03-28 23:27:16 +11:00
webadderall ec0dbe8d8f feat(editor): auto-apply zooms to fresh recordings 2026-03-28 23:24:34 +11:00
webadderall bc54b2a8c9 fix(desktop): polish editor chrome 2026-03-28 23:24:34 +11:00
webadderall 9dd67717bc fix(launch): remove microphone dropdown separator 2026-03-28 22:55:13 +11:00
webadderall 56c4067703 fix(editor): remount preview after project saves 2026-03-28 22:36:04 +11:00
webadderall e81abeae54 fix(updater): remove dev preview auto-toasts 2026-03-28 22:36:04 +11:00
webadderall 7e3673bbd2 fix(startup): wait for app readiness before opening hud 2026-03-28 22:02:16 +11:00
webadderall caf65cb59c fix(dev): isolate app data paths from production 2026-03-28 22:00:15 +11:00
webadderall c64debfacc feat(updater): simulate dev preview update flow 2026-03-28 21:45:24 +11:00
webadderall dc1fddb241 feat(updater): add swipe and 3-day deferral 2026-03-28 21:22:56 +11:00
webadderall 78b59349ad fix(updater): resurface dismissed update prompts 2026-03-28 21:22:56 +11:00
webadderall 641d3d271f feat(updater): add explicit download toast flow 2026-03-28 21:06:41 +11:00
webadderall 3a599eadb6 fix(ci): publish release assets deterministically 2026-03-28 21:06:41 +11:00
webadderall 7085cc4ce9 fix: open editor after recording fallback 2026-03-28 20:42:38 +11:00
webadderall 6463cdff58 feat: add updater release infrastructure 2026-03-28 20:42:38 +11:00
webadderall ff93ea6099 Add 'buildwithfur' to supporter list in README 2026-03-28 18:44:49 +11:00
webadderall 4e8ab9cf45 fix(windows): finalize WGC recordings safely 2026-03-28 17:03:41 +11:00
webadderall 58153679dd chore(windows): track bundled helper manifests 2026-03-28 16:17:29 +11:00
webadderall aec45368c6 test(windows): cover WGC display selection 2026-03-28 16:15:27 +11:00