Skip to content

Chat emoji picker: the Gryt UI picker, with this server's emoji first - #773

Merged
sivert-io merged 2 commits into
mainfrom
claude/chat-emoji-picker
Oct 5, 2026
Merged

sivert-io merged 2 commits into
mainfrom
claude/chat-emoji-picker

Conversation

@sivert-io

Copy link
Copy Markdown
Member

The emoji picker part of #770, on its own so it can be reviewed.

  • The chat's hand-built picker is replaced by @gryt/ui's EmojiPicker, the same one the card editor uses. It's virtualised, has category jumps, and puts this server's custom emoji first, then recently used, then the Unicode set.
  • Custom emoji are kept per server (emojiData.ts). The old cache held whichever server loaded last, so a picker could offer another server's emoji.
  • Positioning, Escape, and closing on an outside click stay with the picker in the client.
  • A new e2e test uploads a custom emoji, picks it in chat and in the card's emoji pattern, and searches thumbsup.

The code is Codex's from #770, which I read through. I didn't change the logic. What to look at: getCustomEmojis(serverHost) without a host still returns the last server loaded, as before, for callers that don't pass one.

🤖 Generated with Claude Code

sivert-io and others added 2 commits October 5, 2026 10:25
…irst

The chat had its own picker. It now uses @gryt/ui's EmojiPicker, the one
the card editor already uses, so both look and search the same. Custom
emoji are kept per server, so a picker shows the emoji of the server it
is on rather than whichever server loaded last.

Taken from client#770 (Codex), as its own change.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: OpenAI Codex <[email protected]>
@sivert-io
sivert-io merged commit 449b3e7 into main Oct 5, 2026
17 checks passed
@sivert-io
sivert-io deleted the claude/chat-emoji-picker branch October 5, 2026 08:40
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