Skip to content

fix(v2): reaction "+" trigger hover-only on pointer devices#379

Open
samxu01 wants to merge 1 commit into
mainfrom
fix/reaction-hover-only
Open

fix(v2): reaction "+" trigger hover-only on pointer devices#379
samxu01 wants to merge 1 commit into
mainfrom
fix/reaction-hover-only

Conversation

@samxu01
Copy link
Copy Markdown
Contributor

@samxu01 samxu01 commented May 16, 2026

Summary

  • .v2-msg__reaction-add-wrap was always visible next to every message — visual noise in long chat threads.
  • Gate visibility on .v2-msg:hover for pointer devices via @media (hover: hover).
  • :focus-within keeps the wrap visible while the emoji-picker popover is open (picker buttons inside hold focus).
  • Mobile / touch (@media (hover: none)) keeps the trigger always-visible — no hover affordance to lean on.
  • Reaction count badges (.v2-msg__reaction, rendered when count > 0) are unaffected and always visible.

Closes 1 of 4 gaps from the "make collab bulletproof" goal.

Test plan

  • Desktop: hover a message row → "+" fades in; mouse out → fades out (~120ms).
  • Click "+" → picker opens, "+" stays visible while picker open (:focus-within).
  • Click an emoji → reaction posts, picker closes, "+" fades back when hover ends.
  • Mobile (resize 390×844 or DevTools touch emulation): "+" always visible, tap to react still works.
  • Existing reaction badges with count > 0 always visible regardless of hover.

🤖 Generated with Claude Code

The "+ add reaction" button was always visible next to every message,
adding visual noise to chat. Gate visibility on .v2-msg:hover for
pointer devices and keep it always-visible on touch (no hover
affordance). :focus-within keeps the wrap visible while the picker
popover is open. Reaction count badges (when count > 0) are unaffected.

Closes one of four gaps from the "make it solid" goal.
samxu01 added a commit that referenced this pull request May 16, 2026
The "+ add reaction" button was always visible next to every message,
adding visual noise to chat. Gate visibility on .v2-msg:hover for
pointer devices and keep it always-visible on touch (no hover
affordance). :focus-within keeps the wrap visible while the picker
popover is open. Reaction count badges (when count > 0) are unaffected.

Closes 1 of 4 gaps from the "make collab bulletproof" goal.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
samxu01 added a commit that referenced this pull request May 16, 2026
…MCP servers

Verified empirically 2026-05-15 after merging #388: codex CLI 0.125.0
recognizes [mcp_servers.commonly] in config.toml (`codex mcp list`
shows it enabled), but `codex exec` does NOT actually connect to or
expose tools from configured MCP servers. The model's tool list stays
limited to codex's built-in tools (web, image_gen, exec_command,
apply_patch, ...). list_mcp_resources returns empty regardless.

Per docs/MCP_INTEGRATION.md, the supported codex pattern is to wrap
codex AS an MCP server (codex-as-mcp), not to have codex consume MCP
servers. So #388 adds noise without effect.

For Cody to actually call commonly_react_to_message autonomously, the
real options are:
  - Switch her adapter from codex → claude-code or another MCP-
    consuming host (architectural decision).
  - Add the reaction tool to the openclaw extension's commonly_*
    block (separate Team-Commonly/openclaw PR; out of the
    "make-collab-bulletproof" goal's "no openclaw-coupled fixes"
    constraint).

Keeping the four ship-PRs (#379/#380/#381/#382 + #383/#384/#385/#386
follow-ups) in place — they're all correct. Just removing #388.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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