Commit Graph
450 Commits
Author SHA1 Message Date
tianma-if 0c4cfb3e81 fix: preserve rich content when merging notes 2026-08-02 10:42:35 +08:00
tianma-if ab3c9eee3e fix: include nested notes in desktop notebooks 2026-08-02 01:33:52 +08:00
tianma-if 2b971a5395 fix merged note title selection 2026-08-02 01:12:04 +08:00
tianma-if aa01d2aa84 refactor: adopt Motion for workspace animations 2026-08-02 00:21:16 +08:00
tianma-if ce7339f688 feat: refine desktop motion feedback 2026-08-01 23:26:29 +08:00
tianma-if 4099584cfb fix desktop sync on memo selection 2026-08-01 22:37:02 +08:00
tianma-if 2253653a47 refactor: modularize cross-platform workspace architecture 2026-08-01 20:47:37 +08:00
tianma-if 7418d0b6a1 fix(desktop): preserve trash navigation and image sync 2026-08-01 20:00:34 +08:00
nzhdotmeandClaude Opus 5 4cc88ca9b3 fix(web): guard window access in the shared API request path
`request()` read `window.edgeeverDesktop` without a `typeof window`
guard, unlike every other `window` access in this file. Any environment
without a `window` global throws `ReferenceError: window is not defined`
before the request is sent.

This makes `bun test` fail on a clean checkout: three cases in
`tests/web-sync-queue.test.ts` fail because `syncQueuedChanges()` never
reaches `fetch` and records the queue item as `error` with
`lastError: "window is not defined"`.

Also give the `globalThis.window` stubs in `api.test.mjs` and
`desktop-resources.test.mjs` a `location`. Bun runs every test file in
one process, so these top-level stubs leak into later files; without a
`location`, `isLoopbackOrigin()` in `network-status.ts` throws
`TypeError: undefined is not an object (evaluating
'window.location.hostname')`. Whether this surfaces depends on test file
discovery order, so it reproduces on Linux but not on macOS.

Before: 296 pass, 3 fail. After: 299 pass, 0 fail.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-01 19:03:50 +08:00
tianma-if 05dbd1d4f9 fix: surface system info in mobile profiles 2026-08-01 11:24:30 +08:00
tianma-if f302f9d584 fix: aggregate nested notebook note counts 2026-08-01 10:46:41 +08:00
tianma-if 9e32d317da fix(web): make multi-image uploads resilient 2026-08-01 10:14:10 +08:00
tianma-if 1bc3d0790e fix(sync): refresh external memo changes 2026-08-01 09:59:17 +08:00
tianma-if b04f15f7fd fix(desktop): preserve login across upgrades 2026-07-31 21:14:19 +08:00
tianma-if 79ff20f7c4 feat: add Firefox extension support 2026-07-30 23:58:21 +08:00
tianma-if 08d1aacb97 fix: create mobile PWA memos before editing 2026-07-30 20:42:02 +08:00
DDVandchenshen.zhang 44f8906193 feat(web): improve Mermaid rendering controls and diagram viewer (#123)
* feat: improve Mermaid diagram controls

* fix: restore Mermaid viewer panning

* fix(web): fall back for unsupported Mermaid diagrams

* fix(web): use Mermaid palette for viewer background

---------

Co-authored-by: chenshen.zhang <2676274256@qq.com>
2026-07-30 20:33:17 +08:00
tianma-if 1b2f85bb22 feat: upgrade editor custom theme system with multi-theme, dark mode support, CSS sandbox and WeChat copy inlining 2026-07-30 15:12:48 +08:00
tianma-if cca9ce5992 fix(web): require modifier click to open editor links 2026-07-30 11:09:57 +08:00
tianma-if 063ad8c7ad feat: show client type in system info 2026-07-30 10:29:11 +08:00
tianma-if 8e36fedcbf fix: hide desktop local backup entry 2026-07-30 10:10:29 +08:00
tianma-if f6f22c0817 fix: hide WebDAV backup entry 2026-07-30 10:02:53 +08:00
tianma-if fe3c5d1f08 feat: add macOS Intel release builds 2026-07-30 02:16:34 +08:00
tianma-if b6b1a121f3 fix: embed toolbar brand icon 2026-07-30 01:18:16 +08:00
tianma-if 1d8e7b3161 perf: refine web chunk splitting 2026-07-29 22:39:26 +08:00
tianma-if 03be01f0ae feat: improve release version management 2026-07-29 22:20:35 +08:00
tianma-if de60c9b41b fix(web): restrict WebDAV backup to desktop 2026-07-29 16:28:24 +08:00
tianma-if be2e54e36a improve dark memo separators 2026-07-29 16:21:28 +08:00
tianma-if 8e572d56af fix dark editor theme styles 2026-07-29 16:16:19 +08:00
tianma-if 8a578144ea fix desktop session token retention 2026-07-29 16:00:11 +08:00
tianma-if 1e384d2c0b fix: stabilize notebook actions menu 2026-07-29 15:48:15 +08:00
tianma-if 09b7a5aa59 fix desktop asset and print preview paths 2026-07-29 13:09:04 +08:00
tianma-if cb81868e4b fix: guard new memo selection during creation 2026-07-29 11:35:45 +08:00
tianma-if 9b44f64092 fix: keep newly created memo selected 2026-07-29 11:35:21 +08:00
tianma-if d4dc353b9c fix: retain focus after creating a memo 2026-07-29 11:31:56 +08:00
tianma-if c9aab11692 fix: refresh memo status after manual sync 2026-07-29 11:28:08 +08:00
tianma-if acb5993f86 fix: avoid racing memo creation sync 2026-07-29 11:23:33 +08:00
tianma-if 36796994d5 fix: preserve pasted content in new memos 2026-07-29 10:05:11 +08:00
tianma-if 7d471dd178 fix: preserve new demo note selection 2026-07-29 09:54:16 +08:00
tianma-if eac1c5173b feat: add actionable login diagnostics 2026-07-29 02:17:04 +08:00
tianma-if cf08b5dc9d fix: combine desktop connection and login form 2026-07-29 01:55:58 +08:00
tianma-if 6418e7c3c6 style: soften pending sync status 2026-07-29 01:55:09 +08:00
tianma-if 6b9ee87a16 fix: sync every 30 seconds by default 2026-07-29 01:48:05 +08:00
tianma-if 75b27fa42d fix: keep desktop instance switching accessible 2026-07-29 01:43:24 +08:00
tianma-if b3dd5fd1c2 fix web asset cache updates 2026-07-29 01:19:40 +08:00
tianma-if c418864846 fix: label completed note sync accurately 2026-07-29 01:11:54 +08:00
tianma-if 3aeca0442b fix(web): separate local save from remote sync 2026-07-29 00:34:12 +08:00
tianma-if 261f2a7974 fix: repair desktop initial sync 2026-07-28 23:58:35 +08:00
tianma-if fbaa5e7b12 fix: allow retrying desktop instance setup 2026-07-28 22:06:52 +08:00
tianma-if 9f52292653 chore: remove desktop instance connection description 2026-07-28 21:50:28 +08:00