Privacy Browser 3.0 has been released. The major feature is the long awaited tabbed browsing.
Using a tab layout generally works well, and in some cases is even better than I imagined it would be. The favorite icon has been moved from the URL bar down to the left of each tab. This helps with identifying tabs and also frees up valuable space in the URL bar. Adding a new tab is accomplished by tapping the + icon. Closing a tab can be done from the first item in the navigation menu. I considered placing a close icon on each tab, but I was concerned that it would be too easy to accidentally close a tab when trying to switch between them. (For consistency and ease of access, Clear and Exit was also moved up to the top of the navigation menu.)
One of the things I discovered is that Android’s WebView only allows enabling and disabling first-party cookies by app, not by WebView (as is the case with third-party cookies). This limitation will be removed in the 4.x series with Privacy WebView, but until then I have added a warning to the first-party cookies setting.
Because some people don’t like links littering their browser with excess tabs, I created a setting to disable the opening of intents in new tabs. Intents are URLs that are sent from other apps. For example, if an email contains a URL, tapping on it in the email app sends an intent to the browser requesting that it load the URL.
I moved the URL loading progress bar from the bottom of the app bar to the top of the WebView. Otherwise, the progress bar would not be visible when the app bar is scrolled off the screen or when full screen browsing mode is enabled with the app bar hidden.
A bug was fixed that caused Privacy Browser to restart every time a Bluetooth keyboard was connected/disconnected (including when a Bluetooth keyboard would enter/exit power saving mode). It turns out that this, for some crazy reason, is the default Android behavior for all apps. Luckily, there is a fairly simple way to disable it.
Another bug was fixed that caused the bottom of the WebView to be cutoff when scrolling of the app bar was disabled. This was caused because the WebView was adjusting the layout assuming the app bar could scroll, which made a section of the bottom of the WebView equal to the height of the app bar not accessible if the app bar did not get out of the way.
This release includes the first full German translation in a while, kindly provided by Bernhard G. Keller. The Italian translation was updated by Francesco Buratti; the Spanish translation was updated by Jose A León; the Russian translation was updated; and the Turkish translation was partially updated.
The next release of Privacy Browser will focus on speeding up the loading time of the app, which currently is hampered by the synchronous loading of the blocklists on the main thread from an inefficient text format that requires extensive parsing.