Release 4chan X v1.14.5.13.
This commit is contained in:
parent
8e22de0ca0
commit
4801013380
@ -4,6 +4,11 @@
|
||||
|
||||
### v1.14.5
|
||||
|
||||
**v1.14.5.13** *(2019-03-08)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.5.13/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.5.13/builds/4chan-X-noupdate.crx)]
|
||||
- Fix bugs related to additional permissions requests. #2230
|
||||
- Revert changes in thread watcher that caused performance decrease.
|
||||
- Fix thread watcher highlighting when quoted on boards with unusual characters in name (e.g. some lainchan boards).
|
||||
|
||||
**v1.14.5.12** *(2019-01-28)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.5.12/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.5.12/builds/4chan-X-noupdate.crx)]
|
||||
- Recover as well as possible from data corruption caused by ad filter interaction with Tampermonkey. #2218
|
||||
|
||||
|
||||
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
// ==UserScript==
|
||||
// @name 4chan X beta
|
||||
// @version 1.14.5.12
|
||||
// @version 1.14.5.13
|
||||
// @minGMVer 1.14
|
||||
// @minFFVer 26
|
||||
// @namespace 4chan-X
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
// ==UserScript==
|
||||
// @name 4chan X beta
|
||||
// @version 1.14.5.12
|
||||
// @version 1.14.5.13
|
||||
// @minGMVer 1.14
|
||||
// @minFFVer 26
|
||||
// @namespace 4chan-X
|
||||
@ -198,7 +198,7 @@ docSet = function() {
|
||||
};
|
||||
|
||||
g = {
|
||||
VERSION: '1.14.5.12',
|
||||
VERSION: '1.14.5.13',
|
||||
NAMESPACE: '4chan X.',
|
||||
boards: {}
|
||||
};
|
||||
@ -4603,14 +4603,14 @@ $ = (function() {
|
||||
pageXHR = XMLHttpRequest;
|
||||
}
|
||||
return function(url, options, extra) {
|
||||
var err, event, form, j, len, params, r, ref, ref1, type, upCallbacks, url0, whenModified;
|
||||
var bypassCache, err, event, form, j, len, params, r, ref, ref1, type, upCallbacks, url0, whenModified;
|
||||
if (options == null) {
|
||||
options = {};
|
||||
}
|
||||
if (extra == null) {
|
||||
extra = {};
|
||||
}
|
||||
type = extra.type, whenModified = extra.whenModified, upCallbacks = extra.upCallbacks, form = extra.form;
|
||||
type = extra.type, whenModified = extra.whenModified, bypassCache = extra.bypassCache, upCallbacks = extra.upCallbacks, form = extra.form;
|
||||
if (/\.json$/.test(url)) {
|
||||
if (options.responseType == null) {
|
||||
options.responseType = 'json';
|
||||
@ -4622,7 +4622,7 @@ $ = (function() {
|
||||
if ($.engine === 'blink') {
|
||||
params.push("s=" + whenModified);
|
||||
}
|
||||
if (Site.software === 'yotsuba') {
|
||||
if (Site.software === 'yotsuba' && bypassCache) {
|
||||
params.push("t=" + (Date.now()));
|
||||
}
|
||||
url0 = url;
|
||||
@ -5559,7 +5559,10 @@ CrossOrigin = (function() {
|
||||
}
|
||||
});
|
||||
};
|
||||
})()
|
||||
})(),
|
||||
permission: function(cb) {
|
||||
return cb();
|
||||
}
|
||||
};
|
||||
|
||||
return CrossOrigin;
|
||||
@ -19378,7 +19381,8 @@ ThreadStats = (function() {
|
||||
return $.ajax(location.protocol + "//a.4cdn.org/" + ThreadStats.thread.board + "/threads.json", {
|
||||
onload: ThreadStats.onThreadsLoad
|
||||
}, {
|
||||
whenModified: 'ThreadStats'
|
||||
whenModified: 'ThreadStats',
|
||||
bypassCache: true
|
||||
});
|
||||
},
|
||||
onThreadsLoad: function() {
|
||||
@ -19716,7 +19720,8 @@ ThreadUpdater = (function() {
|
||||
onloadend: ThreadUpdater.cb.load,
|
||||
timeout: $.MINUTE
|
||||
}, {
|
||||
whenModified: 'ThreadUpdater'
|
||||
whenModified: 'ThreadUpdater',
|
||||
bypassCache: true
|
||||
});
|
||||
},
|
||||
updateThreadStatus: function(type, status) {
|
||||
@ -20231,6 +20236,8 @@ ThreadWatcher = (function() {
|
||||
return ThreadWatcher.parseStatus.call(this, thread);
|
||||
},
|
||||
timeout: $.MINUTE
|
||||
}, {
|
||||
whenModified: force ? false : 'ThreadWatcher'
|
||||
});
|
||||
} else {
|
||||
req = {
|
||||
@ -20314,7 +20321,7 @@ ThreadWatcher = (function() {
|
||||
while (match = regexp.exec(postObj.com)) {
|
||||
if (QuoteYou.db.get({
|
||||
siteID: siteID,
|
||||
boardID: match[1] || boardID,
|
||||
boardID: match[1] ? encodeURIComponent(match[1]) : boardID,
|
||||
threadID: match[2] || threadID,
|
||||
postID: match[3] || match[2] || threadID
|
||||
})) {
|
||||
@ -22464,20 +22471,22 @@ QR = (function() {
|
||||
}
|
||||
},
|
||||
handleUrl: function(urlDefault) {
|
||||
var url;
|
||||
QR.open();
|
||||
QR.selected.preventAutoPost();
|
||||
url = prompt('Enter a URL:', urlDefault);
|
||||
if (url === null) {
|
||||
return;
|
||||
}
|
||||
QR.nodes.fileButton.focus();
|
||||
return CrossOrigin.file(url, function(blob) {
|
||||
if (blob && !/^text\//.test(blob.type)) {
|
||||
return QR.handleFiles([blob]);
|
||||
} else {
|
||||
return QR.error("Can't load file.");
|
||||
return CrossOrigin.permission(function() {
|
||||
var url;
|
||||
url = prompt('Enter a URL:', urlDefault);
|
||||
if (url === null) {
|
||||
return;
|
||||
}
|
||||
QR.nodes.fileButton.focus();
|
||||
return CrossOrigin.file(url, function(blob) {
|
||||
if (blob && !/^text\//.test(blob.type)) {
|
||||
return QR.handleFiles([blob]);
|
||||
} else {
|
||||
return QR.error("Can't load file.");
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
handleFiles: function(files) {
|
||||
|
||||
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
// ==UserScript==
|
||||
// @name 4chan X
|
||||
// @version 1.14.5.12
|
||||
// @version 1.14.5.13
|
||||
// @minGMVer 1.14
|
||||
// @minFFVer 26
|
||||
// @namespace 4chan-X
|
||||
@ -198,7 +198,7 @@ docSet = function() {
|
||||
};
|
||||
|
||||
g = {
|
||||
VERSION: '1.14.5.12',
|
||||
VERSION: '1.14.5.13',
|
||||
NAMESPACE: '4chan X.',
|
||||
boards: {}
|
||||
};
|
||||
@ -4603,14 +4603,14 @@ $ = (function() {
|
||||
pageXHR = XMLHttpRequest;
|
||||
}
|
||||
return function(url, options, extra) {
|
||||
var err, event, form, j, len, params, r, ref, ref1, type, upCallbacks, url0, whenModified;
|
||||
var bypassCache, err, event, form, j, len, params, r, ref, ref1, type, upCallbacks, url0, whenModified;
|
||||
if (options == null) {
|
||||
options = {};
|
||||
}
|
||||
if (extra == null) {
|
||||
extra = {};
|
||||
}
|
||||
type = extra.type, whenModified = extra.whenModified, upCallbacks = extra.upCallbacks, form = extra.form;
|
||||
type = extra.type, whenModified = extra.whenModified, bypassCache = extra.bypassCache, upCallbacks = extra.upCallbacks, form = extra.form;
|
||||
if (/\.json$/.test(url)) {
|
||||
if (options.responseType == null) {
|
||||
options.responseType = 'json';
|
||||
@ -4622,7 +4622,7 @@ $ = (function() {
|
||||
if ($.engine === 'blink') {
|
||||
params.push("s=" + whenModified);
|
||||
}
|
||||
if (Site.software === 'yotsuba') {
|
||||
if (Site.software === 'yotsuba' && bypassCache) {
|
||||
params.push("t=" + (Date.now()));
|
||||
}
|
||||
url0 = url;
|
||||
@ -5559,7 +5559,10 @@ CrossOrigin = (function() {
|
||||
}
|
||||
});
|
||||
};
|
||||
})()
|
||||
})(),
|
||||
permission: function(cb) {
|
||||
return cb();
|
||||
}
|
||||
};
|
||||
|
||||
return CrossOrigin;
|
||||
@ -19378,7 +19381,8 @@ ThreadStats = (function() {
|
||||
return $.ajax(location.protocol + "//a.4cdn.org/" + ThreadStats.thread.board + "/threads.json", {
|
||||
onload: ThreadStats.onThreadsLoad
|
||||
}, {
|
||||
whenModified: 'ThreadStats'
|
||||
whenModified: 'ThreadStats',
|
||||
bypassCache: true
|
||||
});
|
||||
},
|
||||
onThreadsLoad: function() {
|
||||
@ -19716,7 +19720,8 @@ ThreadUpdater = (function() {
|
||||
onloadend: ThreadUpdater.cb.load,
|
||||
timeout: $.MINUTE
|
||||
}, {
|
||||
whenModified: 'ThreadUpdater'
|
||||
whenModified: 'ThreadUpdater',
|
||||
bypassCache: true
|
||||
});
|
||||
},
|
||||
updateThreadStatus: function(type, status) {
|
||||
@ -20231,6 +20236,8 @@ ThreadWatcher = (function() {
|
||||
return ThreadWatcher.parseStatus.call(this, thread);
|
||||
},
|
||||
timeout: $.MINUTE
|
||||
}, {
|
||||
whenModified: force ? false : 'ThreadWatcher'
|
||||
});
|
||||
} else {
|
||||
req = {
|
||||
@ -20314,7 +20321,7 @@ ThreadWatcher = (function() {
|
||||
while (match = regexp.exec(postObj.com)) {
|
||||
if (QuoteYou.db.get({
|
||||
siteID: siteID,
|
||||
boardID: match[1] || boardID,
|
||||
boardID: match[1] ? encodeURIComponent(match[1]) : boardID,
|
||||
threadID: match[2] || threadID,
|
||||
postID: match[3] || match[2] || threadID
|
||||
})) {
|
||||
@ -22464,20 +22471,22 @@ QR = (function() {
|
||||
}
|
||||
},
|
||||
handleUrl: function(urlDefault) {
|
||||
var url;
|
||||
QR.open();
|
||||
QR.selected.preventAutoPost();
|
||||
url = prompt('Enter a URL:', urlDefault);
|
||||
if (url === null) {
|
||||
return;
|
||||
}
|
||||
QR.nodes.fileButton.focus();
|
||||
return CrossOrigin.file(url, function(blob) {
|
||||
if (blob && !/^text\//.test(blob.type)) {
|
||||
return QR.handleFiles([blob]);
|
||||
} else {
|
||||
return QR.error("Can't load file.");
|
||||
return CrossOrigin.permission(function() {
|
||||
var url;
|
||||
url = prompt('Enter a URL:', urlDefault);
|
||||
if (url === null) {
|
||||
return;
|
||||
}
|
||||
QR.nodes.fileButton.focus();
|
||||
return CrossOrigin.file(url, function(blob) {
|
||||
if (blob && !/^text\//.test(blob.type)) {
|
||||
return QR.handleFiles([blob]);
|
||||
} else {
|
||||
return QR.error("Can't load file.");
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
handleFiles: function(files) {
|
||||
|
||||
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
// ==UserScript==
|
||||
// @name 4chan X
|
||||
// @version 1.14.5.12
|
||||
// @version 1.14.5.13
|
||||
// @minGMVer 1.14
|
||||
// @minFFVer 26
|
||||
// @namespace 4chan-X
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
// ==UserScript==
|
||||
// @name 4chan X
|
||||
// @version 1.14.5.12
|
||||
// @version 1.14.5.13
|
||||
// @minGMVer 1.14
|
||||
// @minFFVer 26
|
||||
// @namespace 4chan-X
|
||||
@ -198,7 +198,7 @@ docSet = function() {
|
||||
};
|
||||
|
||||
g = {
|
||||
VERSION: '1.14.5.12',
|
||||
VERSION: '1.14.5.13',
|
||||
NAMESPACE: '4chan X.',
|
||||
boards: {}
|
||||
};
|
||||
@ -4603,14 +4603,14 @@ $ = (function() {
|
||||
pageXHR = XMLHttpRequest;
|
||||
}
|
||||
return function(url, options, extra) {
|
||||
var err, event, form, j, len, params, r, ref, ref1, type, upCallbacks, url0, whenModified;
|
||||
var bypassCache, err, event, form, j, len, params, r, ref, ref1, type, upCallbacks, url0, whenModified;
|
||||
if (options == null) {
|
||||
options = {};
|
||||
}
|
||||
if (extra == null) {
|
||||
extra = {};
|
||||
}
|
||||
type = extra.type, whenModified = extra.whenModified, upCallbacks = extra.upCallbacks, form = extra.form;
|
||||
type = extra.type, whenModified = extra.whenModified, bypassCache = extra.bypassCache, upCallbacks = extra.upCallbacks, form = extra.form;
|
||||
if (/\.json$/.test(url)) {
|
||||
if (options.responseType == null) {
|
||||
options.responseType = 'json';
|
||||
@ -4622,7 +4622,7 @@ $ = (function() {
|
||||
if ($.engine === 'blink') {
|
||||
params.push("s=" + whenModified);
|
||||
}
|
||||
if (Site.software === 'yotsuba') {
|
||||
if (Site.software === 'yotsuba' && bypassCache) {
|
||||
params.push("t=" + (Date.now()));
|
||||
}
|
||||
url0 = url;
|
||||
@ -5559,7 +5559,10 @@ CrossOrigin = (function() {
|
||||
}
|
||||
});
|
||||
};
|
||||
})()
|
||||
})(),
|
||||
permission: function(cb) {
|
||||
return cb();
|
||||
}
|
||||
};
|
||||
|
||||
return CrossOrigin;
|
||||
@ -19378,7 +19381,8 @@ ThreadStats = (function() {
|
||||
return $.ajax(location.protocol + "//a.4cdn.org/" + ThreadStats.thread.board + "/threads.json", {
|
||||
onload: ThreadStats.onThreadsLoad
|
||||
}, {
|
||||
whenModified: 'ThreadStats'
|
||||
whenModified: 'ThreadStats',
|
||||
bypassCache: true
|
||||
});
|
||||
},
|
||||
onThreadsLoad: function() {
|
||||
@ -19716,7 +19720,8 @@ ThreadUpdater = (function() {
|
||||
onloadend: ThreadUpdater.cb.load,
|
||||
timeout: $.MINUTE
|
||||
}, {
|
||||
whenModified: 'ThreadUpdater'
|
||||
whenModified: 'ThreadUpdater',
|
||||
bypassCache: true
|
||||
});
|
||||
},
|
||||
updateThreadStatus: function(type, status) {
|
||||
@ -20231,6 +20236,8 @@ ThreadWatcher = (function() {
|
||||
return ThreadWatcher.parseStatus.call(this, thread);
|
||||
},
|
||||
timeout: $.MINUTE
|
||||
}, {
|
||||
whenModified: force ? false : 'ThreadWatcher'
|
||||
});
|
||||
} else {
|
||||
req = {
|
||||
@ -20314,7 +20321,7 @@ ThreadWatcher = (function() {
|
||||
while (match = regexp.exec(postObj.com)) {
|
||||
if (QuoteYou.db.get({
|
||||
siteID: siteID,
|
||||
boardID: match[1] || boardID,
|
||||
boardID: match[1] ? encodeURIComponent(match[1]) : boardID,
|
||||
threadID: match[2] || threadID,
|
||||
postID: match[3] || match[2] || threadID
|
||||
})) {
|
||||
@ -22464,20 +22471,22 @@ QR = (function() {
|
||||
}
|
||||
},
|
||||
handleUrl: function(urlDefault) {
|
||||
var url;
|
||||
QR.open();
|
||||
QR.selected.preventAutoPost();
|
||||
url = prompt('Enter a URL:', urlDefault);
|
||||
if (url === null) {
|
||||
return;
|
||||
}
|
||||
QR.nodes.fileButton.focus();
|
||||
return CrossOrigin.file(url, function(blob) {
|
||||
if (blob && !/^text\//.test(blob.type)) {
|
||||
return QR.handleFiles([blob]);
|
||||
} else {
|
||||
return QR.error("Can't load file.");
|
||||
return CrossOrigin.permission(function() {
|
||||
var url;
|
||||
url = prompt('Enter a URL:', urlDefault);
|
||||
if (url === null) {
|
||||
return;
|
||||
}
|
||||
QR.nodes.fileButton.focus();
|
||||
return CrossOrigin.file(url, function(blob) {
|
||||
if (blob && !/^text\//.test(blob.type)) {
|
||||
return QR.handleFiles([blob]);
|
||||
} else {
|
||||
return QR.error("Can't load file.");
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
handleFiles: function(files) {
|
||||
|
||||
Binary file not shown.
@ -3,7 +3,7 @@
|
||||
"4chan-x@4chan-x.net": {
|
||||
"updates": [
|
||||
{
|
||||
"version": "1.14.5.12",
|
||||
"version": "1.14.5.13",
|
||||
"update_link": "https://www.4chan-x.net/builds/4chan-X-beta.crx"
|
||||
}
|
||||
]
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
|
||||
<app appid='lacclbnghgdicfifcamcmcnilckjamag'>
|
||||
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X-beta.crx' version='1.14.5.12' />
|
||||
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X-beta.crx' version='1.14.5.13' />
|
||||
</app>
|
||||
</gupdate>
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
"4chan-x@4chan-x.net": {
|
||||
"updates": [
|
||||
{
|
||||
"version": "1.14.5.12",
|
||||
"version": "1.14.5.13",
|
||||
"update_link": "https://www.4chan-x.net/builds/4chan-X.crx"
|
||||
}
|
||||
]
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
|
||||
<app appid='lacclbnghgdicfifcamcmcnilckjamag'>
|
||||
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X.crx' version='1.14.5.12' />
|
||||
<updatecheck codebase='https://www.4chan-x.net/builds/4chan-X.crx' version='1.14.5.13' />
|
||||
</app>
|
||||
</gupdate>
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
{
|
||||
"version": "1.14.5.12",
|
||||
"date": "2019-01-28T10:07:50.479Z"
|
||||
"version": "1.14.5.13",
|
||||
"date": "2019-03-08T23:32:11.908Z"
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user