Merge branch 'midori'
This commit is contained in:
commit
0d06f4c350
@ -291,7 +291,6 @@ module.exports = (grunt) ->
|
||||
GM_deleteValue: true
|
||||
GM_listValues: true
|
||||
GM_openInTab: true
|
||||
GM_info: true
|
||||
GM_xmlhttpRequest: true
|
||||
cloneInto: true
|
||||
chrome: true
|
||||
|
||||
@ -195,14 +195,6 @@ Main =
|
||||
$.set 'previousversion', g.VERSION
|
||||
|
||||
if Conf['Show Support Message']
|
||||
<% if (type === 'userscript') { %>
|
||||
GMver = GM_info.version.split '.'
|
||||
for v, i in "<%= meta.min.greasemonkey %>".split '.'
|
||||
continue if v is GMver[i]
|
||||
(v < GMver[i]) or new Notice 'warning', "Your version of Greasemonkey is outdated (v#{GM_info.version} instead of v<%= meta.min.greasemonkey %> minimum) and <%= meta.name %> may not operate correctly.", 30
|
||||
break
|
||||
<% } %>
|
||||
|
||||
try
|
||||
localStorage.getItem '4chan-settings'
|
||||
catch err
|
||||
|
||||
@ -221,9 +221,12 @@ $.event = (event, detail, root=d) ->
|
||||
|
||||
$.open =
|
||||
<% if (type === 'userscript') { %>
|
||||
GM_openInTab
|
||||
if GM_openInTab?
|
||||
GM_openInTab
|
||||
else
|
||||
(url) -> window.open url, '_blank'
|
||||
<% } else { %>
|
||||
(URL) -> window.open URL, '_blank'
|
||||
(url) -> window.open url, '_blank'
|
||||
<% } %>
|
||||
|
||||
$.debounce = (wait, fn) ->
|
||||
@ -415,15 +418,39 @@ do ->
|
||||
# http://wiki.greasespot.net/Main_Page
|
||||
$.oldValue = {}
|
||||
|
||||
if GM_getValue?
|
||||
$.getValue = GM_getValue
|
||||
$.setValue = (key, val) ->
|
||||
GM_setValue key, val
|
||||
if key of $.syncing
|
||||
$.oldValue[key] = val
|
||||
localStorage[key] = val # for `storage` events
|
||||
$.deleteValue = (key) ->
|
||||
GM_deleteValue key
|
||||
if key of $.syncing
|
||||
delete $.oldValue[key]
|
||||
delete localStorage[key] # for `storage` events
|
||||
$.listValues = GM_listValues
|
||||
else
|
||||
$.getValue = (key) -> localStorage[key]
|
||||
$.setValue = (key, val) ->
|
||||
$.oldValue[key] = val if key of $.syncing
|
||||
localStorage[key] = val
|
||||
$.deleteValue = (key) ->
|
||||
delete $.oldValue[key] if key of $.syncing
|
||||
delete localStorage[key]
|
||||
$.listValues = ->
|
||||
key for key of localStorage when key[...g.NAMESPACE.length] is g.NAMESPACE
|
||||
|
||||
$.sync = (key, cb) ->
|
||||
key = g.NAMESPACE + key
|
||||
$.syncing[key] = cb
|
||||
$.oldValue[key] = GM_getValue key
|
||||
$.oldValue[key] = $.getValue key
|
||||
|
||||
do ->
|
||||
onChange = (key) ->
|
||||
return unless cb = $.syncing[key]
|
||||
newValue = GM_getValue key
|
||||
newValue = $.getValue key
|
||||
return if newValue is $.oldValue[key]
|
||||
if newValue?
|
||||
$.oldValue[key] = newValue
|
||||
@ -443,12 +470,7 @@ $.delete = (keys) ->
|
||||
unless keys instanceof Array
|
||||
keys = [keys]
|
||||
for key in keys
|
||||
key = g.NAMESPACE + key
|
||||
GM_deleteValue key
|
||||
if key of $.syncing
|
||||
delete $.oldValue[key]
|
||||
# for `storage` events
|
||||
localStorage.removeItem key
|
||||
$.deleteValue g.NAMESPACE + key
|
||||
return
|
||||
|
||||
$.get = (key, val, cb) ->
|
||||
@ -459,27 +481,18 @@ $.get = (key, val, cb) ->
|
||||
cb = val
|
||||
$.queueTask ->
|
||||
for key of items
|
||||
if val = GM_getValue g.NAMESPACE + key
|
||||
if val = $.getValue g.NAMESPACE + key
|
||||
items[key] = JSON.parse val
|
||||
cb items
|
||||
|
||||
$.set = do ->
|
||||
set = (key, val) ->
|
||||
key = g.NAMESPACE + key
|
||||
val = JSON.stringify val
|
||||
GM_setValue key, val
|
||||
if key of $.syncing
|
||||
$.oldValue[key] = val
|
||||
# for `storage` events
|
||||
localStorage.setItem key, val
|
||||
|
||||
(keys, val, cb) ->
|
||||
if typeof keys is 'string'
|
||||
set keys, val
|
||||
else
|
||||
set key, value for key, value of keys
|
||||
cb = val
|
||||
cb?()
|
||||
$.set = (keys, val, cb) ->
|
||||
if typeof keys is 'string'
|
||||
$.setValue(g.NAMESPACE + keys, JSON.stringify val)
|
||||
else
|
||||
for key, value of keys
|
||||
$.setValue(g.NAMESPACE + key, JSON.stringify value)
|
||||
cb = val
|
||||
cb?()
|
||||
|
||||
$.clear = (cb) ->
|
||||
# XXX https://github.com/greasemonkey/greasemonkey/issues/2033
|
||||
@ -490,7 +503,7 @@ $.clear = (cb) ->
|
||||
boards.push 'qa'
|
||||
$.delete ("cooldown.#{board}" for board in boards)
|
||||
try
|
||||
$.delete GM_listValues().map (key) -> key.replace g.NAMESPACE, ''
|
||||
$.delete $.listValues().map (key) -> key.replace g.NAMESPACE, ''
|
||||
cb?()
|
||||
<% } %>
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user