diff --git a/CHANGELOG.md b/CHANGELOG.md index 67b41dc65..b82727558 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,9 @@ The links to individual versions below are to copies of the script with the upda ### v1.10.11 +**v1.10.11.4** *(2015-04-26)* - [[Firefox](https://raw.githubusercontent.com/ccd0/4chan-x/1.10.11.4/builds/4chan-X-noupdate.user.js "Firefox version")] [[Chromium](https://raw.githubusercontent.com/ccd0/4chan-x/1.10.11.4/builds/4chan-X-noupdate.crx "Chromium version")] +- Don't apply filters to the unread post count in the thread watcher, but do apply them to unread posts quoting you. + **v1.10.11.3** *(2015-04-26)* - [[Firefox](https://raw.githubusercontent.com/ccd0/4chan-x/1.10.11.3/builds/4chan-X-noupdate.user.js "Firefox version")] [[Chromium](https://raw.githubusercontent.com/ccd0/4chan-x/1.10.11.3/builds/4chan-X-noupdate.crx "Chromium version")] - Merge v1.10.10.4: Possible fix for bug causing scrolling to the top of the page upon loading image captcha. diff --git a/builds/4chan-X-beta.crx b/builds/4chan-X-beta.crx index ec9fcd4e7..8405170a1 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 7ab5dc72d..1ba075942 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.10.11.3 +// @version 1.10.11.4 // @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 4c616b562..3d6be2aa4 100644 --- a/builds/4chan-X-beta.user.js +++ b/builds/4chan-X-beta.user.js @@ -1,7 +1,7 @@ // Generated by CoffeeScript // ==UserScript== // @name 4chan X beta -// @version 1.10.11.3 +// @version 1.10.11.4 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X @@ -396,7 +396,7 @@ doc = d.documentElement; g = { - VERSION: '1.10.11.3', + VERSION: '1.10.11.4', NAMESPACE: '4chan X.', boards: {} }; @@ -12793,7 +12793,7 @@ }); }, parseStatus: function(arg) { - var boardID, data, fetchCount, isDead, k, lastReadPost, len1, match, postObj, quotingYou, ref, ref1, regexp, status, threadID, unread; + var boardID, data, fetchCount, isDead, k, lastReadPost, len1, match, postObj, quotesYou, quotingYou, ref, ref1, regexp, status, threadID, unread; boardID = arg.boardID, threadID = arg.threadID, data = arg.data; fetchCount = ThreadWatcher.fetchCount; fetchCount.fetched++; @@ -12835,13 +12835,11 @@ }) : void 0) { continue; } - if (Filter.isHidden(Build.parseJSON(postObj, boardID))) { - continue; - } unread++; if (!(QR.db && postObj.com)) { continue; } + quotesYou = false; regexp = /]*\bhref="(?:\/([^\/]+)\/thread\/(\d+))?(?:#p(\d+))?"/g; while (match = regexp.exec(postObj.com)) { if (QR.db.get({ @@ -12849,10 +12847,13 @@ threadID: match[2] || threadID, postID: match[3] || match[2] || threadID })) { - quotingYou++; - continue; + quotesYou = true; + break; } } + if (quotesYou && !Filter.isHidden(Build.parseJSON(postObj, boardID))) { + quotingYou++; + } } if (isDead !== data.isDead || unread !== data.unread || quotingYou !== data.quotingYou) { data.isDead = isDead; @@ -13422,6 +13423,9 @@ }, read: $.debounce(100, function(e) { var ID, count, data, height, ref, ref1, root; + if (!Unread.posts.size && Unread.readCount !== Unread.thread.posts.keys.length) { + Unread.saveLastReadPost(); + } if (d.hidden || !Unread.posts.size) { return; } diff --git a/builds/4chan-X-noupdate.crx b/builds/4chan-X-noupdate.crx index fdc9ccf9f..462f0ac02 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 4950bc5b0..fc4f3d00d 100644 --- a/builds/4chan-X-noupdate.user.js +++ b/builds/4chan-X-noupdate.user.js @@ -1,7 +1,7 @@ // Generated by CoffeeScript // ==UserScript== // @name 4chan X -// @version 1.10.11.3 +// @version 1.10.11.4 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X @@ -395,7 +395,7 @@ doc = d.documentElement; g = { - VERSION: '1.10.11.3', + VERSION: '1.10.11.4', NAMESPACE: '4chan X.', boards: {} }; @@ -12792,7 +12792,7 @@ }); }, parseStatus: function(arg) { - var boardID, data, fetchCount, isDead, k, lastReadPost, len1, match, postObj, quotingYou, ref, ref1, regexp, status, threadID, unread; + var boardID, data, fetchCount, isDead, k, lastReadPost, len1, match, postObj, quotesYou, quotingYou, ref, ref1, regexp, status, threadID, unread; boardID = arg.boardID, threadID = arg.threadID, data = arg.data; fetchCount = ThreadWatcher.fetchCount; fetchCount.fetched++; @@ -12834,13 +12834,11 @@ }) : void 0) { continue; } - if (Filter.isHidden(Build.parseJSON(postObj, boardID))) { - continue; - } unread++; if (!(QR.db && postObj.com)) { continue; } + quotesYou = false; regexp = /]*\bhref="(?:\/([^\/]+)\/thread\/(\d+))?(?:#p(\d+))?"/g; while (match = regexp.exec(postObj.com)) { if (QR.db.get({ @@ -12848,10 +12846,13 @@ threadID: match[2] || threadID, postID: match[3] || match[2] || threadID })) { - quotingYou++; - continue; + quotesYou = true; + break; } } + if (quotesYou && !Filter.isHidden(Build.parseJSON(postObj, boardID))) { + quotingYou++; + } } if (isDead !== data.isDead || unread !== data.unread || quotingYou !== data.quotingYou) { data.isDead = isDead; @@ -13421,6 +13422,9 @@ }, read: $.debounce(100, function(e) { var ID, count, data, height, ref, ref1, root; + if (!Unread.posts.size && Unread.readCount !== Unread.thread.posts.keys.length) { + Unread.saveLastReadPost(); + } if (d.hidden || !Unread.posts.size) { return; } diff --git a/builds/4chan-X.crx b/builds/4chan-X.crx index 0d8c0feb4..2390f2013 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 334edb5d5..7c8f54eeb 100644 --- a/builds/4chan-X.meta.js +++ b/builds/4chan-X.meta.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X -// @version 1.10.11.3 +// @version 1.10.11.4 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X diff --git a/builds/4chan-X.user.js b/builds/4chan-X.user.js index 25e1b52a7..5d2ad6587 100644 --- a/builds/4chan-X.user.js +++ b/builds/4chan-X.user.js @@ -1,7 +1,7 @@ // Generated by CoffeeScript // ==UserScript== // @name 4chan X -// @version 1.10.11.3 +// @version 1.10.11.4 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X @@ -396,7 +396,7 @@ doc = d.documentElement; g = { - VERSION: '1.10.11.3', + VERSION: '1.10.11.4', NAMESPACE: '4chan X.', boards: {} }; @@ -12793,7 +12793,7 @@ }); }, parseStatus: function(arg) { - var boardID, data, fetchCount, isDead, k, lastReadPost, len1, match, postObj, quotingYou, ref, ref1, regexp, status, threadID, unread; + var boardID, data, fetchCount, isDead, k, lastReadPost, len1, match, postObj, quotesYou, quotingYou, ref, ref1, regexp, status, threadID, unread; boardID = arg.boardID, threadID = arg.threadID, data = arg.data; fetchCount = ThreadWatcher.fetchCount; fetchCount.fetched++; @@ -12835,13 +12835,11 @@ }) : void 0) { continue; } - if (Filter.isHidden(Build.parseJSON(postObj, boardID))) { - continue; - } unread++; if (!(QR.db && postObj.com)) { continue; } + quotesYou = false; regexp = /]*\bhref="(?:\/([^\/]+)\/thread\/(\d+))?(?:#p(\d+))?"/g; while (match = regexp.exec(postObj.com)) { if (QR.db.get({ @@ -12849,10 +12847,13 @@ threadID: match[2] || threadID, postID: match[3] || match[2] || threadID })) { - quotingYou++; - continue; + quotesYou = true; + break; } } + if (quotesYou && !Filter.isHidden(Build.parseJSON(postObj, boardID))) { + quotingYou++; + } } if (isDead !== data.isDead || unread !== data.unread || quotingYou !== data.quotingYou) { data.isDead = isDead; @@ -13422,6 +13423,9 @@ }, read: $.debounce(100, function(e) { var ID, count, data, height, ref, ref1, root; + if (!Unread.posts.size && Unread.readCount !== Unread.thread.posts.keys.length) { + Unread.saveLastReadPost(); + } if (d.hidden || !Unread.posts.size) { return; } diff --git a/builds/4chan-X.zip b/builds/4chan-X.zip index 1b1754fd6..ef64148f0 100644 Binary files a/builds/4chan-X.zip and b/builds/4chan-X.zip differ diff --git a/builds/updates-beta.xml b/builds/updates-beta.xml index eb0af3291..0a938e2f0 100644 --- a/builds/updates-beta.xml +++ b/builds/updates-beta.xml @@ -1,7 +1,7 @@ - + diff --git a/builds/updates.xml b/builds/updates.xml index ee3a16b42..aea0e1f5c 100644 --- a/builds/updates.xml +++ b/builds/updates.xml @@ -1,7 +1,7 @@ - + diff --git a/package.json b/package.json index 736377ec1..7bd98c327 100755 --- a/package.json +++ b/package.json @@ -3,8 +3,8 @@ "description": "Cross-browser userscript for maximum lurking on 4chan.", "meta": { "name": "4chan X", - "version": "1.10.11.3", - "date": "2015-04-26T10:47:01.655Z", + "version": "1.10.11.4", + "date": "2015-04-26T18:27:45.404Z", "repo": "https://github.com/ccd0/4chan-x/", "page": "https://github.com/ccd0/4chan-x", "downloads": "https://ccd0.github.io/4chan-x/builds/",