Release 4chan X v1.14.12.4.

This commit is contained in:
ccd0 2019-08-11 12:47:07 -07:00
parent 7aa3a56e37
commit b2405d88a7
15 changed files with 68 additions and 50 deletions

View File

@ -4,6 +4,9 @@
### v1.14.12 ### v1.14.12
**v1.14.12.4** *(2019-08-11)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.12.4/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.12.4/builds/4chan-X-noupdate.crx)]
- Move prefetch toggle from header menu to shortcut icons and make the option show up by default.
**v1.14.12.3** *(2019-08-09)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.12.3/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.12.3/builds/4chan-X-noupdate.crx)] **v1.14.12.3** *(2019-08-09)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.12.3/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.12.3/builds/4chan-X-noupdate.crx)]
- Merge v1.14.11.4: Assume Chrome is broken by default. #2378 - Merge v1.14.11.4: Assume Chrome is broken by default. #2378

Binary file not shown.

View File

@ -1,6 +1,6 @@
// ==UserScript== // ==UserScript==
// @name 4chan X beta // @name 4chan X beta
// @version 1.14.12.3 // @version 1.14.12.4
// @minGMVer 1.14 // @minGMVer 1.14
// @minFFVer 26 // @minFFVer 26
// @namespace 4chan-X // @namespace 4chan-X

View File

