diff --git a/Update.json b/Update.json index a732b808..3cde5c6c 100644 --- a/Update.json +++ b/Update.json @@ -3396,6 +3396,17 @@ } ], "Notes": "Fix contest ranking table colors in dark mode (contestrank-oi.php and contestrank-correct.php)" + }, + "3.2.2": { + "UpdateDate": 1771848993140, + "Prerelease": true, + "UpdateContents": [ + { + "PR": 919, + "Description": "Gate WebSocket toast notifications by per-feature popup settings" + } + ], + "Notes": "Fix WebSocket notification toasts ignoring per-feature popup settings (BBSPopup/MessagePopup)." } } } \ No newline at end of file diff --git a/XMOJ.user.js b/XMOJ.user.js index f442f8af..76c959ad 100644 --- a/XMOJ.user.js +++ b/XMOJ.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name XMOJ -// @version 3.2.1 +// @version 3.2.2 // @description XMOJ增强脚本 // @author @XMOJ-Script-dev, @langningchen and the community // @namespace https://github/langningchen @@ -650,11 +650,13 @@ function HandleNotificationMessage(event) { console.log("WebSocket: Server confirmed connection at timestamp", notification.timestamp); } } else if (notification.type === 'bbs_mention') { - // Backend now provides all data needed for immediate display - CreateAndShowBBSMentionToast(notification.data); + if (UtilityEnabled("BBSPopup")) { + CreateAndShowBBSMentionToast(notification.data); + } } else if (notification.type === 'mail_mention') { - // Backend now provides all data needed for immediate display - CreateAndShowMailMentionToast(notification.data); + if (UtilityEnabled("MessagePopup")) { + CreateAndShowMailMentionToast(notification.data); + } } else if (notification.type === 'pong') { if (UtilityEnabled("DebugMode")) { console.log("WebSocket: Received pong"); diff --git a/package.json b/package.json index 33bff641..48211b03 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "xmoj-script", - "version": "3.2.1", + "version": "3.2.2", "description": "an improvement script for xmoj.tech", "main": "AddonScript.js", "scripts": {