Merge branch 'v3'
Conflicts: .gitignore CHANGELOG.md Gruntfile.coffee LICENSE builds/4chan-X.js builds/4chan-X.meta.js builds/4chan-X.user.js builds/crx/manifest.json builds/crx/script.js latest.js package.json src/General/Config.coffee
This commit is contained in:
commit
2c2a40c0c9
6
.gitignore
vendored
6
.gitignore
vendored
@ -4,6 +4,12 @@ node_modules/
|
|||||||
tmp-crx/
|
tmp-crx/
|
||||||
tmp-userjs/
|
tmp-userjs/
|
||||||
tmp-userscript/
|
tmp-userscript/
|
||||||
|
<<<<<<< HEAD
|
||||||
builds/4chan-X.zip
|
builds/4chan-X.zip
|
||||||
Gruntfile.js
|
Gruntfile.js
|
||||||
builds/4chan-*
|
builds/4chan-*
|
||||||
|
=======
|
||||||
|
builds/4chan-X-Chrome.zip
|
||||||
|
builds/4chan-X-Opera.nex
|
||||||
|
Gruntfile.js
|
||||||
|
>>>>>>> v3
|
||||||
|
|||||||
@ -1,3 +1,6 @@
|
|||||||
|
**seaweedchan**:
|
||||||
|
- Small bug fixes
|
||||||
|
|
||||||
### v2.0.6
|
### v2.0.6
|
||||||
*2013-05-29*
|
*2013-05-29*
|
||||||
|
|
||||||
|
|||||||
@ -82,6 +82,9 @@ module.exports = (grunt) ->
|
|||||||
dest: 'builds/crx/'
|
dest: 'builds/crx/'
|
||||||
expand: true
|
expand: true
|
||||||
flatten: true
|
flatten: true
|
||||||
|
opera:
|
||||||
|
files:
|
||||||
|
'builds/<%= pkg.name %>.nex': 'builds/<%= pkg.name %>.zip'
|
||||||
|
|
||||||
coffee:
|
coffee:
|
||||||
script:
|
script:
|
||||||
@ -200,6 +203,7 @@ module.exports = (grunt) ->
|
|||||||
grunt.registerTask 'release', [
|
grunt.registerTask 'release', [
|
||||||
'default'
|
'default'
|
||||||
'compress:crx'
|
'compress:crx'
|
||||||
|
'copy:opera'
|
||||||
'shell:commit'
|
'shell:commit'
|
||||||
'shell:push'
|
'shell:push'
|
||||||
]
|
]
|
||||||
|
|||||||
@ -5278,6 +5278,9 @@
|
|||||||
if (g.VIEW === 'catalog' || !Conf['Reply Hiding Buttons'] && !Conf['Reply Hiding Link']) {
|
if (g.VIEW === 'catalog' || !Conf['Reply Hiding Buttons'] && !Conf['Reply Hiding Link']) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (Conf['Reply Hiding Buttons']) {
|
||||||
|
$.addClass(doc, "reply-hide");
|
||||||
|
}
|
||||||
this.db = new DataBoard('hiddenPosts');
|
this.db = new DataBoard('hiddenPosts');
|
||||||
return Post.prototype.callbacks.push({
|
return Post.prototype.callbacks.push({
|
||||||
name: 'Reply Hiding',
|
name: 'Reply Hiding',
|
||||||
|
|||||||
@ -5274,6 +5274,9 @@
|
|||||||
if (g.VIEW === 'catalog' || !Conf['Reply Hiding Buttons'] && !Conf['Reply Hiding Link']) {
|
if (g.VIEW === 'catalog' || !Conf['Reply Hiding Buttons'] && !Conf['Reply Hiding Link']) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (Conf['Reply Hiding Buttons']) {
|
||||||
|
$.addClass(doc, "reply-hide");
|
||||||
|
}
|
||||||
this.db = new DataBoard('hiddenPosts');
|
this.db = new DataBoard('hiddenPosts');
|
||||||
return Post.prototype.callbacks.push({
|
return Post.prototype.callbacks.push({
|
||||||
name: 'Reply Hiding',
|
name: 'Reply Hiding',
|
||||||
|
|||||||
@ -117,7 +117,6 @@
|
|||||||
'Thread Expansion': [true, 'Add buttons to expand threads.'],
|
'Thread Expansion': [true, 'Add buttons to expand threads.'],
|
||||||
'Index Navigation': [false, 'Add buttons to navigate between threads.'],
|
'Index Navigation': [false, 'Add buttons to navigate between threads.'],
|
||||||
'Reply Navigation': [false, 'Add buttons to navigate to top / bottom of thread.'],
|
'Reply Navigation': [false, 'Add buttons to navigate to top / bottom of thread.'],
|
||||||
'Check for Updates': [true, 'Check for updated versions of appchan x.'],
|
|
||||||
'Color User IDs': [false, 'Assign unique colors to user IDs on boards that use them'],
|
'Color User IDs': [false, 'Assign unique colors to user IDs on boards that use them'],
|
||||||
'Remove Spoilers': [false, 'Remove all spoilers in text.'],
|
'Remove Spoilers': [false, 'Remove all spoilers in text.'],
|
||||||
'Indicate Spoilers': [false, 'Indicate spoilers if Remove Spoilers is enabled.']
|
'Indicate Spoilers': [false, 'Indicate spoilers if Remove Spoilers is enabled.']
|
||||||
@ -5276,6 +5275,9 @@
|
|||||||
if (g.VIEW === 'catalog' || !Conf['Reply Hiding Buttons'] && !Conf['Reply Hiding Link']) {
|
if (g.VIEW === 'catalog' || !Conf['Reply Hiding Buttons'] && !Conf['Reply Hiding Link']) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (Conf['Reply Hiding Buttons']) {
|
||||||
|
$.addClass(doc, "reply-hide");
|
||||||
|
}
|
||||||
this.db = new DataBoard('hiddenPosts');
|
this.db = new DataBoard('hiddenPosts');
|
||||||
return Post.prototype.callbacks.push({
|
return Post.prototype.callbacks.push({
|
||||||
name: 'Reply Hiding',
|
name: 'Reply Hiding',
|
||||||
@ -14736,8 +14738,7 @@
|
|||||||
}
|
}
|
||||||
Main.callbackNodes(Thread, threads);
|
Main.callbackNodes(Thread, threads);
|
||||||
Main.callbackNodesDB(Post, posts, function() {
|
Main.callbackNodesDB(Post, posts, function() {
|
||||||
$.event('4chanXInitFinished');
|
return $.event('4chanXInitFinished');
|
||||||
return Main.checkUpdate();
|
|
||||||
});
|
});
|
||||||
if (styleSelector = $.id('styleSelector')) {
|
if (styleSelector = $.id('styleSelector')) {
|
||||||
passLink = $.el('a', {
|
passLink = $.el('a', {
|
||||||
@ -14757,8 +14758,7 @@
|
|||||||
err = _error;
|
err = _error;
|
||||||
new Notification('warning', 'Cookies need to be enabled on 4chan for appchan x to properly function.', 30);
|
new Notification('warning', 'Cookies need to be enabled on 4chan for appchan x to properly function.', 30);
|
||||||
}
|
}
|
||||||
$.event('4chanXInitFinished');
|
return $.event('4chanXInitFinished');
|
||||||
return Main.checkUpdate();
|
|
||||||
},
|
},
|
||||||
callbackNodes: function(klass, nodes) {
|
callbackNodes: function(klass, nodes) {
|
||||||
var callback, err, errors, i, len, node, _i, _len, _ref;
|
var callback, err, errors, i, len, node, _i, _len, _ref;
|
||||||
@ -14865,40 +14865,6 @@
|
|||||||
obj.callback.isAddon = true;
|
obj.callback.isAddon = true;
|
||||||
return Klass.prototype.callbacks.push(obj.callback);
|
return Klass.prototype.callbacks.push(obj.callback);
|
||||||
},
|
},
|
||||||
message: function(e) {
|
|
||||||
var el, version;
|
|
||||||
|
|
||||||
version = e.data.version;
|
|
||||||
if (version && version !== g.VERSION) {
|
|
||||||
el = $.el('span', {
|
|
||||||
innerHTML: "Update: appchan x v" + version + " is out, get it <a href=http://zixaphir.github.com/appchan-x/ target=_blank>here</a>."
|
|
||||||
});
|
|
||||||
return new Notification('info', el, 120);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
checkUpdate: function() {
|
|
||||||
var now;
|
|
||||||
|
|
||||||
if (!(Conf['Check for Updates'] && Main.isThisPageLegit())) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
now = Date.now();
|
|
||||||
return $.get('lastchecked', 0, function(_arg) {
|
|
||||||
var lastchecked;
|
|
||||||
|
|
||||||
lastchecked = _arg.lastchecked;
|
|
||||||
if (lastchecked > now - $.DAY) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
return $.ready(function() {
|
|
||||||
$.on(window, 'message', Main.message);
|
|
||||||
$.set('lastchecked', now);
|
|
||||||
return $.add(d.head, $.el('script', {
|
|
||||||
src: 'https://github.com/zixaphir/appchan-x/raw/master/latest.js'
|
|
||||||
}));
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
handleErrors: function(errors) {
|
handleErrors: function(errors) {
|
||||||
var div, error, logs, _i, _len;
|
var div, error, logs, _i, _len;
|
||||||
|
|
||||||
|
|||||||
@ -2,6 +2,9 @@ PostHiding =
|
|||||||
init: ->
|
init: ->
|
||||||
return if g.VIEW is 'catalog' or !Conf['Reply Hiding Buttons'] and !Conf['Reply Hiding Link']
|
return if g.VIEW is 'catalog' or !Conf['Reply Hiding Buttons'] and !Conf['Reply Hiding Link']
|
||||||
|
|
||||||
|
if Conf['Reply Hiding Buttons']
|
||||||
|
$.addClass doc, "reply-hide"
|
||||||
|
|
||||||
@db = new DataBoard 'hiddenPosts'
|
@db = new DataBoard 'hiddenPosts'
|
||||||
Post::callbacks.push
|
Post::callbacks.push
|
||||||
name: 'Reply Hiding'
|
name: 'Reply Hiding'
|
||||||
|
|||||||
@ -49,10 +49,12 @@ Config =
|
|||||||
false
|
false
|
||||||
'Add buttons to navigate to top / bottom of thread.'
|
'Add buttons to navigate to top / bottom of thread.'
|
||||||
]
|
]
|
||||||
|
<% if (type !== 'crx') { %>
|
||||||
'Check for Updates': [
|
'Check for Updates': [
|
||||||
true
|
true
|
||||||
'Check for updated versions of <%= meta.name %>.'
|
'Check for updated versions of <%= meta.name %>.'
|
||||||
]
|
]
|
||||||
|
<% } %>
|
||||||
'Color User IDs': [
|
'Color User IDs': [
|
||||||
false
|
false
|
||||||
'Assign unique colors to user IDs on boards that use them'
|
'Assign unique colors to user IDs on boards that use them'
|
||||||
|
|||||||
@ -194,7 +194,9 @@ Main =
|
|||||||
Main.callbackNodes Thread, threads
|
Main.callbackNodes Thread, threads
|
||||||
Main.callbackNodesDB Post, posts, ->
|
Main.callbackNodesDB Post, posts, ->
|
||||||
$.event '4chanXInitFinished'
|
$.event '4chanXInitFinished'
|
||||||
|
<% if (type !== 'crx') { %>
|
||||||
Main.checkUpdate()
|
Main.checkUpdate()
|
||||||
|
<% } %>
|
||||||
|
|
||||||
if styleSelector = $.id 'styleSelector'
|
if styleSelector = $.id 'styleSelector'
|
||||||
passLink = $.el 'a',
|
passLink = $.el 'a',
|
||||||
@ -214,7 +216,9 @@ Main =
|
|||||||
new Notification 'warning', 'Cookies need to be enabled on 4chan for <%= meta.name %> to properly function.', 30
|
new Notification 'warning', 'Cookies need to be enabled on 4chan for <%= meta.name %> to properly function.', 30
|
||||||
|
|
||||||
$.event '4chanXInitFinished'
|
$.event '4chanXInitFinished'
|
||||||
|
<% if (type !== 'crx') { %>
|
||||||
Main.checkUpdate()
|
Main.checkUpdate()
|
||||||
|
<% } %>
|
||||||
|
|
||||||
callbackNodes: (klass, nodes) ->
|
callbackNodes: (klass, nodes) ->
|
||||||
# get the nodes' length only once
|
# get the nodes' length only once
|
||||||
@ -288,6 +292,7 @@ Main =
|
|||||||
obj.callback.isAddon = true
|
obj.callback.isAddon = true
|
||||||
Klass::callbacks.push obj.callback
|
Klass::callbacks.push obj.callback
|
||||||
|
|
||||||
|
<% if (type !== 'crx') { %>
|
||||||
message: (e) ->
|
message: (e) ->
|
||||||
{version} = e.data
|
{version} = e.data
|
||||||
if version and version isnt g.VERSION
|
if version and version isnt g.VERSION
|
||||||
@ -306,6 +311,7 @@ Main =
|
|||||||
$.set 'lastchecked', now
|
$.set 'lastchecked', now
|
||||||
$.add d.head, $.el 'script',
|
$.add d.head, $.el 'script',
|
||||||
src: '<%= meta.repo %>raw/<%= meta.mainBranch %>/latest.js'
|
src: '<%= meta.repo %>raw/<%= meta.mainBranch %>/latest.js'
|
||||||
|
<% } %>
|
||||||
|
|
||||||
handleErrors: (errors) ->
|
handleErrors: (errors) ->
|
||||||
unless errors instanceof Array
|
unless errors instanceof Array
|
||||||
|
|||||||
@ -1,64 +0,0 @@
|
|||||||
/* General */
|
|
||||||
:root.tomorrow .dialog {
|
|
||||||
background-color: #282A2E;
|
|
||||||
border-color: #111;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Header */
|
|
||||||
:root.tomorrow #header-bar, :root.tomorrow #notifications {
|
|
||||||
font-size: 9pt;
|
|
||||||
color: #C5C8C6;
|
|
||||||
}
|
|
||||||
:root.tomorrow #header-bar a, :root.tomorrow #notifications a {
|
|
||||||
color: #81A2BE;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Settings */
|
|
||||||
:root.tomorrow #fourchanx-settings fieldset {
|
|
||||||
border-color: #111;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Quote */
|
|
||||||
:root.tomorrow .backlink.deadlink {
|
|
||||||
color: #81A2BE !important;
|
|
||||||
}
|
|
||||||
:root.tomorrow .inline {
|
|
||||||
border-color: #111;
|
|
||||||
background-color: rgba(0, 0, 0, .14);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* QR */
|
|
||||||
.tomorrow #dump-list::-webkit-scrollbar-thumb {
|
|
||||||
background-color: #282A2E;
|
|
||||||
border-color: #111;
|
|
||||||
}
|
|
||||||
:root.tomorrow .qr-preview {
|
|
||||||
background-color: rgba(255, 255, 255, .15);
|
|
||||||
}
|
|
||||||
:root.tomorrow #qr .field {
|
|
||||||
background-color: rgb(26, 27, 29);
|
|
||||||
color: rgb(197,200,198);
|
|
||||||
border-color: rgb(40, 41, 42);
|
|
||||||
}
|
|
||||||
:root.tomorrow #qr .field:focus {
|
|
||||||
border-color: rgb(129, 162, 190) !important;
|
|
||||||
background-color: rgb(30,32,36);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Menu */
|
|
||||||
:root.tomorrow #menu {
|
|
||||||
color: #C5C8C6;
|
|
||||||
}
|
|
||||||
:root.tomorrow .entry {
|
|
||||||
border-bottom: 1px solid #111;
|
|
||||||
font-size: 10pt;
|
|
||||||
}
|
|
||||||
:root.tomorrow .focused.entry {
|
|
||||||
background: rgba(0, 0, 0, .33);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Watcher Favicon */
|
|
||||||
:root.tomorrow .watch-thread-link
|
|
||||||
{
|
|
||||||
background-image: url("data:image/svg+xml,<svg viewBox='0 0 26 26' preserveAspectRatio='true' xmlns='http://www.w3.org/2000/svg'><path fill='rgb(197,200,198)' d='M24.132,7.971c-2.203-2.205-5.916-2.098-8.25,0.235L15.5,8.588l-0.382-0.382c-2.334-2.333-6.047-2.44-8.25-0.235c-2.204,2.203-2.098,5.916,0.235,8.249l8.396,8.396l8.396-8.396C26.229,13.887,26.336,10.174,24.132,7.971z'/></svg>");
|
|
||||||
}
|
|
||||||
Loading…
x
Reference in New Issue
Block a user