From b806902bc4cd5c1f7dea05e5aab6b15de8dded59 Mon Sep 17 00:00:00 2001 From: Paul <paulmakles@gmail.com> Date: Fri, 9 Jul 2021 10:15:32 +0100 Subject: [PATCH] Fix: Prevent clicking on links in reply / channel header. Jump to existing message if exists. --- .../common/messaging/attachments/MessageReply.tsx | 5 ++++- src/lib/renderer/Singleton.ts | 10 ++++++++++ src/pages/channels/ChannelHeader.tsx | 4 ++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/components/common/messaging/attachments/MessageReply.tsx b/src/components/common/messaging/attachments/MessageReply.tsx index b9b0e6b..435f2d5 100644 --- a/src/components/common/messaging/attachments/MessageReply.tsx +++ b/src/components/common/messaging/attachments/MessageReply.tsx @@ -45,10 +45,13 @@ export const ReplyBase = styled.div<{ .content { gap: 4px; display: flex; + cursor: pointer; align-items: center; flex-direction: row; - cursor: pointer; + > * { + pointer-events: none; + } } > svg:first-child { diff --git a/src/lib/renderer/Singleton.ts b/src/lib/renderer/Singleton.ts index 83bb2ef..be9829d 100644 --- a/src/lib/renderer/Singleton.ts +++ b/src/lib/renderer/Singleton.ts @@ -73,6 +73,16 @@ export class SingletonRenderer extends EventEmitter3 { } async init(id: string, message_id?: string) { + if (message_id) { + if (this.state.type === 'RENDER') { + let message = this.state.messages.find(x => x._id === message_id); + if (message) { + this.emit("scroll", { type: "ScrollToView", id: message_id }); + return; + } + } + } + this.channel = id; this.stale = false; this.setStateUnguarded({ type: "LOADING" }); diff --git a/src/pages/channels/ChannelHeader.tsx b/src/pages/channels/ChannelHeader.tsx index 31cb705..95b964b 100644 --- a/src/pages/channels/ChannelHeader.tsx +++ b/src/pages/channels/ChannelHeader.tsx @@ -58,6 +58,10 @@ const Info = styled.div` font-size: 0.8em; font-weight: 400; color: var(--secondary-foreground); + + > * { + pointer-events: none; + } } `; -- GitLab