Skip to content

fix: stabilize Windows frontmatter input and window sizing - #707

Open
murongg wants to merge 1 commit into
v2from
fix/issue-706-windows-regressions
Open

fix: stabilize Windows frontmatter input and window sizing#707
murongg wants to merge 1 commit into
v2from
fix/issue-706-windows-regressions

Conversation

@murongg

@murongg murongg commented Sep 2, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Defer frontmatter synchronization until IME composition ends, keeping CJK input inside the metadata editor.
  • Preserve normal Windows client dimensions while hiding visible native menus so window-state persistence does not grow the window on each launch.
  • Add focused regressions for IME composition and Windows menu/window-state boundaries.

Why

The frontmatter textarea dispatched CodeMirror transactions and restored focus and selection for every composing input event, which could transfer the active IME composition into the main editor. On Windows, the window-state plugin restored the client size while the native menu was attached; hiding the menu afterwards expanded the client area and saved a larger height for the next launch.

Validation

  • pnpm --filter @markra/editor test — 39 files and 524 tests passed
  • pnpm --filter @markra/editor build passed
  • pnpm --filter @markra/editor typecheck:test passed
  • cargo test --manifest-path apps/desktop/src-tauri/Cargo.toml — 286 tests passed
  • cargo check --manifest-path apps/desktop/src-tauri/Cargo.toml passed
  • pnpm --filter @markra/desktop build passed
  • pnpm --filter @markra/desktop typecheck:test passed
  • cargo fmt --manifest-path apps/desktop/src-tauri/Cargo.toml -- --check passed
  • git diff --check passed
  • Not run: Win11/WebView2 manual QA because the current development host is macOS

Risk

  • Windows size preservation is limited to visible menus on normal windows. Maximized, minimized, fullscreen, already-hidden menus, and non-Windows platforms retain their existing behavior.
  • The custom-template backup item from [Bug]: #706 is intentionally not included.

Related issues

Refs #706

Defer frontmatter synchronization until IME composition ends.

Preserve the restored client size when hiding native menus.

Refs #706
@vercel

vercel Bot commented Sep 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
markra-web Ready Ready Preview Sep 2, 2026 8:01am UTC

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant