mirror of
https://github.com/purrgrammer/grimoire.git
synced 2026-04-09 23:16:50 +02:00
035fd829d5297179ef30917fdd9db0b3b726d94f
* fix: allow Ctrl/Cmd+Enter to submit messages when suggestion popup is open The suggestion list components were intercepting all Enter key presses, including Ctrl+Enter and Cmd+Enter, preventing message submission when the autocomplete popup was visible. Now these modifier combinations pass through to the editor's submit handler. * fix: make Ctrl/Cmd+Enter work reliably and prevent text overflow - Add TipTap Extension with addKeyboardShortcuts for Mod-Enter and Enter which has higher priority than the suggestion plugin, ensuring Ctrl/Cmd+Enter always submits even when autocomplete is open - Use ref to access handleSubmit from extension without recreating it - Add whitespace-nowrap to prevent text wrapping in single-line input - Add overflow-hidden to container and overflow-x-auto to editor content to handle long text gracefully with horizontal scrolling * fix: handle Ctrl/Cmd+Enter directly in suggestion onKeyDown handlers The TipTap suggestion plugin intercepts key events at the plugin level, which runs before extension keyboard shortcuts. Even returning false from the suggestion's onKeyDown didn't properly propagate events. Now the suggestion handlers directly handle Ctrl/Cmd+Enter by: 1. Capturing the editor reference from onStart (where it's available) 2. Checking for Ctrl/Cmd+Enter in onKeyDown 3. Closing the popup and calling handleSubmitRef.current() Also moved handleSubmitRef to the top of the component so it can be accessed from within the suggestion config closures. --------- Co-authored-by: Claude <noreply@anthropic.com>
Grimoire
A Nostr protocol explorer and developer tool with a tiling window manager interface.
Features
- Tiling Windows - Each window is a Nostr "app" (profile viewer, event feed, NIP docs, etc.)
- Command Palette - Unix-style commands via
Cmd+Kto open apps and navigate - Multi-workspace - Virtual desktops with independent layouts
- Real-time - Reactive event subscriptions with automatic updates
Stack
React 19, TypeScript, Vite, TailwindCSS, Jotai, Dexie, Applesauce
Getting Started
npm install
npm run dev
Scripts
| Command | Description |
|---|---|
npm run dev |
Start dev server |
npm run build |
Build for production |
npm test |
Run tests in watch mode |
npm run lint |
Lint code |
npm run format |
Format code |
License
MIT
Languages
TypeScript
98.9%
CSS
0.8%
JavaScript
0.3%