-
由 Adekunle James Adeniji 提交于
Closes #1999 <!-- devin-review-badge-begin --> --- <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/2343"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1"> <img src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1" alt="Open with Devin"> </picture> </a> <!-- devin-review-badge-end --> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Introduces terminal-style history recall in the chat input using a zero-width trigger and the mentions menu. > > - New `HistoryNavigation` plugin listens for `ArrowUp` on empty input to insert `HISTORY_TRIGGER` and open a history menu; `Escape` clears it > - Integrates `messageHistory` from `ChatInput` (per-chat user messages, newest first) into `LexicalChatInput`; home input passes an empty history > - Extends mentions to support history items under `HISTORY_TRIGGER`, customizes menu item rendering, and strips the trigger from the external value sync/onChange flow > - Adds comprehensive Playwright e2e tests for opening, navigating, selecting (Enter/mouse), closing (Escape), and guard cases (non-empty input, empty history), plus normal message sending after closing > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit ea2a9298c6dc7e72a6cc1d3b044a4b6bcacf5bb4. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Recall previous user messages in the chat input using the Up Arrow. This adds a simple history menu that lets you quickly reuse past prompts without leaving the input. - **New Features** - Press Up Arrow in an empty input to open a history menu (only if history exists). - Navigate with Arrow keys, select with Enter or mouse click, and close with Escape. Defaults to the most recent item. - Integrates with Lexical via an invisible trigger, and won’t open when the input has content. - Pulls user-only messages per chat for history; includes end-to-end tests covering open, navigation, selection, closing, and guard cases. <sup>Written for commit d87bc2f712a69f411c3046e9376099656326bca1. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> --------- Co-authored-by:
Claude Opus 4.5 <noreply@anthropic.com>