From 8e3acf8d00e8ec1611414146ebe5314f9c2a9d16 Mon Sep 17 00:00:00 2001 From: Jared Vititoe Date: Sun, 31 May 2026 10:57:27 -0400 Subject: [PATCH] fix: clear status_msg when leaving DND presence state Pass status_msg: '' explicitly on setOnline/setOffline/setUnavailable(idle) so the Matrix server overwrites the 'dnd' status_msg left from DND mode. Co-Authored-By: Claude Sonnet 4.6 --- src/app/hooks/usePresenceUpdater.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/app/hooks/usePresenceUpdater.ts b/src/app/hooks/usePresenceUpdater.ts index 788e3b168..e84b62dbc 100644 --- a/src/app/hooks/usePresenceUpdater.ts +++ b/src/app/hooks/usePresenceUpdater.ts @@ -16,10 +16,12 @@ export function usePresenceUpdater() { const lastActivityRef = useRef(0); useEffect(() => { - const setOnline = () => mx.setPresence({ presence: 'online' }).catch(() => undefined); - const setUnavailable = (statusMsg?: string) => + const setOnline = () => + mx.setPresence({ presence: 'online', status_msg: '' }).catch(() => undefined); + const setUnavailable = (statusMsg = '') => mx.setPresence({ presence: 'unavailable', status_msg: statusMsg }).catch(() => undefined); - const setOffline = () => mx.setPresence({ presence: 'offline' }).catch(() => undefined); + const setOffline = () => + mx.setPresence({ presence: 'offline', status_msg: '' }).catch(() => undefined); // Manual presence overrides — no activity tracking needed. if (hidePresence || presenceStatus === 'invisible') {