diff --git a/CHANGELOG.md b/CHANGELOG.md index 9dbdc2290..7a9456cb5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,11 @@ ### v1.13.14 +**v1.13.14.9** *(2017-11-17)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.14.9/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.14.9/builds/4chan-X-noupdate.crx)] +- Hard disable 'Force Noscript Captcha for v1' in GM4 for now. +- Work around double loading issue in Greasemonkey 4. #1629 +- Fix 'Open front page' keybind in Tampermonkey. + **v1.13.14.8** *(2017-11-16)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.14.8/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.13.14.8/builds/4chan-X-noupdate.crx)] - Yet more Greasemonkey 4 related fixes. diff --git a/builds/4chan-X-beta.crx b/builds/4chan-X-beta.crx index 11aff3eef..186444b4c 100644 Binary files a/builds/4chan-X-beta.crx and b/builds/4chan-X-beta.crx differ diff --git a/builds/4chan-X-beta.meta.js b/builds/4chan-X-beta.meta.js index e5dd19907..6e8f04272 100644 --- a/builds/4chan-X-beta.meta.js +++ b/builds/4chan-X-beta.meta.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X beta -// @version 1.13.14.8 +// @version 1.13.14.9 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X diff --git a/builds/4chan-X-beta.user.js b/builds/4chan-X-beta.user.js index 2c512d08d..8a3d59e50 100644 --- a/builds/4chan-X-beta.user.js +++ b/builds/4chan-X-beta.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X beta -// @version 1.13.14.8 +// @version 1.13.14.9 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X @@ -159,7 +159,7 @@ docSet = function() { }; g = { - VERSION: '1.13.14.8', + VERSION: '1.13.14.9', NAMESPACE: '4chan X.', boards: {} }; @@ -17136,7 +17136,7 @@ Keybinds = (function() { } break; case Conf['Open front page']: - $.open("/" + g.BOARD + "/"); + $.open(location.origin + "/" + g.BOARD + "/"); break; case Conf['Next page']: if (!(g.VIEW === 'index' && g.BOARD.ID !== 'f')) { @@ -21452,7 +21452,7 @@ QR = (function() { 'video/webm': 'webm' }, init: function() { - var noscript, sc, version; + var info, noscript, sc, version; if (!Conf['Quick Reply']) { return; } @@ -21460,7 +21460,7 @@ QR = (function() { if (g.VIEW === 'archive') { return; } - version = Conf[g.VIEW === 'thread' ? 'Use Recaptcha v1' : 'Use Recaptcha v1 on Index'] && (Main.jsEnabled || location.protocol === 'https:') ? (noscript = location.protocol === 'https:' && (Conf['Force Noscript Captcha for v1'] || !Main.jsEnabled), noscript ? 'noscript' : 'v1') : 'v2'; + version = Conf[g.VIEW === 'thread' ? 'Use Recaptcha v1' : 'Use Recaptcha v1 on Index'] && (Main.jsEnabled || location.protocol === 'https:') ? (noscript = location.protocol === 'https:' && (Conf['Force Noscript Captcha for v1'] || !Main.jsEnabled), (info = typeof GM !== "undefined" && GM !== null ? GM.info : void 0) && info.scriptHandler === 'Greasemonkey' && /^4\./.test(info.version) ? noscript = false : void 0, noscript ? 'noscript' : 'v1') : 'v2'; this.captcha = Captcha[version]; $.on(d, '4chanXInitFinished', function() { return BoardConfig.ready(QR.initReady); @@ -24641,6 +24641,15 @@ Main = (function() { if (location.hostname === 'boards.4chan.org' && d.documentElement && !d.doctype) { return; } + if (doc && $.hasClass(doc, 'fourchan-x')) { + return; + } + $.asap(docSet, function() { + $.addClass(doc, 'fourchan-x', 'seaweedchan'); + if ($.engine) { + return $.addClass(doc, "ua-" + $.engine); + } + }); $.on(d, '4chanXInitFinished', function() { if (Main.expectInitFinished) { return delete Main.expectInitFinished; @@ -24687,9 +24696,6 @@ Main = (function() { Conf['QR Shortcut'] = true; Conf['Bottom QR Link'] = true; Conf['Toggleable Thread Watcher'] = true; - if ($.engine === 'gecko' && (typeof GM !== "undefined" && GM !== null)) { - Conf['Force Noscript Captcha for v1'] = false; - } ($.getSync || $.get)({ 'jsWhitelist': Conf['jsWhitelist'] }, function(arg) { @@ -24850,11 +24856,7 @@ Main = (function() { if ((ref = $('link[href*=mobile]', d.head)) != null) { ref.disabled = true; } - $.addClass(doc, 'fourchan-x', 'seaweedchan'); $.addClass(doc, g.VIEW === 'thread' ? 'thread-view' : g.VIEW); - if ($.engine) { - $.addClass(doc, "ua-" + $.engine); - } $.onExists(doc, '.ad-cnt, .adg-rects > .desktop', function(ad) { return $.onExists(ad, 'img, iframe', function() { return $.addClass(doc, 'ads-loaded'); diff --git a/builds/4chan-X-noupdate.crx b/builds/4chan-X-noupdate.crx index d6601cb0a..8259147a0 100644 Binary files a/builds/4chan-X-noupdate.crx and b/builds/4chan-X-noupdate.crx differ diff --git a/builds/4chan-X-noupdate.user.js b/builds/4chan-X-noupdate.user.js index 0440f3e0b..343943c57 100644 --- a/builds/4chan-X-noupdate.user.js +++ b/builds/4chan-X-noupdate.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X -// @version 1.13.14.8 +// @version 1.13.14.9 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X @@ -159,7 +159,7 @@ docSet = function() { }; g = { - VERSION: '1.13.14.8', + VERSION: '1.13.14.9', NAMESPACE: '4chan X.', boards: {} }; @@ -17136,7 +17136,7 @@ Keybinds = (function() { } break; case Conf['Open front page']: - $.open("/" + g.BOARD + "/"); + $.open(location.origin + "/" + g.BOARD + "/"); break; case Conf['Next page']: if (!(g.VIEW === 'index' && g.BOARD.ID !== 'f')) { @@ -21452,7 +21452,7 @@ QR = (function() { 'video/webm': 'webm' }, init: function() { - var noscript, sc, version; + var info, noscript, sc, version; if (!Conf['Quick Reply']) { return; } @@ -21460,7 +21460,7 @@ QR = (function() { if (g.VIEW === 'archive') { return; } - version = Conf[g.VIEW === 'thread' ? 'Use Recaptcha v1' : 'Use Recaptcha v1 on Index'] && (Main.jsEnabled || location.protocol === 'https:') ? (noscript = location.protocol === 'https:' && (Conf['Force Noscript Captcha for v1'] || !Main.jsEnabled), noscript ? 'noscript' : 'v1') : 'v2'; + version = Conf[g.VIEW === 'thread' ? 'Use Recaptcha v1' : 'Use Recaptcha v1 on Index'] && (Main.jsEnabled || location.protocol === 'https:') ? (noscript = location.protocol === 'https:' && (Conf['Force Noscript Captcha for v1'] || !Main.jsEnabled), (info = typeof GM !== "undefined" && GM !== null ? GM.info : void 0) && info.scriptHandler === 'Greasemonkey' && /^4\./.test(info.version) ? noscript = false : void 0, noscript ? 'noscript' : 'v1') : 'v2'; this.captcha = Captcha[version]; $.on(d, '4chanXInitFinished', function() { return BoardConfig.ready(QR.initReady); @@ -24641,6 +24641,15 @@ Main = (function() { if (location.hostname === 'boards.4chan.org' && d.documentElement && !d.doctype) { return; } + if (doc && $.hasClass(doc, 'fourchan-x')) { + return; + } + $.asap(docSet, function() { + $.addClass(doc, 'fourchan-x', 'seaweedchan'); + if ($.engine) { + return $.addClass(doc, "ua-" + $.engine); + } + }); $.on(d, '4chanXInitFinished', function() { if (Main.expectInitFinished) { return delete Main.expectInitFinished; @@ -24687,9 +24696,6 @@ Main = (function() { Conf['QR Shortcut'] = true; Conf['Bottom QR Link'] = true; Conf['Toggleable Thread Watcher'] = true; - if ($.engine === 'gecko' && (typeof GM !== "undefined" && GM !== null)) { - Conf['Force Noscript Captcha for v1'] = false; - } ($.getSync || $.get)({ 'jsWhitelist': Conf['jsWhitelist'] }, function(arg) { @@ -24850,11 +24856,7 @@ Main = (function() { if ((ref = $('link[href*=mobile]', d.head)) != null) { ref.disabled = true; } - $.addClass(doc, 'fourchan-x', 'seaweedchan'); $.addClass(doc, g.VIEW === 'thread' ? 'thread-view' : g.VIEW); - if ($.engine) { - $.addClass(doc, "ua-" + $.engine); - } $.onExists(doc, '.ad-cnt, .adg-rects > .desktop', function(ad) { return $.onExists(ad, 'img, iframe', function() { return $.addClass(doc, 'ads-loaded'); diff --git a/builds/4chan-X.crx b/builds/4chan-X.crx index 4076485cd..d101156e4 100644 Binary files a/builds/4chan-X.crx and b/builds/4chan-X.crx differ diff --git a/builds/4chan-X.meta.js b/builds/4chan-X.meta.js index d7106f8f9..9480e953b 100644 --- a/builds/4chan-X.meta.js +++ b/builds/4chan-X.meta.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X -// @version 1.13.14.8 +// @version 1.13.14.9 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X diff --git a/builds/4chan-X.user.js b/builds/4chan-X.user.js index 7d3a38868..d77aac912 100644 --- a/builds/4chan-X.user.js +++ b/builds/4chan-X.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X -// @version 1.13.14.8 +// @version 1.13.14.9 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X @@ -159,7 +159,7 @@ docSet = function() { }; g = { - VERSION: '1.13.14.8', + VERSION: '1.13.14.9', NAMESPACE: '4chan X.', boards: {} }; @@ -17136,7 +17136,7 @@ Keybinds = (function() { } break; case Conf['Open front page']: - $.open("/" + g.BOARD + "/"); + $.open(location.origin + "/" + g.BOARD + "/"); break; case Conf['Next page']: if (!(g.VIEW === 'index' && g.BOARD.ID !== 'f')) { @@ -21452,7 +21452,7 @@ QR = (function() { 'video/webm': 'webm' }, init: function() { - var noscript, sc, version; + var info, noscript, sc, version; if (!Conf['Quick Reply']) { return; } @@ -21460,7 +21460,7 @@ QR = (function() { if (g.VIEW === 'archive') { return; } - version = Conf[g.VIEW === 'thread' ? 'Use Recaptcha v1' : 'Use Recaptcha v1 on Index'] && (Main.jsEnabled || location.protocol === 'https:') ? (noscript = location.protocol === 'https:' && (Conf['Force Noscript Captcha for v1'] || !Main.jsEnabled), noscript ? 'noscript' : 'v1') : 'v2'; + version = Conf[g.VIEW === 'thread' ? 'Use Recaptcha v1' : 'Use Recaptcha v1 on Index'] && (Main.jsEnabled || location.protocol === 'https:') ? (noscript = location.protocol === 'https:' && (Conf['Force Noscript Captcha for v1'] || !Main.jsEnabled), (info = typeof GM !== "undefined" && GM !== null ? GM.info : void 0) && info.scriptHandler === 'Greasemonkey' && /^4\./.test(info.version) ? noscript = false : void 0, noscript ? 'noscript' : 'v1') : 'v2'; this.captcha = Captcha[version]; $.on(d, '4chanXInitFinished', function() { return BoardConfig.ready(QR.initReady); @@ -24641,6 +24641,15 @@ Main = (function() { if (location.hostname === 'boards.4chan.org' && d.documentElement && !d.doctype) { return; } + if (doc && $.hasClass(doc, 'fourchan-x')) { + return; + } + $.asap(docSet, function() { + $.addClass(doc, 'fourchan-x', 'seaweedchan'); + if ($.engine) { + return $.addClass(doc, "ua-" + $.engine); + } + }); $.on(d, '4chanXInitFinished', function() { if (Main.expectInitFinished) { return delete Main.expectInitFinished; @@ -24687,9 +24696,6 @@ Main = (function() { Conf['QR Shortcut'] = true; Conf['Bottom QR Link'] = true; Conf['Toggleable Thread Watcher'] = true; - if ($.engine === 'gecko' && (typeof GM !== "undefined" && GM !== null)) { - Conf['Force Noscript Captcha for v1'] = false; - } ($.getSync || $.get)({ 'jsWhitelist': Conf['jsWhitelist'] }, function(arg) { @@ -24850,11 +24856,7 @@ Main = (function() { if ((ref = $('link[href*=mobile]', d.head)) != null) { ref.disabled = true; } - $.addClass(doc, 'fourchan-x', 'seaweedchan'); $.addClass(doc, g.VIEW === 'thread' ? 'thread-view' : g.VIEW); - if ($.engine) { - $.addClass(doc, "ua-" + $.engine); - } $.onExists(doc, '.ad-cnt, .adg-rects > .desktop', function(ad) { return $.onExists(ad, 'img, iframe', function() { return $.addClass(doc, 'ads-loaded'); diff --git a/builds/4chan-X.zip b/builds/4chan-X.zip index 520ced05d..62b476ffd 100644 Binary files a/builds/4chan-X.zip and b/builds/4chan-X.zip differ diff --git a/builds/updates-beta.json b/builds/updates-beta.json index 670a61980..7d3cc704d 100644 --- a/builds/updates-beta.json +++ b/builds/updates-beta.json @@ -3,7 +3,7 @@ "4chan-x@4chan-x.net": { "updates": [ { - "version": "1.13.14.8", + "version": "1.13.14.9", "update_link": "https://www.4chan-x.net/builds/4chan-X-beta.crx" } ] diff --git a/builds/updates-beta.xml b/builds/updates-beta.xml index 79eedf3f2..6189d4569 100644 --- a/builds/updates-beta.xml +++ b/builds/updates-beta.xml @@ -1,7 +1,7 @@ - + diff --git a/builds/updates.json b/builds/updates.json index 6dcfc3598..adaa3ef2f 100644 --- a/builds/updates.json +++ b/builds/updates.json @@ -3,7 +3,7 @@ "4chan-x@4chan-x.net": { "updates": [ { - "version": "1.13.14.8", + "version": "1.13.14.9", "update_link": "https://www.4chan-x.net/builds/4chan-X.crx" } ] diff --git a/builds/updates.xml b/builds/updates.xml index d21d6369c..570e66840 100644 --- a/builds/updates.xml +++ b/builds/updates.xml @@ -1,7 +1,7 @@ - + diff --git a/version.json b/version.json index 7de1c3979..60b4c81f3 100644 --- a/version.json +++ b/version.json @@ -1,4 +1,4 @@ { - "version": "1.13.14.8", - "date": "2017-11-16T05:51:41.932Z" + "version": "1.13.14.9", + "date": "2017-11-17T23:03:05.833Z" } \ No newline at end of file