Commit Graph
155 Commits
Author SHA1 Message Date
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 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 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 ba5fac0f06 fixed webcam disappearing 2026-03-29 10:31:50 +11:00
webadderall 241ab2cff4 fix(updater): remove stale preview timer call 2026-03-29 00:05:12 +11:00
webadderall bc54b2a8c9 fix(desktop): polish editor chrome 2026-03-28 23:24:34 +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 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 6463cdff58 feat: add updater release infrastructure 2026-03-28 20:42:38 +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
webadderall 7b44d05901 chore(dev): isolate app data in development 2026-03-28 16:11:48 +11:00
webadderall 6fb7444c03 fix(recording): validate video outputs before open 2026-03-28 16:10:49 +11:00
webadderall 045850417f feat(debug): add native capture diagnostics 2026-03-28 16:08:43 +11:00
webadderall ca29abd89c fix(windows): restore WGC monitor fallback 2026-03-28 15:18:56 +11:00
webadderall 8de1d9a498 fix(windows): bundle native capture helpers 2026-03-28 14:56:16 +11:00
webadderall 719fa78e9f Revert "feat: Advanced Video Editor Implementation, Native WGC Integration, and AI Auto-Captions" 2026-03-28 14:12:25 +11:00
Mahdy Arief d5ab86ea44 fix(export, native, ui): resolve critical data integrity and resource management bugs in PR #122
- Implement comprehensive solo/mute export pipeline in audioEncoder.ts
- Fix duplicate caption IDs by adding chunk-specific indices in handlers.ts
- Prioritize native monitor selection by bounds in monitor_utils.cpp
- Fix alignment for blur annotations extending beyond canvas boundaries
- Resolve timeline selection desync and sidebar visibility for blur annotations
- Fix memory leaks in audio waveform generation with AudioContext cleanup
2026-03-28 06:09:50 +07:00
Mahdy Arief 281a73b51a chore: Finalize PR #116 stability and privacy improvements
- Hardened IPC with safety guards for all webContents.send calls
- Scrubbed sensitive absolute paths from caption logs
- Realigned Windows artifact naming logic
2026-03-27 23:14:12 +07:00
Mahdy Arief 01350ad8df feat: improve timeline selection interaction with Shift+drag and closure fixes 2026-03-27 21:59:03 +07:00
webadderall 658b15d3ca fix(stability): restore export and recording session compatibility 2026-03-27 23:58:08 +11:00
webadderall 6cbef1e279 fix(wgc): preserve full-width display identifiers 2026-03-27 23:34:39 +11:00
Mahdy Arief ced02c9a8f feat: Implement native Windows Graphics Capture monitor utilities and introduce video editor UI components. 2026-03-27 17:22:55 +07:00
Mahdy Arief 7d7b61b7f5 feat: add blur annotation and Whisper model selection for autocaption 2026-03-27 13:27:57 +07:00
webadderall 70cefabd57 Revert "fix(recording): validate native captures and tighten mic menu spacing"
This reverts commit 1900c0e737.
2026-03-27 11:31:02 +11:00
webadderall 7fb4c5de9e Revert "Fix WGC display selection and webcam sync"
This reverts commit e5becc30a3.
2026-03-27 11:30:11 +11:00
webadderall f1df2911cb Merge fix/wgc-display-webcam-sync into main 2026-03-26 22:09:59 +11:00
webadderall e5becc30a3 Fix WGC display selection and webcam sync 2026-03-26 21:52:35 +11:00
webadderall 485726fb42 fix(updater): support optional dialog window 2026-03-26 11:53:09 +11:00
webadderall 6f6ef68cc4 fix(windows): honor selected microphone in native capture 2026-03-26 11:17:39 +11:00
webadderall e6e16ee422 chore(windows): remove stale DXGI capture helper 2026-03-26 11:05:38 +11:00
webadderall a9f6122938 Merge pull request #97 from Bortlesboat/fix/display-app-version
fix: display app version in More menu
2026-03-25 19:07:59 +11:00
Pierre-Adrien Lair 906c476ebe Fix corrupted MP4 recordings on Windows by serializing encoder writes
The WGC capture session uses Direct3D11CaptureFramePool::CreateFreeThreaded,
which dispatches FrameArrived callbacks on thread pool threads concurrently.
MFEncoder::writeFrame() accesses non-thread-safe resources (ID3D11DeviceContext,
IMFSinkWriter, shared staging texture and NV12 buffer) without synchronization,
causing MP4 container corruption when callbacks overlap at high frame rates.

Add a mutex to serialize writeFrame() and finalize() calls, preventing
concurrent access to the D3D context and Media Foundation sink writer.

Fixes #96
2026-03-24 17:59:27 +01:00
BortlesboatandClaude Opus 4.6 4b7f5947b8 fix: display app version in More menu
Add IPC handler to expose app.getVersion() to the renderer and
display it in the More dropdown menu. Users can now verify which
version they're running.

Fixes #70

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:15:04 -04:00
webadderall da77c24a63 chore(updates): add disabled app update infrastructure 2026-03-24 19:32:38 +11:00
webadderall 1900c0e737 fix(recording): validate native captures and tighten mic menu spacing 2026-03-24 19:04:24 +11:00
webadderall 1df365b5a5 fix(projects): align HUD browser behavior 2026-03-23 21:18:18 +11:00
webadderall 64b136a111 feat(ipc): persist project library metadata and tighten caption inputs 2026-03-23 19:22:40 +11:00
webadderall e8a8eae2d2 feat(editor): add project browser and whisper selection flows 2026-03-23 19:22:39 +11:00