Skip to content

fix terminal panel IME activation on Windows#157

Open
peters wants to merge 5 commits intomainfrom
codex/windows-terminal-ime
Open

fix terminal panel IME activation on Windows#157
peters wants to merge 5 commits intomainfrom
codex/windows-terminal-ime

Conversation

@peters
Copy link
Copy Markdown
Owner

@peters peters commented Apr 10, 2026

Summary

  • emit egui IME output for focused terminal panels so the native window backend enables IME and positions the candidate UI
  • track terminal-local IME composition state and filter IME-incompatible key events while composition is active
  • add focused unit coverage for terminal IME event ordering and cursor rect calculation

Root Cause

The terminal widget handled committed IME text, but it never published PlatformOutput.ime while focused. With egui-winit, that leaves set_ime_allowed(false) in effect, so Windows does not activate IME for the terminal panel.

Impact

This gives terminal panels the same IME activation signal that egui text widgets already provide, which should allow Windows IME candidate windows to appear and commit text into the PTY.

Validation

  • cargo fmt --all -- --check
  • ./scripts/check-maintainability.sh
  • RUSTFLAGS='-D warnings' cargo test --workspace
  • cargo clippy --all-targets --all-features -- -D warnings
  • cargo clippy --workspace --lib --bins --examples -- -D warnings -D clippy::unwrap_used -D clippy::expect_used
  • cargo clippy --workspace --all-targets --all-features -- -D warnings -W clippy::pedantic

Refs #154

@peters peters changed the title [codex] fix terminal panel IME activation on Windows fix terminal panel IME activation on Windows Apr 10, 2026
@peters peters marked this pull request as ready for review April 10, 2026 21:00
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