aboutsummaryrefslogtreecommitdiff
path: root/client-web/source/chat.ts
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2022-09-10 18:22:46 +0200
committermetamuffin <metamuffin@disroot.org>2022-09-10 18:22:46 +0200
commitf268bd2087fbfb57b8504becf364a00ddebde075 (patch)
tree54c0e27bdfb32d553d13addc1de69b56b86630c1 /client-web/source/chat.ts
parentd889e1b572952c5777fc2bb147f04ad8baf7f497 (diff)
downloadkeks-meet-f268bd2087fbfb57b8504becf364a00ddebde075.tar
keks-meet-f268bd2087fbfb57b8504becf364a00ddebde075.tar.bz2
keks-meet-f268bd2087fbfb57b8504becf364a00ddebde075.tar.zst
notifications for chat
Diffstat (limited to 'client-web/source/chat.ts')
-rw-r--r--client-web/source/chat.ts10
1 files changed, 10 insertions, 0 deletions
diff --git a/client-web/source/chat.ts b/client-web/source/chat.ts
index 792a620..e08437b 100644
--- a/client-web/source/chat.ts
+++ b/client-web/source/chat.ts
@@ -59,5 +59,15 @@ export class Chat extends OverlayUi {
this.messages.append(ediv({ class: "message" },
espan(sender.display_name, { class: "author" }), ": ", ...els
))
+ this.shown = true
+ this.notify(sender, message)
+ }
+ notify(sender: User, message: ChatMessage) {
+ if (sender.local || document.hasFocus()) return
+ if (Notification.permission != "granted") return
+ let body = "(empty message)"
+ if (message.text) body = message.text
+ if (message.image) body = "(image)"
+ new Notification(`keks-meet: ${sender.display_name}`, { body })
}
}