Release 4chan X v1.11.3.1.

This commit is contained in:
ccd0 2015-07-04 14:56:41 -07:00
parent d7913e1005
commit 5347aeebde
13 changed files with 75 additions and 39 deletions

View File

@ -4,6 +4,9 @@ The links to individual versions below are to copies of the script with the upda
### v1.11.3 ### v1.11.3
**v1.11.3.1** *(2015-07-04)* - [[Firefox](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.3.1/builds/4chan-X-noupdate.user.js "Firefox version")] [[Chromium](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.3.1/builds/4chan-X-noupdate.crx "Chromium version")]
- Make posting from URL more efficient, and make it work in Tampermonkey.
**v1.11.3.0** *(2015-07-04)* - [[Firefox](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.3.0/builds/4chan-X-noupdate.user.js "Firefox version")] [[Chromium](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.3.0/builds/4chan-X-noupdate.crx "Chromium version")] **v1.11.3.0** *(2015-07-04)* - [[Firefox](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.3.0/builds/4chan-X-noupdate.user.js "Firefox version")] [[Chromium](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.3.0/builds/4chan-X-noupdate.crx "Chromium version")]
- Based on v1.11.2.4. - Based on v1.11.2.4.
- Improved Tampermonkey and WebKit support. - Improved Tampermonkey and WebKit support.

Binary file not shown.

View File

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

View File

