Jelajahi Sumber

Show a notification if the tab is hidden

JC Brand 2 minggu lalu
induk
melakukan
943f29075a

+ 8 - 2
src/plugins/notifications/utils.js

@@ -16,8 +16,14 @@ converse.env.Favico = Favico;
 
 let favicon;
 
-export function isMessageToHiddenChat(attrs) {
-    return isTestEnv() || (_converse.state.chatboxes.get(attrs.from)?.isHidden() ?? false);
+/**
+ * @param {string} from - The JID of the sender
+ * @returns {boolean}
+ */
+export function isMessageToHiddenChat(from) {
+    return isTestEnv() ||
+           (_converse.state.chatboxes.get(from)?.isHidden() ?? false) ||
+           document.hidden;
 }
 
 export function areDesktopNotificationsEnabled() {

+ 5 - 1
src/types/plugins/notifications/utils.d.ts

@@ -1,4 +1,8 @@
-export function isMessageToHiddenChat(attrs: any): any;
+/**
+ * @param {string} from - The JID of the sender
+ * @returns {boolean}
+ */
+export function isMessageToHiddenChat(from: string): boolean;
 export function areDesktopNotificationsEnabled(): any;
 /**
  * @typedef {Navigator & {clearAppBadge: Function, setAppBadge: Function} } navigator