Skip to content

Commit c00c616

Browse files
Yerazeclaude
andauthored
fix: auto-mark messages as read when viewing channel or DM (#2430)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 9e2bd17 commit c00c616

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

src/components/ChannelsTab.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -427,6 +427,7 @@ export default function ChannelsTab({
427427
setSelectedChannel(channelId);
428428
selectedChannelRef.current = channelId;
429429
setReplyingTo(null);
430+
markMessagesAsRead(undefined, channelId);
430431
setUnreadCounts(prev => {
431432
const updated = { ...prev, [channelId]: 0 };
432433
logger.debug('📝 Setting unread counts:', updated);
@@ -470,6 +471,7 @@ export default function ChannelsTab({
470471
setSelectedChannel(channelId);
471472
selectedChannelRef.current = channelId;
472473
setReplyingTo(null);
474+
markMessagesAsRead(undefined, channelId);
473475
setUnreadCounts(prev => {
474476
const updated = { ...prev, [channelId]: 0 };
475477
logger.debug('📝 Setting unread counts:', updated);

src/components/MessagesTab.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -789,8 +789,10 @@ const MessagesTab: React.FC<MessagesTabProps> = ({
789789
key={node.nodeNum}
790790
className={`node-item ${selectedDMNode === node.user?.id ? 'selected' : ''}`}
791791
onClick={() => {
792-
setSelectedDMNode(node.user?.id || '');
792+
const nodeId = node.user?.id || '';
793+
setSelectedDMNode(nodeId);
793794
setReplyingTo(null);
795+
if (nodeId) markMessagesAsRead(undefined, -1, nodeId);
794796
}}
795797
>
796798
<div className="node-header">
@@ -950,8 +952,10 @@ const MessagesTab: React.FC<MessagesTabProps> = ({
950952
className="node-dropdown-select"
951953
value={selectedDMNode || ''}
952954
onChange={e => {
953-
setSelectedDMNode(e.target.value);
955+
const nodeId = e.target.value;
956+
setSelectedDMNode(nodeId);
954957
setReplyingTo(null);
958+
if (nodeId) markMessagesAsRead(undefined, -1, nodeId);
955959
}}
956960
>
957961
<option value="">{t('messages.select_conversation')}</option>

0 commit comments

Comments
 (0)