Merge branch 'master' into icons
This commit is contained in:
commit
d157537946
@ -12131,7 +12131,21 @@
|
||||
|
||||
Style = {
|
||||
init: function() {
|
||||
this.setup();
|
||||
var i, item, items, theme;
|
||||
|
||||
theme = Themes[Conf['theme']] || Themes['Yotsuba B'];
|
||||
Style.svg = $.el('div', {
|
||||
id: 'svg_filters'
|
||||
});
|
||||
items = [['layoutCSS', Style.layout, 'layout'], ['themeCSS', Style.theme(theme), 'theme'], ['emojiCSS', Emoji.css(), 'emoji'], ['dynamicCSS', Style.dynamic(), 'dynamic'], ['icons', "", 'icons'], ['paddingSheet', "", 'padding'], ['mascot', "", 'mascotSheet']];
|
||||
i = 0;
|
||||
while (item = items[i++]) {
|
||||
Style[item[0]] = $.addStyle(item[1], item[2]);
|
||||
}
|
||||
$.addStyle(JSColor.css(), 'jsColor');
|
||||
$.asap((function() {
|
||||
return d.head;
|
||||
}), Style.observe);
|
||||
$.asap((function() {
|
||||
return d.body;
|
||||
}), this.asapInit);
|
||||
@ -12193,57 +12207,42 @@
|
||||
});
|
||||
}
|
||||
},
|
||||
setup: function() {
|
||||
var i, item, items, theme;
|
||||
|
||||
theme = Themes[Conf['theme']] || Themes['Yotsuba B'];
|
||||
Style.svg = $.el('div', {
|
||||
id: 'svg_filters'
|
||||
});
|
||||
items = [['layoutCSS', Style.layout, 'layout'], ['themeCSS', Style.theme(theme), 'theme'], ['emojiCSS', Emoji.css(), 'emoji'], ['dynamicCSS', Style.dynamic(), 'dynamic'], ['icons', "", 'icons'], ['paddingSheet', "", 'padding'], ['mascot', "", 'mascotSheet']];
|
||||
i = 0;
|
||||
while (item = items[i++]) {
|
||||
Style[item[0]] = $.addStyle(item[1], item[2]);
|
||||
}
|
||||
$.addStyle(JSColor.css(), 'jsColor');
|
||||
if (d.head) {
|
||||
this.remStyle();
|
||||
}
|
||||
return this.observe();
|
||||
},
|
||||
observe: function() {
|
||||
var onMutationObserver;
|
||||
|
||||
if (window.MutationObserver) {
|
||||
Style.observer = new MutationObserver(onMutationObserver = this.wrapper);
|
||||
return Style.observer.observe(d, {
|
||||
Style.observer = new MutationObserver(onMutationObserver = Style.wrapper);
|
||||
return Style.observer.observe(d.head, {
|
||||
childList: true,
|
||||
subtree: true
|
||||
});
|
||||
} else {
|
||||
return $.on(d, 'DOMNodeInserted', this.wrapper);
|
||||
return $.on(d.head, 'DOMNodeInserted', Style.wrapper);
|
||||
}
|
||||
},
|
||||
wrapper: function() {
|
||||
if (d.head) {
|
||||
Style.remStyle();
|
||||
if (d.readyState === 'complete') {
|
||||
if (Style.observer) {
|
||||
return Style.observer.disconnect();
|
||||
} else {
|
||||
return $.off(d, 'DOMNodeInserted', Style.wrapper);
|
||||
}
|
||||
var first;
|
||||
|
||||
first = {
|
||||
addedNodes: d.head.children
|
||||
};
|
||||
Style.remStyle(first);
|
||||
if (d.readyState === 'complete') {
|
||||
if (Style.observer) {
|
||||
return Style.observer.disconnect();
|
||||
} else {
|
||||
return $.off(d, 'DOMNodeInserted', Style.wrapper);
|
||||
}
|
||||
}
|
||||
},
|
||||
remStyle: function() {
|
||||
var href, i, node, nodes;
|
||||
remStyle: function(_arg) {
|
||||
var addedNodes, href, i, node;
|
||||
|
||||
nodes = d.head.children;
|
||||
i = nodes.length;
|
||||
addedNodes = _arg.addedNodes;
|
||||
i = addedNodes.length;
|
||||
while (i--) {
|
||||
node = nodes[i];
|
||||
if (node.id || !['STYLE', 'LINK'].contains(node.nodeName) || node.rel && !(/stylesheet/.test(node.rel) || (/flags.*\.css$/.test(href = node.href) || href.slice(0, 4) === 'data')) || (/\.typeset/.test(node.textContent))) {
|
||||
node = addedNodes[i];
|
||||
if (node.nodeName === 'STYLE' && node.id || !['LINK', 'STYLE'].contains(node.nodeName) || node.rel && (!/stylesheet/.test(node.rel) || /flags.*\.css$/.test(href = node.href) || href.slice(0, 4) === 'data') || /\.typeset/.test(node.textContent)) {
|
||||
continue;
|
||||
}
|
||||
$.rm(node);
|
||||
|
||||
@ -12124,7 +12124,21 @@
|
||||
|
||||
Style = {
|
||||
init: function() {
|
||||
this.setup();
|
||||
var i, item, items, theme;
|
||||
|
||||
theme = Themes[Conf['theme']] || Themes['Yotsuba B'];
|
||||
Style.svg = $.el('div', {
|
||||
id: 'svg_filters'
|
||||
});
|
||||
items = [['layoutCSS', Style.layout, 'layout'], ['themeCSS', Style.theme(theme), 'theme'], ['emojiCSS', Emoji.css(), 'emoji'], ['dynamicCSS', Style.dynamic(), 'dynamic'], ['icons', "", 'icons'], ['paddingSheet', "", 'padding'], ['mascot', "", 'mascotSheet']];
|
||||
i = 0;
|
||||
while (item = items[i++]) {
|
||||
Style[item[0]] = $.addStyle(item[1], item[2]);
|
||||
}
|
||||
$.addStyle(JSColor.css(), 'jsColor');
|
||||
$.asap((function() {
|
||||
return d.head;
|
||||
}), Style.observe);
|
||||
$.asap((function() {
|
||||
return d.body;
|
||||
}), this.asapInit);
|
||||
@ -12186,57 +12200,42 @@
|
||||
});
|
||||
}
|
||||
},
|
||||
setup: function() {
|
||||
var i, item, items, theme;
|
||||
|
||||
theme = Themes[Conf['theme']] || Themes['Yotsuba B'];
|
||||
Style.svg = $.el('div', {
|
||||
id: 'svg_filters'
|
||||
});
|
||||
items = [['layoutCSS', Style.layout, 'layout'], ['themeCSS', Style.theme(theme), 'theme'], ['emojiCSS', Emoji.css(), 'emoji'], ['dynamicCSS', Style.dynamic(), 'dynamic'], ['icons', "", 'icons'], ['paddingSheet', "", 'padding'], ['mascot', "", 'mascotSheet']];
|
||||
i = 0;
|
||||
while (item = items[i++]) {
|
||||
Style[item[0]] = $.addStyle(item[1], item[2]);
|
||||
}
|
||||
$.addStyle(JSColor.css(), 'jsColor');
|
||||
if (d.head) {
|
||||
this.remStyle();
|
||||
}
|
||||
return this.observe();
|
||||
},
|
||||
observe: function() {
|
||||
var onMutationObserver;
|
||||
|
||||
if (window.MutationObserver) {
|
||||
Style.observer = new MutationObserver(onMutationObserver = this.wrapper);
|
||||
return Style.observer.observe(d, {
|
||||
Style.observer = new MutationObserver(onMutationObserver = Style.wrapper);
|
||||
return Style.observer.observe(d.head, {
|
||||
childList: true,
|
||||
subtree: true
|
||||
});
|
||||
} else {
|
||||
return $.on(d, 'DOMNodeInserted', this.wrapper);
|
||||
return $.on(d.head, 'DOMNodeInserted', Style.wrapper);
|
||||
}
|
||||
},
|
||||
wrapper: function() {
|
||||
if (d.head) {
|
||||
Style.remStyle();
|
||||
if (d.readyState === 'complete') {
|
||||
if (Style.observer) {
|
||||
return Style.observer.disconnect();
|
||||
} else {
|
||||
return $.off(d, 'DOMNodeInserted', Style.wrapper);
|
||||
}
|
||||
var first;
|
||||
|
||||
first = {
|
||||
addedNodes: d.head.children
|
||||
};
|
||||
Style.remStyle(first);
|
||||
if (d.readyState === 'complete') {
|
||||
if (Style.observer) {
|
||||
return Style.observer.disconnect();
|
||||
} else {
|
||||
return $.off(d, 'DOMNodeInserted', Style.wrapper);
|
||||
}
|
||||
}
|
||||
},
|
||||
remStyle: function() {
|
||||
var href, i, node, nodes;
|
||||
remStyle: function(_arg) {
|
||||
var addedNodes, href, i, node;
|
||||
|
||||
nodes = d.head.children;
|
||||
i = nodes.length;
|
||||
addedNodes = _arg.addedNodes;
|
||||
i = addedNodes.length;
|
||||
while (i--) {
|
||||
node = nodes[i];
|
||||
if (node.id || !['STYLE', 'LINK'].contains(node.nodeName) || node.rel && !(/stylesheet/.test(node.rel) || (/flags.*\.css$/.test(href = node.href) || href.slice(0, 4) === 'data')) || (/\.typeset/.test(node.textContent))) {
|
||||
node = addedNodes[i];
|
||||
if (node.nodeName === 'STYLE' && node.id || !['LINK', 'STYLE'].contains(node.nodeName) || node.rel && (!/stylesheet/.test(node.rel) || /flags.*\.css$/.test(href = node.href) || href.slice(0, 4) === 'data') || /\.typeset/.test(node.textContent)) {
|
||||
continue;
|
||||
}
|
||||
$.rm(node);
|
||||
|
||||
@ -1,6 +1,28 @@
|
||||
Style =
|
||||
init: ->
|
||||
@setup()
|
||||
theme = Themes[Conf['theme']] or Themes['Yotsuba B']
|
||||
Style.svg = $.el 'div',
|
||||
id: 'svg_filters'
|
||||
|
||||
items = [
|
||||
['layoutCSS', Style.layout, 'layout']
|
||||
['themeCSS', Style.theme(theme), 'theme']
|
||||
['emojiCSS', Emoji.css(), 'emoji']
|
||||
['dynamicCSS', Style.dynamic(), 'dynamic']
|
||||
['icons', "", 'icons']
|
||||
['paddingSheet', "", 'padding']
|
||||
['mascot', "", 'mascotSheet']
|
||||
]
|
||||
|
||||
i = 0
|
||||
while item = items[i++]
|
||||
Style[item[0]] = $.addStyle item[1], item[2]
|
||||
|
||||
# Non-customizable
|
||||
$.addStyle JSColor.css(), 'jsColor'
|
||||
|
||||
$.asap (-> d.head), Style.observe
|
||||
|
||||
$.asap (-> d.body), @asapInit
|
||||
$.on window, "resize", Style.padding
|
||||
$.ready @readyInit
|
||||
@ -47,61 +69,34 @@ Style =
|
||||
$.on exLink, "click", ->
|
||||
setTimeout Rice.nodes, 100
|
||||
|
||||
setup: ->
|
||||
theme = Themes[Conf['theme']] or Themes['Yotsuba B']
|
||||
Style.svg = $.el 'div',
|
||||
id: 'svg_filters'
|
||||
|
||||
items = [
|
||||
['layoutCSS', Style.layout, 'layout']
|
||||
['themeCSS', Style.theme(theme), 'theme']
|
||||
['emojiCSS', Emoji.css(), 'emoji']
|
||||
['dynamicCSS', Style.dynamic(), 'dynamic']
|
||||
['icons', "", 'icons']
|
||||
['paddingSheet', "", 'padding']
|
||||
['mascot', "", 'mascotSheet']
|
||||
]
|
||||
|
||||
i = 0
|
||||
while item = items[i++]
|
||||
Style[item[0]] = $.addStyle item[1], item[2]
|
||||
|
||||
# Non-customizable
|
||||
$.addStyle JSColor.css(), 'jsColor'
|
||||
|
||||
if d.head
|
||||
@remStyle()
|
||||
@observe()
|
||||
|
||||
observe: ->
|
||||
if window.MutationObserver
|
||||
Style.observer = new MutationObserver onMutationObserver = @wrapper
|
||||
Style.observer.observe d,
|
||||
Style.observer = new MutationObserver onMutationObserver = Style.wrapper
|
||||
Style.observer.observe d.head,
|
||||
childList: true
|
||||
subtree: true
|
||||
else
|
||||
$.on d, 'DOMNodeInserted', @wrapper
|
||||
$.on d.head, 'DOMNodeInserted', Style.wrapper
|
||||
|
||||
wrapper: ->
|
||||
if d.head
|
||||
Style.remStyle()
|
||||
first = {addedNodes: d.head.children}
|
||||
Style.remStyle(first)
|
||||
|
||||
if d.readyState is 'complete'
|
||||
if Style.observer
|
||||
Style.observer.disconnect()
|
||||
else
|
||||
$.off d, 'DOMNodeInserted', Style.wrapper
|
||||
if d.readyState is 'complete'
|
||||
if Style.observer
|
||||
Style.observer.disconnect()
|
||||
else
|
||||
$.off d, 'DOMNodeInserted', Style.wrapper
|
||||
|
||||
remStyle: ->
|
||||
nodes = d.head.children
|
||||
i = nodes.length
|
||||
remStyle: ({addedNodes}) ->
|
||||
i = addedNodes.length
|
||||
while i--
|
||||
node = nodes[i]
|
||||
node = addedNodes[i]
|
||||
|
||||
continue if node.id or
|
||||
!['STYLE', 'LINK'].contains(node.nodeName) or
|
||||
node.rel and !(/stylesheet/.test(node.rel) or (/flags.*\.css$/.test(href = node.href) or href[..3] is 'data')) or
|
||||
(/\.typeset/.test node.textContent)
|
||||
continue if node.nodeName is 'STYLE' and node.id or
|
||||
!['LINK', 'STYLE'].contains(node.nodeName) or
|
||||
node.rel and ((!/stylesheet/.test(node.rel) or /flags.*\.css$/.test(href = node.href) or href[..3] is 'data')) or
|
||||
/\.typeset/.test node.textContent
|
||||
$.rm node
|
||||
return
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user