diff --git a/builds/4chan-X.user.js b/builds/4chan-X.user.js index f9ac70564..071bda8d5 100644 --- a/builds/4chan-X.user.js +++ b/builds/4chan-X.user.js @@ -4924,7 +4924,7 @@ } if (QR.captcha.isEnabled && /captcha|verification/i.test(el.textContent)) { QR.captcha.nodes.input.focus(); - if (Conf['Captcha Warning Notifications']) { + if (Conf['Captcha Warning Notifications'] && !d.hidden) { QR.notify(el); } else { $.addClass(QR.captcha.nodes.input, 'error'); @@ -4942,17 +4942,17 @@ notify: function(el) { var notice, notif; notice = new Notice('warning', el); - QR.notifications.push(notice); - if (!Header.areNotificationsEnabled) { - return; + if (!(Header.areNotificationsEnabled && d.hidden)) { + return QR.notifications.push(notice); + } else { + notif = new Notification(el.textContent, { + body: el.textContent, + icon: Favicon.logo + }); + return notif.onclick = function() { + return window.focus(); + }; } - notif = new Notification(el.textContent, { - body: el.textContent, - icon: Favicon.logo - }); - return notif.onclick = function() { - return window.focus(); - }; }, notifications: [], cleanNotifications: function() { diff --git a/builds/crx/script.js b/builds/crx/script.js index e5f246d47..449b2f8d2 100644 --- a/builds/crx/script.js +++ b/builds/crx/script.js @@ -4927,7 +4927,7 @@ } if (QR.captcha.isEnabled && /captcha|verification/i.test(el.textContent)) { QR.captcha.nodes.input.focus(); - if (Conf['Captcha Warning Notifications']) { + if (Conf['Captcha Warning Notifications'] && !d.hidden) { QR.notify(el); } else { $.addClass(QR.captcha.nodes.input, 'error'); @@ -4945,26 +4945,26 @@ notify: function(el) { var notice, notif; notice = new Notice('warning', el); - QR.notifications.push(notice); - if (!Header.areNotificationsEnabled) { - return; + if (!(Header.areNotificationsEnabled && d.hidden)) { + return QR.notifications.push(notice); + } else { + notif = new Notification(el.textContent, { + body: el.textContent, + icon: Favicon.logo + }); + notif.onclick = function() { + return window.focus(); + }; + notif.onclose = function() { + return notice.close(); + }; + return notif.onshow = function() { + return setTimeout(function() { + notif.onclose = null; + return notif.close(); + }, 7 * $.SECOND); + }; } - notif = new Notification(el.textContent, { - body: el.textContent, - icon: Favicon.logo - }); - notif.onclick = function() { - return window.focus(); - }; - notif.onclose = function() { - return notice.close(); - }; - return notif.onshow = function() { - return setTimeout(function() { - notif.onclose = null; - return notif.close(); - }, 7 * $.SECOND); - }; }, notifications: [], cleanNotifications: function() { diff --git a/src/Posting/QuickReply.coffee b/src/Posting/QuickReply.coffee index b90187844..cc8b96d88 100755 --- a/src/Posting/QuickReply.coffee +++ b/src/Posting/QuickReply.coffee @@ -141,7 +141,7 @@ QR = if QR.captcha.isEnabled and /captcha|verification/i.test el.textContent # Focus the captcha input on captcha error. QR.captcha.nodes.input.focus() - if Conf['Captcha Warning Notifications'] + if Conf['Captcha Warning Notifications'] and !d.hidden QR.notify el else $.addClass QR.captcha.nodes.input, 'error' @@ -153,22 +153,23 @@ QR = notify: (el) -> notice = new Notice 'warning', el - QR.notifications.push notice - return unless Header.areNotificationsEnabled - notif = new Notification el.textContent, - body: el.textContent - icon: Favicon.logo - notif.onclick = -> window.focus() - <% if (type === 'crx') { %> - # Firefox automatically closes notifications - # so we can't control the onclose properly. - notif.onclose = -> notice.close() - notif.onshow = -> - setTimeout -> - notif.onclose = null - notif.close() - , 7 * $.SECOND - <% } %> + unless Header.areNotificationsEnabled and d.hidden + QR.notifications.push notice + else + notif = new Notification el.textContent, + body: el.textContent + icon: Favicon.logo + notif.onclick = -> window.focus() + <% if (type === 'crx') { %> + # Firefox automatically closes notifications + # so we can't control the onclose properly. + notif.onclose = -> notice.close() + notif.onshow = -> + setTimeout -> + notif.onclose = null + notif.close() + , 7 * $.SECOND + <% } %> notifications: [] cleanNotifications: ->