Privacy Browser PC 0.6 was released on 15 July 2024. In terms of features, this is the biggest release since 0.1.
The headline feature is the addition of filter lists. Just like with Privacy Browser Android, these are based on the AdBlock Plus syntax and utilize EasyList, but the filter list parser was written from scratch and implements a more sophisticated approach that hews more closely to the AdBlock Plus syntax. Part of the improvement is due to Qt WebEngine exposing more advanced request controls, which allow finer application of filter options (that is an ability that will come some day to Privacy Browser Android in the 4.x series with Privacy WebView). The other part of the improvement comes from a more sophisticated parsing and checking of the entries, which I intend to replicate in Privacy Browser Android in a future release.
Privacy Browser PC ships with five filter lists.
Each filter list is split internally into six sublists for processing.
Each filter list entry can be viewed, showing how the original entry was parsed.
When a request is made, the lists and sublists are parsed in order until a match is found, at which point the request is either allowed or blocked. No further checking happens once there is a match. If no match is found, the Default - Allowed
action is taken.
The URL bar shows the number of blocked requests.
For those who are interested, I have written more detailed information about how Privacy Browser PC parses the AdBlock Plus syntax.
Privacy Browser PC now supports URL syntax highlighting, as can be seen in the image above. This makes it easier to spot URLs that try to pretend to be a domain they aren’t.
Qt WebView’s built-in DevTools page can now be toggled by pressing F12
. This comes straight from the upstream Chromium project.
Opening and saving of MHT archives has been added.
HTTP authentication is now supported.
Privacy Browser PC now has the option to remember the last download location. Before implementing this feature (as per the Core Privacy Principles), I thought a lot about any way storing this information could be abused. Only after I was convinced there were no negative privacy implications did I proceed.
When modifying a bookmark in one window, the bookmarks in all windows are now updated to match. Unicode URLs are now displayed in Punycode. This prevents malicious websites from using Unicode characters that display similar to ASCII characters to spoof a website.
As usual, this release includes a bunch of small improvements. The code for the settings dialog was moved to its own class. There is now a stop command, which interrupts the loading of a website.
When creating a new domain setting from the URL line edit, the currently applied on-the-fly settings are used as the initial state. This allows you to experiment with the settings for a new website, and then, once it is working, populate them into a new Domain Setting.
DOM storage is now ghosted when either JavaScript or Local Storage is disabled.
New tabs opened from a URL on a current tab are now opened adjacent to that tab, similar to how Privacy Browser Android works.
There is now a way to restore a bookmark folder icon back to the default.
As demonstrated above, the current bookmark folder is now ghosted. When creating or editing a bookmark, the bookmark name field is now focused by default. A couple of improvements were made in the dragging and dropping of bookmarks.
That major feature planned for the next release are SSL certificate controls.