v0.4.0
Add native settings bridge, CLI auto-detection, error handlers and CLI-aware buttons; improve macOS menu & layout fixes
-
Add native settings integration:
- Introduce SettingsService / Settings bridge on macOS for get/set settings and showSettings.
- Add macOS native window code (SettingsWindow.swift/MainFlutterWindow changes) and AppDelegate wiring to insert a Settings menu item and a settings method channel.
- Provide methods to show a native Settings window and handle setting change notifications; add logging for settings flows.
-
CLI improvements:
- Convert initCli to async and call it at startup.
- Make Cli.init asynchronous and add auto-detection of common CLI tools (ffmpeg, ffprobe, gallery-dl, gifski, yt-dlp) on macOS; store detected paths via settings.
- Add helper functions isFFmpegAvailable/isFFprobeAvailable and safer process handling (noThrow) across video utilities and ffprobe/ffmpeg calls.
- Update video utils and process calls to check exit codes and log failures.
-
UI / UX and layout fixes:
- Replace nested unbounded SingleChildScrollView in main UI with bounded SizedBox/MouseRegion to avoid layout constraints.