diff --git a/CHANGELOG.md b/CHANGELOG.md
index 481d33bd0..00d4d5d5f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,11 @@
### v1.14.14
+**v1.14.14.2** *(2019-09-12)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.14.2/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.14.2/builds/4chan-X-noupdate.crx)]
+- (saxamaphone69) CSS Fix for Post Jumper so it doesn't show up in catalog.
+- Improve accuracy of determining that comment is only a quote and thus captcha should not be opened yet. #2421, #2431
+- Fix image hover activating when mousing over expanded images on ota-ch.
+
**v1.14.14.1** *(2019-09-06)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.14.1/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.14.1/builds/4chan-X-noupdate.crx)]
- Merge v1.14.13.3: Move most of the pass message text to the wiki where we can let anyone edit it.
diff --git a/builds/4chan-X-beta.crx b/builds/4chan-X-beta.crx
index e3705b033..577b86f17 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 1f1fe8479..03f52cf31 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.14.14.1
+// @version 1.14.14.2
// @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 1b047a239..669980ea7 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.14.14.1
+// @version 1.14.14.2
// @minGMVer 1.14
// @minFFVer 26
// @namespace 4chan-X
@@ -211,7 +211,7 @@ docSet = function() {
};
g = {
- VERSION: '1.14.14.1',
+ VERSION: '1.14.14.2',
NAMESPACE: '4chan X.',
sites: Object.create(null),
boards: Object.create(null)
@@ -2252,8 +2252,7 @@ div[data-checked=\"false\"] > .suboption-list {\n\
.catalog-post > .postInfo > :not(.subject):not(.nameBlock):not(.dateTime),\n\
.catalog-post > .postInfo > .nameBlock > .contact-links,\n\
.catalog-post > * > * > .posteruid,\n\
-.catalog-post > * > * > .uniqueIDJumper,\n\
-.catalog-post > * > * > .capcodeJumper,\n\
+.catalog-post > * > * > .postJumper,\n\
:root.bottom-backlinks .catalog-post > .container,\n\
.post:not(.catalog-post) > .catalog-link,\n\
.post:not(.catalog-post) > .catalog-stats,\n\
@@ -7974,7 +7973,7 @@ SW = {};
return true;
},
isThumbExpanded: function(file) {
- return $.hasClass(file.thumb.parentNode, 'expanded');
+ return $.hasClass(file.thumb.parentNode, 'expanded') || file.thumb.parentNode.dataset.expanded === 'true';
},
isLinkified: function(link) {
return /\bnofollow\b/.test(link.rel);
@@ -23077,7 +23076,7 @@ Captcha = {};
return this.captchas.length;
},
neededRaw: function() {
- return !(this.haveCookie() || this.captchas.length || QR.req || this.submitCB) && (QR.posts.length > 1 || Conf['Auto-load captcha'] || /^\s*[^\s>]/m.test(QR.posts[0].com || '') || QR.posts[0].file);
+ return !(this.haveCookie() || this.captchas.length || QR.req || this.submitCB) && (QR.posts.length > 1 || Conf['Auto-load captcha'] || !QR.posts[0].isOnlyQuotes() || QR.posts[0].file);
},
needed: function() {
return this.neededRaw() && $.event('LoadCaptcha');
@@ -23089,7 +23088,7 @@ Captcha = {};
return $.queueTask((function(_this) {
return function() {
var isReply;
- if (!_this.prerequested && _this.neededRaw() && !$.event('LoadCaptcha') && !QR.captcha.occupied() && QR.cooldown.seconds <= 60 && QR.selected === QR.posts[QR.posts.length - 1] && /^\s*[^\s>]/m.test(QR.selected.com || '')) {
+ if (!_this.prerequested && _this.neededRaw() && !$.event('LoadCaptcha') && !QR.captcha.occupied() && QR.cooldown.seconds <= 60 && QR.selected === QR.posts[QR.posts.length - 1] && !QR.selected.isOnlyQuotes()) {
isReply = QR.selected.thread !== 'new';
if (!$.event('RequestCaptcha', {
isReply: isReply
@@ -24321,7 +24320,7 @@ QR = (function() {
}
},
quote: function(e) {
- var ancestor, base, caretPos, com, frag, i, insideCode, j, k, l, len, len1, len2, len3, n, node, o, post, postRange, range, ref, ref1, ref2, ref3, ref4, ref5, ref6, root, sel, text, thread;
+ var ancestor, base, caretPos, com, frag, i, insideCode, j, k, l, len, len1, len2, len3, n, node, o, post, postRange, range, ref, ref1, ref2, ref3, ref4, ref5, ref6, root, sel, text, thread, wasOnlyQuotes;
if (e != null) {
e.preventDefault();
}
@@ -24390,11 +24389,15 @@ QR = (function() {
if (!com.value) {
thread.value = Get.threadFromNode(this);
}
+ wasOnlyQuotes = QR.selected.isOnlyQuotes();
caretPos = com.selectionStart;
com.value = com.value.slice(0, caretPos) + text + com.value.slice(com.selectionEnd);
range = caretPos + text.length;
com.setSelectionRange(range, range);
com.focus();
+ if (wasOnlyQuotes) {
+ QR.selected.quotedText = com.value;
+ }
QR.selected.save(com);
return QR.selected.save(thread);
},
@@ -24798,6 +24801,7 @@ QR = (function() {
}
}
post = QR.posts[0];
+ delete post.quotedText;
post.forceSave();
threadID = post.thread;
thread = g.BOARD.threads.get(threadID);
@@ -25875,6 +25879,10 @@ QR = (function() {
return Captcha.cache.prerequest();
};
+ _Class.prototype.isOnlyQuotes = function() {
+ return (this.com || '').trim() === (this.quotedText || '').trim();
+ };
+
_Class.rmErrored = function(e) {
var error, errors, i, j, len, post, ref;
e.stopPropagation();
diff --git a/builds/4chan-X-noupdate.crx b/builds/4chan-X-noupdate.crx
index 4e320a259..6f2db8992 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 024c4db90..90c7894ac 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.14.14.1
+// @version 1.14.14.2
// @minGMVer 1.14
// @minFFVer 26
// @namespace 4chan-X
@@ -211,7 +211,7 @@ docSet = function() {
};
g = {
- VERSION: '1.14.14.1',
+ VERSION: '1.14.14.2',
NAMESPACE: '4chan X.',
sites: Object.create(null),
boards: Object.create(null)
@@ -2252,8 +2252,7 @@ div[data-checked=\"false\"] > .suboption-list {\n\
.catalog-post > .postInfo > :not(.subject):not(.nameBlock):not(.dateTime),\n\
.catalog-post > .postInfo > .nameBlock > .contact-links,\n\
.catalog-post > * > * > .posteruid,\n\
-.catalog-post > * > * > .uniqueIDJumper,\n\
-.catalog-post > * > * > .capcodeJumper,\n\
+.catalog-post > * > * > .postJumper,\n\
:root.bottom-backlinks .catalog-post > .container,\n\
.post:not(.catalog-post) > .catalog-link,\n\
.post:not(.catalog-post) > .catalog-stats,\n\
@@ -7974,7 +7973,7 @@ SW = {};
return true;
},
isThumbExpanded: function(file) {
- return $.hasClass(file.thumb.parentNode, 'expanded');
+ return $.hasClass(file.thumb.parentNode, 'expanded') || file.thumb.parentNode.dataset.expanded === 'true';
},
isLinkified: function(link) {
return /\bnofollow\b/.test(link.rel);
@@ -23077,7 +23076,7 @@ Captcha = {};
return this.captchas.length;
},
neededRaw: function() {
- return !(this.haveCookie() || this.captchas.length || QR.req || this.submitCB) && (QR.posts.length > 1 || Conf['Auto-load captcha'] || /^\s*[^\s>]/m.test(QR.posts[0].com || '') || QR.posts[0].file);
+ return !(this.haveCookie() || this.captchas.length || QR.req || this.submitCB) && (QR.posts.length > 1 || Conf['Auto-load captcha'] || !QR.posts[0].isOnlyQuotes() || QR.posts[0].file);
},
needed: function() {
return this.neededRaw() && $.event('LoadCaptcha');
@@ -23089,7 +23088,7 @@ Captcha = {};
return $.queueTask((function(_this) {
return function() {
var isReply;
- if (!_this.prerequested && _this.neededRaw() && !$.event('LoadCaptcha') && !QR.captcha.occupied() && QR.cooldown.seconds <= 60 && QR.selected === QR.posts[QR.posts.length - 1] && /^\s*[^\s>]/m.test(QR.selected.com || '')) {
+ if (!_this.prerequested && _this.neededRaw() && !$.event('LoadCaptcha') && !QR.captcha.occupied() && QR.cooldown.seconds <= 60 && QR.selected === QR.posts[QR.posts.length - 1] && !QR.selected.isOnlyQuotes()) {
isReply = QR.selected.thread !== 'new';
if (!$.event('RequestCaptcha', {
isReply: isReply
@@ -24321,7 +24320,7 @@ QR = (function() {
}
},
quote: function(e) {
- var ancestor, base, caretPos, com, frag, i, insideCode, j, k, l, len, len1, len2, len3, n, node, o, post, postRange, range, ref, ref1, ref2, ref3, ref4, ref5, ref6, root, sel, text, thread;
+ var ancestor, base, caretPos, com, frag, i, insideCode, j, k, l, len, len1, len2, len3, n, node, o, post, postRange, range, ref, ref1, ref2, ref3, ref4, ref5, ref6, root, sel, text, thread, wasOnlyQuotes;
if (e != null) {
e.preventDefault();
}
@@ -24390,11 +24389,15 @@ QR = (function() {
if (!com.value) {
thread.value = Get.threadFromNode(this);
}
+ wasOnlyQuotes = QR.selected.isOnlyQuotes();
caretPos = com.selectionStart;
com.value = com.value.slice(0, caretPos) + text + com.value.slice(com.selectionEnd);
range = caretPos + text.length;
com.setSelectionRange(range, range);
com.focus();
+ if (wasOnlyQuotes) {
+ QR.selected.quotedText = com.value;
+ }
QR.selected.save(com);
return QR.selected.save(thread);
},
@@ -24798,6 +24801,7 @@ QR = (function() {
}
}
post = QR.posts[0];
+ delete post.quotedText;
post.forceSave();
threadID = post.thread;
thread = g.BOARD.threads.get(threadID);
@@ -25875,6 +25879,10 @@ QR = (function() {
return Captcha.cache.prerequest();
};
+ _Class.prototype.isOnlyQuotes = function() {
+ return (this.com || '').trim() === (this.quotedText || '').trim();
+ };
+
_Class.rmErrored = function(e) {
var error, errors, i, j, len, post, ref;
e.stopPropagation();
diff --git a/builds/4chan-X.crx b/builds/4chan-X.crx
index a90ab3835..c6fce4bcd 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 df41fb501..300e9f8c5 100644
--- a/builds/4chan-X.meta.js
+++ b/builds/4chan-X.meta.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 4chan X
-// @version 1.14.14.1
+// @version 1.14.14.2
// @minGMVer 1.14
// @minFFVer 26
// @namespace 4chan-X
diff --git a/builds/4chan-X.user.js b/builds/4chan-X.user.js
index eca6d3c88..ffbd87a06 100644
--- a/builds/4chan-X.user.js
+++ b/builds/4chan-X.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 4chan X
-// @version 1.14.14.1
+// @version 1.14.14.2
// @minGMVer 1.14
// @minFFVer 26
// @namespace 4chan-X
@@ -211,7 +211,7 @@ docSet = function() {
};
g = {
- VERSION: '1.14.14.1',
+ VERSION: '1.14.14.2',
NAMESPACE: '4chan X.',
sites: Object.create(null),
boards: Object.create(null)
@@ -2252,8 +2252,7 @@ div[data-checked=\"false\"] > .suboption-list {\n\
.catalog-post > .postInfo > :not(.subject):not(.nameBlock):not(.dateTime),\n\
.catalog-post > .postInfo > .nameBlock > .contact-links,\n\
.catalog-post > * > * > .posteruid,\n\
-.catalog-post > * > * > .uniqueIDJumper,\n\
-.catalog-post > * > * > .capcodeJumper,\n\
+.catalog-post > * > * > .postJumper,\n\
:root.bottom-backlinks .catalog-post > .container,\n\
.post:not(.catalog-post) > .catalog-link,\n\
.post:not(.catalog-post) > .catalog-stats,\n\
@@ -7974,7 +7973,7 @@ SW = {};
return true;
},
isThumbExpanded: function(file) {
- return $.hasClass(file.thumb.parentNode, 'expanded');
+ return $.hasClass(file.thumb.parentNode, 'expanded') || file.thumb.parentNode.dataset.expanded === 'true';
},
isLinkified: function(link) {
return /\bnofollow\b/.test(link.rel);
@@ -23077,7 +23076,7 @@ Captcha = {};
return this.captchas.length;
},
neededRaw: function() {
- return !(this.haveCookie() || this.captchas.length || QR.req || this.submitCB) && (QR.posts.length > 1 || Conf['Auto-load captcha'] || /^\s*[^\s>]/m.test(QR.posts[0].com || '') || QR.posts[0].file);
+ return !(this.haveCookie() || this.captchas.length || QR.req || this.submitCB) && (QR.posts.length > 1 || Conf['Auto-load captcha'] || !QR.posts[0].isOnlyQuotes() || QR.posts[0].file);
},
needed: function() {
return this.neededRaw() && $.event('LoadCaptcha');
@@ -23089,7 +23088,7 @@ Captcha = {};
return $.queueTask((function(_this) {
return function() {
var isReply;
- if (!_this.prerequested && _this.neededRaw() && !$.event('LoadCaptcha') && !QR.captcha.occupied() && QR.cooldown.seconds <= 60 && QR.selected === QR.posts[QR.posts.length - 1] && /^\s*[^\s>]/m.test(QR.selected.com || '')) {
+ if (!_this.prerequested && _this.neededRaw() && !$.event('LoadCaptcha') && !QR.captcha.occupied() && QR.cooldown.seconds <= 60 && QR.selected === QR.posts[QR.posts.length - 1] && !QR.selected.isOnlyQuotes()) {
isReply = QR.selected.thread !== 'new';
if (!$.event('RequestCaptcha', {
isReply: isReply
@@ -24321,7 +24320,7 @@ QR = (function() {
}
},
quote: function(e) {
- var ancestor, base, caretPos, com, frag, i, insideCode, j, k, l, len, len1, len2, len3, n, node, o, post, postRange, range, ref, ref1, ref2, ref3, ref4, ref5, ref6, root, sel, text, thread;
+ var ancestor, base, caretPos, com, frag, i, insideCode, j, k, l, len, len1, len2, len3, n, node, o, post, postRange, range, ref, ref1, ref2, ref3, ref4, ref5, ref6, root, sel, text, thread, wasOnlyQuotes;
if (e != null) {
e.preventDefault();
}
@@ -24390,11 +24389,15 @@ QR = (function() {
if (!com.value) {
thread.value = Get.threadFromNode(this);
}
+ wasOnlyQuotes = QR.selected.isOnlyQuotes();
caretPos = com.selectionStart;
com.value = com.value.slice(0, caretPos) + text + com.value.slice(com.selectionEnd);
range = caretPos + text.length;
com.setSelectionRange(range, range);
com.focus();
+ if (wasOnlyQuotes) {
+ QR.selected.quotedText = com.value;
+ }
QR.selected.save(com);
return QR.selected.save(thread);
},
@@ -24798,6 +24801,7 @@ QR = (function() {
}
}
post = QR.posts[0];
+ delete post.quotedText;
post.forceSave();
threadID = post.thread;
thread = g.BOARD.threads.get(threadID);
@@ -25875,6 +25879,10 @@ QR = (function() {
return Captcha.cache.prerequest();
};
+ _Class.prototype.isOnlyQuotes = function() {
+ return (this.com || '').trim() === (this.quotedText || '').trim();
+ };
+
_Class.rmErrored = function(e) {
var error, errors, i, j, len, post, ref;
e.stopPropagation();
diff --git a/builds/4chan-X.zip b/builds/4chan-X.zip
index e2c7e07c3..bd73789ef 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 d41f58952..37a891510 100644
--- a/builds/updates-beta.json
+++ b/builds/updates-beta.json
@@ -3,7 +3,7 @@
"4chan-x@4chan-x.net": {
"updates": [
{
- "version": "1.14.14.1",
+ "version": "1.14.14.2",
"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 f20271723..072fd0ea6 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 061d2537e..8b6eb7a12 100644
--- a/builds/updates.json
+++ b/builds/updates.json
@@ -3,7 +3,7 @@
"4chan-x@4chan-x.net": {
"updates": [
{
- "version": "1.14.14.1",
+ "version": "1.14.14.2",
"update_link": "https://www.4chan-x.net/builds/4chan-X.crx"
}
]
diff --git a/builds/updates.xml b/builds/updates.xml
index 9fbf032e1..45ef4e768 100644
--- a/builds/updates.xml
+++ b/builds/updates.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/version.json b/version.json
index 28c7e5133..8a59c123a 100644
--- a/version.json
+++ b/version.json
@@ -1,4 +1,4 @@
{
- "version": "1.14.14.1",
- "date": "2019-09-06T05:36:09.749Z"
+ "version": "1.14.14.2",
+ "date": "2019-09-12T04:27:54.601Z"
}
\ No newline at end of file