Steps to reproduce
- Set the user status to Do not disturb.
- Receive a message in any conversation.
Expected behaviour
No notification banner, like in the web client, which hides browser notifications while
the status is dnd.
Actual behaviour
A banner pops up for every message. Only the sound and the call popup honour the
status. There is also no way to turn the banner off by hand: setting Show call
notification popup to Never just replaces the popup with a plain banner.
Cause
In src/talk/renderer/notifications/notifications.store.js,
showNativeNotification() looks at the user status only for the sound
(shouldPlaySoundChat) and for the call popup (enableCallbox) - the
new Notification(...) branch is not gated. The DND check in Push.php never applies
here, since the client polls instead of receiving push.
Suggested fix
Two more settings, following the scheme #632 established for the sound:
showNotificationChat and showNotificationCall, each always | respect-dnd | never,
defaulting to respect-dnd. Keeping calls separate preserves the current option of a
plain banner instead of the callbox window (enableCallbox: never +
showNotificationCall: always).
Versions
- Nextcloud Talk Desktop 2.2.3 (built-in Talk 24.0.3), macOS
- Nextcloud 34.0.1, Talk 24.0.2
Steps to reproduce
Expected behaviour
No notification banner, like in the web client, which hides browser notifications while
the status is
dnd.Actual behaviour
A banner pops up for every message. Only the sound and the call popup honour the
status. There is also no way to turn the banner off by hand: setting Show call
notification popup to Never just replaces the popup with a plain banner.
Cause
In
src/talk/renderer/notifications/notifications.store.js,showNativeNotification()looks at the user status only for the sound(
shouldPlaySoundChat) and for the call popup (enableCallbox) - thenew Notification(...)branch is not gated. The DND check inPush.phpnever applieshere, since the client polls instead of receiving push.
Suggested fix
Two more settings, following the scheme #632 established for the sound:
showNotificationChatandshowNotificationCall, eachalways | respect-dnd | never,defaulting to
respect-dnd. Keeping calls separate preserves the current option of aplain banner instead of the callbox window (
enableCallbox: never+showNotificationCall: always).Versions