Loading
Commits on Source 88
-
-
-
Unless the -osint command line flag is used, the browser now defaults to the equivalent of -no-remote. There is a new -allow-remote flag that may be used to restore the original (Firefox-like) default behavior.
-
-
See also Bugs #5194, #7187, #8115, #8219. This patch does some basic renaming of Firefox to TorBrowser. The rest of the branding is done by images and icons. Also fix bug 27905. Bug 25702: Update Tor Browser icon to follow design guidelines - Updated all of the branding in /browser/branding/official with new 'stable' icon series. - Updated /extensions/onboarding/content/img/tor-watermark.png with new icon and add the source svg in the same directory - Copied /browser/branding/official over /browser/branding/nightly and the new /browser/branding/alpha directories. Replaced content with 'nightly' and 'alpha' icon series. Updated VisualElements_70.png and VisualElements_150.png with updated icons in each branding directory (fixes #22654) - Updated firefox.VisualElementsManfiest.xml with updated colors in each branding directory - Added firefox.svg to each branding directory from which all the other icons are derived (apart from document.icns and document.ico) - Added default256.png and default512.png icons - Updated aboutTBUpdate.css to point to branding-aware icon128.png and removed original icon - Use the Tor Browser icon within devtools/client/themes/images/. Bug 30631: Blurry Tor Browser icon on macOS app switcher It would seem the png2icns tool does not generate correct icns files and so on macOS the larger icons were missing resulting in blurry icons in the OS chrome. Regenerated the padded icons in a macOS VM using iconutil. Bug 28196: preparations for using torbutton tor-browser-brand.ftl A small change to Fluent FileSource class is required so that we can register a new source without its supported locales being counted as available locales for the browser. Bug 31803: Replaced about:debugging logo with flat version Bug 21724: Make Firefox and Tor Browser distinct macOS apps When macOS opens a document or selects a default browser, it sometimes uses the CFBundleSignature. Changing from the Firefox MOZB signature to a different signature TORB allows macOS to distinguish between Firefox and Tor Browser. Bug 32092: Fix Tor Browser Support link in preferences For bug 40562, we moved onionPattern* from bug 27476 to here, as about:tor needs these files but it is included earlier. Bug 41278: Create Tor Browser styled pdf logo similar to the vanilla Firefox one Bug 42088: New application icons (used in-app and on linux). Bug 42087: New application icons (windows).
-
ma1 authored
-
Also: Add an --enable-tor-browser-data-outside-app-dir configure option Add --with-tor-browser-version configure option Bug 31457: disable per-installation profiles The dedicated profiles (per-installation) feature does not interact well with our bundled profiles on Linux and Windows, and it also causes multiple profiles to be created on macOS under TorBrowser-Data. Bug 31935: Disable profile downgrade protection. Since Tor Browser does not support more than one profile, disable the prompt and associated code that offers to create one when a version downgrade situation is detected. Add --enable-tor-browser-update build option Bug 40793: moved Tor configuration options from old-configure.in to moz.configure Bug 41584: Move some configuration options to base-browser level
-
Before reordering patches, we used to keep the Tor-related patches (torbutton and tor-launcher) at the beginning. After that issue, we decided to move them towards the end. In addition to that, we have decided to move Tor Browser-only preferences there, too, to make Base Browser-only fixups easier to apply.
-
On macOS we allow both portable mode and system installation. However, in the latter case, we customize Firefox's directories to match the hierarchy we use for the portable mode. Also, display an informative error message if the TorBrowser-Data directory cannot be created due to an "access denied" or a "read only volume" error.
-
Bug 41926: Reimplement the control port
-
-
- migrated in-page settings read/write implementation from about:preferences#tor to the TorSettings module - TorSettings initially loads settings from the tor daemon, and saves them to firefox prefs - TorSettings notifies observers when a setting has changed; currently only QuickStart notification is implemented for parity with previous preference notify logic in about:torconnect and about:preferences#tor - about:preferences#tor, and about:torconnect now read and write settings thorugh the TorSettings module - all tor settings live in the torbrowser.settings.* preference branch - removed unused pref modify permission for about:torconnect content page from AsyncPrefs.jsm Bug 40645: Migrate Moat APIs to Moat.jsm module
-
Add an XPCOM component that registers a ProtocolProxyChannelFilter which sets the username/password for each web request according to url bar domain. Bug 9442: Add New Circuit button Bug 13766: Set a 10 minute circuit dirty timeout for the catch-all circ. Bug 19206: Include a 128 bit random tag as part of the domain isolator nonce. Bug 19206: Clear out the domain isolator state on `New Identity`. Bug 21201.2: Isolate by firstPartyDomain from OriginAttributes Bug 21745: Fix handling of catch-all circuit Bug 41741: Refactor the domain isolator and new circuit
-
GeckoView is missing some API we use on desktop for the integration with the tor daemon, such as subprocess. Therefore, we need to implement them in Java and plumb the data back and forth between JS and Java.
-
ma1 authored
Bug 41613: Skip Drang & Drop filtering for DNS-safe URLs
-
The browser should not need information related to the network interface or network state, tor should take care of that.
-
-
This patch adds a new about:preferences#connection page which allows modifying bridge, proxy, and firewall settings from within Tor Browser. All of the functionality present in tor-launcher's Network Configuration panel is present: - Setting built-in bridges - Requesting bridges from BridgeDB via moat - Using user-provided bridges - Configuring SOCKS4, SOCKS5, and HTTP/HTTPS proxies - Setting firewall ports - Viewing and Copying Tor's logs - The Networking Settings in General preferences has been removed Bug 40774: Update about:preferences page to match new UI designs
-
- implements new about:torconnect page as tor-launcher replacement - adds new torconnect component to browser - tor process management functionality remains implemented in tor-launcher through the TorProtocolService module - adds warning/error box to about:preferences#tor when not connected to tor Bug 40773: Update the about:torconnect frontend page to match additional UI flows. Bug 41608: Add a toolbar status button and a urlbar "Connect" button.
-
We are planning of tempoorarily using about:torconnect on Android, until the native UX is ready.
-
This commit was once part of "Bug 4234: Use the Firefox Update Process for Tor Browser.". However, some parts of it were not needed for Base Browser and some derivative browsers. Therefore, we extracted from that commit the parts for Tor Browser legacy, and we add them back to the patch set with this commit.
-
-
It's time for our rotation again: Move the backup key in the front position and add a new backup key. Bug 33803: Move our primary nightly MAR signing key to tor-browser Bug 33803: Add a secondary nightly MAR signing key
-
After upstream changes between Firefox 115 and 128, we had to completely rework the way in which we define our search engines. This commit replaces the old "Omnibox: Add DDG, Startpage, Disconnect, Youtube, Twitter; remove Amazon, eBay, bing". With that commit, we customized a list of addons IDs to ship as built-in search engines, but then upsteam moved to using only RemoteSettings. The configuration has many more fields, and it would be quite long to include it in the source code. Therefore, we use some local JSON files and load the settings from them.
-
In https://bugzilla.mozilla.org/show_bug.cgi?id=1563246 Firefox implemented fetching the Public Suffix List via RemoteSettings and replacing the default one at runtime, which we do not want.
-
Encrypting pages hosted on Onion Services with SSL/TLS is redundant (in terms of hiding content) as all traffic within the Tor network is already fully encrypted. Therefore, serving HTTP pages from an Onion Service is more or less fine. Prior to this patch, Tor Browser would mostly treat pages delivered via Onion Services as well as pages delivered in the ordinary fashion over the internet in the same way. This created some inconsistencies in behaviour and misinformation presented to the user relating to the security of pages delivered via Onion Services: - HTTP Onion Service pages did not have any 'lock' icon indicating the site was secure - HTTP Onion Service pages would be marked as unencrypted in the Page Info screen - Mixed-mode content restrictions did not apply to HTTP Onion Service pages embedding Non-Onion HTTP content This patch fixes the above issues, and also adds several new 'Onion' icons to the mix to indicate all of the various permutations of Onion Services hosted HTTP or HTTPS pages with HTTP or HTTPS content. Strings for Onion Service Page Info page are pulled from Torbutton's localization strings.
-
When Tor informs the browser that client authentication is needed, temporarily load about:blank instead of about:neterror and prompt for the user's key. If a correctly formatted key is entered, use Tor's ONION_CLIENT_AUTH_ADD control port command to add the key (via Torbutton's control port module) and reload the page. If the user cancels the prompt, display the standard about:neterror "Unable to connect" page. This requires a small change to browser/actors/NetErrorChild.jsm to account for the fact that the docShell no longer has the failedChannel information. The failedChannel is used to extract TLS-related error info, which is not applicable in the case of a canceled .onion authentication prompt. Add a leaveOpen option to PopupNotifications.show so we can display error messages within the popup notification doorhanger without closing the prompt. Add support for onion services strings to the TorStrings module. Add support for Tor extended SOCKS errors (Tor proposal 304) to the socket transport and SOCKS layers. Improved display of all of these errors will be implemented as part of bug 30025. Also fixes bug 19757: Add a "Remember this key" checkbox to the client auth prompt. Add an "Onion Services Authentication" section within the about:preferences "Privacy & Security section" to allow viewing and removal of v3 onion client auth keys that have been stored on disk. Also fixes bug 19251: use enhanced error pages for onion service errors.
-
Whenever a valid Onion-Location HTTP header (or corresponding HTML <meta> http-equiv attribute) is found in a document load, we either redirect to it (if the user opted-in via preference) or notify the presence of an onionsite alternative with a badge in the urlbar.
-
We have enabled HTTPS-Only mode, therefore we do not need HTTPS-Everywhere anymore. However, we want to keep supporting .tor.onion aliases (especially for securedrop). Therefore, in this patch we implemented the parsing of HTTPS-Everywhere rulesets, and the redirect of .tor.onion domains. Actually, Tor Browser believes they are actual domains. We change them on the fly on the SOCKS proxy requests to resolve the domain, and on the code that verifies HTTPS certificates.
-
This patch associates the about:manual page to a translated page that must be injected to browser/omni.ja after the build. The content must be placed in chrome/browser/content/browser/manual/, so that is then available at chrome://browser/content/manual/. We preferred giving absolute freedom to the web team, rather than having to change the patch in case of changes on the documentation.
-
For now this function only deletes old language packs for which we are already packaging the strings with the application.
-
Shown in the downloads panel, about:downloads and places.xhtml.
-
ma1 authored
-
-
These files are built reproducibly using tor-browser-build: tor-browser-build!715 We're manually adding them here while working on the interface, but eventually these should be placed in the right location using tor-browser-build.
-
-
-
-
Originally android-components#40005.
-
Together with the corresponding fenix patch, this allows all `startActivity` that may open external apps to be replaced by `TorUtils.startActivityPrompt`. Originally, android-components#40007 and fenix#34378.
-
Originally, android-components#40002. android-components#40075: Support scoped storage to enable downloads on API < 29 - in android-components!7, we blocked all usage of Scoped Storage in an attempt to block usage of Android's DownloadManager, which is known to cause proxy bypasses - as of Android API 29, downloads will not work without Scoped Storage, causing all downlaods to fail (see: fenix##40192) - here, we enable usage of scoped storage for API >= 29, but block calls to DownloadManager on API < 29
-
Originally, android-components#40009. This matches the search engines from desktop, that is: DDG as the default, then YouTube, Google, DDGOnion, Startpage, Twitter, Wikipedia and Yahoo. android-components#40062: Update DuckDuckGo onion search plugin
-
ma1 authored
-
ma1 authored
Bug 41160: One-time ultimate switch Tor Browser Android to HTTPS-Only. Bug 41159: Remove HTTPS-Everywhere extension from Tor Browser Android. Bug 41094: Enable HTTPS-Only Mode by default in Tor Browser Android. Turn shouldUseHttpsOnly's default to true. Bug 40225: Bundled extensions don't get updated with Android Tor Browser updates. Bug 40030: Install NoScript addon on startup. Also 40070: Consider storing the list of recommended addons This implements our own AddonsProvider, which loads the list of available addons from assets instead of fetching it from an endpoint. Also, we hide the uninstall button for builtin addons. Bug 40058: Hide option for disallowing addon in private mode -
android-components#40011: Hide option for disallowing addons in private mode android-components#40016: Allow inheriting from AddonCollectionProvider This will allow implementing our own AddonsProvider in fenix.
-
Originally, android-components#40015.
-
android-components#40020: Disable third-party cookies android-components#40024: Disable tracking protection by default
-
Originally, android-components#40023.
-
Originally, android-components#34439.
-
Bug 33594: Disable data collection by default (Glean) Bug 40019: Adjust is disabled on Release when data collection is disabled Bug 34338: Disable the crash reporter Bug 40014: Neuter Google Advertising ID Bug 40018: Disable Push service Bug 40034: Disable PWA onboading Bug 40072: Disable Tracking Protection Bug 40061: Do not show "Send to device" in sharing menu Bug 40109: Reduce requested permissions Exclude LOCATION and NETWORK_STATE
-
Originally, fenix#40032.
-
Bug 40020: Change applicationId Bug 40020: Change app name Bug 40020: Change deeplink scheme Bug 40020: Change App icons Bug 40073: Use correct branding on About page Bug 40088: Use Tor Browser logo in migration screen
-
Bug 40083: Make locale ordering in BuildConfig deterministic Bug 40042: Add option do overwrite timestamp in extension version Bug 40059: Use MOZ_BUILD_DATE for versionCode At the same time we adapt MOZ_BUILD_DATE to our needs where it is actually used and not in tor-browser-build. This gives us more flexibility. See: tor-browser-build#40084. Bug 40067: Fix reproducibility issue in classes2.dex We make sure our MOZ_BUILD_DATE gets used as a source for showing date related information on the Fenix about page. Bug 40071: Show only supported locales Bug 40064: Use Gecko Beta for Nightly and Debug variants Bug 40123: Allow building the instrumented tests apks for variants other than debug This allows to specify the variant of the instrumented tests via a `testBuildType` gradle argument. It also applies a workaround for a R8 issue from https://issuetracker.google.com/issues/140851070. Bug 40143: Use deterministic date in Test apk The build config was using Date() when generating the Test apk's versionName.
-
Fetch the custom built no-op application services library from tor-browser-build when building for Android.
-
Originally, fenix#40185.
-
Originally, fenix#40087 and android-components#40019.
-
Originally, fenix#34403.
-
Originally, fenix#40016.
-
Bug 40015: Modify Home menu Bug 40016: Hide unwanted Settings Bug 40016: Modify Default toolbar menu Bug 40016: Add Donate settings button Bug 40016: Move Allow Screenshots under Advanced Bug 40016: Don't install WebCompat webext Bug 40016: Don't onboard Search Suggestions Bug 40094: Do not use MasterPasswordTipProvider in HomeFragment Bug 40095: Hide "Sign in to sync" in bookmarks Bug 40031: Hide Mozilla-specific items on About page Bug 40063: Do not sort search engines alphabetically Bug 40141: Hide EME site permission Bug 40166: Hide "Normal" tab (again) and Sync tab in TabTray Bug 40167: Hide "Save to Collection" in menu Bug 40172: Find the Quit button Bug 40186: Hide Credit Cards in Settings Bug 40198: Spoof English toggle now overlaps with locale list
-
Originally, fenix#40026.
-
-
-
Originally, fenix#40041.
-
-
-
-
-
[android] TB 43351: Add function to disable forcing ALL CAPS for the fenix snackbar action button text This is needed because the default snackbar will force all caps, which can cause problems in some languages. See #43351 and bugzilla bug 1935387. TODO: Remove once the forced all caps is removed by mozilla.
-
Also remove exit call from terminate function. It causes all espresso tests to crash on exit and otherwise doesn't do anything.
-