On Fri, Oct 23, 2020 at 09:58:33AM -0300, Antonela Debiasi wrote:
4.3 Quickstart
Previous experiences of clients bootstrapping Tor without asking to Connect have been successful. Onionshare, the popular Tor sharing files app, doesn't request user action to bootstrap Tor. Instead, a minimal UI progress bar is shown during the 1 or 2 seconds bootstrapping happens. OnionBrowser, the Tor Browser for iOS also bootstrap automatically. Brave's Tor startup is transparent to the user and the bootstrapping visual progress feedback happens at the URL bar.
Quickstart is the feature that enables an automatic Tor connection in Tor Browser.
As a first step in introducing this feature, we may want to make this Opt-In by allowing users to give consent and save this setting in our persistent configuration.
* Phase One - Userflow
The user opens the app; the connecting screen appears. Like the current flow, user needs to click in the Connect button to connect to Tor. On first time users, we ask consent for automatic connections. [9, IMG 0.0]
Opted-in recurrent users will go directly to `about:tor`. We will disable the URL bar and we will rely on a loading bar UI to render immediate visual feedback.
A work in progress user interface for desktop [9] and mobile [10] is attached to the main ticket [12].
One usability issue that remains is which mechanism we provide to users such that they can *disable* quickstart at some time in the future without needing to open (and bootstrap) Tor Browser [0]. With this feature, the user "does something" and is presented with the Connect screen where they can configure tor before bootstrapping begins. Ideally the mechanism should be cross-platform.
One suggestion is adding a hotkey shortcut and Tor Browser looks for those keys being pressed at startup. This unfortunately creates a race condition between starting Tor Browser and the user pressing those keys on the keyboard, but this is a common solution for other similar problems.
Another possible solution may be adding an option on the context menu of the launcher (icon), and add a new command line flag.
Discoverability is a concern for all of these options, as well.
If you have any ideas or suggestions, please let us know!
[0] https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/34345