Add unread indicator + fix bug with read receipts
This commit is contained in:
parent
bfcafecfe2
commit
7571b88c51
|
@ -168,7 +168,14 @@ const connectTimelineStream = (
|
|||
removeChatMessage(data.payload);
|
||||
break;
|
||||
case 'chat_message.read': // TruthSocial
|
||||
updateChatQuery(JSON.parse(data.payload));
|
||||
dispatch((_dispatch: AppDispatch, getState: () => RootState) => {
|
||||
const chat = JSON.parse(data.payload);
|
||||
const me = getState().me;
|
||||
const isFromOtherUser = chat.account.id !== me;
|
||||
if (isFromOtherUser) {
|
||||
updateChatQuery(JSON.parse(data.payload));
|
||||
}
|
||||
});
|
||||
break;
|
||||
case 'pleroma:follow_relationships_update':
|
||||
dispatch(updateFollowRelationships(JSON.parse(data.payload)));
|
||||
|
|
|
@ -344,10 +344,18 @@ const ChatMessageList: React.FC<IChatMessageList> = ({ chat }) => {
|
|||
{intl.formatTime(chatMessage.created_at)}
|
||||
</Text>
|
||||
|
||||
{isRead ? (
|
||||
<span className='rounded-full flex flex-col items-center justify-center h-3.5 w-3.5 dark:bg-primary-400 dark:text-primary-900'>
|
||||
<Icon src={require('@tabler/icons/check.svg')} strokeWidth={3} className='w-2.5 h-2.5' />
|
||||
</span>
|
||||
{isMyMessage ? (
|
||||
<>
|
||||
{isRead ? (
|
||||
<span className='rounded-full flex flex-col items-center justify-center p-0.5 dark:bg-primary-400 dark:text-primary-900 border border-solid border-primary-400'>
|
||||
<Icon src={require('@tabler/icons/check.svg')} strokeWidth={3} className='w-3 h-3' />
|
||||
</span>
|
||||
) : (
|
||||
<span className='rounded-full flex flex-col items-center justify-center p-0.5 bg-transparent dark:text-primary-400 border border-solid dark:border-primary-400'>
|
||||
<Icon src={require('@tabler/icons/check.svg')} strokeWidth={3} className='w-3 h-3' />
|
||||
</span>
|
||||
)}
|
||||
</>
|
||||
) : null}
|
||||
</span>
|
||||
</div>
|
||||
|
|
Loading…
Reference in New Issue