From cb71b9c56754abe739b889aeb9fd8bf80097c661 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roman=20Smr=C5=BE?= Date: Tue, 2 Jun 2026 21:10:39 +0200 Subject: Command to mark messages as seen Changelog: Added `/seen` command to mark messages as seen. --- main/Main.hs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'main') diff --git a/main/Main.hs b/main/Main.hs index 8d7cc08..4b09d3d 100644 --- a/main/Main.hs +++ b/main/Main.hs @@ -385,7 +385,9 @@ interactiveLoop st opts = withTerminal commandCompletion $ \term -> do Right prompt -> return prompt lift $ setPrompt term $ plainText $ T.pack prompt join $ lift $ getInputLine term $ \case - Just input@('/' : _) -> KeepPrompt $ return input + Just input@('/' : _) + | "/seen" : _ <- words input -> ErasePrompt $ return input + | otherwise -> KeepPrompt $ return input Just input -> ErasePrompt $ case reverse input of _ | all isSpace input -> getInputLinesTui eprompt '\\':rest -> (reverse ('\n':rest) ++) <$> getInputLinesTui (Right ">> ") @@ -711,6 +713,7 @@ commands = , ( "invite-accept", cmdInviteAccept ) , ( "conversations", cmdConversations ) , ( "new", cmdNew ) + , ( "seen", cmdSeen ) , ( "details", cmdDetails ) , ( "discovery", cmdDiscovery ) , ( "join", cmdJoin ) @@ -1113,6 +1116,9 @@ cmdNew = do = Just ( conv, msg ) checkNew _ = Nothing +cmdSeen :: Command +cmdSeen = markAllSeen =<< getSelectedConversation + cmdDetails :: Command cmdDetails = do -- cgit v1.2.3