eight
6d32ffb76b
WIP
2018-10-04 12:46:19 +08:00
eight
0f148eac32
WIP
2018-10-04 03:35:07 +08:00
eight
24b1eea8a4
Merge branch 'master' of https://github.com/openstyles/stylus into dev-exclusions
2018-10-03 15:00:07 +08:00
eight
5cbe8a8d78
Add: fetch style object from DB directly in the editor ( #507 )
2018-10-02 20:22:18 +08:00
eight
cc2980b647
Drop: parserlib-loader
2018-10-01 22:30:16 +08:00
eight
08adcb60f2
Merge branch 'master' into dev-usercss-meta
2018-10-01 22:29:39 +08:00
eight
2fd531e253
Rewrite linter system ( #487 )
...
* Add: implement new linter system
* Refactor: pull out editor worker
* Switch to new linter and worker
* Enable eslint cache
* Fix: undefined error
* Windows compatibility
* Fix: refresh linter if the editor.linter changes
* Add: stylelint
* Add: getStylelintRules, getCsslintRules
* Fix: logic to get correct linter
* WIP: linter-report
* Fix: toggle hidden state
* Add: matain the order of lint report for section editor
* Add: unhook event
* Add: gotoLintIssue
* Fix: shouldn't delete rule.init
* Add: linter-help-dialog
* Drop linterConfig
* Add: linter-config-dialog, cacheFn
* Add: use cacheFn
* Drop lint.js
* Add: refresh. Fix report order
* Fix: hide empty table
* Add: updateCount. Fix table caption
* Switch to new linter/worker
* Fix: remove unneeded comment
* Fix: cacheFn -> cacheFirstCall
* Fix: use cacheFirstCall
* Fix: cache metaIndex
* Fix: i < trs.length
* Fix: drop isEmpty
* Fix: expose some simple states to global
* Fix: return object code style
* Fix: use proxy to reflect API
* Fix: eslint-disable-line -> eslint-disable-next-line
* Fix: requestId -> id
* Fix: one-liner
* Fix: one-liner
* Fix: move dom event block to top
* Fix: pending -> pendingResponse
* Fix: onSuccess -> onUpdated
* Fix: optimize row removing when i === 0
* Fix: hook/unhook -> enableForEditor/disableForEditor
* Fix: linter.refresh -> linter.run
* Fix: some shadowing
* Fix: simplify getAnnotations
* Fix: cacheFirstCall -> memoize
* Fix: table.update -> table.updateCaption
* Fix: unneeded reassign
* Fix: callbacks -> listeners
* Fix: don't compose but extend
* Refactor: replace linter modules with linter-defaults and linter-engines
* Fix: implement linter fallbacks
* Fix: linter.onChange -> linter.onLintingUpdated
* Fix: cms -> tables
* Fix: parseMozFormat is not called correctly
* Move csslint-loader to background
* Fix: watch config changes
* Fix: switch to LINTER_DEFAULTS
* Fix: csslint-loader -> parserlib-loader
2018-10-01 09:03:17 -05:00
eight
39a6d1909f
Fix: prefs doesn't work in FF's private windows. Add web-ext. Drop prefs.readOnlyValues
2018-09-28 00:26:29 +08:00
eight
ab0ef239cf
Change: move styleCodeEmpty to sections-util, load colorConverter in background worker
2018-09-26 09:34:57 +08:00
eight
a7cfeb22e4
Fix: window is undefined
2018-09-25 22:54:40 +08:00
eight
3d32b0428b
Fix: vars might be empty
2018-09-25 21:38:40 +08:00
eight
a3e7915199
Fix: use promise API
2018-09-25 21:11:54 +08:00
eight
5d07a8cd4e
Fix: buildMeta now returns a promise
2018-09-25 21:11:09 +08:00
eight
a004bc3c7d
Move styleCodeEmpty to util
2018-09-25 21:10:35 +08:00
eight
41ac66a137
Add: background worker
2018-09-25 21:09:40 +08:00
eight
ffb13bf1db
Enhance: move moz-parser/meta-parser/usercss compiler to worker
2018-09-25 21:09:04 +08:00
eight
64aa9fcf53
Add: background worker
2018-09-25 17:34:54 +08:00
tophf
af77b55eea
fixup 2fdfd966
...
#482
2018-08-27 20:42:51 +03:00
tophf
2fdfd96699
use the new originalDigest in update UI
...
...when force-updating a locally edited style that turned out to be equal to the remote one
fixes #482
2018-08-27 20:39:36 +03:00
tophf
c0c5f1dbcc
avoid overwriting existing usercss on saving a new one
2018-08-18 23:17:20 +03:00
tophf
406a7cd4c0
FF bug workaround: apply styles to more iframes
2018-08-09 21:22:26 +03:00
tophf
be94303bad
simplify onInstalled
2018-08-06 18:20:57 +03:00
Rob Garrison
8a6011de8c
Attempt to update icon count
2018-07-22 11:21:45 -05:00
Rob Garrison
4fcb1a88d7
Fix empty exclusion storage error
2018-07-22 11:21:45 -05:00
Rob Garrison
bfe54ab4c4
Add tab communication
2018-07-22 11:21:45 -05:00
Rob Garrison
e94c7edb38
Attempt to fix popup exclusion issues
2018-07-22 11:21:44 -05:00
Rob Garrison
2b4a1a5635
Modify input method
2018-07-22 11:21:44 -05:00
Rob Garrison
68dfa0153c
Add style exclusions. Closes #113
2018-07-22 11:21:43 -05:00
tophf
15c3c7c8ab
fixup 3418ac9c: explicitly set the optional parameter
...
fixes #423
2018-07-09 09:10:36 +03:00
tophf
0d7b8152e8
code cosmetics
2018-07-05 15:46:01 +03:00
tophf
d8b776bedf
try installing from full code if 'sections' is empty in style json
...
fixes #414
2018-07-05 15:46:01 +03:00
tophf
d37b113d0d
retry on HTTP status 429 "Too Many Requests"
2018-07-02 17:20:22 +03:00
tophf
711a3afeee
logQueue can be empty
2018-05-24 21:09:00 +03:00
tophf
82b797738a
use Alarms API since js timers are limited to 596 hours
...
fixes #388
2018-05-14 08:56:31 +03:00
tophf
d36fea27ad
fixup 3418ac9c: append to updateLog
2018-05-09 18:33:28 +03:00
tophf
3548a6caed
fixup c26fa76f: parameter is an object =_='
2018-05-09 18:11:59 +03:00
tophf
1f347df8cf
fixup c26fa76f: Set#has
...
#380
2018-05-04 22:08:19 +03:00
tophf
c26fa76f53
retry the update check on 503
...
fixes #380
2018-04-30 20:05:52 +03:00
tophf
0a082f30d2
Chrome with NativeCrxBindings: ignore lastError in injectCS
2018-04-25 10:37:07 +03:00
tophf
677bf7b9bf
Chrome with NativeCrxBindings: check lastError in injectCS
2018-04-24 22:16:21 +03:00
tophf
e80efa7604
FF: hotkeys dialog
2018-04-12 21:28:45 +03:00
tophf
8524c76f66
setBadgeText has a callback in Chrome 67+
2018-04-05 00:41:05 +03:00
tophf
36b0e8f4bb
clear entire cache when updating styles with global sections
2018-03-22 04:26:43 +03:00
tophf
4901e97f9f
open USO style settings even if the site tab is auto-activated
2018-03-13 18:35:28 +03:00
tophf
a7774c26fb
bump version
2018-03-13 17:24:10 +03:00
tophf
40054902e9
USO can't handle POST requests for style json
2018-03-13 17:23:47 +03:00
tophf
28ef5572ba
FF: ensure styles are applied to about:blank iframes
...
fixes #215
2018-03-08 19:25:09 +03:00
tophf
850b7dc635
clear localStorage for CM themes on extension update
2018-03-03 23:45:14 +03:00
tophf
918888ffb0
code cosmetics
2018-02-16 18:05:25 +03:00
DecentM
44a11508ff
Add OpenUserCSS support ( #328 )
2018-02-15 11:27:00 +03:00
tophf
f6991c4f57
fallback to 'path' when Canvas is blocked in FF
...
fixes #335
2018-01-30 19:42:30 +03:00
tophf
02989edb05
eat unclosed comments
2018-01-30 18:59:28 +03:00
tophf
90aacefff8
ignore @charset when deciding if section is empty
...
fixes #337
2018-01-30 18:59:28 +03:00
tophf
ca5f8c941b
don't refresh own tabs twice
...
fixes #336
2018-01-29 04:37:24 +03:00
tophf
bc2da3f66a
prevent hanging when parent frame is absent
2018-01-20 02:28:20 +03:00
tophf
a3962b7adf
put https://top.site.origin in "stylus-iframe" attr
2018-01-19 15:37:26 +03:00
tophf
72e0f5fbf5
update refreshAllTabs cache and icon on disabling livepreview
2018-01-14 17:32:25 +03:00
tophf
b42dfc8300
fixup bb34538d: decrement styles.length on delete
2018-01-14 15:40:36 +03:00
tophf
eabfaca08e
run webNavUsercssInstallerFF on the entire githubusercontent.com
...
fixes #329
2018-01-14 15:23:09 +03:00
tophf
bb34538da0
smart invalidateCache: try to update filters in-place
2018-01-12 00:54:40 +03:00
tophf
989df35b05
live preview in editor
...
* refreshAllTabs was extracted
* ...and fixed to use each frame's url when getting the styles
2018-01-12 00:54:36 +03:00
tophf
650cf3521b
correctly strip 'code' from style hash
2018-01-10 22:18:35 +03:00
tophf
9fdabe3582
simplify getStyles
...
* 'asHash' implies 'enabled'
* 'length' is added to the style hash
2018-01-10 22:18:30 +03:00
tophf
bbfda6d33b
expose findUsercss
2018-01-09 19:13:37 +03:00
tophf
022e588c97
allow errors in usercss when saving in editor and live-reloading
2018-01-07 16:36:30 +03:00
tophf
87d28d3fc7
silence eslint
2018-01-07 11:52:46 +03:00
tophf
71c3e0c7a8
extract and improve dummy chrome.storage in FF
...
* chrome.storage.onChanged supported in own pages
* values are stored in the background page
* chrome.storage in own pages accesses that background storage
2018-01-04 17:04:23 +03:00
tophf
2374c88e1b
extract styleSectionsEqual
2018-01-04 16:43:54 +03:00
tophf
9be2f942c7
restore default template on saving empty code
...
fixes 3418ac9c
2018-01-04 16:41:55 +03:00
tophf
1eea8fdbbf
fixups for refreshAllTabs
2018-01-03 18:26:31 +03:00
tophf
a572620765
cache icon imageData because the browser doesn't
2018-01-03 10:44:12 +03:00
tophf
3f570c4d3a
FF injects content script automatically
2018-01-03 10:44:12 +03:00
tophf
3418ac9cb9
FF: support private/container tabs
2018-01-03 10:43:56 +03:00
tophf
5bc4206593
reuse existing usercss installer tab
...
A few additional checks were needed to circumvent FF bugs
so openURL was refactored to keep the code readable
2017-12-31 17:59:32 +03:00
tophf
8d9c7acb3c
only preserve old style name on update if it was actually customized
...
We didn't detect that previously and just blindly assumed that a local name is always customized by a user, which is nonsense, obviously. To ensure reliable detection a new property is added to the style object: "originalName". From now on the styles that didn't change their name remotely will be successfully marked as having non-customized names, hence the names will update along with the code. Should be like 99% of styles. As for the remaining 1%, welp, only uninstalling and reinstalling the style anew would switch to the new remote name.
2017-12-13 09:12:54 +03:00
tophf
51ad84e6a9
don't open the homepage on first install as it's not helpful
...
see #112
2017-12-13 05:35:02 +03:00
tophf
ad692d4f61
chrome.contextMenus.update bug is fixed in Chrome 65.0.3289
...
#272
2017-12-12 06:20:07 +03:00
tophf
adabb9aeff
use LZString alias for LZStringUnsafe
2017-12-11 04:49:59 +03:00
tophf
6fb9d2d157
switch to a much faster LZStringUnsafe
...
https://github.com/pieroxy/lz-string/pull/98
2017-12-10 11:30:57 +03:00
tophf
405400de68
move 'tempUsercssCode' cleanup to usercss helper
2017-12-10 10:11:18 +03:00
tophf
5d54ce3464
DRY chromeLocal and chromeSync
2017-12-10 10:11:18 +03:00
tophf
42e458ad69
saved.name is absent when checking in manager
2017-12-09 23:27:40 +03:00
tophf
9486c7f3df
don't report usercss as installed on USO if homepage matches
2017-12-09 04:43:02 +03:00
tophf
f337e18515
recognize usercss @updateURL
...
* installation URL is preferred - same behavior as before
* @updateURL is used when the style was drag'n'dropped into the manage page
because there's no real URL in this case
* install-usercss page shows the new update URL, which is set as per the above,
under the checkbox that enables updates
2017-12-06 22:35:19 +03:00
tophf
1785bac9d2
fix usercss updater: skip if code hasn't changed
2017-12-04 10:28:24 +03:00
tophf
f4677a7b7b
actually use the name when saving
2017-12-03 20:32:50 +03:00
tophf
c11c100cbb
circumvent the bug with disabling check marks in Chrome 62+
...
fixes #272
2017-12-02 16:13:40 +03:00
tophf
7de3e37a51
show "Style installed" in manager for styles added while it's open
2017-12-02 07:07:12 +03:00
tophf
cbe90272b9
silence some useless warnings in console
2017-11-29 17:59:01 +03:00
tophf
ff175d9af4
store installDate and updateDate
2017-11-26 20:47:23 +03:00
tophf
288f347e40
fixup 978e5ca9
and ee86ef30: editor.contextDelete option
2017-11-26 14:20:44 +03:00
tophf
e4de02995c
fixup 978e5ca9: don't reuse the same object in async code!
2017-11-26 00:04:19 +03:00
tophf
6aef6cdcd7
0 is a valid tab id
2017-11-25 20:24:15 +03:00
tophf
aedb02bbb1
install usercss from raw.githubusercontent.com
2017-11-25 18:24:37 +03:00
tophf
59d32e6f2f
inline and simplify closeTab()
2017-11-25 18:00:41 +03:00
tophf
978e5ca9f0
sendMessage()
...
Promise mode [default]:
- rejects on receiving {__ERROR__: message} created by
background.js::onRuntimeMessage
- suppresses chrome.runtime.lastError
by browserAction.setText which lacks a callback param in chrome API
Callback mode:
- enabled by passing a second param
- doesn't suppress chrome.runtime.lastError
2017-11-25 18:00:38 +03:00
tophf
8f04e17d27
fix #223 - Android compatibility
2017-11-25 16:25:20 +03:00
tophf
8c5471092c
rework install-usercss: CSS, layout, warnings
2017-11-24 13:19:10 +03:00
tophf
00ead83da9
don't hardcode homepage URL, extract it from "Get Help" translation
2017-11-21 09:48:55 +03:00
tophf
fc5c00e37d
all actions must always return a Promise
2017-11-15 07:11:46 +03:00