-
Notifications
You must be signed in to change notification settings - Fork 49
Description
Hello Quick Javascript Switcher users!
As some of you ask me to explain the permissions, here is a detailled topic:
Differences between v1 and v2
First thing, you should know that QJS v2 requires exactly the same permissions than QJS v1, except the debugger permission.
You can find the v2 permissions here:
quick-javascript-switcher/src/manifest.js
Lines 8 to 15 in 06bc105
| permissions: [ | |
| "contextMenus", | |
| // "activeTab", | |
| "tabs", | |
| "contentSettings", | |
| "storage", | |
| "debugger", | |
| ], |
And the v1 permissions here:
quick-javascript-switcher/src/manifest.json
Lines 14 to 19 in 766bde5
| , "permissions" : | |
| [ "tabs" | |
| , "contentSettings" | |
| , "contextMenus" | |
| , "storage" | |
| ] |
Tabs permission
- Read and change your data on all websites
- Change the settings that control websites access to features such as ... JavaScript
It's too much permission, I know, and I tried to do the Job with a restricted activeTab permission (commented here...), but it was too restrictive.
With activeTab permission you need to click on the extension icon to authorize it on the tab.
And it's not authorized by url, or domain, it's by tab...
So if you close the tab, you need to reactivate the extension on this tab again, and at each time.
So you can't see the JS state of the tab until you click on it, and it's a big UX problem for me:

So I had to make a choice, better UX or better permissions?
I've opted for better UX.
Because the code is Open Source, so you can looking at the code, and I think it's a good warranty.
For example, check the use cases of chrome.tabs:
Important
If someone can give me a better solution to reduce the permission, without loosing UX, i'm very interested.
Debugger permission
This permission was required for the new pause/resume JS feature, but removed since 2.1.0 because users complain about this permission, and it seems that the feature is not very useful.
