From 21c913c6c39e621208a948369f9c7ae22cae7d1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roman=20Smr=C5=BE?= Date: Sun, 15 Feb 2026 15:29:15 +0100 Subject: Add classes to distinguish sent and received messages --- src/Main.hs | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src') diff --git a/src/Main.hs b/src/Main.hs index 854c0d1..f96f872 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -167,9 +167,14 @@ setup = do SelectedConversation conv | maybe False (msgPeer cur `sameIdentity`) (conversationPeer conv) -> do + mbSelf <- join . fmap (lookupSharedValue @(Maybe ComposedIdentity) . lsShared . headObject) <$> reloadHead globalHead forM_ (reverse $ dmThreadToListSince prev cur) $ \msg -> do li <- js_document_createElement (toJSString "li") js_set_textContent li $ toJSString $ formatDirectMessage tzone msg + case mbSelf of + Just self -> js_classList_add li $ + if msgFrom msg `sameIdentity` self then toJSString "sent" else toJSString "received" + Nothing -> return () ul <- js_get_firstChild messagesList js_appendChild ul li @@ -343,9 +348,14 @@ selectConversation GlobalState {..} conv = do tzone <- getCurrentTimeZone ul <- js_document_createElement (toJSString "ul") + mbSelf <- join . fmap (lookupSharedValue @(Maybe ComposedIdentity) . lsShared . headObject) <$> reloadHead globalHead forM_ (reverse $ conversationHistory conv) $ \msg -> do li <- js_document_createElement (toJSString "li") js_set_textContent li $ toJSString $ formatMessage tzone msg + case mbSelf of + Just self -> js_classList_add li $ + if messageFrom msg `sameIdentity` self then toJSString "sent" else toJSString "received" + Nothing -> return () js_appendChild ul li js_set_textContent header $ toJSString $ T.unpack $ conversationName conv -- cgit v1.2.3