AutoControl support
unread,Jan 15, 2024, 3:03:05 PM1/15/24Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Chromium Extensions, Oliver Dunk, Chromium Extensions, AutoControl support
if users trust your extension, they should feel comfortable leaving it running.
Users disable the extension to avoid consuming system resources unnecessarily. Our extension in particular runs a persistent background page as well as a native messaging host. Those are two processes that even though they consume very little, some users still prefer to keep it disabled because of basic common sense. Why keep a program running if your are not using it.
Running a native host means the extension has full access to the entire computer, so trust is definitely not an issue in our case. Our users have learned to trust the extension based on years of good reputation.
So, it's not reasonable that we ask users to keep the extension running permanently if they are using it sparsely.
Additionally, the suggested workaround for achieving "Use case 2" requires injecting a script into every single page the user visits. This goes against one of the key advantages of being a native extension in our case, which is that we don't need to inject code into every page in order to provide unrestricted keyboard and mouse shortcuts.
Here's a quote directly from the extension's description:
"AutoControl doesn't inject code into every page you visit, thus leaving their functionality intact, which avoids sluggish pages and conserves CPU and memory."
AutoControl inject code only when the user executes an action that requires doing so. If we had to inject code over an over again into every page, then one of the key advantages of using a native host would vanished.
Unfortunately, we cannot use that API since it requires a non-optional permission. We cannot force all users to accept such a powerful permission without a good reason.
If the "debugger" permission was optional we could consider the possibility, but unfortunately it's not.
One example of the trade-offs here is making the ecosystem safer for the majority of users
You already suggested a workaround that allows arbitrary code injection at any moment. So, how is the ecosystem safer by not supporting this use case in a proper way?