Skip to content

refactor: use getIsComposing from meowdown - #985

Merged
ocavue merged 1 commit into
masterfrom
ocavue/use-meowdown-get-is-composing
Jul 28, 2026
Merged

ocavue merged 1 commit into
masterfrom
ocavue/use-meowdown-get-is-composing

Conversation

@ocavue

@ocavue ocavue commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Remove the local isKeyboardEventComposing helper and use getIsComposing from @meowdown/core instead.

Summary by CodeRabbit

  • Bug Fixes
    • Improved keyboard input handling for text composition, including IME input, across desktop and mobile.
    • Prevented Enter, Escape, navigation, selection, and app shortcuts from triggering prematurely while text is still being composed.
    • Standardized composition detection across chat, search, settings, task, graph, and onboarding interactions.

@coderabbitai

coderabbitai Bot commented Jul 28, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: ab31fab5-ea22-410e-934a-dd9b06ce58b1

📥 Commits

Reviewing files that changed from the base of the PR and between 4aa6c0b and bc8d8fa.

📒 Files selected for processing (19)
  • apps/desktop/src/components/chat/chat-input.tsx
  • apps/desktop/src/components/command-palette/command-palette.tsx
  • apps/desktop/src/components/context-sidebar/attendee-combobox.tsx
  • apps/desktop/src/components/graph-chooser.tsx
  • apps/desktop/src/components/note-find-bar.tsx
  • apps/desktop/src/components/settings/destructive-section.tsx
  • apps/desktop/src/components/settings/model-combobox.tsx
  • apps/desktop/src/components/tasks/task-row.tsx
  • apps/desktop/src/hooks/use-sidebar-resize.ts
  • apps/desktop/src/lib/keyboard.test.tsx
  • apps/desktop/src/lib/keyboard.ts
  • apps/desktop/src/lib/tasks/use-task-keyboard.ts
  • apps/desktop/src/mobile/connect-github-drawer.tsx
  • apps/desktop/src/mobile/new-graph-drawer.tsx
  • apps/desktop/src/mobile/onboarding-icloud-section.tsx
  • apps/desktop/src/mobile/search-input.tsx
  • apps/desktop/src/mobile/task-row.tsx
  • apps/desktop/src/providers/note-find-provider.tsx
  • apps/desktop/src/routing/app-shortcuts.ts

Walkthrough

The PR removes the local IME composition workaround and replaces its usage across desktop, mobile, search, task, and shortcut keyboard handlers with getIsComposing() from @meowdown/core.

Changes

IME composition detection migration

Layer / File(s) Summary
Remove local composition workaround
apps/desktop/src/lib/keyboard.ts, apps/desktop/src/lib/keyboard.test.tsx
Removes the local composition helper, its compositionend listener, timing logic, and associated tests.
Migrate desktop handlers
apps/desktop/src/components/..., apps/desktop/src/hooks/use-sidebar-resize.ts, apps/desktop/src/lib/tasks/use-task-keyboard.ts
Updates desktop keyboard handlers to use getIsComposing() while preserving existing Enter, Escape, selection, and resizing behavior.
Migrate mobile and global handlers
apps/desktop/src/mobile/..., apps/desktop/src/providers/note-find-provider.tsx, apps/desktop/src/routing/app-shortcuts.ts
Updates mobile inputs, find-provider handlers, and application shortcuts to use the centralized composition predicate.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested labels: codex

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ocavue/use-meowdown-get-is-composing

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

ESLint install timed out. The project may have too many dependencies for the sandbox.


Comment @coderabbitai help to get the list of available commands.

@ocavue
ocavue marked this pull request as ready for review July 28, 2026 23:52
@ocavue
ocavue merged commit a72a891 into master Jul 28, 2026
13 checks passed
@ocavue
ocavue deleted the ocavue/use-meowdown-get-is-composing branch July 28, 2026 23:52
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