@ -1,6 +1,6 @@
// ==UserScript== // ==UserScript==
// @name 4chan X beta // @name 4chan X beta
// @version 1.14.12.3 // @version 1.14.12.4
// @minGMVer 1.14 // @minGMVer 1.14
// @minFFVer 26 // @minFFVer 26
// @namespace 4chan-X // @namespace 4chan-X
@ -199,7 +199,7 @@ docSet = function() {
}; };
g = { g = {
VERSION: '1.14.12.3', VERSION: '1.14.12.4',
NAMESPACE: '4chan X.', NAMESPACE: '4chan X.',
sites: Object.create(null), sites: Object.create(null),
boards: Object.create(null) boards: Object.create(null)
@ -307,7 +307,7 @@ Config = (function() {
'Replace JPG': [false, 'Replace jpg thumbnails with the actual image.'], 'Replace JPG': [false, 'Replace jpg thumbnails with the actual image.'],
'Replace PNG': [false, 'Replace png thumbnails with the actual image.'], 'Replace PNG': [false, 'Replace png thumbnails with the actual image.'],
'Replace WEBM': [false, 'Replace webm and mp4 thumbnails with the actual video. Probably will degrade browser performance ;)'], 'Replace WEBM': [false, 'Replace webm and mp4 thumbnails with the actual video. Probably will degrade browser performance ;)'],
'Image Prefetching': [false, 'Add link in header menu to turn on image preloading.'], 'Image Prefetching': [true, 'Add a shortcut icon to the header to turn on image preloading.'],
'Fappe Tyme': [true, 'Hide posts without images when header menu item is checked. *hint* *hint*'], 'Fappe Tyme': [true, 'Hide posts without images when header menu item is checked. *hint* *hint*'],
'Werk Tyme': [true, 'Hide all post images when header menu item is checked.'], 'Werk Tyme': [true, 'Hide all post images when header menu item is checked.'],
'Autoplay': [true, 'Videos begin playing immediately when opened.'], 'Autoplay': [true, 'Videos begin playing immediately when opened.'],
@ -15611,11 +15611,11 @@ ImageLoader = (function() {
ImageLoader = { ImageLoader = {
init: function() { init: function() {
var prefetch, ref, ref1; var el, ref, ref1, replace;
if ((ref = g.VIEW) !== 'index' && ref !== 'thread' && ref !== 'archive') { if ((ref = g.VIEW) !== 'index' && ref !== 'thread' && ref !== 'archive') {
return; return;
} }
if (!(Conf['Image Prefetching'] || Conf['Replace JPG'] || Conf['Replace PNG'] || Conf['Replace GIF'] || Conf['Replace WEBM'])) { if (!(Conf['Image Prefetching'] || (replace = Conf['Replace JPG'] || Conf['Replace PNG'] || Conf['Replace GIF'] || Conf['Replace WEBM']))) {
return; return;
} }
Callbacks.Post.push({ Callbacks.Post.push({
@ -15623,7 +15623,9 @@ ImageLoader = (function() {
cb: this.node cb: this.node
}); });
$.on(d, 'PostsInserted', function() { $.on(d, 'PostsInserted', function() {
return g.posts.forEach(ImageLoader.prefetchAll); if (ImageLoader.prefetchEnabled || replace) {
return g.posts.forEach(ImageLoader.prefetchAll);
}
}); });
if (Conf['Replace WEBM']) { if (Conf['Replace WEBM']) {
$.on(d, 'scroll visibilitychange 4chanXInitFinished PostsInserted', this.playVideos); $.on(d, 'scroll visibilitychange 4chanXInitFinished PostsInserted', this.playVideos);
@ -15631,13 +15633,14 @@ ImageLoader = (function() {
if (!(Conf['Image Prefetching'] && ((ref1 = g.VIEW) === 'index' || ref1 === 'thread'))) { if (!(Conf['Image Prefetching'] && ((ref1 = g.VIEW) === 'index' || ref1 === 'thread'))) {
return; return;
} }
prefetch = $.el('label', {innerHTML: "<input type=\"checkbox\" name=\"prefetch\"> Prefetch Images"}); el = $.el('a', {
this.el = prefetch.firstElementChild; href: 'javascript:;',
$.on(this.el, 'change', this.toggle); title: 'Prefetch Images',
return Header.menu.addEntry({ className: 'fa fa-bolt disabled',
el: prefetch, textContent: 'Prefetch'
order: 98
}); });
$.on(el, 'click', this.toggle);
return Header.addShortcut('gallery', el, 525);
}, },
node: function() { node: function() {
var file, i, len, ref; var file, i, len, ref;
@ -15691,7 +15694,7 @@ ImageLoader = (function() {
} }
} }
replace = Conf["Replace " + type] && !/spoiler/.test(thumb.src || thumb.dataset.src); replace = Conf["Replace " + type] && !/spoiler/.test(thumb.src || thumb.dataset.src);
if (!(replace || Conf['prefetch'])) { if (!(replace || ImageLoader.prefetchEnabled)) {
return; return;
} }
if ($.hasClass(doc, 'catalog-mode')) { if ($.hasClass(doc, 'catalog-mode')) {
@ -15740,7 +15743,9 @@ ImageLoader = (function() {
} }
}, },
toggle: function() { toggle: function() {
if (Conf['prefetch'] = this.checked) { ImageLoader.prefetchEnabled = !ImageLoader.prefetchEnabled;
this.classList.toggle('disabled', !ImageLoader.prefetchEnabled);
if (ImageLoader.prefetchEnabled) {
g.posts.forEach(ImageLoader.prefetchAll); g.posts.forEach(ImageLoader.prefetchAll);
} }
}, },

Binary file not shown.

View File

@ -1,6 +1,6 @@
// ==UserScript== // ==UserScript==
// @name 4chan X // @name 4chan X
// @version 1.14.12.3 // @version 1.14.12.4
// @minGMVer 1.14 // @minGMVer 1.14
// @minFFVer 26 // @minFFVer 26
// @namespace 4chan-X // @namespace 4chan-X
@ -199,7 +199,7 @@ docSet = function() {
}; };
g = { g = {
VERSION: '1.14.12.3', VERSION: '1.14.12.4',
NAMESPACE: '4chan X.', NAMESPACE: '4chan X.',
sites: Object.create(null), sites: Object.create(null),
boards: Object.create(null) boards: Object.create(null)
@ -307,7 +307,7 @@ Config = (function() {
'Replace JPG': [false, 'Replace jpg thumbnails with the actual image.'], 'Replace JPG': [false, 'Replace jpg thumbnails with the actual image.'],
'Replace PNG': [false, 'Replace png thumbnails with the actual image.'], 'Replace PNG': [false, 'Replace png thumbnails with the actual image.'],
'Replace WEBM': [false, 'Replace webm and mp4 thumbnails with the actual video. Probably will degrade browser performance ;)'], 'Replace WEBM': [false, 'Replace webm and mp4 thumbnails with the actual video. Probably will degrade browser performance ;)'],
'Image Prefetching': [false, 'Add link in header menu to turn on image preloading.'], 'Image Prefetching': [true, 'Add a shortcut icon to the header to turn on image preloading.'],
'Fappe Tyme': [true, 'Hide posts without images when header menu item is checked. *hint* *hint*'], 'Fappe Tyme': [true, 'Hide posts without images when header menu item is checked. *hint* *hint*'],
'Werk Tyme': [true, 'Hide all post images when header menu item is checked.'], 'Werk Tyme': [true, 'Hide all post images when header menu item is checked.'],
'Autoplay': [true, 'Videos begin playing immediately when opened.'], 'Autoplay': [true, 'Videos begin playing immediately when opened.'],
@ -15611,11 +15611,11 @@ ImageLoader = (function() {
ImageLoader = { ImageLoader = {
init: function() { init: function() {
var prefetch, ref, ref1; var el, ref, ref1, replace;
if ((ref = g.VIEW) !== 'index' && ref !== 'thread' && ref !== 'archive') { if ((ref = g.VIEW) !== 'index' && ref !== 'thread' && ref !== 'archive') {
return; return;
} }
if (!(Conf['Image Prefetching'] || Conf['Replace JPG'] || Conf['Replace PNG'] || Conf['Replace GIF'] || Conf['Replace WEBM'])) { if (!(Conf['Image Prefetching'] || (replace = Conf['Replace JPG'] || Conf['Replace PNG'] || Conf['Replace GIF'] || Conf['Replace WEBM']))) {
return; return;
} }
Callbacks.Post.push({ Callbacks.Post.push({
@ -15623,7 +15623,9 @@ ImageLoader = (function() {
cb: this.node cb: this.node
}); });
$.on(d, 'PostsInserted', function() { $.on(d, 'PostsInserted', function() {
return g.posts.forEach(ImageLoader.prefetchAll); if (ImageLoader.prefetchEnabled || replace) {
return g.posts.forEach(ImageLoader.prefetchAll);
}
}); });
if (Conf['Replace WEBM']) { if (Conf['Replace WEBM']) {
$.on(d, 'scroll visibilitychange 4chanXInitFinished PostsInserted', this.playVideos); $.on(d, 'scroll visibilitychange 4chanXInitFinished PostsInserted', this.playVideos);
@ -15631,13 +15633,14 @@ ImageLoader = (function() {
if (!(Conf['Image Prefetching'] && ((ref1 = g.VIEW) === 'index' || ref1 === 'thread'))) { if (!(Conf['Image Prefetching'] && ((ref1 = g.VIEW) === 'index' || ref1 === 'thread'))) {
return; return;
} }
prefetch = $.el('label', {innerHTML: "<input type=\"checkbox\" name=\"prefetch\"> Prefetch Images"}); el = $.el('a', {
this.el = prefetch.firstElementChild; href: 'javascript:;',
$.on(this.el, 'change', this.toggle); title: 'Prefetch Images',
return Header.menu.addEntry({ className: 'fa fa-bolt disabled',
el: prefetch, textContent: 'Prefetch'
order: 98
}); });
$.on(el, 'click', this.toggle);
return Header.addShortcut('gallery', el, 525);
}, },
node: function() { node: function() {
var file, i, len, ref; var file, i, len, ref;
@ -15691,7 +15694,7 @@ ImageLoader = (function() {
} }
} }
replace = Conf["Replace " + type] && !/spoiler/.test(thumb.src || thumb.dataset.src); replace = Conf["Replace " + type] && !/spoiler/.test(thumb.src || thumb.dataset.src);
if (!(replace || Conf['prefetch'])) { if (!(replace || ImageLoader.prefetchEnabled)) {
return; return;
} }
if ($.hasClass(doc, 'catalog-mode')) { if ($.hasClass(doc, 'catalog-mode')) {
@ -15740,7 +15743,9 @@ ImageLoader = (function() {
} }
}, },
toggle: function() { toggle: function() {
if (Conf['prefetch'] = this.checked) { ImageLoader.prefetchEnabled = !ImageLoader.prefetchEnabled;
this.classList.toggle('disabled', !ImageLoader.prefetchEnabled);
if (ImageLoader.prefetchEnabled) {
g.posts.forEach(ImageLoader.prefetchAll); g.posts.forEach(ImageLoader.prefetchAll);
} }
}, },

Binary file not shown.

View File

@ -1,6 +1,6 @@
// ==UserScript== // ==UserScript==
// @name 4chan X // @name 4chan X
// @version 1.14.12.3 // @version 1.14.12.4
// @minGMVer 1.14 // @minGMVer 1.14
// @minFFVer 26 // @minFFVer 26
// @namespace 4chan-X // @namespace 4chan-X

View File

@ -1,6 +1,6 @@
// ==UserScript== // ==UserScript==
// @name 4chan X // @name 4chan X
// @version 1.14.12.3 // @version 1.14.12.4
// @minGMVer 1.14 // @minGMVer 1.14
// @minFFVer 26 // @minFFVer 26
// @namespace 4chan-X // @namespace 4chan-X
@ -199,7 +199,7 @@ docSet = function() {
}; };
g = { g = {
VERSION: '1.14.12.3', VERSION: '1.14.12.4',
NAMESPACE: '4chan X.', NAMESPACE: '4chan X.',
sites: Object.create(null), sites: Object.create(null),
boards: Object.create(null) boards: Object.create(null)
@ -307,7 +307,7 @@ Config = (function() {
'Replace JPG': [false, 'Replace jpg thumbnails with the actual image.'], 'Replace JPG': [false, 'Replace jpg thumbnails with the actual image.'],
'Replace PNG': [false, 'Replace png thumbnails with the actual image.'], 'Replace PNG': [false, 'Replace png thumbnails with the actual image.'],
'Replace WEBM': [false, 'Replace webm and mp4 thumbnails with the actual video. Probably will degrade browser performance ;)'], 'Replace WEBM': [false, 'Replace webm and mp4 thumbnails with the actual video. Probably will degrade browser performance ;)'],
'Image Prefetching': [false, 'Add link in header menu to turn on image preloading.'], 'Image Prefetching': [true, 'Add a shortcut icon to the header to turn on image preloading.'],
'Fappe Tyme': [true, 'Hide posts without images when header menu item is checked. *hint* *hint*'], 'Fappe Tyme': [true, 'Hide posts without images when header menu item is checked. *hint* *hint*'],
'Werk Tyme': [true, 'Hide all post images when header menu item is checked.'], 'Werk Tyme': [true, 'Hide all post images when header menu item is checked.'],
'Autoplay': [true, 'Videos begin playing immediately when opened.'], 'Autoplay': [true, 'Videos begin playing immediately when opened.'],
@ -15611,11 +15611,11 @@ ImageLoader = (function() {
ImageLoader = { ImageLoader = {
init: function() { init: function() {
var prefetch, ref, ref1; var el, ref, ref1, replace;
if ((ref = g.VIEW) !== 'index' && ref !== 'thread' && ref !== 'archive') { if ((ref = g.VIEW) !== 'index' && ref !== 'thread' && ref !== 'archive') {
return; return;
} }
if (!(Conf['Image Prefetching'] || Conf['Replace JPG'] || Conf['Replace PNG'] || Conf['Replace GIF'] || Conf['Replace WEBM'])) { if (!(Conf['Image Prefetching'] || (replace = Conf['Replace JPG'] || Conf['Replace PNG'] || Conf['Replace GIF'] || Conf['Replace WEBM']))) {
return; return;
} }
Callbacks.Post.push({ Callbacks.Post.push({
@ -15623,7 +15623,9 @@ ImageLoader = (function() {
cb: this.node cb: this.node
}); });
$.on(d, 'PostsInserted', function() { $.on(d, 'PostsInserted', function() {
return g.posts.forEach(ImageLoader.prefetchAll); if (ImageLoader.prefetchEnabled || replace) {
return g.posts.forEach(ImageLoader.prefetchAll);
}
}); });
if (Conf['Replace WEBM']) { if (Conf['Replace WEBM']) {
$.on(d, 'scroll visibilitychange 4chanXInitFinished PostsInserted', this.playVideos); $.on(d, 'scroll visibilitychange 4chanXInitFinished PostsInserted', this.playVideos);
@ -15631,13 +15633,14 @@ ImageLoader = (function() {
if (!(Conf['Image Prefetching'] && ((ref1 = g.VIEW) === 'index' || ref1 === 'thread'))) { if (!(Conf['Image Prefetching'] && ((ref1 = g.VIEW) === 'index' || ref1 === 'thread'))) {
return; return;
} }
prefetch = $.el('label', {innerHTML: "<input type=\"checkbox\" name=\"prefetch\"> Prefetch Images"}); el = $.el('a', {
this.el = prefetch.firstElementChild; href: 'javascript:;',
$.on(this.el, 'change', this.toggle); title: 'Prefetch Images',
return Header.menu.addEntry({ className: 'fa fa-bolt disabled',
el: prefetch, textContent: 'Prefetch'
order: 98
}); });
$.on(el, 'click', this.toggle);
return Header.addShortcut('gallery', el, 525);
}, },
node: function() { node: function() {
var file, i, len, ref; var file, i, len, ref;
@ -15691,7 +15694,7 @@ ImageLoader = (function() {
} }
} }
replace = Conf["Replace " + type] && !/spoiler/.test(thumb.src || thumb.dataset.src); replace = Conf["Replace " + type] && !/spoiler/.test(thumb.src || thumb.dataset.src);
if (!(replace || Conf['prefetch'])) { if (!(replace || ImageLoader.prefetchEnabled)) {
return; return;
} }
if ($.hasClass(doc, 'catalog-mode')) { if ($.hasClass(doc, 'catalog-mode')) {
@ -15740,7 +15743,9 @@ ImageLoader = (function() {
} }
}, },
toggle: function() { toggle: function() {
if (Conf['prefetch'] = this.checked) { ImageLoader.prefetchEnabled = !ImageLoader.prefetchEnabled;
this.classList.toggle('disabled', !ImageLoader.prefetchEnabled);
if (ImageLoader.prefetchEnabled) {
g.posts.forEach(ImageLoader.prefetchAll); g.posts.forEach(ImageLoader.prefetchAll);
} }
}, },

Binary file not shown.

View File

@ -3,7 +3,7 @@
"4chan-x@4chan-x.net": { "4chan-x@4chan-x.net": {
"updates": [ "updates": [
{ {
"version": "1.14.12.3", "version": "1.14.12.4",
"update_link": "https://www.4chan-x.net/builds/4chan-X-beta.crx" "update_link": "https://www.4chan-x.net/builds/4chan-X-beta.crx"
} }
] ]

View File

@ -1,7 +1,7 @@
<?xml version='1.0' encoding='UTF-8'?> <?xml version='1.0' encoding='UTF-8'?>
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'> <gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
<app appid='lacclbnghgdicfifcamcmcnilckjamag'> <app appid='lacclbnghgdicfifcamcmcnilckjamag'>
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X-beta.crx' version='1.14.12.3' /> <updatecheck codebase='https://www.4chan-x.net/builds/4chan-X-beta.crx' version='1.14.12.4' />
</app> </app>
</gupdate> </gupdate>

View File

@ -3,7 +3,7 @@
"4chan-x@4chan-x.net": { "4chan-x@4chan-x.net": {
"updates": [ "updates": [
{ {
"version": "1.14.12.3", "version": "1.14.12.4",
"update_link": "https://www.4chan-x.net/builds/4chan-X.crx" "update_link": "https://www.4chan-x.net/builds/4chan-X.crx"
} }
] ]

View File

@ -1,7 +1,7 @@
<?xml version='1.0' encoding='UTF-8'?> <?xml version='1.0' encoding='UTF-8'?>
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'> <gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
<app appid='lacclbnghgdicfifcamcmcnilckjamag'> <app appid='lacclbnghgdicfifcamcmcnilckjamag'>
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X.crx' version='1.14.12.3' /> <updatecheck codebase='https://www.4chan-x.net/builds/4chan-X.crx' version='1.14.12.4' />
</app> </app>
</gupdate> </gupdate>

View File

@ -1,4 +1,4 @@
{ {
"version": "1.14.12.3", "version": "1.14.12.4",
"date": "2019-08-09T15:12:38.410Z" "date": "2019-08-11T19:37:18.650Z"
} }