From 11d108f0a65271b36ffc9a9b5d20e5c5d17ee796 Mon Sep 17 00:00:00 2001 From: benya Date: Sun, 8 Mar 2026 20:44:33 +0300 Subject: [PATCH] fix(media): keep sticker and gif clicks out of photo viewer --- docs/core-checklist-status.md | 2 +- web/src/components/MessageList.tsx | 27 +++++++++++++++++++++++++-- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/docs/core-checklist-status.md b/docs/core-checklist-status.md index 848dff2..8780d15 100644 --- a/docs/core-checklist-status.md +++ b/docs/core-checklist-status.md @@ -22,7 +22,7 @@ Legend: 13. Reactions - `DONE` 14. Delivery Status - `DONE` (sent/delivered/read + reconnect reconciliation after backend restarts) 15. Typing Realtime - `DONE` (typing start/stop + recording voice start/stop + recording video start/stop in circle-video send flow) -16. Media & Attachments - `DONE` (upload/preview/download/gallery) +16. Media & Attachments - `DONE` (upload/preview/download/gallery; sticker/GIF inline media no longer opens photo viewer on click) 17. Voice Messages - `PARTIAL` (record/send/play/seek + global speed 1x/1.5x/2x; recorder uses mime fallback + chunked capture; websocket send/recorder stop race on fast chat switch is guarded; UX still being polished) 18. Circle Video Messages - `PARTIAL` (send/play present, recording UX basic) 19. Stickers - `PARTIAL` (web sticker picker with preset pack + favorites) diff --git a/web/src/components/MessageList.tsx b/web/src/components/MessageList.tsx index 2b4b1e7..1757ac6 100644 --- a/web/src/components/MessageList.tsx +++ b/web/src/components/MessageList.tsx @@ -1066,11 +1066,17 @@ function renderMessageContent( } if (mediaItems.length === 1) { const item = mediaItems[0]; + const blockViewerOpen = isStickerOrGifMedia(item.url); return (