@ -1,7 +1,7 @@
// Generated by CoffeeScript // Generated by CoffeeScript
// ==UserScript== // ==UserScript==
// @name 4chan X beta // @name 4chan X beta
// @version 1.11.3.0 // @version 1.11.3.1
// @minGMVer 1.14 // @minGMVer 1.14
// @minFFVer 26 // @minFFVer 26
// @namespace 4chan-X // @namespace 4chan-X
@ -412,7 +412,7 @@
doc = d.documentElement; doc = d.documentElement;
g = { g = {
VERSION: '1.11.3.0', VERSION: '1.11.3.1',
NAMESPACE: '4chan X.', NAMESPACE: '4chan X.',
boards: {} boards: {}
}; };
@ -4920,22 +4920,27 @@
CrossOrigin = (function() { CrossOrigin = (function() {
return { return {
binary: function(url, cb, headers) { binary: function(url, cb, headers) {
var options, workaround;
if (headers == null) { if (headers == null) {
headers = {}; headers = {};
} }
return GM_xmlhttpRequest({ workaround = !GM_info.scriptHandler && /^[12]\.|^3\.[01](?!\d)/.test(GM_info.version);
options = {
method: "GET", method: "GET",
url: url, url: url,
headers: headers, headers: headers,
overrideMimeType: "text/plain; charset=x-user-defined",
onload: function(xhr) { onload: function(xhr) {
var contentDisposition, contentType, data, i, r, ref, ref1; var contentDisposition, contentType, data, i, r, ref, ref1;
r = xhr.responseText; if (workaround) {
data = new Uint8Array(r.length); r = xhr.responseText;
i = 0; data = new Uint8Array(r.length);
while (i < r.length) { i = 0;
data[i] = r.charCodeAt(i); while (i < r.length) {
i++; data[i] = r.charCodeAt(i);
i++;
}
} else {
data = new Uint8Array(xhr.response);
} }
contentType = (ref = xhr.responseHeaders.match(/Content-Type:\s*(.*)/i)) != null ? ref[1] : void 0; contentType = (ref = xhr.responseHeaders.match(/Content-Type:\s*(.*)/i)) != null ? ref[1] : void 0;
contentDisposition = (ref1 = xhr.responseHeaders.match(/Content-Disposition:\s*(.*)/i)) != null ? ref1[1] : void 0; contentDisposition = (ref1 = xhr.responseHeaders.match(/Content-Disposition:\s*(.*)/i)) != null ? ref1[1] : void 0;
@ -4947,7 +4952,13 @@
onabort: function() { onabort: function() {
return cb(null); return cb(null);
} }
}); };
if (workaround) {
options.overrideMimeType = 'text/plain; charset=x-user-defined';
} else {
options.responseType = 'arraybuffer';
}
return GM_xmlhttpRequest(options);
}, },
file: function(url, cb) { file: function(url, cb) {
return CrossOrigin.binary(url, function(data, contentType, contentDisposition) { return CrossOrigin.binary(url, function(data, contentType, contentDisposition) {

Binary file not shown.

View File

@ -1,7 +1,7 @@
// Generated by CoffeeScript // Generated by CoffeeScript
// ==UserScript== // ==UserScript==
// @name 4chan X // @name 4chan X
// @version 1.11.3.0 // @version 1.11.3.1
// @minGMVer 1.14 // @minGMVer 1.14
// @minFFVer 26 // @minFFVer 26
// @namespace 4chan-X // @namespace 4chan-X
@ -411,7 +411,7 @@
doc = d.documentElement; doc = d.documentElement;
g = { g = {
VERSION: '1.11.3.0', VERSION: '1.11.3.1',
NAMESPACE: '4chan X.', NAMESPACE: '4chan X.',
boards: {} boards: {}
}; };
@ -4919,22 +4919,27 @@
CrossOrigin = (function() { CrossOrigin = (function() {
return { return {
binary: function(url, cb, headers) { binary: function(url, cb, headers) {
var options, workaround;
if (headers == null) { if (headers == null) {
headers = {}; headers = {};
} }
return GM_xmlhttpRequest({ workaround = !GM_info.scriptHandler && /^[12]\.|^3\.[01](?!\d)/.test(GM_info.version);
options = {
method: "GET", method: "GET",
url: url, url: url,
headers: headers, headers: headers,
overrideMimeType: "text/plain; charset=x-user-defined",
onload: function(xhr) { onload: function(xhr) {
var contentDisposition, contentType, data, i, r, ref, ref1; var contentDisposition, contentType, data, i, r, ref, ref1;
r = xhr.responseText; if (workaround) {
data = new Uint8Array(r.length); r = xhr.responseText;
i = 0; data = new Uint8Array(r.length);
while (i < r.length) { i = 0;
data[i] = r.charCodeAt(i); while (i < r.length) {
i++; data[i] = r.charCodeAt(i);
i++;
}
} else {
data = new Uint8Array(xhr.response);
} }
contentType = (ref = xhr.responseHeaders.match(/Content-Type:\s*(.*)/i)) != null ? ref[1] : void 0; contentType = (ref = xhr.responseHeaders.match(/Content-Type:\s*(.*)/i)) != null ? ref[1] : void 0;
contentDisposition = (ref1 = xhr.responseHeaders.match(/Content-Disposition:\s*(.*)/i)) != null ? ref1[1] : void 0; contentDisposition = (ref1 = xhr.responseHeaders.match(/Content-Disposition:\s*(.*)/i)) != null ? ref1[1] : void 0;
@ -4946,7 +4951,13 @@
onabort: function() { onabort: function() {
return cb(null); return cb(null);
} }
}); };
if (workaround) {
options.overrideMimeType = 'text/plain; charset=x-user-defined';
} else {
options.responseType = 'arraybuffer';
}
return GM_xmlhttpRequest(options);
}, },
file: function(url, cb) { file: function(url, cb) {
return CrossOrigin.binary(url, function(data, contentType, contentDisposition) { return CrossOrigin.binary(url, function(data, contentType, contentDisposition) {

Binary file not shown.

View File

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

View File

@ -1,7 +1,7 @@
// Generated by CoffeeScript // Generated by CoffeeScript
// ==UserScript== // ==UserScript==
// @name 4chan X // @name 4chan X
// @version 1.11.3.0 // @version 1.11.3.1
// @minGMVer 1.14 // @minGMVer 1.14
// @minFFVer 26 // @minFFVer 26
// @namespace 4chan-X // @namespace 4chan-X
@ -412,7 +412,7 @@
doc = d.documentElement; doc = d.documentElement;
g = { g = {
VERSION: '1.11.3.0', VERSION: '1.11.3.1',
NAMESPACE: '4chan X.', NAMESPACE: '4chan X.',
boards: {} boards: {}
}; };
@ -4920,22 +4920,27 @@
CrossOrigin = (function() { CrossOrigin = (function() {
return { return {
binary: function(url, cb, headers) { binary: function(url, cb, headers) {
var options, workaround;
if (headers == null) { if (headers == null) {
headers = {}; headers = {};
} }
return GM_xmlhttpRequest({ workaround = !GM_info.scriptHandler && /^[12]\.|^3\.[01](?!\d)/.test(GM_info.version);
options = {
method: "GET", method: "GET",
url: url, url: url,
headers: headers, headers: headers,
overrideMimeType: "text/plain; charset=x-user-defined",
onload: function(xhr) { onload: function(xhr) {
var contentDisposition, contentType, data, i, r, ref, ref1; var contentDisposition, contentType, data, i, r, ref, ref1;
r = xhr.responseText; if (workaround) {
data = new Uint8Array(r.length); r = xhr.responseText;
i = 0; data = new Uint8Array(r.length);
while (i < r.length) { i = 0;
data[i] = r.charCodeAt(i); while (i < r.length) {
i++; data[i] = r.charCodeAt(i);
i++;
}
} else {
data = new Uint8Array(xhr.response);
} }
contentType = (ref = xhr.responseHeaders.match(/Content-Type:\s*(.*)/i)) != null ? ref[1] : void 0; contentType = (ref = xhr.responseHeaders.match(/Content-Type:\s*(.*)/i)) != null ? ref[1] : void 0;
contentDisposition = (ref1 = xhr.responseHeaders.match(/Content-Disposition:\s*(.*)/i)) != null ? ref1[1] : void 0; contentDisposition = (ref1 = xhr.responseHeaders.match(/Content-Disposition:\s*(.*)/i)) != null ? ref1[1] : void 0;
@ -4947,7 +4952,13 @@
onabort: function() { onabort: function() {
return cb(null); return cb(null);
} }
}); };
if (workaround) {
options.overrideMimeType = 'text/plain; charset=x-user-defined';
} else {
options.responseType = 'arraybuffer';
}
return GM_xmlhttpRequest(options);
}, },
file: function(url, cb) { file: function(url, cb) {
return CrossOrigin.binary(url, function(data, contentType, contentDisposition) { return CrossOrigin.binary(url, function(data, contentType, contentDisposition) {

Binary file not shown.

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://ccd0.github.io/4chan-x/builds/4chan-X-beta.crx' version='1.11.3.0' /> <updatecheck codebase='https://ccd0.github.io/4chan-x/builds/4chan-X-beta.crx' version='1.11.3.1' />
</app> </app>
</gupdate> </gupdate>

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://ccd0.github.io/4chan-x/builds/4chan-X.crx' version='1.11.3.0' /> <updatecheck codebase='https://ccd0.github.io/4chan-x/builds/4chan-X.crx' version='1.11.3.1' />
</app> </app>
</gupdate> </gupdate>

View File

@ -3,8 +3,8 @@
"description": "Cross-browser userscript for maximum lurking on 4chan.", "description": "Cross-browser userscript for maximum lurking on 4chan.",
"meta": { "meta": {
"name": "4chan X", "name": "4chan X",
"version": "1.11.3.0", "version": "1.11.3.1",
"date": "2015-07-04T20:11:44.204Z", "date": "2015-07-04T21:55:48.953Z",
"repo": "https://github.com/ccd0/4chan-x/", "repo": "https://github.com/ccd0/4chan-x/",
"page": "https://github.com/ccd0/4chan-x", "page": "https://github.com/ccd0/4chan-x",
"downloads": "https://ccd0.github.io/4chan-x/builds/", "downloads": "https://ccd0.github.io/4chan-x/builds/",