Commit graph

5 commits

Author SHA1 Message Date
Weilin Cai
7ab99b5b5e style: format MuPDF dev loading files 2026-04-07 16:19:01 +08:00
Weilin Cai
1c4eaf3e6d fix: resolve MuPDF wasm correctly in desktop dev 2026-04-07 16:03:06 +08:00
delibae
bdc57978ba fix: resolve macOS 12 window not showing due to WebKit top-level-await bug
On macOS 12 (Monterey), the app launches but no main window appears.
The root cause is WebKit bug #242740: Safari 15's WKWebView has a race
condition with top-level await in ES modules, causing silent JS failure
that prevents `getCurrentWindow().show()` from ever being called.

Three complementary fixes:

1. Change Vite build target from `esnext` to `safari14` (Tauri recommended)
   and add `vite-plugin-top-level-await` to transform TLA into compatible
   Promise chains, avoiding the WebKit bug entirely.

2. Replace top-level `await import("./App")` in main.tsx with a `.then()`
   chain, removing TLA dependency at the source level.

3. Add a Rust-side 8-second timeout safety net in `setup()` that
   force-shows the main window if the frontend JS fails to do so,
   preventing permanently hidden windows regardless of the failure cause.

Closes #95

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 19:57:52 +09:00
delibae
610917d677 Refactor code structure for improved readability and maintainability 2026-02-24 23:02:57 +09:00
delibae
aafcbce9ef Enhance desktop application setup with new components and configurations
- Updated package.json to include new filters for development scripts and added built dependencies for pnpm.
- Introduced a new desktop application with essential files including index.html, package.json, and configuration files (postcss, tsconfig, vite).
- Added core components for the desktop app, including App, ProjectPicker, AssistantPanel, and UI elements like Button, Input, and DropdownMenu.
- Integrated Tauri plugins for file handling and dialog interactions.
- Enhanced Turbo configuration to include additional output paths for builds.
- Updated pnpm-lock.yaml to reflect new dependencies and versions for the desktop application.
2026-02-20 15:27:06 +09:00