tbb-commits
Threads by month
- ----- 2025 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- 1 participants
- 18730 discussions

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] fixup! [android] TBA strings
by Dan Ballard (@dan) 17 Mar '25
by Dan Ballard (@dan) 17 Mar '25
17 Mar '25
Dan Ballard pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
642c18d0 by Henry Wilkes at 2025-03-17T10:17:33+00:00
fixup! [android] TBA strings
TB 43091: Remove unused android strings.
- - - - -
1 changed file:
- mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
Changes:
=====================================
mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
=====================================
@@ -5,26 +5,12 @@
<!-- About content. The first parameter is the name of the application. (For example: Fenix) -->
<string name="tor_about_content">%1$s is produced by the Tor Project, a U.S.-based 501(c)(3) nonprofit.</string>
- <!-- Preference for enabling non-Private Browsing Mode-->
- <string name="preferences_disable_normal_mode">Allow Only Private Browsing Mode</string>
<!-- Preference link to donate to The Tor Project-->
<string name="preferences_donate">Donate to The Tor Project</string>
<!-- Preference for allowing screenshots to be taken in the app-->
<string name="preferences_allow_screenshots">Allow screenshots</string>
<string name="tor_bootstrap_connect">Connect</string>
- <string name="tor_bootstrap_connecting">Connecting</string>
- <string name="tor_bootstrap_connecting_failed">Connecting Failed</string>
- <string name="tor_bootstrap_swipe_for_logs">Swipe to the left to see Tor logs</string>
- <string name="tor_initializing_log">Initializing Tor Log</string>
-
- <string name="tor_onboarding_security_level">Set your Security Level</string>
- <string name="tor_onboarding_security_level_description">Disable certain web features that can be used to attack you, and harm your security, anonymity, and privacy.</string>
- <string name="tor_onboarding_chosen_security_level_label">Current Security Level: %s</string>
- <string name="tor_onboarding_security_settings_button">Open Security Settings</string>
- <string name="tor_onboarding_donate_header">Donate and keep Tor safe</string>
- <string name="tor_onboarding_donate_description">Tor is free to use because of donations from people like you.</string>
- <string name="tor_onboarding_donate_button">Donate Now</string>
<string name="tor_explore_privately">Explore. Privately.</string>
@@ -34,8 +20,6 @@
<string name="preferences_tor_network_settings_explanation">Tor Browser routes your traffic over the Tor network, run by thousands of volunteers around the world.</string>
<string name="preferences_tor_network_settings_bridge_config">Config Bridge</string>
<string name="preferences_tor_network_settings_bridge_config_description">Use a Bridge to connect to Tor</string>
- <string name="preferences_tor_network_settings_bridge_config_description_builtin_transport_enabled">You’re using a built-in bridge to connect to Tor</string>
- <string name="preferences_tor_network_settings_bridge_config_description_user_provided_enabled">You provided a bridge to connect to Tor</string>
<string name="preferences_tor_network_settings_bridge_config_explanation">Bridges are unlisted relays that make it more difficult to block connections to the Tor network. Because of how certain countries try to block Tor, certain bridges work in certain countries but not others.</string>
<string name="preferences_tor_network_settings_bridge_config_toggle">Use a Bridge</string>
<string name="preferences_tor_network_settings_bridge_config_toggle_description">Config a bridge to connect to Tor</string>
@@ -46,21 +30,9 @@
<string name="preferences_tor_network_settings_bridge_config_user_provided_bridge_description">Enter bridge information from a trusted source</string>
<string name="preferences_tor_network_settings_bridge_config_current_bridge">Current Configured Bridge: %s</string>
<string name="tor_network_settings_bridge_not_configured">Not Configured</string>
- <string name="preferences_tor_network_settings_status">Current Status</string>
- <string name="preferences_tor_network_settings_tor_ready">Is Tor Ready: %s</string>
- <string name="preferences_tor_network_settings_state">State: %s</string>
- <string name="preferences_tor_network_settings_yes">Yes</string>
- <string name="preferences_tor_network_settings_no">No</string>
- <string name="preferences_tor_network_settings_disconnected">Disconnected</string>
- <string name="preferences_tor_network_settings_connecting">Connecting</string>
- <string name="preferences_tor_network_settings_connected">Connected</string>
- <string name="preferences_tor_network_settings_restarting">Restarting</string>
- <string name="preferences_tor_network_settings_bridges_enabled">Bridges are enabled: %s</string>
<string name="preferences_tor_logs">Tor Logs</string>
<string name="preferences_tor_logs_description">View and copy your Tor logs</string>
- <!-- Preference title for security level settings -->
- <string name="preferences_tor_security_level_settings">Security Settings</string>
<string name="preferences_tor_security_level_options">Security Level</string>
<!-- Description of security levels -->
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/642c18d…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/642c18d…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] 2 commits: Update the Tor Browser Stable release-prep template to notify Tails devs...
by morgan (@morgan) 17 Mar '25
by morgan (@morgan) 17 Mar '25
17 Mar '25
morgan pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
2356d9d7 by Morgan at 2025-03-17T13:54:18+00:00
Update the Tor Browser Stable release-prep template to notify Tails devs earlier in the release process
- - - - -
fe816f62 by Morgan at 2025-03-17T13:56:36+00:00
Update release-prep templates with updated devmole build notes
- - - - -
5 changed files:
- .gitlab/issue_templates/Release Prep - Mullvad Browser Alpha.md
- .gitlab/issue_templates/Release Prep - Mullvad Browser Stable.md
- .gitlab/issue_templates/Release Prep - Tor Browser Alpha.md
- .gitlab/issue_templates/Release Prep - Tor Browser Legacy.md
- .gitlab/issue_templates/Release Prep - Tor Browser Stable.md
Changes:
=====================================
.gitlab/issue_templates/Release Prep - Mullvad Browser Alpha.md
=====================================
@@ -117,8 +117,7 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch
- [ ] Tor Project build machine
- [ ] Local developer machine
- [ ] Submit build request to Mullvad infrastructure:
- - **NOTE** this requires a devmole authentication token
- - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
+ - **NOTE** this requires a github authentication token
- Run:
```bash
make mullvadbrowser-kick-devmole-build
=====================================
.gitlab/issue_templates/Release Prep - Mullvad Browser Stable.md
=====================================
@@ -113,11 +113,10 @@ Mullvad Browser Stable is on the `maint-${MULLVAD_BROWSER_MAJOR}.${MULLVAD_BROWS
```bash
make mullvadbrowser-release && make mullvadbrowser-incrementals-release
```
- - Tor Project build machine
- - Local developer machine
+ - [ ] Tor Project build machine
+ - [ ] Local developer machine
- [ ] Submit build request to Mullvad infrastructure:
- - **NOTE** this requires a devmole authentication token
- - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
+ - **NOTE** this requires a github authentication token
- Run:
```bash
make mullvadbrowser-kick-devmole-build
=====================================
.gitlab/issue_templates/Release Prep - Tor Browser Alpha.md
=====================================
@@ -141,8 +141,7 @@ Tor Browser Alpha (and Nightly) are on the `main` branch
- [ ] Tor Project build machine
- [ ] Local developer machine
- [ ] Submit build request to Mullvad infrastructure:
- - **NOTE** this requires a devmole authentication token
- - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
+ - **NOTE** this requires a github authentication token
- Run:
```bash
make torbrowser-kick-devmole-build
=====================================
.gitlab/issue_templates/Release Prep - Tor Browser Legacy.md
=====================================
@@ -133,8 +133,7 @@ Tor Browser Legacy is on the `maint-13.5` branch
- [ ] Tor Project build machine
- [ ] Local developer machine
- [ ] Submit build request to Mullvad infrastructure:
- - **NOTE** this requires a devmole authentication token
- - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
+ - **NOTE** this requires a github authentication token
- Run:
```bash
make torbrowser-kick-devmole-build
=====================================
.gitlab/issue_templates/Release Prep - Tor Browser Stable.md
=====================================
@@ -142,12 +142,33 @@ Tor Browser Stable is on the `maint-${TOR_BROWSER_MAJOR}.${TOR_BROWSER_MINOR}` b
- Tor Project build machine
- Local developer machine
- [ ] Submit build request to Mullvad infrastructure:
- - **NOTE** this requires a devmole authentication token
- - **NOTE** this also requires you be connected to Gothenburg Mulvad VPN exit `se-got-wg-101`
+ - **NOTE** this requires a github authentication token
- Run:
```bash
make torbrowser-kick-devmole-build
```
+- [ ] Notify Tails of pending builds
+ - **Recipients**
+ ```
+ tails-dev(a)boum.org
+ ```
+ - **Subject**
+ ```
+ Tor Browser ${TOR_BROWSER_VERSION} Building
+ ```
+ - **Body**
+ ```
+ Hello,
+
+ Tor Browser Stable is being built and should be ready for Tails in the coming hours. Build artifacts and hashes will be available here:
+ - ${BUILD_ARTIFACTS_URL}
+ - ${BUIDL_HASHES_URL}
+
+ ⚠️ WARNING: We have not yet verified the builds match, so make sure you do so before prepping the Tails release!
+
+ Changelog:
+ # paste changelog as quote here
+ ```
</details>
@@ -321,14 +342,13 @@ popd
### packagers
- [ ] Email packagers:
- **Recipients**
- - Tails dev mailing list: tails-dev(a)boum.org
- Guardian Project: nathan(a)guardianproject.info
- FreeBSD port: freebsd(a)sysctl.cz <!-- Gitlab user maxfx -->
- OpenBSD port: caspar(a)schutijser.com <!-- Gitlab user cschutijser -->
- torbrowser-launcher: mail(a)asciiwolf.com <!-- Gitlab user asciiwolf -->
- Anti-Censorship: meskio(a)torproject.org <!-- Gitlab user meskio -->
```
- tails-dev(a)boum.org, nathan(a)guardianproject.info, freebsd(a)sysctl.cz, caspar(a)schutijser.com, mail(a)asciiwolf.com, meskio(a)torproject.org,
+ nathan(a)guardianproject.info, freebsd(a)sysctl.cz, caspar(a)schutijser.com, mail(a)asciiwolf.com, meskio(a)torproject.org,
```
- **Subject**
```
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] 2 commits: fixup! [android] Implement Android-native Connection Assist UI
by clairehurst (@clairehurst) 13 Mar '25
by clairehurst (@clairehurst) 13 Mar '25
13 Mar '25
clairehurst pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
d7dfb3f5 by clairehurst at 2025-03-13T15:41:50-06:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser#43361
- - - - -
ec07d29a by clairehurst at 2025-03-13T15:41:57-06:00
fixup! TB 41878: [android] Add standalone Tor Bootstrap
tor-browser#43361
- - - - -
5 changed files:
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt
Changes:
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt
=====================================
@@ -137,8 +137,6 @@ open class FenixApplication : LocaleAwareApplication(), Provider {
isDeviceRamAboveThreshold()
}
- var terminating = false
-
open val components by lazy { Components(this) }
var visibilityLifecycleCallback: VisibilityLifecycleCallback? = null
@@ -188,20 +186,6 @@ open class FenixApplication : LocaleAwareApplication(), Provider {
}
}
- fun isTerminating() = terminating
-
- fun terminate() {
- onTerminate()
- }
-
- override fun onTerminate() {
- terminating = true
-
- super.onTerminate()
- components.torController.stop()
- components.torController.stopTor()
- }
-
@OptIn(DelicateCoroutinesApi::class) // GlobalScope usage
@VisibleForTesting
protected open fun initializeGlean() {
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
=====================================
@@ -158,6 +158,7 @@ import org.mozilla.fenix.home.HomeFragment
import org.mozilla.fenix.tor.UrlQuickLoadViewModel
import org.mozilla.geckoview.TorAndroidIntegration
import org.mozilla.geckoview.TorConnectStage
+import kotlin.system.exitProcess
/**
* The main activity of the application. The application is primarily a single Activity (this one)
@@ -653,22 +654,6 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity, TorAn
if (this !is ExternalAppBrowserActivity && !activityStartedWithLink) {
stopMediaSession()
}
-
- if (isFinishing && !(application as FenixApplication).isTerminating()) {
- // We assume the Activity is being destroyed because the user
- // swiped away the app on the Recent screen. When this happens,
- // we assume the user expects the entire Application is destroyed
- // and not only the top Activity/Task. Therefore we kill the
- // underlying Application, as well.
- (application as FenixApplication).terminate()
- if (settings().useHtmlConnectionUi) {
- val engine = components.core.engine
- if (engine is GeckoEngine) {
- val torIntegration = engine.getTorIntegrationController()
- torIntegration.unregisterBootstrapStateChangeListener(this)
- }
- }
- }
}
final override fun onConfigurationChanged(newConfig: Configuration) {
@@ -1453,6 +1438,11 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity, TorAn
private const val PWA_RECENTLY_USED_THRESHOLD = DateUtils.DAY_IN_MILLIS * 30L
}
+ fun shutDown() : Nothing {
+ finishAndRemoveTask()
+ exitProcess(0)
+ }
+
override fun onBootstrapStateChange(state: String) = Unit
override fun onBootstrapStageChange(stage: TorConnectStage) = Unit
override fun onBootstrapProgress(progress: Double, hasWarnings: Boolean) = Unit
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
=====================================
@@ -1394,7 +1394,6 @@ class HomeFragment : Fragment(), UserInteractionHandler {
}
override fun onBackPressed(): Boolean {
- requireActivity().finish()
- return true
+ (requireActivity() as HomeActivity).shutDown()
}
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt
=====================================
@@ -149,7 +149,7 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
private fun setBackButton(screen: ConnectAssistUiState) {
binding.backButton.visibility = if (screen.backButtonVisible) View.VISIBLE else View.INVISIBLE
binding.backButton.setOnClickListener {
- torConnectionAssistViewModel.handleBackButtonPressed()
+ onBackPressed()
}
}
@@ -314,7 +314,8 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
}
override fun onBackPressed(): Boolean {
- return torConnectionAssistViewModel.handleBackButtonPressed()
+ torConnectionAssistViewModel.handleBackButtonPressed(requireActivity() as HomeActivity)
+ return true
}
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt
=====================================
@@ -10,6 +10,7 @@ import androidx.lifecycle.AndroidViewModel
import androidx.lifecycle.MutableLiveData
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
+import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.ext.components
class TorConnectionAssistViewModel(
@@ -150,10 +151,10 @@ class TorConnectionAssistViewModel(
return true
}
- fun handleBackButtonPressed(): Boolean {
+ fun handleBackButtonPressed(homeActivity: HomeActivity) {
when (torConnectScreen.value) {
- ConnectAssistUiState.Splash -> return false
- ConnectAssistUiState.Configuring -> return false
+ ConnectAssistUiState.Splash -> homeActivity.shutDown()
+ ConnectAssistUiState.Configuring -> homeActivity.shutDown()
ConnectAssistUiState.Connecting -> cancelTorBootstrap()
ConnectAssistUiState.InternetError -> {
_torController.lastKnownError = null
@@ -191,6 +192,5 @@ class TorConnectionAssistViewModel(
_torConnectScreen.value = ConnectAssistUiState.LocationCheck
}
}
- return true
}
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/da17f7…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/da17f7…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] 4 commits: fixup! TB 42247: Android helpers for the TorProvider
by Dan Ballard (@dan) 13 Mar '25
by Dan Ballard (@dan) 13 Mar '25
13 Mar '25
Dan Ballard pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
6199983c by Dan Ballard at 2025-03-13T11:17:04-07:00
fixup! TB 42247: Android helpers for the TorProvider
Bug 41188: Add staging event wiring
- - - - -
d9c0e220 by Dan Ballard at 2025-03-13T11:17:04-07:00
fixup! TB 41878: [android] Add standalone Tor Bootstrap
Bug 41188: Add staging event wiring
- - - - -
f545b853 by Dan Ballard at 2025-03-13T11:17:04-07:00
fixup! [android] Implement Android-native Connection Assist UI
Bug 41188: Add staging event wiring
- - - - -
da17f78c by Dan Ballard at 2025-03-13T11:17:05-07:00
fixup! TB 40597: Implement TorSettings module
Bug 41188: pt1 add android stages
- - - - -
9 changed files:
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBootstrapProgressViewModel.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorControllerGV.kt
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorAndroidIntegration.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorBootstrappingStatus.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorConnectStage.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorConnectStageName.java
- toolkit/modules/TorAndroidIntegration.sys.mjs
- toolkit/modules/TorConnect.sys.mjs
Changes:
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
=====================================
@@ -157,6 +157,7 @@ import org.mozilla.fenix.components.FenixSnackbar
import org.mozilla.fenix.home.HomeFragment
import org.mozilla.fenix.tor.UrlQuickLoadViewModel
import org.mozilla.geckoview.TorAndroidIntegration
+import org.mozilla.geckoview.TorConnectStage
/**
* The main activity of the application. The application is primarily a single Activity (this one)
@@ -1453,6 +1454,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity, TorAn
}
override fun onBootstrapStateChange(state: String) = Unit
+ override fun onBootstrapStageChange(stage: TorConnectStage) = Unit
override fun onBootstrapProgress(progress: Double, hasWarnings: Boolean) = Unit
override fun onBootstrapComplete() {
if (settings().useHtmlConnectionUi) {
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBootstrapProgressViewModel.kt
=====================================
@@ -5,6 +5,7 @@ import androidx.lifecycle.AndroidViewModel
import androidx.lifecycle.MutableLiveData
import org.mozilla.fenix.ext.components
import org.mozilla.geckoview.TorAndroidIntegration.BootstrapStateChangeListener
+import org.mozilla.geckoview.TorConnectStage
class TorBootstrapProgressViewModel(
application: Application,
@@ -27,6 +28,7 @@ class TorBootstrapProgressViewModel(
}
override fun onBootstrapStateChange(state: String?) {}
+ override fun onBootstrapStageChange(stage: TorConnectStage) = Unit
override fun onBootstrapProgress(progress: Double, hasWarnings: Boolean) {
this.progress.value = progress.toInt()
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorControllerGV.kt
=====================================
@@ -11,6 +11,7 @@ import org.mozilla.fenix.ext.components
import org.mozilla.geckoview.TorAndroidIntegration
import org.mozilla.geckoview.TorAndroidIntegration.BootstrapStateChangeListener
import org.mozilla.geckoview.TorAndroidIntegration.TorLogListener
+import org.mozilla.geckoview.TorConnectStage
import org.mozilla.geckoview.TorSettings
import org.mozilla.geckoview.TorSettings.BridgeBuiltinType
import org.mozilla.geckoview.TorSettings.BridgeSource
@@ -322,6 +323,8 @@ class TorControllerGV(
onTorStatusUpdate(null, newStateVal, null)
}
+ override fun onBootstrapStageChange(stage: TorConnectStage) = Unit
+
// TorEventsBootstrapStateChangeListener
override fun onBootstrapProgress(progress: Double, hasWarnings: Boolean) {
Log.d(TAG, "onBootstrapProgress(progress = $progress, hasWarnings = $hasWarnings)")
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorAndroidIntegration.java
=====================================
@@ -37,7 +37,8 @@ public class TorAndroidIntegration implements BundleEventListener {
private static final String EVENT_TOR_STOP = "GeckoView:Tor:StopTor";
private static final String EVENT_MEEK_START = "GeckoView:Tor:StartMeek";
private static final String EVENT_MEEK_STOP = "GeckoView:Tor:StopMeek";
- private static final String EVENT_CONNECT_STATE_CHANGED = "GeckoView:Tor:ConnectStateChanged";
+ private static final String EVENT_CONNECT_STATE_CHANGED = "GeckoView:Tor:ConnectStateChanged"; // deprecation path
+ private static final String EVENT_CONNECT_STAGE_CHANGED = "GeckoView:Tor:ConnectStageChanged"; // replacement path
private static final String EVENT_CONNECT_ERROR = "GeckoView:Tor:ConnectError";
private static final String EVENT_BOOTSTRAP_PROGRESS = "GeckoView:Tor:BootstrapProgress";
private static final String EVENT_BOOTSTRAP_COMPLETE = "GeckoView:Tor:BootstrapComplete";
@@ -114,6 +115,7 @@ public class TorAndroidIntegration implements BundleEventListener {
EVENT_SETTINGS_READY,
EVENT_SETTINGS_CHANGED,
EVENT_CONNECT_STATE_CHANGED,
+ EVENT_CONNECT_STAGE_CHANGED,
EVENT_CONNECT_ERROR,
EVENT_BOOTSTRAP_PROGRESS,
EVENT_BOOTSTRAP_COMPLETE,
@@ -150,6 +152,11 @@ public class TorAndroidIntegration implements BundleEventListener {
for (BootstrapStateChangeListener listener : mBootstrapStateListeners) {
listener.onBootstrapStateChange(state);
}
+ } else if (EVENT_CONNECT_STAGE_CHANGED.equals(event)) {
+ TorConnectStage stage = new TorConnectStage(message.getBundle("stage"));
+ for (BootstrapStateChangeListener listener : mBootstrapStateListeners) {
+ listener.onBootstrapStageChange(stage);
+ }
} else if (EVENT_CONNECT_ERROR.equals(event)) {
String code = message.getString("code");
String msg = message.getString("message");
@@ -629,7 +636,9 @@ public class TorAndroidIntegration implements BundleEventListener {
}
public interface BootstrapStateChangeListener {
- void onBootstrapStateChange(String state);
+ void onBootstrapStateChange(String state); // depreaction path
+
+ void onBootstrapStageChange(TorConnectStage stage); // new upgrade
void onBootstrapProgress(double progress, boolean hasWarnings);
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorBootstrappingStatus.java
=====================================
@@ -0,0 +1,14 @@
+package org.mozilla.geckoview;
+
+import org.mozilla.gecko.util.GeckoBundle;
+
+// Class to receive BootstrappingStatus object from TorConnect.sys.mjs ~ln698
+public class TorBootstrappingStatus {
+ public int progress; // percent of bootstrap progress
+ public boolean hasWarning; // Whether this bootstrap has a warning in the tor log
+
+ public TorBootstrappingStatus(GeckoBundle bundle) {
+ progress = bundle.getInt("progress");
+ hasWarning = bundle.getBoolean("hasWarning");
+ }
+}
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorConnectStage.java
=====================================
@@ -0,0 +1,48 @@
+package org.mozilla.geckoview;
+
+import org.mozilla.gecko.util.GeckoBundle;
+
+// Class to receive ConnectStage object from TorConnect.sys.mjs ~ln677
+public class TorConnectStage {
+
+ public class Error {
+ public String code;
+ public String message;
+ public String phase;
+ public String reason;
+
+ public Error(GeckoBundle bundle) {
+ code = bundle.getString("code");
+ message = bundle.getString("message");
+ phase = bundle.getString("phase");
+ reason = bundle.getString("reason");
+ }
+ }
+
+ public TorConnectStageName name;
+ // The TorConnectStage prior to this bootstrap attempt. Only set during the "Bootstrapping" stage.
+ public TorConnectStageName bootstrapTrigger;
+ public Error error;
+ public String defaultRegion;
+ public Boolean potentiallyBlocked;
+ public Boolean tryAgain;
+ public TorBootstrappingStatus bootstrappingStatus;
+
+ public TorConnectStage(GeckoBundle bundle) {
+ name = TorConnectStageName.fromString(bundle.getString("name"));
+ if (bundle.getString("bootstrapTrigger") != null) {
+ bootstrapTrigger = TorConnectStageName.fromString(bundle.getString("bootstrapTrigger"));
+ }
+ defaultRegion = bundle.getString("defaultRegion");
+ potentiallyBlocked = bundle.getBoolean("potentiallyBlocked");
+ tryAgain = bundle.getBoolean("tryAgain");
+ if (bundle.getBundle("error") != null) {
+ error = new Error(bundle.getBundle("error"));
+ }
+ bootstrappingStatus = new TorBootstrappingStatus(bundle.getBundle("bootstrappingStatus"));
+ }
+
+ public Boolean isBootstrapped() {
+ return name.isBootstrapped();
+ }
+}
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorConnectStageName.java
=====================================
@@ -0,0 +1,43 @@
+package org.mozilla.geckoview;
+
+import java.security.InvalidParameterException;
+
+public enum TorConnectStageName {
+ // These names should match entries from TorConnectStage in TorConnect.sys.mjs at ~ln163.
+ Disabled("Disabled"),
+ Loading("Loading"),
+ Start("Start"),
+ Bootstrapping("Bootstrapping"),
+ Offline("Offline"),
+ ChooseRegion("ChooseRegion"),
+ RegionNotFound("RegionNotFound"),
+ ConfirmRegion("ConfirmRegion"),
+ FinalError("FinalError"),
+ Bootstrapped("Bootstrapped");
+
+ private String valueText;
+
+ TorConnectStageName(String valueText) {
+ this.valueText = valueText;
+ }
+
+ public Boolean isBootstrapped() {
+ return this == Bootstrapped;
+ }
+
+ public String getString() {
+ return this.valueText;
+ }
+
+ public static TorConnectStageName fromString(String text) {
+ for (TorConnectStageName tcs : TorConnectStageName.values()) {
+ if (tcs.valueText.equalsIgnoreCase(text)) {
+ return tcs;
+ }
+ }
+ if (BuildConfig.BUILD_TYPE == "debug") {
+ throw new InvalidParameterException("Unknown TorConnectStageName " + text);
+ }
+ return null;
+ }
+}
=====================================
toolkit/modules/TorAndroidIntegration.sys.mjs
=====================================
@@ -25,7 +25,8 @@ const logger = console.createInstance({
const EmittedEvents = Object.freeze({
settingsReady: "GeckoView:Tor:SettingsReady",
settingsChanged: "GeckoView:Tor:SettingsChanged",
- connectStateChanged: "GeckoView:Tor:ConnectStateChanged",
+ connectStateChanged: "GeckoView:Tor:ConnectStateChanged", // deprecation path
+ connectStageChanged: "GeckoView:Tor:ConnectStageChanged", // new replacement path
connectError: "GeckoView:Tor:ConnectError",
bootstrapProgress: "GeckoView:Tor:BootstrapProgress",
bootstrapComplete: "GeckoView:Tor:BootstrapComplete",
@@ -106,6 +107,12 @@ class TorAndroidIntegrationImpl {
state: subj.wrappedJSObject.state ?? "",
});
break;
+ case lazy.TorConnectTopics.StageChange:
+ lazy.EventDispatcher.instance.sendRequest({
+ type: EmittedEvents.connectStageChanged,
+ stage: subj.wrappedJSObject ?? "",
+ });
+ break;
case lazy.TorConnectTopics.BootstrapProgress:
lazy.EventDispatcher.instance.sendRequest({
type: EmittedEvents.bootstrapProgress,
=====================================
toolkit/modules/TorConnect.sys.mjs
=====================================
@@ -660,6 +660,7 @@ export const InternetStatus = Object.freeze({
Online: 1,
});
+// This enum is mirrored for Android in TorConnectStageName.java. Changes should be mirrored there
export const TorConnectStage = Object.freeze({
Disabled: "Disabled",
Loading: "Loading",
@@ -677,6 +678,7 @@ export const TorConnectStage = Object.freeze({
* @typedef {object} ConnectStage
*
* A summary of the user stage.
+ * (This class is mirrored for Android in TorConnectStage.java. Changes should be mirrored there)
*
* @property {string} name - The name of the stage.
* @property {string} defaultRegion - The default region to show in the UI.
@@ -698,6 +700,7 @@ export const TorConnectStage = Object.freeze({
* @typedef {object} BootstrappingStatus
*
* The status of a bootstrap.
+ * (This class is mirrored for Android in TorBootstrapping.java. Changes should be mirrored there)
*
* @property {number} progress - The percent progress.
* @property {boolean} hasWarning - Whether this bootstrap has a warning in the
@@ -708,6 +711,7 @@ export const TorConnectStage = Object.freeze({
* @typedef {object} BootstrapError
*
* Details about the error that caused bootstrapping to fail.
+ * (This class is mirrored for Android in TorError.java. Changes should be mirrored there)
*
* @property {string} code - The error code type.
* @property {string} message - The error message.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/8fec31…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/8fec31…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-update-responses][main] 7 commits: alpha: new version, 14.5a4 (linux-i686)
by boklm (@boklm) 13 Mar '25
by boklm (@boklm) 13 Mar '25
13 Mar '25
boklm pushed to branch main at The Tor Project / Applications / Tor Browser update responses
Commits:
e17c7051 by Nicolas Vigier at 2025-03-13T19:39:44+01:00
alpha: new version, 14.5a4 (linux-i686)
- - - - -
744b4515 by Nicolas Vigier at 2025-03-13T19:39:44+01:00
alpha: new version, 14.5a4 (linux-x86_64)
- - - - -
8a7bae89 by Nicolas Vigier at 2025-03-13T19:39:44+01:00
alpha: new version, 14.5a4 (macos)
- - - - -
c691cfaf by Nicolas Vigier at 2025-03-13T19:39:44+01:00
alpha: new version, 14.5a4 (windows-i686)
- - - - -
cae24212 by Nicolas Vigier at 2025-03-13T19:39:44+01:00
alpha: new version, 14.5a4 (windows-x86_64)
- - - - -
cfa892da by Nicolas Vigier at 2025-03-13T19:39:44+01:00
alpha: new version, 14.5a4 (android)
- - - - -
ad49bab4 by Nicolas Vigier at 2025-03-13T19:39:44+01:00
alpha: new version, 14.5a4
- - - - -
49 changed files:
- update_3/alpha/.htaccess
- − update_3/alpha/14.0a9-14.5a3-windows-i686-ALL.xml
- − update_3/alpha/14.0a9-14.5a3-windows-x86_64-ALL.xml
- − update_3/alpha/14.5a1-14.5a3-windows-i686-ALL.xml
- − update_3/alpha/14.5a1-14.5a3-windows-x86_64-ALL.xml
- − update_3/alpha/14.5a2-14.5a3-windows-i686-ALL.xml
- − update_3/alpha/14.5a2-14.5a3-windows-x86_64-ALL.xml
- − update_3/alpha/14.5a3-windows-i686-ALL.xml
- − update_3/alpha/14.5a3-windows-x86_64-ALL.xml
- update_3/alpha/download-android-aarch64.json
- update_3/alpha/download-android-armv7.json
- update_3/alpha/download-android-x86.json
- update_3/alpha/download-android-x86_64.json
- update_3/alpha/download-linux-i686.json
- update_3/alpha/download-linux-x86_64.json
- update_3/alpha/download-macos.json
- update_3/alpha/download-windows-i686.json
- update_3/alpha/download-windows-x86_64.json
- update_3/alpha/downloads.json
- + update_3/alpha/linux-i686/.htaccess
- update_3/alpha/14.0a9-14.5a3-linux-i686-ALL.xml → update_3/alpha/linux-i686/14.5a1-14.5a4-linux-i686.xml
- update_3/alpha/14.5a1-14.5a3-linux-i686-ALL.xml → update_3/alpha/linux-i686/14.5a2-14.5a4-linux-i686.xml
- update_3/alpha/14.5a2-14.5a3-linux-i686-ALL.xml → update_3/alpha/linux-i686/14.5a3-14.5a4-linux-i686.xml
- update_3/alpha/14.5a3-linux-i686-ALL.xml → update_3/alpha/linux-i686/14.5a4-linux-i686.xml
- update_3/alpha/no-update.xml → update_3/alpha/linux-i686/no-update.xml
- + update_3/alpha/linux-x86_64/.htaccess
- update_3/alpha/14.0a9-14.5a3-linux-x86_64-ALL.xml → update_3/alpha/linux-x86_64/14.5a1-14.5a4-linux-x86_64.xml
- update_3/alpha/14.5a1-14.5a3-linux-x86_64-ALL.xml → update_3/alpha/linux-x86_64/14.5a2-14.5a4-linux-x86_64.xml
- update_3/alpha/14.5a2-14.5a3-linux-x86_64-ALL.xml → update_3/alpha/linux-x86_64/14.5a3-14.5a4-linux-x86_64.xml
- update_3/alpha/14.5a3-linux-x86_64-ALL.xml → update_3/alpha/linux-x86_64/14.5a4-linux-x86_64.xml
- + update_3/alpha/linux-x86_64/no-update.xml
- + update_3/alpha/macos/.htaccess
- update_3/alpha/14.5a1-14.5a3-macos-ALL.xml → update_3/alpha/macos/14.5a1-14.5a4-macos.xml
- update_3/alpha/14.5a2-14.5a3-macos-ALL.xml → update_3/alpha/macos/14.5a2-14.5a4-macos.xml
- update_3/alpha/14.0a9-14.5a3-macos-ALL.xml → update_3/alpha/macos/14.5a3-14.5a4-macos.xml
- update_3/alpha/14.5a3-macos-ALL.xml → update_3/alpha/macos/14.5a4-macos.xml
- + update_3/alpha/macos/no-update.xml
- + update_3/alpha/windows-i686/.htaccess
- + update_3/alpha/windows-i686/14.5a1-14.5a4-windows-i686.xml
- + update_3/alpha/windows-i686/14.5a2-14.5a4-windows-i686.xml
- + update_3/alpha/windows-i686/14.5a3-14.5a4-windows-i686.xml
- + update_3/alpha/windows-i686/14.5a4-windows-i686.xml
- + update_3/alpha/windows-i686/no-update.xml
- + update_3/alpha/windows-x86_64/.htaccess
- + update_3/alpha/windows-x86_64/14.5a1-14.5a4-windows-x86_64.xml
- + update_3/alpha/windows-x86_64/14.5a2-14.5a4-windows-x86_64.xml
- + update_3/alpha/windows-x86_64/14.5a3-14.5a4-windows-x86_64.xml
- + update_3/alpha/windows-x86_64/14.5a4-windows-x86_64.xml
- + update_3/alpha/windows-x86_64/no-update.xml
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-update-responses…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-update-responses…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] 2 commits: fixup! [android] TBA strings
by Dan Ballard (@dan) 13 Mar '25
by Dan Ballard (@dan) 13 Mar '25
13 Mar '25
Dan Ballard pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
8e24a7bc by Dan Ballard at 2025-03-13T10:14:34-07:00
fixup! [android] TBA strings
Bug 43473: change quickstart to connect automatically in settings
- - - - -
8fec318e by Dan Ballard at 2025-03-13T10:18:42-07:00
fixup! TB 40041 [android]: Implement Tor Network Settings
Bug 43473: change quickstart to connect automatically in settings
- - - - -
2 changed files:
- mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
- mobile/android/fenix/app/src/main/res/xml/preferences.xml
Changes:
=====================================
mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
=====================================
@@ -15,7 +15,6 @@
<string name="tor_bootstrap_connect">Connect</string>
<string name="tor_bootstrap_connecting">Connecting</string>
<string name="tor_bootstrap_connecting_failed">Connecting Failed</string>
- <string name="tor_bootstrap_quick_start_label">Quick Start</string>
<string name="tor_bootstrap_swipe_for_logs">Swipe to the left to see Tor logs</string>
<string name="tor_initializing_log">Initializing Tor Log</string>
@@ -80,6 +79,7 @@
<!-- Connection assist. -->
<string name="connection_assist_tor_connect_title">Connect to Tor</string>
<!-- Connection assist. -->
+ <string name="tor_connect_automatically_label">Connect automatically</string>
<string name="connection_assist_always_connect_automatically_toggle_description">Always connect automatically</string>
<!-- Connection assist. -->
<string name="connection_assist_configure_connection_button">Configure connection…</string>
=====================================
mobile/android/fenix/app/src/main/res/xml/preferences.xml
=====================================
@@ -178,8 +178,7 @@
<SwitchPreference
android:key="@string/pref_key_quick_start"
- android:summary="@string/connection_assist_always_connect_automatically_toggle_description"
- android:title="@string/tor_bootstrap_quick_start_label"
+ android:title="@string/tor_connect_automatically_label"
app:iconSpaceReserved="false" />
<SwitchPreference
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/b36372…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/b36372…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser] Pushed new branch mullvad-browser-132.0a1-15.0-2
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed new branch mullvad-browser-132.0a1-15.0-2 at The Tor Project / Applications / Mullvad Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/mullv…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser] Pushed new tag base-browser-132.0a1-15.0-2-build1
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed new tag base-browser-132.0a1-15.0-2-build1 at The Tor Project / Applications / Mullvad Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/base-…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag base-browser-132.0a1-15.0-2-build1
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed new tag base-browser-132.0a1-15.0-2-build1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/base-brow…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag base-browser-132.0a1-15.0-1-build1
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed new tag base-browser-132.0a1-15.0-1-build1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/base-brow…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag tor-browser-132.0a1-15.0-2-build1
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed new tag tor-browser-132.0a1-15.0-2-build1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-132.0a1-15.0-2] 251 commits: Bug 1935621 - Fix virtual environment sysconfig path calculation...
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed to branch tor-browser-132.0a1-15.0-2 at The Tor Project / Applications / Tor Browser
Commits:
76e973ea by Filipe Laíns at 2025-03-13T09:15:58+01:00
Bug 1935621 - Fix virtual environment sysconfig path calculation r=firefox-build-system-reviewers,ahochheiden
Signed-off-by: Filipe Laíns <lains(a)riseup.net>
Signed-off-by: Filipe Laíns <lains(a)riseup.net>
Signed-off-by: Filipe Laíns <lains(a)riseup.net>
Differential Revision: https://phabricator.services.mozilla.com/D231480
- - - - -
267cc95c by Mike Hommey at 2025-03-13T09:15:59+01:00
Bug 1906851 - Use mozbuild.shellutil.quote instead of pipes.quote. a=RyanVM
The latter was removed in python 3.13, and while it can be replaced with
shlex, we also have our own version that considers more characters as
needing quotes.
Original Revision: https://phabricator.services.mozilla.com/D225329
Differential Revision: https://phabricator.services.mozilla.com/D225608
- - - - -
49c28377 by Henry Wilkes at 2025-03-13T09:15:59+01:00
BB 41454: Move focus after calling openPreferences for a sub-category.
Temporary fix until mozilla bug 1799153 gets a patch upstream.
- - - - -
006f8e6d by Henry Wilkes at 2025-03-13T09:15:59+01:00
BB 43072: Add aria label and description to moz-message-bar.
Ensures that moz-message-bar, including notifications, are announced on
Orca.
This addresses upstream bugzilla bug 1895857 and should likely be
replaced when it is fixed.
- - - - -
4ae55604 by Henry Wilkes at 2025-03-13T09:15:59+01:00
BB 42739: Use the brand name for profile error messages.
Some messages in profileSelection.properties use gAppData->name as
variable inputs. However, gAppData->name is still "Firefox" for our
base-browser builds, rather than the user-facing browser name. We swap
these instances with the displayed brand name instead.
- - - - -
d840c486 by hackademix at 2025-03-13T09:16:00+01:00
BB 42194: Fix blank net error page on failed DNS resolution with active proxy.
- - - - -
4c72f478 by Henry Wilkes at 2025-03-13T09:16:00+01:00
BB 41483: Remove the firefox override for appstrings.properties
Remove this patch after upstream bugzilla bug 1790187
- - - - -
ebea20b6 by hackademix at 2025-03-13T09:16:00+01:00
BB 43101: Deep link to the startup security warning explanation.
- - - - -
12617b80 by Marco Simonelli at 2025-03-13T09:16:00+01:00
BB 41459: WebRTC fails to build under mingw (Part 1)
- properly define NOMINMAX for just MSVC builds
- - - - -
a0524bf3 by Marco Simonelli at 2025-03-13T09:16:00+01:00
BB 41459: WebRTC fails to build under mingw (Part 2)
- fixes required to build third_party/libwebrtc
- - - - -
bd0f83d0 by Marco Simonelli at 2025-03-13T09:16:01+01:00
BB 41459: WebRTC fails to build under mingw (Part 3)
- fixes required to build third_party/sipcc
- - - - -
440a02d5 by Marco Simonelli at 2025-03-13T09:16:01+01:00
BB 41459: WebRTC fails to build under mingw (Part 4)
- fixes requried to build netwerk/sctp
- - - - -
ac0c8761 by Marco Simonelli at 2025-03-13T09:16:01+01:00
BB 41459: WebRTC fails to build under mingw (Part 5)
- fixes required to build dom/media/webrtc
- - - - -
634ae5f6 by Marco Simonelli at 2025-03-13T09:16:01+01:00
BB 41459: WebRTC fails to build under mingw (Part 6)
- fixes required to build dom/media/systemservices
- - - - -
df816367 by june wilde at 2025-03-13T09:16:02+01:00
BB 42758: Fix WebRTC build errors.
- - - - -
044477e9 by hackademix at 2025-03-13T09:16:02+01:00
BB 41854: Allow overriding download spam protection.
- - - - -
205ce346 by hackademix at 2025-03-13T09:16:02+01:00
BB 42832: Download spam prevention exemption for browser extensions.
- - - - -
4dc498ee by Pier Angelo Vendrame at 2025-03-13T09:16:02+01:00
BB 42220: Allow for more file types to be forced-inline.
Firefox allows to open some files in the browser without any
confirmation, but this will result in a disk leak, because the file will
be downloaded to the temporary directory first (and not deleted, in some
cases).
A preference allows PDFs to be opened without being downloaded to disk.
So, we introduce a similar one to do the same for all the files that are
set to be opened automatically in the browser.
- - - - -
9ee9919d by hackademix at 2025-03-13T09:16:03+01:00
BB 42835: Create an actor to filter file data transfers
- - - - -
82f9e759 by Beatriz Rizental at 2025-03-13T09:16:03+01:00
BB 42728: Modify ./mach lint to skip unused linters
- - - - -
20f7f64f by Gaba at 2025-03-13T09:16:03+01:00
Adding issue and merge request templates
- - - - -
c0d37999 by Morgan at 2025-03-13T09:18:59+01:00
fixup! Adding issue and merge request templates
add issue template for mozilla uplifts and tweak MR template to signal to merger an uplift issue should be created after merge
- - - - -
25048fa0 by Morgan at 2025-03-13T09:19:00+01:00
fixup! Adding issue and merge request templates
add backport template and tweak the uplift template
- - - - -
76faa74c by Morgan at 2025-03-13T09:19:00+01:00
fixup! Adding issue and merge request templates
include Bugzilla as potential source of backports
- - - - -
d4fb33c5 by Morgan at 2025-03-13T09:19:00+01:00
fixup! Adding issue and merge request templates
update the auto /label command to Apps::Type::Bug
- - - - -
7f37cc64 by Morgan at 2025-03-13T09:19:00+01:00
fixup! Adding issue and merge request templates
update release prep label link
- - - - -
c429a49c by hackademix at 2025-03-13T09:19:01+01:00
fixup! Adding issue and merge request templates
TBB 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation
- - - - -
194dd244 by Richard Pospesel at 2025-03-13T09:19:01+01:00
BB 42683: Create script to generate issue triage csv file from bugzilla query and git logs
- - - - -
4874e52f by Henry Wilkes at 2025-03-13T09:19:01+01:00
BB 42305: Add script to combine translation files across versions.
- - - - -
b679e664 by Henry Wilkes at 2025-03-13T09:19:01+01:00
fixup! BB 42305: Add script to combine translation files across versions.
TB 43446: Allow the combine translation script to select some branding
strings from different files.
- - - - -
b9f06416 by Beatriz Rizental at 2025-03-13T09:19:02+01:00
Add CI for Base Browser
- - - - -
331ac27b by Pier Angelo Vendrame at 2025-03-13T09:19:02+01:00
Base Browser's .mozconfigs.
Bug 17858: Cannot create incremental MARs for hardened builds.
Define HOST_CFLAGS, etc. to avoid compiling programs such as mbsdiff
(which is part of mar-tools and is not distributed to end-users) with
ASan.
Bug 21849: Don't allow SSL key logging.
Bug 25741 - TBA: Disable features at compile-time
Define MOZ_ANDROID_NETWORK_STATE and MOZ_ANDROID_LOCATION
Bug 27623 - Export MOZILLA_OFFICIAL during desktop builds
This fixes a problem where some preferences had the wrong default value.
Also see bug 27472 where we made a similar fix for Android.
Bug 29859: Disable HLS support for now
Bug 30463: Explicitly disable MOZ_TELEMETRY_REPORTING
Bug 32493: Disable MOZ_SERVICES_HEALTHREPORT
Bug 33734: Set MOZ_NORMANDY to False
Bug 33851: Omit Parental Controls.
Bug 40252: Add --enable-rust-simd to our tor-browser mozconfig files
Bug 41584: Move some configuration options to base-browser level
- - - - -
c3654582 by Pier Angelo Vendrame at 2025-03-13T09:19:02+01:00
Tweaks to the build system
Bug 40857: Modified the fat .aar creation file
This is a workaround to build fat .aars with the compiling enviornment
disabled.
Mozilla does not use a similar configuration, but either runs a Firefox
build and discards its output, or uses artifacts build.
We might switch to artifact builds too, and drop this patch, or write a
better one to upstream. But until then we need this patch.
See also https://bugzilla.mozilla.org/show_bug.cgi?id=1763770.
Bug 41458: Prevent `mach package-multi-locale` from actually creating a package
macOS builds need some files to be moved around with
./mach package-multi-locale to create multi-locale packages.
The required command isn't exposed through any other mach command.
So, we patch package-multi-locale both to prevent it from failing when
doing official builds and to detect any future changes on it.
- - - - -
a276babc by Pier Angelo Vendrame at 2025-03-13T09:19:02+01:00
BB 29320: Replace the gnu target with gnullvm for Rust.
- - - - -
c111614e by Pier Angelo Vendrame at 2025-03-13T09:19:02+01:00
BB 42616: Remove VideoCaptureTest.kt.
This is a workaround to fix the GeckoView build with WebRTC disabled.
We should replace this workaround with a proper solution, that
excludes this test when MOZ_WEBRTC is undefined/False.
- - - - -
88e67592 by Pier Angelo Vendrame at 2025-03-13T09:19:03+01:00
BB 41108: Remove privileged macOS installation from 102
- - - - -
075bfd79 by Dan Ballard at 2025-03-13T09:19:03+01:00
BB 41149: Re-enable DLL injection protection in all builds not just nightlies
- - - - -
58386729 by Henry Wilkes at 2025-03-13T09:19:03+01:00
BB 43092: Disable wayland by default in Base Browser.
- - - - -
f4f98ea3 by Matthew Finkel at 2025-03-13T09:19:03+01:00
BB 24796: Comment out excess permissions from GeckoView
The GeckoView AndroidManifest.xml is not preprocessed unlike Fennec's
manifest, so we can't use the ifdef preprocessor guards around the
permissions we do not want. Commenting the permissions is the
next-best-thing.
- - - - -
894aff5e by Matthew Finkel at 2025-03-13T09:19:04+01:00
BB 28125: Prevent non-Necko network connections
- - - - -
187ee330 by Mike Perry at 2025-03-13T09:19:04+01:00
BB 12974: Disable NTLM and Negotiate HTTP Auth
The Mozilla bugs: https://bugzilla.mozilla.org/show_bug.cgi?id=1046421,
https://bugzilla.mozilla.org/show_bug.cgi?id=1261591, tor-browser#27602
- - - - -
0229d027 by cypherpunks1 at 2025-03-13T09:19:04+01:00
BB 40717: Hide Windows SSO in settings
- - - - -
a46fb9f5 by Georg Koppen at 2025-03-13T09:19:04+01:00
BB 16285: Exclude ClearKey system for now
In the past the ClearKey system had not been compiled when specifying
--disable-eme. But that changed and it is even bundled nowadays (see:
Mozilla's bug 1300654). We don't want to ship it right now as the use
case for it is not really visible while the code had security
vulnerabilities in the past.
- - - - -
4c9f01e1 by Kathy Brade at 2025-03-13T09:19:05+01:00
BB 21431: Clean-up system extensions shipped in Firefox
Only ship the pdfjs extension.
- - - - -
582ca28e by Henry Wilkes at 2025-03-13T09:19:05+01:00
BB 42831: Remove the shopping components.
- - - - -
99781615 by Kathy Brade at 2025-03-13T09:19:05+01:00
BB 33852: Clean up about:logins (LockWise) to avoid mentioning sync, etc.
Hide elements on about:logins that mention sync, "Firefox LockWise", and
Mozilla's LockWise mobile apps.
Disable the "Create New Login" button when security.nocertdb is true.
- - - - -
37a3ec65 by Alex Catarineu at 2025-03-13T09:19:05+01:00
BB 41457: Remove Mozilla permissions
Bug 40025: Remove Mozilla add-on install permissions
- - - - -
bdc4b099 by Kathy Brade at 2025-03-13T09:19:05+01:00
Bug 41662: Disable about:sync-logs
Even though we disable sync by default with
`identity.fxaccounts.enabled`, this about: page is still avilable.
We could throw an exception on the constructor of the related
component, but it would result only in an error in the console, without
a visible "this address does not look right" error page.
If we fix the issues with MOZ_SERVICES_SYNC, we can restore the
component.
- - - - -
d5b07260 by Morgan at 2025-03-13T09:19:06+01:00
BB 42716: Disable unwanted about: pages
- - - - -
f5972dbf by Henry Wilkes at 2025-03-13T09:19:06+01:00
fixup! BB 42716: Disable unwanted about: pages
TB 43308: Remove about:logo which exposes a branding asset.
- - - - -
c33dd694 by Arthur Edelstein at 2025-03-13T09:19:06+01:00
BB 26353: Prevent speculative connect that violated FPI.
Connections were observed in the catch-all circuit when
the user entered an https or http URL in the URL bar, or
typed a search term.
- - - - -
b41f62ad by Alex Catarineu at 2025-03-13T09:19:06+01:00
BB 31740: Remove some unnecessary RemoteSettings instances
More concretely, SearchService.jsm 'hijack-blocklists' and
url-classifier-skip-urls.
Avoid creating instance for 'anti-tracking-url-decoration'.
If prefs are disabling their usage, avoid creating instances for
'cert-revocations' and 'intermediates'.
Do not ship JSON dumps for collections we do not expect to need. For
the ones in the 'main' bucket, this prevents them from being synced
unnecessarily (the code in remote-settings does so for collections
in the main bucket for which a dump or local data exists). For the
collections in the other buckets, we just save some size by not
shipping their dumps.
We also clear the collections database on the v2 -> v3 migration.
- - - - -
f6649b34 by cypherpunks1 at 2025-03-13T09:19:07+01:00
BB 41092: Add a RemoteSettings JSON dump for query-stripping
- - - - -
071c925f by cypherpunks1 at 2025-03-13T09:19:07+01:00
BB 42730: Patch RemoteSettings to use only local dumps as a data source
- - - - -
c8a7b6c8 by Pier Angelo Vendrame at 2025-03-13T09:19:07+01:00
BB 41635: Disable the Normandy component
Do not include Normandy at all whenever MOZ_NORMANDY is False.
- - - - -
9fc0ea5f by Georg Koppen at 2025-03-13T09:19:07+01:00
BB 30541: Disable WebGL readPixel() for web content
Related Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1428034
- - - - -
0541ec9b by Alex Catarineu at 2025-03-13T09:19:08+01:00
BB 28369: Stop shipping pingsender executable
- - - - -
10e50e57 by Henry Wilkes at 2025-03-13T09:19:08+01:00
BB 42630: Disable LaterRun module.
- - - - -
01c47a89 by Pier Angelo Vendrame at 2025-03-13T09:19:08+01:00
BB 41599: Always return an empty string as network ID
Firefox computes an internal network ID used to detect network changes
and act consequently (e.g., to improve WebSocket UX).
However, there are a few ways to get this internal network ID, so we
patch them out, to be sure any new code will not be able to use them and
possibly link users.
We also sent a patch to Mozilla to seed the internal network ID, to
prevent any accidental leak in the future.
Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1817756
- - - - -
7bcc44ee by Pier Angelo Vendrame at 2025-03-13T09:19:08+01:00
BB 43386: Use Firefox in the UA in RFP-exempt request.
XHR requests initiated by extensions are exempt from RFP.
Therefore, they report the actual app name, instead of Firefox, and the
actual Firefox minor version.
This happens whenever the app name has been customized and does not
match a hardcoded "Firefox".
- - - - -
e693af46 by Richard Pospesel at 2025-03-13T09:19:09+01:00
BB 41327: Disable UrlbarProviderInterventions
- - - - -
7e8df76e by Richard Pospesel at 2025-03-13T09:19:09+01:00
BB 42037: Disable about:firefoxview page
- - - - -
b533469f by Mike Perry at 2025-03-13T09:19:09+01:00
Firefox preference overrides.
- - - - -
7864c8fe by Pier Angelo Vendrame at 2025-03-13T09:19:09+01:00
BB 43140: Tighten up fonts on Linux.
We ship a fontconfig configuration to esnure all Linux users have the
same defaults and reduce the chances of fingerprinting.
We used to add this file in tor-browser-build, but some users might
skip it by using the browser executable without the wrapper script.
Therefore, we decided to activate the file with the FontConfig API
instead of the environment variables.
Bug 41043: Hardcode the UI font on Linux
The mechanism to choose the UI font does not play well with our
fontconfig configuration. As a result, the final criterion to choose
the font for the UI was its version.
Since we hardcode Arimo as a default sans-serif on preferences, we use
it also for the UI. FontConfig will fall back to some other font for
scripts Arimo does not cover as expected (we tested with Japanese).
Bug 43141: Hardcode system-ui to Arimo.
- - - - -
e8f5a4d8 by Pier Angelo Vendrame at 2025-03-13T09:19:09+01:00
BB 41901: Hardcode normalized FontSubstitutes.
Windows has a system to set font aliases through the registry.
This allows some customization that could be used as a fingerprinting
vector.
Moreover, this mechanism is used by Windows itself, and different SKUs
might have different default FontSubstitutes.
- - - - -
7543ae29 by Pier Angelo Vendrame at 2025-03-13T09:19:10+01:00
BB 43322: Customize the font visibility lists.
Customize the lists of fonts to assign base visibility to in
base browser and derivatives.
Also, rename the files with the upstream lists, to make sure we do not
use them by mistake.
- - - - -
8e973eab by Alex Catarineu at 2025-03-13T09:19:10+01:00
BB 30605: Honor privacy.spoof_english in Android
This checks `privacy.spoof_english` whenever `setLocales` is
called from Fenix side and sets `intl.accept_languages`
accordingly.
Bug 40198: Expose privacy.spoof_english pref in GeckoView
- - - - -
28529102 by Pier Angelo Vendrame at 2025-03-13T09:19:10+01:00
BB 42562: Normalized the Accepted Languages on Android.
The OS language might be outside the list of actually supported
languages and it might leak the user's region.
Therefore, we force the locale reported in Accept-Language to match one
we support with translations, even when it means using a not exact
region tag.
- - - - -
60c254d7 by Alex Catarineu at 2025-03-13T09:19:10+01:00
BB 40171: Make WebRequest and GeckoWebExecutor First-Party aware
- - - - -
859bdf3a by Alex Catarineu at 2025-03-13T09:19:11+01:00
BB 26345: Hide tracking protection UI
- - - - -
d0afeb7d by Henry Wilkes at 2025-03-13T09:19:11+01:00
BB 43109: Hide Firefox Relay from settings.
This should remain disabled, see tor-browser#42814.
- - - - -
f3f36a3e by Henry Wilkes at 2025-03-13T09:19:11+01:00
BB 42777: Hide Website Privacy Preferences.
We hide the Website Privacy Preferences section, which controls the
"global privacy control" (GPC) and "do not track" (DNT) settings.
- - - - -
cbee546b by Morgan at 2025-03-13T09:19:11+01:00
BB 42070: Hide "Use smooth scrolling" from settings
- - - - -
2694a513 by Arthur Edelstein at 2025-03-13T09:19:12+01:00
BB 18905: Hide unwanted items from help menu
Bug 25660: Remove the "New Private Window" option
- - - - -
3d207a13 by Pier Angelo Vendrame at 2025-03-13T09:19:12+01:00
BB 41739: Remove "Website appearance" from about:preferences.
It is ignored because of RFP and it is confusing for users.
- - - - -
73147b05 by Henry Wilkes at 2025-03-13T09:19:12+01:00
BB 43117: Hide "Always underline links" from settings.
- - - - -
e45a5a81 by Pier Angelo Vendrame at 2025-03-13T09:19:12+01:00
BB 42774: Always hide the third-pary certs UI.
- - - - -
136041c4 by Henry Wilkes at 2025-03-13T09:19:13+01:00
BB 43118: Hide feature recommendation (CFR) settings.
- - - - -
1b2ed9f8 by Pier Angelo Vendrame at 2025-03-13T09:19:13+01:00
BB 9173: Change the default Firefox profile directory to be relative.
This commit makes Firefox look for the default profile directory in a
directory relative to the binary path.
The directory can be specified through the --with-relative-data-dir.
This is relative to the same directory as the firefox main binary for
Linux and Windows.
On macOS, we remove Contents/MacOS from it.
Or, in other words, the directory is relative to the application
bundle.
This behavior can be overriden at runtime, by placing a file called
system-install adjacent to the firefox main binary (also on macOS).
- - - - -
3b4b4276 by Pier Angelo Vendrame at 2025-03-13T09:19:13+01:00
BB 42773: Replace ~ with the original home.
In Bug 93141, Mozilla started sending users to their home when they type
~ in the URL bar.
On Linux, we change $HOME for various reason, therefore you would be
redirected to the spoofed home directory when typing ~.
So, we check if the original home directory is known, and use that,
instead.
- - - - -
8c86e73a by Alex Catarineu at 2025-03-13T09:19:13+01:00
BB 27604: Fix addon issues when moving the profile directory
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1429838
- - - - -
d2cf32b4 by Mike Perry at 2025-03-13T09:19:13+01:00
BB 13028: Prevent potential proxy bypass cases.
It looks like these cases should only be invoked in the NSS command line
tools, and not the browser, but I decided to patch them anyway because there
literally is a maze of network function pointers being passed around, and it's
very hard to tell if some random code might not pass in the proper proxied
versions of the networking code here by accident.
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1433509
- - - - -
e862e5c1 by Pier Angelo Vendrame at 2025-03-13T09:19:14+01:00
BB 40309: Avoid using regional OS locales
Avoid regional OS locales if the pref
`intl.regional_prefs.use_os_locales` is false but RFP is enabled.
- - - - -
3f165877 by Matthew Finkel at 2025-03-13T09:19:14+01:00
BB 40432: Prevent probing installed applications
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1711084
- - - - -
f80a4d54 by cypherpunks1 at 2025-03-13T09:19:14+01:00
BB 33955: When copying an image only copy the image contents to the clipboard
- - - - -
82319c91 by cypherpunks1 at 2025-03-13T09:19:14+01:00
BB 41791: Omit the source URL when copying page contents to the clipboard
- - - - -
0cabdcae by hackademix at 2025-03-13T09:19:15+01:00
BB 42288: Allow language spoofing in status messages.
- - - - -
b23618b9 by Pier Angelo Vendrame at 2025-03-13T09:19:15+01:00
BB 43196: Remove the vendor name from media notifications on Linux.
Firefox shows "vendor remoteName" as a title of the "... is playing
media" notification on Linux.
However, for our browser the remote name is enough, and prepending the
vendor to it creates a string users usually never see.
- - - - -
0b93f6d1 by Pier Angelo Vendrame at 2025-03-13T09:19:15+01:00
Base Browser strings
This commit adds all the strings needed by following Base Browser
patches.
- - - - -
055150de by Henry Wilkes at 2025-03-13T09:19:15+01:00
BB 42583: Modify moz-support-link for Base Browser.
- - - - -
223358fa by Pier Angelo Vendrame at 2025-03-13T09:19:16+01:00
BB 41369: Improve Firefox language settings for multi-lingual packages
Change the language selector to be sorted by language code, rather than
name, and to display the language code to the user.
Bug 41372: Handle Japanese as a special case in preferences on macOS
Japanese is treated in a special way on macOS. However, seeing the
Japanese language tag could be confusing for users, and moreover the
language name is not localized correctly like other langs.
Bug 41378: Tell users that they can change their language at the first start
With multi-lingual builds, Tor Browser matches the user's system
language, but some users might want to change it.
So, we tell them that it is possible, but only once.
- - - - -
05419656 by p13dz at 2025-03-13T09:19:16+01:00
BB 40283: Workaround for the file upload bug
- - - - -
b194eda3 by hackademix at 2025-03-13T09:19:16+01:00
BB 42019: Empty browser's clipboard on browser shutdown
- - - - -
750a1897 by hackademix at 2025-03-13T09:19:16+01:00
BB 42084: Ensure English spoofing works even if preferences are set out of order.
- - - - -
3532da9c by Pier Angelo Vendrame at 2025-03-13T09:19:16+01:00
BB 41930: Remove the UI to customize accept_languages.
- - - - -
28f65a1b by hackademix at 2025-03-13T09:19:17+01:00
BB 41434: Letterboxing, improve logging.
- - - - -
e0174977 by hackademix at 2025-03-13T09:19:17+01:00
BB 41434: Letterboxing, preemptively apply margins in a global CSS rule to mitigate race conditions on newly created windows and tabs.
- - - - -
4870247d by hackademix at 2025-03-13T09:19:17+01:00
BB 31064: Letterboxing, exempt browser extensions.
- - - - -
115f8136 by hackademix at 2025-03-13T09:19:17+01:00
BB 32411: Letterboxing, exempt view-source: URIs.
- - - - -
facbb12e by hackademix at 2025-03-13T09:19:18+01:00
BB 42574: Letterboxing, exempt pdf.js.
- - - - -
2516af8f by hackademix at 2025-03-13T09:19:18+01:00
BB 32308: Use direct browser sizing for letterboxing.
Bug 30556: align letterboxing with 200x100 new win width stepping
- - - - -
d29d760a by Pier Angelo Vendrame at 2025-03-13T09:19:18+01:00
fixup! BB 32308: Use direct browser sizing for letterboxing.
When the dimension is less than 50px, we need to return dimension
itself, rather than a 0px margin.
- - - - -
a60872e8 by hackademix at 2025-03-13T09:19:18+01:00
BB 41631: Prevent weird initial window dimensions caused by subpixel computations
- - - - -
0316b7c8 by Pier Angelo Vendrame at 2025-03-13T09:30:25+01:00
fixup! BB 41631: Prevent weird initial window dimensions caused by subpixel computations
BB 43205: Fix newwin rounding.
RFP might produce bad rounding because of platform-specific bugs.
Solving them might involve a refactor that is out of our capacity,
therefore we add a JS patch to fix wrong sizes.
- - - - -
534294c4 by hackademix at 2025-03-13T09:31:35+01:00
BB 41918: Option to reuse last window size when letterboxing is enabled.
- - - - -
4b74ac5e by Pier Angelo Vendrame at 2025-03-13T09:31:35+01:00
fixup! BB 41918: Option to reuse last window size when letterboxing is enabled.
BB 43205: Fix newwin rounding.
Do not fix sizes when remember last size is enabled.
- - - - -
2ab79a83 by hackademix at 2025-03-13T09:31:36+01:00
BB 41916: Letterboxing preferences UI
- - - - -
26ffc83e by hackademix at 2025-03-13T09:31:36+01:00
BB 41695: Warn on window maximization without letterboxing in RFPHelper module
- - - - -
a49319df by hackademix at 2025-03-13T09:31:36+01:00
BB 42443: Shrink window to match letterboxing size when the emtpy area is clicked.
- - - - -
aa1fe6c8 by Henry Wilkes at 2025-03-13T09:31:36+01:00
BB 42528: Don't leak system scrollbar size on windows.
- - - - -
9c5dd14b by Henry Wilkes at 2025-03-13T09:31:36+01:00
BB 31575: Disable Firefox Home (Activity Stream)
Treat about:blank as the default home page and new tab page.
Avoid loading AboutNewTab in BrowserGlue.sys.mjs in order
to avoid several network requests that we do not need.
Bug 41624: Disable about:pocket-* pages.
Bug 40144: Redirect about:privatebrowsing to the user's home
- - - - -
98238362 by Kathy Brade at 2025-03-13T09:31:37+01:00
BB 4234: Use the Firefox Update Process for Base Browser.
Windows: disable "runas" code path in updater (15201).
Windows: avoid writing to the registry (16236).
Also includes fixes for tickets 13047, 13301, 13356, 13594, 15406,
16014, 16909, 24476, and 25909.
Also fix bug 27221: purge the startup cache if the Base Browser
version changed (even if the Firefox version and build ID did
not change), e.g., after a minor Base Browser update.
Also fix 32616: Disable GetSecureOutputDirectoryPath() functionality.
Bug 26048: potentially confusing "restart to update" message
Within the update doorhanger, remove the misleading message that mentions
that windows will be restored after an update is applied, and replace the
"Restart and Restore" button label with an existing
"Restart to update Tor Browser" string.
Bug 28885: notify users that update is downloading
Add a "Downloading Base Browser update" item which appears in the
hamburger (app) menu while the update service is downloading a MAR
file. Before this change, the browser did not indicate to the user
that an update was in progress, which is especially confusing in
Tor Browser because downloads often take some time. If the user
clicks on the new menu item, the about dialog is opened to allow
the user to see download progress.
As part of this fix, the update service was changed to always show
update-related messages in the hamburger menu, even if the update
was started in the foreground via the about dialog or via the
"Check for Tor Browser Update" toolbar menu item. This change is
consistent with the Tor Browser goal of making sure users are
informed about the update process.
Removed #28885 parts of this patch which have been uplifted to Firefox.
- - - - -
c7f98925 by Pier Angelo Vendrame at 2025-03-13T09:31:37+01:00
BB 42061: Create an alpha update channel.
- - - - -
9bb771d9 by Nicolas Vigier at 2025-03-13T09:31:37+01:00
BB 41682: Add base-browser nightly mar signing key
- - - - -
3e451854 by Pier Angelo Vendrame at 2025-03-13T09:31:37+01:00
BB 41603: Customize the creation of MOZ_SOURCE_URL
MOZ_SOURCE_URL is created by combining MOZ_SOURCE_REPO and
MOZ_SOURCE_CHANGESET.
But the code takes for granted that it refers to a Hg instance, so it
combines them as `$MOZ_SOURCE_REPO/rev/$MOZ_SOURCE_CHANGESET`.
With this commit, we change this logic to combine them to create a URL
that is valid for GitLab.
$MOZ_SOURCE_CHANGESET needs to be a commit hash, not a branch or a tag.
If that is needed, we could use /-/tree/, instead of /-/commit/.
- - - - -
88c09e1b by Pier Angelo Vendrame at 2025-03-13T09:31:38+01:00
BB 41698: Reword the recommendation badges in about:addons
Firefox strings use { -brand-product-name }.
As a result, it seems that the fork is recommending extensions, whereas
AMO curators are doing that.
So, we replace the strings with custom ones that clarify that Mozilla is
recommending them.
We assign the strings with JS because our translation backend does not
support Fluent attributes, yet, but once it does, we should switch to
them, instead.
Upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1825033
- - - - -
d47c350e by Pier Angelo Vendrame at 2025-03-13T09:31:38+01:00
BB 42438: Tweaks to the migration wizard.
Remove the items not compatible with our features (such as history) from
the migration wizard.
On Linux, allow to specify an alternative home directory, since we
usually change $HOME in our startup script.
- - - - -
a32e37d6 by Alex Catarineu at 2025-03-13T09:31:38+01:00
BB 40069: Add helpers for message passing with extensions
- - - - -
5294084e by Matthew Finkel at 2025-03-13T09:31:38+01:00
BB 41598: Prevent NoScript from being removed/disabled.
Bug 40253: Explicitly allow NoScript in Private Browsing mode.
- - - - -
c163400f by Henry Wilkes at 2025-03-13T09:31:39+01:00
BB 41581: Hide NoScript extension's toolbar button by default.
This hides it from both the toolbar and the unified extensions panel.
We also hide the unified-extension-button if the panel would be empty:
not including the NoScript button when it is hidden. As a result, this
will be hidden by default until a user installs another extension (or
shows the NoScript button and unpins it).
- - - - -
c7abb133 by hackademix at 2025-03-13T09:31:39+01:00
BB 41834: Hide "Can't Be Removed - learn more" menu line for uninstallable add-ons
- - - - -
59187191 by Pier Angelo Vendrame at 2025-03-13T09:31:39+01:00
BB 40925: Implemented the Security Level component
This component adds a new Security Level toolbar button which visually
indicates the current global security level via icon (as defined by the
extensions.torbutton.security_slider pref), a drop-down hanger with a
short description of the current security level, and a new section in
the about:preferences#privacy page where users can change their current
security level. In addition, the hanger and the preferences page will
show a visual warning when the user has modified prefs associated with
the security level and provide a one-click 'Restore Defaults' button to
get the user back on recommended settings.
Bug 40125: Expose Security Level pref in GeckoView
- - - - -
7329eff7 by Pier Angelo Vendrame at 2025-03-13T09:31:39+01:00
fixup! BB 40925: Implemented the Security Level component
BB 43498: Remove our old patch for 43129.
This commit should be ignored at the next rebase (and we will likely
have a conflict on the security level commit).
- - - - -
57864ec2 by Pier Angelo Vendrame at 2025-03-13T09:31:44+01:00
BB 40926: Implemented the New Identity feature
- - - - -
d6e89913 by Henry Wilkes at 2025-03-13T09:31:44+01:00
BB 41736: Customize toolbar for base-browser.
- - - - -
741aeea0 by Pier Angelo Vendrame at 2025-03-13T09:31:44+01:00
BB 42027: Base Browser migration procedures.
This commit implmenents the the Base Browser's version of _migrateUI.
- - - - -
ffa27c1e by Henry Wilkes at 2025-03-13T09:31:44+01:00
TB 42308: Create README for tor-browser.
We drop the README.txt that comes from Mozilla Firefox and add README.md
for tor-browser.
- - - - -
7878f45b by Richard Pospesel at 2025-03-13T09:31:45+01:00
TB 41649: Create rebase and security backport gitlab issue templates
- - - - -
ffc19db6 by Morgan at 2025-03-13T09:31:45+01:00
fixup! TB 41649: Create rebase and security backport gitlab issue templates
add base-browser branch+taggging step
- - - - -
82d3b385 by Morgan at 2025-03-13T09:31:45+01:00
fixup! TB 41649: Create rebase and security backport gitlab issue templates
add /label command to add Apps::Type::Rebase automatically
- - - - -
5f2975e1 by hackademix at 2025-03-13T09:31:45+01:00
fixup! TB 41649: Create rebase and security backport gitlab issue templates
TBB 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation
- - - - -
f9ac038a by Beatriz Rizental at 2025-03-13T09:31:46+01:00
Add CI for Tor Browser
- - - - -
0a142531 by Henry Wilkes at 2025-03-13T09:31:46+01:00
fixup! Add CI for Tor Browser
TB 43446: Include alpha and nightly branding in the translation CI.
- - - - -
428bf9f4 by Richard Pospesel at 2025-03-13T09:31:46+01:00
TB 41089: Add tor-browser build scripts + Makefile to tor-browser
- - - - -
023c747b by Henry Wilkes at 2025-03-13T09:31:46+01:00
TB 41803: Add some developer tools for working on tor-browser.
- - - - -
de2db0ef by Alex Catarineu at 2025-03-13T09:31:46+01:00
Add TorStrings module for localization
- - - - -
25374848 by Henry Wilkes at 2025-03-13T09:31:47+01:00
Tor Browser strings
This commit adds all the strings needed for Tor Browser patches.
- - - - -
b85f9414 by Henry Wilkes at 2025-03-13T09:31:47+01:00
fixup! Tor Browser strings
TB 43462: Add a string for the "unknown" internet status.
- - - - -
e41755b8 by Henry Wilkes at 2025-03-13T09:31:47+01:00
fixup! Tor Browser strings
TB 43328: Improve the Tor log.
- - - - -
a9739751 by Henry Wilkes at 2025-03-13T09:31:47+01:00
fixup! Tor Browser strings
TB 43469: Use "Connect automatically" instead of "Quickstart" in the UI.
- - - - -
10251532 by Henry Wilkes at 2025-03-13T09:31:48+01:00
Tor Browser localization migration scripts.
- - - - -
42ba9b80 by Mike Perry at 2025-03-13T09:31:48+01:00
TB 2176: Rebrand Firefox to TorBrowser
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).
- - - - -
e435d9c4 by Henry Wilkes at 2025-03-13T09:31:48+01:00
fixup! TB 2176: Rebrand Firefox to TorBrowser
TB 43466: Drop unnecessary changes to the aboutDialog.css stylesheet.
Common branding rules common to tor browser releases were moved to the
existing aboutDialogTor.css.
Duplicate rules that were already in
browser/base/content/aboutDialog.css were dropped.
Rules that only made a minor difference were dropped:
1. We now centre-align the logo, instead of right-aligning (which did
not seem to work as intended in right-to-left locales).
2. We keep the logo at the default 192px size, rather than 180px, which
is a 0.75 scaling of the original 256px PNG.
3. We use the default size between the wordmark and "Extended Support
Release", which increases the gap by 6px.
- - - - -
6ac323b6 by Henry Wilkes at 2025-03-13T09:31:48+01:00
fixup! TB 2176: Rebrand Firefox to TorBrowser
TB 43461: Drop our wordmark padding.
- - - - -
5078f77d by Henry Wilkes at 2025-03-13T09:31:49+01:00
fixup! TB 2176: Rebrand Firefox to TorBrowser
TB 43446: Change the branding name for the alpha and nightly releases.
- - - - -
a97854e8 by Henry Wilkes at 2025-03-13T09:31:49+01:00
Customize moz-toggle for tor-browser.
- - - - -
5e851124 by Henry Wilkes at 2025-03-13T09:31:49+01:00
TB 43087: Add onion-pattern to be used on Tor pages.
- - - - -
2e7a1f0f by hackademix at 2025-03-13T09:31:49+01:00
TB 41917: Tor brand-specific styles.
- - - - -
c5e6081a by Henry Wilkes at 2025-03-13T09:31:49+01:00
TB 41817: tor-browser semantic colors.
- - - - -
564e13fc by Henry Wilkes at 2025-03-13T09:31:50+01:00
TB 42110: Add TorUIUtils module for common tor component methods.
- - - - -
b3810cfb by Henry Wilkes at 2025-03-13T09:31:50+01:00
Add purple tor version of the loading APNG.
- - - - -
4c6d2003 by Henry Wilkes at 2025-03-13T09:31:50+01:00
TB 42583: Modify moz-support-link for Tor Browser.
- - - - -
35f98ae6 by sanketh at 2025-03-13T09:31:50+01:00
TB 40209: Implement Basic Crypto Safety
Adds a CryptoSafety actor which detects when you've copied a crypto
address from a HTTP webpage and shows a warning.
Closes #40209.
Bug 40428: Fix string attribute names
- - - - -
8ab0858f by Mike Perry at 2025-03-13T09:31:51+01:00
TB3: Tor Browser's official .mozconfigs.
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
- - - - -
082fa702 by Henry Wilkes at 2025-03-13T09:31:51+01:00
TB 41340: Enable TOR_BROWSER_NIGHTLY_BUILD features for dev and nightly builds
tor-browser#41285: Enable fluent warnings.
- - - - -
d476f0b9 by Pier Angelo Vendrame at 2025-03-13T09:31:51+01:00
TB 40562: Added Tor Browser preferences to 000-tor-browser.js
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.
- - - - -
ed07529c by Pier Angelo Vendrame at 2025-03-13T09:31:51+01:00
TB 13252: Customize profile management on macOS
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.
- - - - -
1b54f088 by Pier Angelo Vendrame at 2025-03-13T09:31:51+01:00
TB 40933: Add tor-launcher functionality
Bug 41926: Reimplement the control port
- - - - -
14913a48 by Henry Wilkes at 2025-03-13T09:31:52+01:00
fixup! TB 40933: Add tor-launcher functionality
TB 43328: Make getLog return the LogEntry data.
- - - - -
000d560b by Cecylia Bocovich at 2025-03-13T09:31:52+01:00
Lox integration
- - - - -
84ca9744 by Richard Pospesel at 2025-03-13T09:31:52+01:00
TB 40597: Implement TorSettings module
- 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
- - - - -
2462f176 by Henry Wilkes at 2025-03-13T09:31:52+01:00
fixup! TB 40597: Implement TorSettings module
TB 43462: Use NetworkLinkService instead of Moat for the internet test.
TorConnect now exposes an `internetStatus` property, which is kept up to
date using `NetworkLinkService`.
- - - - -
184dec46 by Henry Wilkes at 2025-03-13T09:31:53+01:00
fixup! TB 40597: Implement TorSettings module
TB 43502: Remove about:torconnect specific methods from TorConnect
module.
- - - - -
73c14bc3 by Henry Wilkes at 2025-03-13T09:31:53+01:00
fixup! TB 40597: Implement TorSettings module
TB 43529: Await BootstrapAttempt.cancel in AutoBootstrapAttempt.
We also add a comment for the reason why we need to await.
- - - - -
64a61397 by Henry Wilkes at 2025-03-13T09:31:53+01:00
fixup! TB 40597: Implement TorSettings module
TB 43465: Replace TorConnect.canBeginBootstrap with
TorConnect.canBeginNormalBootstrap to distinguish it from
TorConnect.canBeginAutoBootstrap.
- - - - -
fa8df85f by Arthur Edelstein at 2025-03-13T09:31:53+01:00
TB 3455: Add DomainIsolator, for isolating circuit by domain.
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
- - - - -
5e2e9eb5 by Henry Wilkes at 2025-03-13T09:31:54+01:00
TB 41600: Add a tor circuit display panel.
- - - - -
35263b02 by Pier Angelo Vendrame at 2025-03-13T09:31:54+01:00
TB 42247: Android helpers for the TorProvider
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.
- - - - -
9adb0d1f by clairehurst at 2025-03-13T09:31:54+01:00
fixup! TB 42247: Android helpers for the TorProvider
tor-browser#43408
- - - - -
34d3ed45 by Dan Ballard at 2025-03-13T09:31:54+01:00
fixup! TB 42247: Android helpers for the TorProvider
Rename TorIntegrationAndroid.java to TorAndroidIntegration.java
- - - - -
879defae by hackademix at 2025-03-13T09:31:54+01:00
TB 8324: Prevent DNS proxy bypasses caused by Drag&Drop
Bug 41613: Skip Drang & Drop filtering for DNS-safe URLs
- - - - -
11046d2b by Matthew Finkel at 2025-03-13T09:31:55+01:00
TB 25741: TBA: Disable GeckoNetworkManager
The browser should not need information related to the network
interface or network state, tor should take care of that.
- - - - -
f16b096f by Pier Angelo Vendrame at 2025-03-13T09:31:55+01:00
TB 40807: Added QRCode.js to toolkit/modules
- - - - -
1c0b3d60 by Richard Pospesel at 2025-03-13T09:31:55+01:00
TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
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
- - - - -
a2ed3550 by Henry Wilkes at 2025-03-13T09:31:55+01:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43462: Make the internet status in `about:preferences` update
automatically without any user input.
We listen to the status via TorConnect.
- - - - -
7f833747 by Henry Wilkes at 2025-03-13T09:31:56+01:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43502: Move about:torconnect methods to TorConnectParent.
- - - - -
2d3b5ee4 by Henry Wilkes at 2025-03-13T09:31:56+01:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43469: Change the quickstart checkbox to a toggle.
We also update the description text to use "connect automatically"
rather than "Quickstart".
- - - - -
d76a3e4a by Henry Wilkes at 2025-03-13T09:31:56+01:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43328: Improve the Tor log dialog.
- - - - -
c3ab86a8 by Richard Pospesel at 2025-03-13T09:32:01+01:00
TB 27476: Implement about:torconnect captive portal within Tor Browser
- 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.
- - - - -
5af2c826 by Henry Wilkes at 2025-03-13T09:32:01+01:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43398: Prevent tor-button CSS rules from overwriting the
tor-urlbar-button-plain class rules.
- - - - -
ebb69a1f by Henry Wilkes at 2025-03-13T09:32:01+01:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43502: Move about:torconnect methods to TorConnectParent.
- - - - -
3d45cdb5 by Henry Wilkes at 2025-03-13T09:32:02+01:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43465: Show the urlbar Connect button when the user might want to
return to about:torconnect.
Instead of hiding the button when canBeginNormalBootstrap is false we
show it as a plain button. Instead we hide it only when we are already
bootstrapped.
We also avoid initialising the button when TorConnect is not enabled.
We also update TorConnect.open:
1. Do not re-open about:torconnect if we are already connected. E.g.
when the user selects "Connect" in a bridge dialog but we are
already connected by the time the settings are applied.
2. Do not call TorConnect.startAgain when receiving a "hard" request.
Only the bridge dialogs make this request, and they would have
already triggered startAgain by changing the bridge settings.
- - - - -
3689d7ee by Pier Angelo Vendrame at 2025-03-13T09:32:02+01:00
Temporary changes to about:torconnect for Android.
We are planning of tempoorarily using about:torconnect on Android, until
the native UX is ready.
- - - - -
3217c1d3 by Henry Wilkes at 2025-03-13T09:32:02+01:00
TB 7494: Create local home page for TBB.
Bug 41333: Update about:tor to new design. Including:
+ make the favicon match the branding icon.
+ make the location bar show a search icon.
- - - - -
b6a388c6 by Pier Angelo Vendrame at 2025-03-13T09:32:02+01:00
TB 41668: Tweaks to the Base Browser updater for Tor Browser
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.
- - - - -
7f57c3e6 by Kathy Brade at 2025-03-13T09:32:03+01:00
TB 12647: Support symlinks in the updater.
- - - - -
9c8187e2 by Georg Koppen at 2025-03-13T09:32:03+01:00
TB 32658: Create a new MAR signing key
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
- - - - -
72f36137 by Pier Angelo Vendrame at 2025-03-13T09:32:03+01:00
TB 42891: Set the bundled search engine for Tor Browser.
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.
- - - - -
c82602aa by Alex Catarineu at 2025-03-13T09:32:03+01:00
TB 40073: Disable remote Public Suffix List fetching
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.
- - - - -
d4b8fc0b by Henry Wilkes at 2025-03-13T09:32:03+01:00
TB 41906: Hide DNS over HTTPS preferences.
- - - - -
57cbf870 by Richard Pospesel at 2025-03-13T09:32:04+01:00
TB 23247: Communicating security expectations for .onion
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.
- - - - -
7be9e9f6 by Kathy Brade at 2025-03-13T09:32:04+01:00
TB 30237: Add v3 onion services client authentication prompt
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.
- - - - -
490cb2c7 by Alex Catarineu at 2025-03-13T09:32:04+01:00
TB 21952: Implement Onion-Location
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.
- - - - -
0901d5e0 by Henry Wilkes at 2025-03-13T09:32:04+01:00
fixup! TB 21952: Implement Onion-Location
TB 43406: Hide the "onion available" button whilst the "Connect" button
is shown.
- - - - -
a4447152 by Pier Angelo Vendrame at 2025-03-13T09:32:05+01:00
TB 40458: Implement .tor.onion aliases
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.
- - - - -
98c32573 by Pier Angelo Vendrame at 2025-03-13T09:32:05+01:00
TB 11698: Incorporate Tor Browser Manual pages into Tor Browser
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.
- - - - -
92e93b8b by Pier Angelo Vendrame at 2025-03-13T09:32:05+01:00
TB 41435: Add a Tor Browser migration function
For now this function only deletes old language packs for which we are
already packaging the strings with the application.
- - - - -
2c45a84c by Henry Wilkes at 2025-03-13T09:32:05+01:00
fixup! TB 41435: Add a Tor Browser migration function
TB 43462: Drop preference for blocking internet tests since it no longer
requires Moat access.
- - - - -
42ba7154 by Dan Ballard at 2025-03-13T09:32:06+01:00
TB 40701: Add security warning when downloading a file
Shown in the downloads panel, about:downloads and places.xhtml.
- - - - -
b3eba9b8 by Henry Wilkes at 2025-03-13T09:32:06+01:00
TB 41736: Customize toolbar for tor-browser.
- - - - -
1622f290 by hackademix at 2025-03-13T09:32:06+01:00
TB 41728: Pin bridges.torproject.org domains to Let's Encrypt's root cert public key
- - - - -
8efc25a8 by Richard Pospesel at 2025-03-13T09:32:06+01:00
TB 41822: Unconditionally disable default browser UX in about:preferences
- - - - -
27fc9d0e by Cecylia Bocovich at 2025-03-13T09:32:06+01:00
Temporary commit: manually place generated wasm files
These files are built reproducibly using tor-browser-build: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/merge_re…
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.
- - - - -
281a684c by Pier Angelo Vendrame at 2025-03-13T09:32:07+01:00
[android] TBA strings
- - - - -
fa2ebd6e by Dan Ballard at 2025-03-13T09:32:07+01:00
TB 42660: Disable ProxySelector.openConnectionWithProxy and NOPify CrashReporter.sendCrashReport
- - - - -
dcc7f71e by Dan Ballard at 2025-03-13T09:32:07+01:00
TB 43006: Disable RFP for Font Visibility on Android
- - - - -
35d78b32 by Matthew Finkel at 2025-03-13T09:32:07+01:00
TB 40005: [android] Modify Default toolbar menu
Originally android-components#40005.
- - - - -
48c6aa04 by Alex Catarineu at 2025-03-13T09:32:08+01:00
TB 34378: [android] Port external helper app prompting
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.
- - - - -
5f6da40c by Alex Catarineu at 2025-03-13T09:32:08+01:00
TB 40002: [android] Ensure system download manager is not used
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
- - - - -
bbca5367 by Alex Catarineu at 2025-03-13T09:32:08+01:00
TB 40009: [android] Change the default search engines
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
- - - - -
bc33a1d7 by hackademix at 2025-03-13T09:32:08+01:00
TB 42191: [android] Temporary StrictMode relaxation to clear the thumbnail cache.
- - - - -
b97e7804 by hackademix at 2025-03-13T09:32:09+01:00
[android] Modify add-on support
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
- - - - -
20873657 by Alex Catarineu at 2025-03-13T09:32:09+01:00
[android] Modify Addon support
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.
- - - - -
0d675d03 by Alex Catarineu at 2025-03-13T09:32:09+01:00
TB 40015: [android] Port padlock states for .onion services
Originally, android-components#40015.
- - - - -
1881c71d by Matthew Finkel at 2025-03-13T09:32:09+01:00
[android] Modify Tracking Protection configuration
android-components#40020: Disable third-party cookies
android-components#40024: Disable tracking protection by default
- - - - -
681a3f58 by Matthew Finkel at 2025-03-13T09:32:09+01:00
TB 40023: [android] Stop PrivateNotificationService
Originally, android-components#40023.
- - - - -
5a25d127 by Alex Catarineu at 2025-03-13T09:32:10+01:00
TB 34439 [android]: Isolate Icon loader on Android.
Originally, android-components#34439.
- - - - -
2db9375c by Matthew Finkel at 2025-03-13T09:32:10+01:00
[android] Disable features and functionality
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
- - - - -
55c1ebaf by Matthew Finkel at 2025-03-13T09:32:10+01:00
TB 40032 [android]: Set usesCleartextTraffic as false
Originally, fenix#40032.
- - - - -
0042463d by Matthew Finkel at 2025-03-13T09:32:10+01:00
[android] Rename as Tor Browser
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
- - - - -
5036e682 by Georg Koppen at 2025-03-13T09:32:11+01:00
[android] Modify build system
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.
- - - - -
d5d1626f by Dan Ballard at 2025-03-13T10:02:11+01:00
fixup! [android] Modify build system
Bug 42669: Inject gradle property for nimbus-fml path for application services
- - - - -
dbf3e792 by Dan Ballard at 2025-03-13T10:02:16+01:00
fixup! [android] Modify build system
Bug 43518: Fix TBB builds without topsrcdir defined
# Conflicts:
# mobile/android/fenix/app/build.gradle
- - - - -
9dad881e by Matthew Finkel at 2025-03-13T10:02:17+01:00
TB 40185: [android] Use NimbusDisabled
Originally, fenix#40185.
- - - - -
cdbd10ae by Alex Catarineu at 2025-03-13T10:02:17+01:00
TB 40087 [android]: Implement a switch for spoof English.
Originally, fenix#40087 and android-components#40019.
- - - - -
cd22e194 by Matthew Finkel at 2025-03-13T10:02:17+01:00
TB 34403 [android]: Disable Normal mode by default.
Originally, fenix#34403.
- - - - -
afc12de0 by Matthew Finkel at 2025-03-13T10:02:17+01:00
TB 40016 [android]: Don't install WebCompat webext.
Originally, fenix#40016.
- - - - -
6ad9c6fe by Matthew Finkel at 2025-03-13T10:02:18+01:00
[android] Modify UI/UX
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
- - - - -
5c7c40a8 by Matthew Finkel at 2025-03-13T10:02:18+01:00
TB 40026 [android]: Implement Security Level settings on Android.
Originally, fenix#40026.
- - - - -
fd55ab20 by Dan Ballard at 2025-03-13T10:02:18+01:00
TB 41972: [android] Disable Mozilla onboarding
- - - - -
8ac6feee by Dan Ballard at 2025-03-13T10:04:23+01:00
TB 41878: [android] Add standalone Tor Bootstrap
- - - - -
d9f9aa49 by clairehurst at 2025-03-13T10:04:24+01:00
fixup! TB 41878: [android] Add standalone Tor Bootstrap
tor-browser#43408
- - - - -
b3daf9c4 by Dan Ballard at 2025-03-13T10:04:24+01:00
fixup! TB 41878: [android] Add standalone Tor Bootstrap
Rename TorIntegrationAndroid.java to TorAndroidIntegration.java
- - - - -
4d7d2197 by Matthew Finkel at 2025-03-13T10:04:24+01:00
TB 40041 [android]: Implement Tor Network Settings
Originally, fenix#40041.
- - - - -
e0433f13 by clairehurst at 2025-03-13T10:04:25+01:00
fixup! TB 40041 [android]: Implement Tor Network Settings
tor-browser#43408
- - - - -
65b08f8e by clairehurst at 2025-03-13T10:04:25+01:00
[android] Implement Android-native Connection Assist UI
- - - - -
3468a56b by clairehurst at 2025-03-13T10:04:25+01:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser#43198
- - - - -
1ce342b3 by clairehurst at 2025-03-13T10:04:25+01:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser#43199
- - - - -
aefea5fb by clairehurst at 2025-03-13T10:04:25+01:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser#43408
- - - - -
99c4afb8 by Dan Ballard at 2025-03-13T10:04:26+01:00
fixup! [android] Implement Android-native Connection Assist UI
rename TorIntegrationAndroid.java to TorAndroidIntegration.java
- - - - -
1aee1d7e by clairehurst at 2025-03-13T10:04:26+01:00
fixup! [android] Implement Android-native Connection Assist UI
This should have been included with the following.
Bug 43359: Improper handling of TorBootstrapChangeListener with respect to system onDestroy() calls for HomeActivity
- - - - -
2ef255aa by clairehurst at 2025-03-13T10:04:26+01:00
TB 42655 [android]: Implement "New circuit for this site" on Android
- - - - -
e72c3004 by clairehurst at 2025-03-13T10:04:26+01:00
TB 42089: [android] Remove ability to submit site support requests
- - - - -
d758bfdb by clairehurst at 2025-03-13T10:04:27+01:00
[android] Delete unused media
- - - - -
ca02dd9b by clairehurst at 2025-03-13T10:31:51+01:00
[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 tor-browser#43351 and bugzilla bug 1935387.
TODO: Remove once the forced all caps is removed by mozilla.
- - - - -
a4a582d2 by Beatriz Rizental at 2025-03-13T10:31:56+01:00
TB 43243: [android] Implement Android launch test
Also remove exit call from terminate function.
It causes all espresso tests to crash on exit and otherwise doesn't do anything.
- - - - -
2733e8f8 by Henry Wilkes at 2025-03-13T10:31:56+01:00
BB 29745: Limit remote access to content accessible resources
- - - - -
bdd0ca3b by Pier Angelo Vendrame at 2025-03-13T10:31:56+01:00
BB 43468: ScreenCaptureKit should be a weak link.
ScreenCaptureKit is not available on older macOS versions.
For some reason, the upstream build have it as a weak import even though
they do not specify the -weak_framework flag, whereas our builds have it
as a normal import and do not work on macOS 10.15 without this patch.
- - - - -
c9adfc2e by Beatriz Rizental at 2025-03-13T10:31:56+01:00
TB 42669: [android] Use custom no-op app-services
Fetch the custom built no-op application services library
from tor-browser-build when building for Android.
- - - - -
e58edfd2 by Dan Ballard at 2025-03-13T10:31:57+01:00
fixup! TB 42669: [android] Use custom no-op app-services
Bug 42669: get latest application services by date and put in tools
- - - - -
182f74ff by clairehurst at 2025-03-13T10:31:57+01:00
fixup! TB 42669: [android] Use custom no-op app-services
- - - - -
1813 changed files:
- .eslintrc-ignores.js
- .gitignore
- + .gitlab-ci.yml
- + .gitlab/ci/containers/base/Containerfile
- + .gitlab/ci/jobs/lint/helpers.py
- + .gitlab/ci/jobs/lint/lint.yml
- + .gitlab/ci/jobs/startup-test/startup-test-android.py
- + .gitlab/ci/jobs/startup-test/startup-test.py
- + .gitlab/ci/jobs/startup-test/startup-test.yml
- + .gitlab/ci/jobs/update-containers.yml
- + .gitlab/ci/jobs/update-translations.yml
- + .gitlab/ci/mixins.yml
- + .gitlab/issue_templates/Backport Android Security Fixes.md
- + .gitlab/issue_templates/Backport.md
- + .gitlab/issue_templates/Bugzilla Triage.md
- + .gitlab/issue_templates/Emergency Security Issue.md
- + .gitlab/issue_templates/QA - Android.md
- + .gitlab/issue_templates/QA - Desktop.md
- + .gitlab/issue_templates/Rebase Browser - Alpha.md
- + .gitlab/issue_templates/Rebase Browser - Legacy.md
- + .gitlab/issue_templates/Rebase Browser - Rapid.md
- + .gitlab/issue_templates/Rebase Browser - Stable.md
- + .gitlab/issue_templates/Uplift.md
- + .gitlab/issue_templates/bug.md
- + .gitlab/merge_request_templates/Rebase.md
- + .gitlab/merge_request_templates/default.md
- .prettierignore
- + README.md
- − README.txt
- + browser/actors/CryptoSafetyChild.sys.mjs
- + browser/actors/CryptoSafetyParent.sys.mjs
- − browser/actors/RFPHelperChild.sys.mjs
- − browser/actors/RFPHelperParent.sys.mjs
- browser/actors/moz.build
- browser/app/Makefile.in
- browser/app/macbuild/Contents/Info.plist.in
- browser/app/macbuild/Contents/MacOS-files.in
- browser/app/moz.build
- browser/app/permissions
- + browser/app/profile/000-tor-browser.js
- + browser/app/profile/001-base-profile.js
- browser/app/profile/firefox.js
- browser/base/content/aboutDialog-appUpdater.js
- browser/base/content/aboutDialog.js
- browser/base/content/aboutDialog.xhtml
- + browser/base/content/aboutDialogTor.css
- browser/base/content/appmenu-viewcache.inc.xhtml
- browser/base/content/browser-addons.js
- browser/base/content/browser-context.js
- browser/base/content/browser-init.js
- browser/base/content/browser-menubar.inc
- browser/base/content/browser-places.js
- browser/base/content/browser-safebrowsing.js
- browser/base/content/browser-sets.inc
- browser/base/content/browser-siteIdentity.js
- browser/base/content/browser.js
- browser/base/content/browser.js.globals
- browser/base/content/browser.xhtml
- browser/base/content/default-bookmarks.html
- + browser/base/content/languageNotification.js
- browser/base/content/main-popupset.inc.xhtml
- browser/base/content/navigator-toolbox.inc.xhtml
- browser/base/content/pageinfo/pageInfo.xhtml
- browser/base/content/pageinfo/security.js
- browser/base/content/popup-notifications.inc
- browser/base/content/utilityOverlay.js
- browser/base/jar.mn
- browser/base/moz.build
- browser/branding/branding-common.mozbuild
- + browser/branding/tb-alpha/VisualElements_150.png
- + browser/branding/tb-alpha/VisualElements_70.png
- + browser/branding/tb-alpha/configure.sh
- + browser/branding/tb-alpha/content/about-logo.png
- + browser/branding/tb-alpha/content/about-logo.svg
- + browser/branding/tb-alpha/content/about-logo(a)2x.png
- + browser/branding/tb-alpha/content/about-wordmark.svg
- + browser/branding/tb-alpha/content/about.png
- + browser/branding/tb-alpha/content/aboutDialog.css
- + browser/branding/tb-alpha/content/firefox-wordmark.svg
- + browser/branding/tb-alpha/content/jar.mn
- + browser/branding/tb-alpha/content/moz.build
- + browser/branding/tb-alpha/default128.png
- + browser/branding/tb-alpha/default16.png
- + browser/branding/tb-alpha/default22.png
- + browser/branding/tb-alpha/default24.png
- + browser/branding/tb-alpha/default256.png
- + browser/branding/tb-alpha/default32.png
- + browser/branding/tb-alpha/default48.png
- + browser/branding/tb-alpha/default64.png
- + browser/branding/tb-alpha/document.icns
- + browser/branding/tb-alpha/document.ico
- + browser/branding/tb-alpha/document_pdf.ico
- + browser/branding/tb-alpha/firefox.VisualElementsManifest.xml
- + browser/branding/tb-alpha/firefox.icns
- + browser/branding/tb-alpha/firefox.ico
- + browser/branding/tb-alpha/locales/en-US/brand.ftl
- + browser/branding/tb-alpha/locales/en-US/brand.properties
- + browser/branding/tb-alpha/locales/jar.mn
- + browser/branding/tb-alpha/locales/moz.build
- + browser/branding/tb-alpha/moz.build
- + browser/branding/tb-alpha/newtab.ico
- + browser/branding/tb-alpha/newwindow.ico
- + browser/branding/tb-alpha/pbmode.ico
- + browser/branding/tb-alpha/pref/firefox-branding.js
- + browser/branding/tb-nightly/VisualElements_150.png
- + browser/branding/tb-nightly/VisualElements_70.png
- + browser/branding/tb-nightly/configure.sh
- + browser/branding/tb-nightly/content/about-logo.png
- + browser/branding/tb-nightly/content/about-logo.svg
- + browser/branding/tb-nightly/content/about-logo(a)2x.png
- + browser/branding/tb-nightly/content/about-wordmark.svg
- + browser/branding/tb-nightly/content/about.png
- + browser/branding/tb-nightly/content/aboutDialog.css
- + browser/branding/tb-nightly/content/firefox-wordmark.svg
- + browser/branding/tb-nightly/content/jar.mn
- + browser/branding/tb-nightly/content/moz.build
- + browser/branding/tb-nightly/default128.png
- + browser/branding/tb-nightly/default16.png
- + browser/branding/tb-nightly/default22.png
- + browser/branding/tb-nightly/default24.png
- + browser/branding/tb-nightly/default256.png
- + browser/branding/tb-nightly/default32.png
- + browser/branding/tb-nightly/default48.png
- + browser/branding/tb-nightly/default64.png
- + browser/branding/tb-nightly/document.icns
- + browser/branding/tb-nightly/document.ico
- + browser/branding/tb-nightly/document_pdf.ico
- + browser/branding/tb-nightly/firefox.VisualElementsManifest.xml
- + browser/branding/tb-nightly/firefox.icns
- + browser/branding/tb-nightly/firefox.ico
- + browser/branding/tb-nightly/locales/en-US/brand.ftl
- + browser/branding/tb-nightly/locales/en-US/brand.properties
- + browser/branding/tb-nightly/locales/jar.mn
- + browser/branding/tb-nightly/locales/moz.build
- + browser/branding/tb-nightly/moz.build
- + browser/branding/tb-nightly/newtab.ico
- + browser/branding/tb-nightly/newwindow.ico
- + browser/branding/tb-nightly/pbmode.ico
- + browser/branding/tb-nightly/pref/firefox-branding.js
- + browser/branding/tb-release/VisualElements_150.png
- + browser/branding/tb-release/VisualElements_70.png
- + browser/branding/tb-release/configure.sh
- + browser/branding/tb-release/content/about-logo.png
- + browser/branding/tb-release/content/about-logo.svg
- + browser/branding/tb-release/content/about-logo(a)2x.png
- + browser/branding/tb-release/content/about-wordmark.svg
- + browser/branding/tb-release/content/about.png
- + browser/branding/tb-release/content/aboutDialog.css
- + browser/branding/tb-release/content/firefox-wordmark.svg
- + browser/branding/tb-release/content/jar.mn
- + browser/branding/tb-release/content/moz.build
- + browser/branding/tb-release/default128.png
- + browser/branding/tb-release/default16.png
- + browser/branding/tb-release/default22.png
- + browser/branding/tb-release/default24.png
- + browser/branding/tb-release/default256.png
- + browser/branding/tb-release/default32.png
- + browser/branding/tb-release/default48.png
- + browser/branding/tb-release/default64.png
- + browser/branding/tb-release/document.icns
- + browser/branding/tb-release/document.ico
- + browser/branding/tb-release/document_pdf.ico
- + browser/branding/tb-release/firefox.VisualElementsManifest.xml
- + browser/branding/tb-release/firefox.icns
- + browser/branding/tb-release/firefox.ico
- + browser/branding/tb-release/locales/en-US/brand.ftl
- + browser/branding/tb-release/locales/en-US/brand.properties
- + browser/branding/tb-release/locales/jar.mn
- + browser/branding/tb-release/locales/moz.build
- + browser/branding/tb-release/moz.build
- + browser/branding/tb-release/newtab.ico
- + browser/branding/tb-release/newwindow.ico
- + browser/branding/tb-release/pbmode.ico
- + browser/branding/tb-release/pref/firefox-branding.js
- browser/components/BrowserContentHandler.sys.mjs
- browser/components/BrowserGlue.sys.mjs
- browser/components/about/AboutRedirector.cpp
- browser/components/about/components.conf
- browser/components/aboutlogins/AboutLoginsParent.sys.mjs
- browser/components/aboutlogins/content/aboutLogins.css
- browser/components/aboutlogins/content/aboutLogins.mjs
- browser/components/aboutlogins/content/components/fxaccounts-button.css
- + browser/components/abouttor/AboutTorChild.sys.mjs
- + browser/components/abouttor/AboutTorMessage.sys.mjs
- + browser/components/abouttor/AboutTorParent.sys.mjs
- + browser/components/abouttor/HomepageOverride.sys.mjs
- + browser/components/abouttor/content/1f4e3-megaphone.svg
- + browser/components/abouttor/content/26a1-high-voltage.svg
- + browser/components/abouttor/content/2728-sparkles.svg
- + browser/components/abouttor/content/2764-red-heart.svg
- + browser/components/abouttor/content/aboutTor.css
- + browser/components/abouttor/content/aboutTor.html
- + browser/components/abouttor/content/aboutTor.js
- + browser/components/abouttor/content/dax-logo.svg
- + browser/components/abouttor/jar.mn
- + browser/components/abouttor/moz.build
- browser/components/customizableui/CustomizableUI.sys.mjs
- browser/components/customizableui/content/panelUI.inc.xhtml
- browser/components/downloads/DownloadSpamProtection.sys.mjs
- + browser/components/downloads/DownloadsTorWarning.sys.mjs
- browser/components/downloads/content/contentAreaDownloadsView.js
- browser/components/downloads/content/contentAreaDownloadsView.xhtml
- browser/components/downloads/content/downloads.css
- browser/components/downloads/content/downloads.js
- browser/components/downloads/content/downloadsPanel.inc.xhtml
- browser/components/downloads/moz.build
- browser/components/extensions/parent/ext-browserAction.js
- browser/components/extensions/schemas/chrome_settings_overrides.json
- browser/components/migration/ChromeMigrationUtils.sys.mjs
- browser/components/migration/content/migration-wizard.mjs
- browser/components/moz.build
- + browser/components/newidentity/content/newIdentityDialog.css
- + browser/components/newidentity/content/newIdentityDialog.js
- + browser/components/newidentity/content/newIdentityDialog.xhtml
- + browser/components/newidentity/content/newidentity.js
- + browser/components/newidentity/jar.mn
- + browser/components/newidentity/moz.build
- browser/components/newtab/AboutNewTabService.sys.mjs
- + browser/components/onionservices/OnionAliasStore.sys.mjs
- + browser/components/onionservices/OnionLocationChild.sys.mjs
- + browser/components/onionservices/OnionLocationParent.sys.mjs
- + browser/components/onionservices/TorRequestWatch.sys.mjs
- + browser/components/onionservices/content/authNotificationIcon.inc.xhtml
- + browser/components/onionservices/content/authPopup.inc.xhtml
- + browser/components/onionservices/content/authPreferences.css
- + browser/components/onionservices/content/authPreferences.inc.xhtml
- + browser/components/onionservices/content/authPreferences.js
- + browser/components/onionservices/content/authPrompt.js
- + browser/components/onionservices/content/onionlocation-urlbar.inc.xhtml
- + browser/components/onionservices/content/onionlocation.css
- + browser/components/onionservices/content/onionservices.css
- + browser/components/onionservices/content/savedKeysDialog.js
- + browser/components/onionservices/content/savedKeysDialog.xhtml
- + browser/components/onionservices/jar.mn
- + browser/components/onionservices/moz.build
- browser/components/places/PlacesUIUtils.sys.mjs
- browser/components/places/content/controller.js
- browser/components/places/content/places.css
- browser/components/places/content/places.js
- browser/components/places/content/places.xhtml
- browser/components/preferences/home.inc.xhtml
- browser/components/preferences/home.js
- browser/components/preferences/jar.mn
- + browser/components/preferences/letterboxing-middle-dark.svg
- + browser/components/preferences/letterboxing-middle-light.svg
- + browser/components/preferences/letterboxing-top-dark.svg
- + browser/components/preferences/letterboxing-top-light.svg
- + browser/components/preferences/letterboxing.css
- + browser/components/preferences/letterboxing.inc.xhtml
- + browser/components/preferences/letterboxing.js
- browser/components/preferences/main.inc.xhtml
- browser/components/preferences/main.js
- browser/components/preferences/preferences.js
- browser/components/preferences/preferences.xhtml
- browser/components/preferences/privacy.inc.xhtml
- browser/components/preferences/privacy.js
- browser/components/resistfingerprinting/test/browser/browser_dynamical_window_rounding.js
- + browser/components/rulesets/RulesetsChild.sys.mjs
- + browser/components/rulesets/RulesetsParent.sys.mjs
- + browser/components/rulesets/content/aboutRulesets.css
- + browser/components/rulesets/content/aboutRulesets.html
- + browser/components/rulesets/content/aboutRulesets.js
- + browser/components/rulesets/content/securedrop.svg
- + browser/components/rulesets/jar.mn
- + browser/components/rulesets/moz.build
- browser/components/search/SearchSERPTelemetry.sys.mjs
- + browser/components/search/extensions/ddg-onion/favicon.ico
- + browser/components/search/extensions/ddg-onion/manifest.json
- browser/components/search/extensions/ddg/manifest.json
- + browser/components/search/extensions/startpage-onion/favicon.png
- + browser/components/search/extensions/startpage-onion/manifest.json
- + browser/components/search/extensions/startpage/favicon.png
- + browser/components/search/extensions/startpage/manifest.json
- + browser/components/securitylevel/content/securityLevel.js
- + browser/components/securitylevel/content/securityLevelButton.css
- + browser/components/securitylevel/content/securityLevelButton.inc.xhtml
- + browser/components/securitylevel/content/securityLevelIcon.svg
- + browser/components/securitylevel/content/securityLevelPanel.css
- + browser/components/securitylevel/content/securityLevelPanel.inc.xhtml
- + browser/components/securitylevel/content/securityLevelPreferences.css
- + browser/components/securitylevel/content/securityLevelPreferences.inc.xhtml
- + browser/components/securitylevel/jar.mn
- + browser/components/securitylevel/moz.build
- browser/components/shopping/jar.mn
- browser/components/shopping/moz.build
- browser/components/tabbrowser/content/tabbrowser.js
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f4-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f6-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fc-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fc-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fd-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fe-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fe-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/README.txt
- + browser/components/torcircuit/content/tor-circuit-icon-mask.svg
- + browser/components/torcircuit/content/tor-circuit-node-end.svg
- + browser/components/torcircuit/content/tor-circuit-node-middle.svg
- + browser/components/torcircuit/content/tor-circuit-node-relays.svg
- + browser/components/torcircuit/content/tor-circuit-node-start.svg
- + browser/components/torcircuit/content/tor-circuit-redirect.svg
- + browser/components/torcircuit/content/torCircuitPanel.css
- + browser/components/torcircuit/content/torCircuitPanel.inc.xhtml
- + browser/components/torcircuit/content/torCircuitPanel.js
- + browser/components/torcircuit/jar.mn
- + browser/components/torcircuit/moz.build
- + browser/components/torpreferences/content/bridge-bot.svg
- + browser/components/torpreferences/content/bridge-qr.svg
- + browser/components/torpreferences/content/bridge.svg
- + browser/components/torpreferences/content/bridgeQrDialog.js
- + browser/components/torpreferences/content/bridgeQrDialog.xhtml
- + browser/components/torpreferences/content/bridgemoji/BridgeEmoji.js
- + browser/components/torpreferences/content/bridgemoji/annotations.json
- + browser/components/torpreferences/content/bridgemoji/bridge-emojis.json
- + browser/components/torpreferences/content/bridgemoji/svgs/1f300.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f308.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f30a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f30b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f319.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f31f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f321.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f32d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f32e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f332.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f333.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f334.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f335.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f336.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f337.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f339.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f341.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f344.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f345.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f346.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f347.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f348.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f349.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f350.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f351.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f352.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f353.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f354.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f355.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f368.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f369.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f37f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f380.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f381.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f382.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f383.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f388.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f389.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f38f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f392.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f399.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f39f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ac.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3af.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ba.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3bb.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3be.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3dd.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3e1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ee.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f417.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f418.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f419.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f420.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f422.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f425.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f426.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f428.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f430.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f431.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f432.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f433.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f434.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f435.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f436.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f437.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f441.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f451.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f455.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f457.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f45f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f47d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f484.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f488.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f48d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f48e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f490.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4a1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4a7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4b3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4bf.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4cc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4ce.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4d5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4e1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4e2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4fb.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f50b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f511.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f525.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f526.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f54a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f58c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f58d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f5ff.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f680.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f681.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f686.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f68b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f68d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f695.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f697.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f69a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f69c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6fa.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6fc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f916.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f93f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f941.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f94c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f94f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f950.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f951.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f955.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f956.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f965.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f966.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f968.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f980.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f981.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f984.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f986.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f987.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f988.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f989.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f992.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f993.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f994.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f995.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f998.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f999.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ad.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9d9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9da.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9dc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ea.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ec.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ed.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ee.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa73.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa80.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa81.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa83.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa90.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa91.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa95.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa97.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fab6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/23f0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2600.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2602.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2604.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/260e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2693.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2696.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26bd.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26f2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2708.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/270f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2728.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2744.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/README.txt
- + browser/components/torpreferences/content/builtinBridgeDialog.js
- + browser/components/torpreferences/content/builtinBridgeDialog.xhtml
- + browser/components/torpreferences/content/connectionCategory.inc.xhtml
- + browser/components/torpreferences/content/connectionPane.js
- + browser/components/torpreferences/content/connectionPane.xhtml
- + browser/components/torpreferences/content/connectionSettingsDialog.js
- + browser/components/torpreferences/content/connectionSettingsDialog.xhtml
- + browser/components/torpreferences/content/lox-bridge-icon.svg
- + browser/components/torpreferences/content/lox-bridge-pass.svg
- + browser/components/torpreferences/content/lox-complete-ring.svg
- + browser/components/torpreferences/content/lox-invite-icon.svg
- + browser/components/torpreferences/content/lox-progress-ring.svg
- + browser/components/torpreferences/content/lox-success.svg
- + browser/components/torpreferences/content/loxInviteDialog.js
- + browser/components/torpreferences/content/loxInviteDialog.xhtml
- + browser/components/torpreferences/content/mail.svg
- + browser/components/torpreferences/content/network-broken.svg
- + browser/components/torpreferences/content/network.svg
- + browser/components/torpreferences/content/provideBridgeDialog.js
- + browser/components/torpreferences/content/provideBridgeDialog.xhtml
- + browser/components/torpreferences/content/requestBridgeDialog.js
- + browser/components/torpreferences/content/requestBridgeDialog.xhtml
- + browser/components/torpreferences/content/telegram-logo.svg
- + browser/components/torpreferences/content/torLogDialog.js
- + browser/components/torpreferences/content/torLogDialog.xhtml
- + browser/components/torpreferences/content/torPreferences.css
- + browser/components/torpreferences/jar.mn
- + browser/components/torpreferences/moz.build
- browser/components/urlbar/UrlbarInput.sys.mjs
- browser/components/urlbar/UrlbarProvidersManager.sys.mjs
- browser/components/urlbar/UrlbarUtils.sys.mjs
- browser/components/urlbar/moz.build
- + browser/config/mozconfigs/base-browser
- + browser/config/mozconfigs/base-browser-android
- + browser/config/mozconfigs/tor-browser
- + browser/config/mozconfigs/tor-browser-android
- browser/confvars.sh
- browser/extensions/moz.build
- + browser/fonts/fonts.conf
- browser/fonts/moz.build
- browser/installer/Makefile.in
- browser/installer/package-manifest.in
- browser/installer/windows/nsis/shared.nsh
- browser/locales/Makefile.in
- − browser/locales/en-US/chrome/overrides/appstrings.properties
- browser/locales/jar.mn
- browser/modules/BrowserWindowTracker.sys.mjs
- browser/modules/HomePage.sys.mjs
- browser/modules/LaterRun.sys.mjs
- + browser/modules/TorUIUtils.sys.mjs
- browser/modules/URILoadingHelper.sys.mjs
- browser/modules/moz.build
- browser/moz.build
- browser/moz.configure
- browser/themes/shared/addons/unified-extensions.css
- browser/themes/shared/browser-shared.css
- browser/themes/shared/controlcenter/panel.css
- browser/themes/shared/downloads/contentAreaDownloadsView.css
- + browser/themes/shared/icons/new_circuit.svg
- + browser/themes/shared/icons/new_identity.svg
- browser/themes/shared/identity-block/identity-block.css
- browser/themes/shared/jar.inc.mn
- browser/themes/shared/notification-icons.css
- browser/themes/shared/preferences/preferences.css
- browser/themes/shared/tabbrowser/tabs.css
- browser/themes/shared/toolbarbutton-icons.css
- + browser/themes/shared/tor-branding.css
- + browser/themes/shared/tor-urlbar-button.css
- build.gradle
- build/application.ini.in
- build/moz.build
- build/moz.configure/init.configure
- build/moz.configure/rust.configure
- build/moz.configure/update-programs.configure
- build/moz.configure/windows.configure
- build/variables.py
- caps/nsScriptSecurityManager.cpp
- config/createprecomplete.py
- devtools/client/aboutdebugging/src/actions/runtimes.js
- devtools/client/netmonitor/src/components/SecurityState.js
- devtools/client/themes/images/aboutdebugging-firefox-logo.svg
- docshell/base/URIFixup.sys.mjs
- docshell/base/nsAboutRedirector.cpp
- docshell/base/nsDocShell.cpp
- docshell/build/components.conf
- dom/base/ContentAreaDropListener.sys.mjs
- dom/base/Document.cpp
- dom/base/Document.h
- dom/base/nsContentUtils.cpp
- dom/base/nsContentUtils.h
- dom/base/nsCopySupport.cpp
- dom/base/nsGlobalWindowOuter.cpp
- dom/canvas/ClientWebGLContext.cpp
- dom/ipc/BrowserParent.cpp
- dom/ipc/BrowserParent.h
- dom/ipc/PBrowser.ipdl
- dom/ipc/WindowGlobalActor.cpp
- dom/ipc/WindowGlobalChild.cpp
- dom/locales/moz.build
- dom/media/systemservices/video_engine/desktop_device_info.cc
- dom/media/webrtc/libwebrtcglue/VideoConduit.cpp
- dom/media/webrtc/sdp/RsdparsaSdpAttributeList.cpp
- dom/media/webrtc/transport/nrinterfaceprioritizer.cpp
- dom/media/webrtc/transport/sigslot.h
- dom/media/webrtc/transport/test/ice_unittest.cpp
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.c
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.h
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-win32.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs.c
- dom/media/webrtc/transport/third_party/nrappkit/src/log/r_log.c
- dom/media/webrtc/transport/third_party/nrappkit/src/registry/registry.c
- dom/security/nsContentSecurityUtils.cpp
- dom/security/nsMixedContentBlocker.cpp
- dom/webidl/Document.webidl
- dom/websocket/WebSocket.cpp
- dom/xslt/xslt/txMozillaXSLTProcessor.cpp
- dom/xslt/xslt/txXSLTMsgsURL.h
- extensions/auth/nsHttpNegotiateAuth.cpp
- gfx/thebes/StandardFonts-linux.inc → gfx/thebes/StandardFonts-linux-upstream.inc
- + gfx/thebes/StandardFonts-macos-bb.inc
- gfx/thebes/StandardFonts-macos.inc → gfx/thebes/StandardFonts-macos-upstream.inc
- + gfx/thebes/StandardFonts-win10-bb.inc
- gfx/thebes/StandardFonts-win10.inc → gfx/thebes/StandardFonts-win10-upstream.inc
- gfx/thebes/gfxDWriteFontList.cpp
- gfx/thebes/gfxDWriteFontList.h
- gfx/thebes/gfxFcPlatformFontList.cpp
- gfx/thebes/gfxGDIFontList.cpp
- gfx/thebes/gfxMacPlatformFontList.mm
- gfx/thebes/gfxPlatformFontList.cpp
- intl/l10n/Localization.h
- intl/locale/LocaleService.cpp
- intl/strres/nsIStringBundle.idl
- intl/strres/nsStringBundle.cpp
- js/xpconnect/src/xpc.msg
- layout/base/nsLayoutUtils.cpp
- mobile/android/android-components/components/browser/engine-gecko/build.gradle
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngine.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/cookiebanners/GeckoCookieBannersStorage.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/cookiebanners/ReportSiteDomainsRepository.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/fetch/GeckoViewFetchClient.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/webextension/GeckoWebExtension.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/cookiebanners/GeckoCookieBannersStorageTest.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/cookiebanners/ReportSiteDomainsRepositoryTest.kt
- mobile/android/android-components/components/browser/icons/src/main/java/mozilla/components/browser/icons/loader/HttpIconLoader.kt
- mobile/android/android-components/components/browser/menu/src/main/java/mozilla/components/browser/menu/WebExtensionBrowserMenuBuilder.kt
- mobile/android/android-components/components/browser/storage-sync/src/main/java/mozilla/components/browser/storage/sync/Types.kt
- mobile/android/android-components/components/browser/thumbnails/src/main/java/mozilla/components/browser/thumbnails/utils/ThumbnailDiskCache.kt
- mobile/android/android-components/components/browser/toolbar/src/main/java/mozilla/components/browser/toolbar/display/DisplayToolbar.kt
- mobile/android/android-components/components/browser/toolbar/src/main/java/mozilla/components/browser/toolbar/display/SiteSecurityIconView.kt
- mobile/android/android-components/components/browser/toolbar/src/main/res/drawable/mozac_ic_site_security.xml
- mobile/android/android-components/components/browser/toolbar/src/main/res/values/attrs_browser_toolbar.xml
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/EngineSession.kt
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/Settings.kt
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/cookiehandling/CookieBannersStorage.kt
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/webextension/WebExtension.kt
- mobile/android/android-components/components/concept/engine/src/test/java/mozilla/components/concept/engine/SettingsTest.kt
- mobile/android/android-components/components/concept/fetch/src/main/java/mozilla/components/concept/fetch/Request.kt
- mobile/android/android-components/components/concept/toolbar/src/main/java/mozilla/components/concept/toolbar/Toolbar.kt
- mobile/android/android-components/components/feature/accounts/build.gradle
- mobile/android/android-components/components/feature/addons/src/main/java/mozilla/components/feature/addons/AddonManager.kt
- mobile/android/android-components/components/feature/addons/src/main/java/mozilla/components/feature/addons/amo/AMOAddonsProvider.kt
- mobile/android/android-components/components/feature/addons/src/main/res/layout/mozac_feature_addons_fragment_dialog_addon_installed.xml
- mobile/android/android-components/components/feature/app-links/build.gradle
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksFeature.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
- mobile/android/android-components/components/feature/awesomebar/src/main/java/mozilla/components/feature/awesomebar/provider/SessionAutocompleteProvider.kt
- mobile/android/android-components/components/feature/awesomebar/src/main/java/mozilla/components/feature/awesomebar/provider/SessionSuggestionProvider.kt
- mobile/android/android-components/components/feature/contextmenu/src/main/java/mozilla/components/feature/contextmenu/ContextMenuCandidate.kt
- mobile/android/android-components/components/feature/downloads/src/main/java/mozilla/components/feature/downloads/AbstractFetchDownloadService.kt
- mobile/android/android-components/components/feature/downloads/src/main/java/mozilla/components/feature/downloads/DownloadsFeature.kt
- mobile/android/android-components/components/feature/downloads/src/test/java/mozilla/components/feature/downloads/DownloadsFeatureTest.kt
- mobile/android/android-components/components/feature/fxsuggest/build.gradle
- mobile/android/android-components/components/feature/privatemode/src/main/java/mozilla/components/feature/privatemode/notification/PrivateNotificationFeature.kt
- mobile/android/android-components/components/feature/search/build.gradle
- mobile/android/android-components/components/feature/search/src/main/assets/search/list.json
- + mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/ddg-onion.xml
- mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/ddg.xml
- + mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/startpage-onion.xml
- + mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/startpage.xml
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/SearchUseCases.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/ext/SearchEngine.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/internal/SearchUrlBuilder.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/storage/SearchEngineReader.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/telemetry/SerpTelemetryRepository.kt
- mobile/android/android-components/components/feature/search/src/test/java/mozilla/components/feature/search/telemetry/BaseSearchTelemetryTest.kt
- mobile/android/android-components/components/feature/search/src/test/java/mozilla/components/feature/search/telemetry/SerpTelemetryRepositoryTest.kt
- mobile/android/android-components/components/feature/toolbar/src/main/java/mozilla/components/feature/toolbar/ToolbarPresenter.kt
- mobile/android/android-components/components/service/firefox-accounts/src/main/java/mozilla/components/service/fxa/Types.kt
- mobile/android/android-components/components/service/firefox-accounts/src/main/java/mozilla/components/service/fxa/sync/WorkManagerSyncManager.kt
- mobile/android/android-components/components/service/nimbus/build.gradle
- mobile/android/android-components/components/service/nimbus/src/main/java/mozilla/components/service/nimbus/messaging/NimbusMessagingController.kt
- mobile/android/android-components/components/service/nimbus/src/main/java/mozilla/components/service/nimbus/messaging/NimbusMessagingStorage.kt
- mobile/android/android-components/components/support/ktx/src/main/java/mozilla/components/support/ktx/android/content/Context.kt
- mobile/android/android-components/components/support/ktx/src/main/java/mozilla/components/support/ktx/kotlin/String.kt
- mobile/android/android-components/components/support/remotesettings/src/main/java/mozilla/components/support/remotesettings/RemoteSettingsClient.kt
- mobile/android/android-components/components/support/rustlog/src/main/java/mozilla/components/support/rustlog/RustLog.kt
- + mobile/android/android-components/components/support/utils/src/main/java/mozilla/components/support/utils/TorUtils.kt
- mobile/android/android-components/components/support/webextensions/src/main/java/mozilla/components/support/webextensions/WebExtensionSupport.kt
- + mobile/android/android-components/components/ui/icons/src/main/res/drawable/mozac_ic_onion.xml
- mobile/android/android-components/plugins/config/src/main/java/ConfigPlugin.kt
- mobile/android/android-components/plugins/dependencies/src/main/java/ApplicationServices.kt
- mobile/android/android-components/samples/browser/src/main/res/layout/activity_installed_add_on_details.xml
- + mobile/android/app/000-tor-browser-android.js
- mobile/android/app/geckoview-prefs.js
- mobile/android/app/moz.build
- + mobile/android/basebrowser.configure
- mobile/android/branding/beta/locales/jar.mn
- mobile/android/branding/nightly/locales/jar.mn
- mobile/android/branding/official/locales/jar.mn
- mobile/android/branding/unofficial/locales/jar.mn
- mobile/android/confvars.sh
- mobile/android/exoplayer2/src/main/java/org/mozilla/thirdparty/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java
- mobile/android/fenix/.buildconfig.yml
- mobile/android/fenix/app/build.gradle
- mobile/android/fenix/app/lint-baseline.xml
- mobile/android/fenix/app/onboarding.fml.yaml
- mobile/android/fenix/app/proguard-rules.pro
- + mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/AppStartupTest.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/onboarding/view/OnboardingMapperTest.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/BrowserRobot.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuAboutRobot.kt
- + mobile/android/fenix/app/src/beta/ic_launcher-playstore.png
- + mobile/android/fenix/app/src/beta/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/beta/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/beta/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/beta/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/beta/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/beta/res/drawable/ic_launcher_monochrome_foreground.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml → mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_round.webp
- + mobile/android/fenix/app/src/beta/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/beta/res/values/static_strings.xml
- mobile/android/fenix/app/src/beta/res/xml/shortcuts.xml
- − mobile/android/fenix/app/src/debug/ic_launcher-web.webp
- + mobile/android/fenix/app/src/debug/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/debug/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/debug/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/debug/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/debug/res/drawable/ic_launcher_monochrome_foreground.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/values/colors.xml
- + mobile/android/fenix/app/src/debug/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/debug/res/xml/shortcuts.xml
- mobile/android/fenix/app/src/main/AndroidManifest.xml
- + mobile/android/fenix/app/src/main/assets/common/torrc-defaults
- − mobile/android/fenix/app/src/main/assets/searchplugins/reddit.xml
- − mobile/android/fenix/app/src/main/assets/searchplugins/youtube.xml
- − mobile/android/fenix/app/src/main/ic_launcher-web.webp
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/BrowserDirection.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/IntentReceiverActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/addons/InstalledAddonDetailsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/OpenInAppOnboardingObserver.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Analytics.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Components.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Core.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/FenixSnackbar.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NimbusComponents.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NotificationManager.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/TorBrowserFeatures.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/UseCases.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuNavigationMiddleware.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/AdjustMetricsService.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/GleanMetricsService.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/MetricController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/MetricsUtils.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserMenuSignIn.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarCFRPresenter.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/CustomTabToolbarMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/PoweredByNotification.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/downloads/dialog/DynamicDownloadDialog.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/experiments/view/ResearchSurfaceSurvey.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Activity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/gecko/GeckoProvider.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenuView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/intent/HomeDeepLinkIntentProcessor.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/pocket/PocketStoriesComposables.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentsyncedtabs/view/RecentSyncedTab.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/PrivateBrowsingDescriptionViewHolder.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/PagerIndicator.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/TopSiteItemViewHolder.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/TopSites.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyCompleted.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyHeader.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyRequestPrompt.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/FenixOnboarding.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/ReEngagementNotificationWorker.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/OnboardingPage.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/OnboardingScreen.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/UpgradeOnboarding.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/SearchDialogFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/awesomebar/AwesomeBarView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/HttpsOnlyFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/PhoneFeature.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SettingsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SupportUtils.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/TabsSettingsFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/TorBridgeConfigFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/TorSecurityLevelFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/about/AboutFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/AccountUiView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/advanced/DefaultLocaleSettingsController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/advanced/LocaleSettingsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/view/SavedLoginsListView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/QuickSettingsSheetDialogFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/ProtectionsView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerDetailsController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerDetailsInteractor.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerHandlingDetailsView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannersStorageExt.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/sitepermissions/SitePermissionsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/sitepermissions/SitePermissionsManagePhoneFeatureFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/SaveToPDFMiddleware.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/NoAnalysis.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/ReviewQualityCheckContextualOnboarding.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shortcut/PwaOnboardingObserver.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabLayoutMediator.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayBanner.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsList.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/ConnectAssistUiState.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/QuickstartViewModel.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/SecurityLevel.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBootstrapStatus.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBridgeTransports.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorController.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorControllerGV.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorLog.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorLogsComposeFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorLogsViewModel.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/trackingprotection/ProtectionsStore.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/NotificationBase.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/gecko/search/SearchWidgetProvider.kt
- + mobile/android/fenix/app/src/main/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-hdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-hdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-mdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-mdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night/onboarding_ctd_default_browser.xml
- mobile/android/fenix/app/src/main/res/drawable-v23/splash_screen.xml
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/main/res/drawable/browser_location.xml
- + mobile/android/fenix/app/src/main/res/drawable/connect.xml
- + mobile/android/fenix/app/src/main/res/drawable/connect_broken.xml
- + mobile/android/fenix/app/src/main/res/drawable/globe_broken.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_account.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_account_warning.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_favorite.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_firefox.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_fx_accounts_avatar.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_launcher_foreground.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_launcher_monochrome.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_notification_permission.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_key_features.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_key_features_icons_only.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_search_widget.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_sync.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_welcome.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_onion_pattern.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_pocket.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_scan.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_screenshot.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_sign_in.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_signed_out.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_status_logo.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_sync_disconnected.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_synced_tabs.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_tor_config_bridge.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_tor_network_settings.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_wordmark_logo.webp
- − mobile/android/fenix/app/src/main/res/drawable/ic_wordmark_text_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable/ic_wordmark_text_private.webp
- − mobile/android/fenix/app/src/main/res/drawable/microsurvey_success.xml
- + mobile/android/fenix/app/src/main/res/drawable/new_circuit.xml
- − mobile/android/fenix/app/src/main/res/drawable/onboarding_ctd_default_browser.xml
- − mobile/android/fenix/app/src/main/res/drawable/onboarding_ctd_notification.xml
- − mobile/android/fenix/app/src/main/res/drawable/onboarding_ctd_sync.xml
- − mobile/android/fenix/app/src/main/res/drawable/pocket_vector.xml
- mobile/android/fenix/app/src/main/res/drawable/progress_gradient.xml
- mobile/android/fenix/app/src/main/res/drawable/pager_dot.xml → mobile/android/fenix/app/src/main/res/drawable/rounded_corners.xml
- mobile/android/fenix/app/src/main/res/drawable-night/ic_logo_wordmark_normal.xml → mobile/android/fenix/app/src/main/res/drawable/tor_bootstrap_background_gradient.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml → mobile/android/fenix/app/src/main/res/drawable/tor_onboarding_donate_gradient.xml
- mobile/android/fenix/app/src/main/res/drawable/onboarding_popup_shape.xml → mobile/android/fenix/app/src/main/res/drawable/tor_onboarding_donate_rounded_corners.xml
- mobile/android/fenix/app/src/main/res/layout/component_cookie_banner_details_panel.xml
- mobile/android/fenix/app/src/main/res/layout/component_tabstray2.xml
- mobile/android/fenix/app/src/main/res/layout/fenix_snackbar.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_about.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_create_shortcut.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_home.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_locale_settings.xml
- + mobile/android/fenix/app/src/main/res/layout/fragment_tor_connection_assist.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_turn_on_sync.xml
- mobile/android/fenix/app/src/main/res/layout/onboarding_inactive_tabs_cfr.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_private.xml → mobile/android/fenix/app/src/main/res/layout/preference_quick_start.xml
- mobile/android/fenix/app/src/main/res/layout/quicksettings_permissions.xml
- mobile/android/fenix/app/src/main/res/layout/quicksettings_protections_panel.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_extra_small_v1.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_extra_small_v2.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_large.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_medium.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_small.xml
- mobile/android/fenix/app/src/main/res/layout/sign_in_preference.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alternative.xml
- − mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_private_round.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round_alternative.xml
- − mobile/android/fenix/app/src/main/res/mipmap-hdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-mdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xhdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml
- mobile/android/fenix/app/src/main/res/values-night-v27/styles.xml
- mobile/android/fenix/app/src/main/res/values-night/styles.xml
- mobile/android/fenix/app/src/main/res/values-v24/styles.xml
- mobile/android/fenix/app/src/main/res/values-v27/styles.xml
- mobile/android/fenix/app/src/main/res/values/attrs.xml
- mobile/android/fenix/app/src/main/res/values/colors.xml
- + mobile/android/fenix/app/src/main/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/main/res/values/preference_keys.xml
- mobile/android/fenix/app/src/main/res/values/static_strings.xml
- mobile/android/fenix/app/src/main/res/values/styles.xml
- + mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
- mobile/android/fenix/app/src/main/res/xml/logins_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/preferences.xml
- mobile/android/fenix/app/src/main/res/xml/private_browsing_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/search_settings_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/shortcuts.xml
- mobile/android/fenix/app/src/main/res/xml/site_permissions_details_exceptions_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/site_permissions_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/sync_problem.xml
- + mobile/android/fenix/app/src/main/res/xml/tor_bridge_config_preferences.xml
- + mobile/android/fenix/app/src/main/res/xml/tor_security_level_preferences.xml
- + mobile/android/fenix/app/src/nightly/ic_launcher-playstore.png
- + mobile/android/fenix/app/src/nightly/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/nightly/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-hdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-hdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-mdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-mdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/nightly/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/nightly/res/drawable/ic_launcher_monochrome_foreground.xml
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_wordmark_logo.webp
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_wordmark_text_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_wordmark_text_private.webp
- − mobile/android/fenix/app/src/nightly/res/ic_launcher-web.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_round.webp
- + mobile/android/fenix/app/src/nightly/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/nightly/res/values/static_strings.xml
- mobile/android/fenix/app/src/nightly/res/xml/shortcuts.xml
- + mobile/android/fenix/app/src/release/ic_launcher-playstore.png
- + mobile/android/fenix/app/src/release/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/release/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/release/res/drawable-hdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/release/res/drawable-hdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/release/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/release/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/release/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/release/res/drawable/ic_launcher_monochrome_foreground.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_round.webp
- + mobile/android/fenix/app/src/release/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/release/res/values/static_strings.xml
- mobile/android/fenix/app/src/release/res/xml/shortcuts.xml
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuNavigationMiddlewareTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/metrics/MetricsUtilsTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/ContextTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/HomeMenuViewTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/onboarding/view/OnboardingMapperTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/onboarding/view/OnboardingPageUiDataTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/SupportUtilsTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/ProtectionsViewTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/QuickSettingsSheetDialogFragmentTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerHandlingDetailsViewTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/DefaultCookieBannerDetailsControllerTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/share/viewholders/AppViewHolderTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/trackingprotection/ProtectionsStoreTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/utils/SettingsTest.kt
- mobile/android/fenix/build.gradle
- mobile/android/fenix/plugins/fenixdependencies/src/main/java/FenixDependenciesPlugin.kt
- + mobile/android/fenix/tools/tba-fetch-deps.sh
- + mobile/android/fenix/tools/tba-sign-devbuilds.sh
- mobile/android/geckoview/api.txt
- mobile/android/geckoview/build.gradle
- − mobile/android/geckoview/src/androidTest/java/org/mozilla/geckoview/test/VideoCaptureTest.kt
- mobile/android/geckoview/src/main/AndroidManifest.xml
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV21.java
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/ProxySelector.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/CrashReporter.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntime.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntimeSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorAndroidIntegration.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebExtensionController.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebRequest.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/androidlegacysettings/Prefs.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/androidlegacysettings/TorLegacyAndroidSettings.java
- mobile/android/gradle/with_gecko_binaries.gradle
- mobile/android/installer/package-manifest.in
- mobile/android/moz.configure
- mobile/android/shared-settings.gradle
- mobile/shared/chrome/geckoview/geckoview.js
- mobile/shared/components/geckoview/GeckoViewStartup.sys.mjs
- mobile/shared/modules/geckoview/GeckoViewContent.sys.mjs
- mobile/shared/modules/geckoview/GeckoViewProgress.sys.mjs
- mobile/shared/modules/geckoview/GeckoViewWebExtension.sys.mjs
- modules/libpref/Preferences.cpp
- modules/libpref/init/StaticPrefList.yaml
- modules/libpref/init/all.js
- moz.configure
- + mozconfig-android-aarch64
- + mozconfig-android-all
- + mozconfig-android-armv7
- + mozconfig-android-x86
- + mozconfig-android-x86_64
- + mozconfig-linux-aarch64
- + mozconfig-linux-aarch64-dev
- + mozconfig-linux-arm
- + mozconfig-linux-i686
- + mozconfig-linux-x86_64
- + mozconfig-linux-x86_64-asan
- + mozconfig-linux-x86_64-dev
- + mozconfig-macos
- + mozconfig-macos-dev
- + mozconfig-windows-i686
- + mozconfig-windows-x86_64
- netwerk/base/nsNetUtil.cpp
- netwerk/base/nsSocketTransport2.cpp
- netwerk/build/components.conf
- netwerk/build/nsNetCID.h
- + netwerk/dns/IOnionAliasService.idl
- + netwerk/dns/OnionAliasService.cpp
- + netwerk/dns/OnionAliasService.h
- netwerk/dns/effective_tld_names.dat
- netwerk/dns/moz.build
- netwerk/protocol/http/HttpBaseChannel.cpp
- netwerk/protocol/http/nsHttpHandler.cpp
- netwerk/protocol/http/nsHttpNTLMAuth.cpp
- netwerk/sctp/src/moz.build
- netwerk/sctp/src/netinet/sctp_cc_functions.c
- netwerk/sctp/src/netinet/sctp_indata.c
- netwerk/sctp/src/netinet/sctp_input.c
- netwerk/sctp/src/netinet/sctp_output.c
- netwerk/sctp/src/netinet/sctp_usrreq.c
- netwerk/sctp/src/netinet/sctputil.c
- netwerk/sctp/src/user_mbuf.c
- netwerk/sctp/src/user_socket.c
- netwerk/socket/nsSOCKSIOLayer.cpp
- netwerk/system/android/nsAndroidNetworkLinkService.cpp
- netwerk/system/linux/nsNetworkLinkService.cpp
- netwerk/system/mac/nsNetworkLinkService.mm
- netwerk/system/netlink/NetlinkService.cpp
- netwerk/system/win32/nsNotifyAddrListener.cpp
- netwerk/url-classifier/UrlClassifierFeatureBase.cpp
- netwerk/url-classifier/components.conf
- python/mach/mach/site.py
- python/mozbuild/mozbuild/action/node.py
- python/mozbuild/mozbuild/artifacts.py
- python/mozbuild/mozbuild/mach_commands.py
- python/mozlint/mozlint/cli.py
- security/certverifier/CertVerifier.cpp
- security/manager/ssl/NSSSocketControl.cpp
- security/manager/ssl/RemoteSecuritySettings.sys.mjs
- security/manager/ssl/SSLServerCertVerification.cpp
- security/manager/ssl/SSLServerCertVerification.h
- security/manager/ssl/StaticHPKPins.h
- security/manager/ssl/nsSecureBrowserUI.cpp
- security/moz.build
- security/nss/lib/certhigh/ocsp.c
- security/nss/lib/libpkix/pkix_pl_nss/module/pkix_pl_socket.c
- security/nss/lib/mozpkix/include/pkix/Result.h
- security/nss/lib/mozpkix/include/pkix/pkixnss.h
- security/nss/lib/ssl/Makefile
- security/sandbox/common/SandboxUtils.sys.mjs
- services/settings/Attachments.sys.mjs
- services/settings/IDBHelpers.sys.mjs
- services/settings/RemoteSettingsClient.sys.mjs
- services/settings/dumps/gen_last_modified.py
- services/settings/dumps/main/moz.build
- services/settings/remote-settings.sys.mjs
- services/settings/servicesSettings.manifest
- services/settings/static-dumps/main/moz.build
- + services/settings/static-dumps/main/query-stripping.json
- services/sync/components.conf
- testing/mozbase/mozinstall/mozinstall/mozinstall.py
- testing/mozbase/setup_development.py
- testing/mozharness/scripts/does_it_crash.py
- third_party/libwebrtc/modules/audio_coding/codecs/isac/main/source/os_specific_inline.h
- third_party/libwebrtc/modules/desktop_capture/desktop_capture_types.h
- third_party/libwebrtc/modules/desktop_capture/win/desktop_capture_utils.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capture_session.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capturer_win.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capturer_win.h
- third_party/libwebrtc/modules/video_capture/windows/device_info_ds.h
- third_party/libwebrtc/rtc_base/platform_thread_types.cc
- third_party/libwebrtc/rtc_base/socket.h
- third_party/libwebrtc/rtc_base/system/file_wrapper.cc
- third_party/libwebrtc/rtc_base/win/create_direct3d_device.h
- third_party/sipcc/cpr_win_types.h
- third_party/sipcc/sdp_token.c
- toolkit/.eslintrc.js
- toolkit/actors/AboutHttpsOnlyErrorParent.sys.mjs
- + toolkit/actors/FilesFilterChild.sys.mjs
- + toolkit/actors/FilesFilterParent.sys.mjs
- toolkit/actors/NetErrorChild.sys.mjs
- toolkit/actors/NetErrorParent.sys.mjs
- toolkit/actors/moz.build
- toolkit/components/antitracking/antitracking.manifest
- toolkit/components/antitracking/components.conf
- toolkit/components/downloads/DownloadCore.sys.mjs
- toolkit/components/downloads/DownloadIntegration.sys.mjs
- toolkit/components/extensions/Extension.sys.mjs
- toolkit/components/extensions/ExtensionParent.sys.mjs
- toolkit/components/httpsonlyerror/content/errorpage.js
- + toolkit/components/lox/Lox.sys.mjs
- + toolkit/components/lox/content/lox_wasm_bg.wasm
- + toolkit/components/lox/jar.mn
- + toolkit/components/lox/lox_wasm.jsm
- + toolkit/components/lox/moz.build
- toolkit/components/moz.build
- toolkit/components/places/PlacesUtils.sys.mjs
- toolkit/components/remotebrowserutils/RemoteWebNavigation.sys.mjs
- toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
- + toolkit/components/resistfingerprinting/content/letterboxing.css
- toolkit/components/resistfingerprinting/jar.mn
- toolkit/components/search/AppProvidedSearchEngine.sys.mjs
- toolkit/components/search/SearchEngine.sys.mjs
- toolkit/components/search/SearchService.sys.mjs
- + toolkit/components/search/content/duckduckgo.ico
- + toolkit/components/search/content/startpage.png
- + toolkit/components/search/content/torBrowserSearchEngineIcons.json
- + toolkit/components/search/content/torBrowserSearchEngines.json
- + toolkit/components/search/content/wikipedia.ico
- + toolkit/components/search/jar.mn
- toolkit/components/search/moz.build
- + toolkit/components/securitylevel/SecurityLevel.manifest
- + toolkit/components/securitylevel/SecurityLevel.sys.mjs
- + toolkit/components/securitylevel/components.conf
- + toolkit/components/securitylevel/moz.build
- toolkit/components/shopping/jar.mn
- toolkit/components/telemetry/app/TelemetrySend.sys.mjs
- toolkit/components/telemetry/moz.build
- + toolkit/components/tor-launcher/TorBootstrapRequest.sys.mjs
- + toolkit/components/tor-launcher/TorControlPort.sys.mjs
- + toolkit/components/tor-launcher/TorDomainIsolator.sys.mjs
- + toolkit/components/tor-launcher/TorLauncherUtil.sys.mjs
- + toolkit/components/tor-launcher/TorParsers.sys.mjs
- + toolkit/components/tor-launcher/TorProcess.sys.mjs
- + toolkit/components/tor-launcher/TorProcessAndroid.sys.mjs
- + toolkit/components/tor-launcher/TorProvider.sys.mjs
- + toolkit/components/tor-launcher/TorProviderBuilder.sys.mjs
- + toolkit/components/tor-launcher/TorStartupService.sys.mjs
- + toolkit/components/tor-launcher/components.conf
- + toolkit/components/tor-launcher/moz.build
- + toolkit/components/tor-launcher/tor-launcher.manifest
- + toolkit/components/torconnect/TorConnectChild.sys.mjs
- + toolkit/components/torconnect/TorConnectParent.sys.mjs
- + toolkit/components/torconnect/content/aboutTorConnect.css
- + toolkit/components/torconnect/content/aboutTorConnect.html
- + toolkit/components/torconnect/content/aboutTorConnect.js
- + toolkit/components/torconnect/content/arrow-right.svg
- + toolkit/components/torconnect/content/bridge.svg
- + toolkit/components/torconnect/content/connection-failure.svg
- + toolkit/components/torconnect/content/connection-location.svg
- + toolkit/components/torconnect/content/tor-connect-broken.svg
- + toolkit/components/torconnect/content/tor-connect.svg
- + toolkit/components/torconnect/content/tor-not-connected-to-connected-animated.svg
- + toolkit/components/torconnect/content/torConnectTitlebarStatus.css
- + toolkit/components/torconnect/content/torConnectTitlebarStatus.js
- + toolkit/components/torconnect/content/torConnectUrlbarButton.js
- + toolkit/components/torconnect/jar.mn
- + toolkit/components/torconnect/moz.build
- toolkit/components/windowwatcher/nsWindowWatcher.cpp
- toolkit/content/.eslintrc.js
- toolkit/content/aboutNetError.html
- toolkit/content/aboutNetError.mjs
- toolkit/content/jar.mn
- toolkit/content/license.html
- + toolkit/content/pt_config.json
- toolkit/content/widgets/infobar.css
- toolkit/content/widgets/moz-message-bar/moz-message-bar.mjs
- toolkit/content/widgets/moz-support-link/moz-support-link.mjs
- toolkit/content/widgets/moz-toggle/moz-toggle.mjs
- toolkit/content/widgets/notificationbox.js
- toolkit/library/moz.build
- + toolkit/locales-preview/base-browser-no-translate.ftl
- + toolkit/locales-preview/tor-browser-no-translate.ftl
- + toolkit/locales/en-US/toolkit/global/base-browser.ftl
- + toolkit/locales/en-US/toolkit/global/tor-browser.ftl
- toolkit/locales/jar.mn
- toolkit/modules/ActorManagerParent.sys.mjs
- toolkit/modules/AppConstants.sys.mjs
- + toolkit/modules/Bech32Decode.sys.mjs
- + toolkit/modules/BridgeDB.sys.mjs
- + toolkit/modules/DomainFrontedRequests.sys.mjs
- + toolkit/modules/DragDropFilter.sys.mjs
- toolkit/modules/FinderParent.sys.mjs
- + toolkit/modules/Moat.sys.mjs
- toolkit/modules/PopupNotifications.sys.mjs
- + toolkit/modules/QRCode.sys.mjs
- toolkit/modules/RemotePageAccessManager.sys.mjs
- + toolkit/modules/TorAndroidIntegration.sys.mjs
- + toolkit/modules/TorConnect.sys.mjs
- + toolkit/modules/TorSettings.sys.mjs
- + toolkit/modules/TorStrings.sys.mjs
- toolkit/modules/UpdateUtils.sys.mjs
- toolkit/modules/moz.build
- toolkit/moz.build
- toolkit/mozapps/extensions/AddonManager.sys.mjs
- toolkit/mozapps/extensions/components.conf
- toolkit/mozapps/extensions/content/aboutaddons.html
- toolkit/mozapps/extensions/content/aboutaddons.js
- toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
- toolkit/mozapps/extensions/internal/XPIInstall.sys.mjs
- toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs
- toolkit/mozapps/extensions/test/browser/head.js
- toolkit/mozapps/extensions/test/xpcshell/head_addons.js
- toolkit/mozapps/update/UpdateService.sys.mjs
- toolkit/mozapps/update/UpdateServiceStub.sys.mjs
- toolkit/mozapps/update/common/updatehelper.cpp
- toolkit/mozapps/update/updater/launchchild_osx.mm
- toolkit/mozapps/update/updater/moz.build
- toolkit/mozapps/update/updater/nightly_aurora_level3_primary.der
- toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der
- toolkit/mozapps/update/updater/release_primary.der
- toolkit/mozapps/update/updater/release_secondary.der
- toolkit/mozapps/update/updater/updater.cpp
- toolkit/themes/shared/aboutNetError.css
- toolkit/themes/shared/desktop-jar.inc.mn
- toolkit/themes/shared/findbar.css
- + toolkit/themes/shared/icons/onion-site.svg
- + toolkit/themes/shared/icons/onion-slash.svg
- + toolkit/themes/shared/icons/onion-warning.svg
- + toolkit/themes/shared/icons/tor-dark-loading.png
- + toolkit/themes/shared/icons/tor-dark-loading(a)2x.png
- + toolkit/themes/shared/icons/tor-light-loading.png
- + toolkit/themes/shared/icons/tor-light-loading(a)2x.png
- + toolkit/themes/shared/icons/torbrowser.png
- toolkit/themes/shared/minimal-toolkit.jar.inc.mn
- + toolkit/themes/shared/onion-pattern.css
- + toolkit/themes/shared/onion-pattern.svg
- + toolkit/themes/shared/tor-colors.css
- + toolkit/torbutton/chrome/locale/en-US/onionLocation.properties
- + toolkit/torbutton/chrome/locale/en-US/settings.properties
- + toolkit/torbutton/chrome/locale/en-US/torConnect.properties
- + toolkit/torbutton/chrome/locale/en-US/torlauncher.properties
- + toolkit/torbutton/jar.mn
- + toolkit/torbutton/moz.build
- toolkit/xre/LauncherRegistryInfo.cpp
- toolkit/xre/MacLaunchHelper.h
- toolkit/xre/MacLaunchHelper.mm
- toolkit/xre/MacRunFromDmgUtils.mm
- toolkit/xre/ProfileReset.cpp
- toolkit/xre/dllservices/mozglue/WindowsDllBlocklist.cpp
- toolkit/xre/nsAppRunner.cpp
- toolkit/xre/nsIXREDirProvider.idl
- toolkit/xre/nsUpdateDriver.cpp
- toolkit/xre/nsXREDirProvider.cpp
- toolkit/xre/nsXREDirProvider.h
- + tools/base-browser/git-rebase-fixup-preprocessor
- + tools/base-browser/l10n/combine-translation-versions.py
- + tools/base-browser/l10n/combine/__init__.py
- + tools/base-browser/l10n/combine/combine.py
- + tools/base-browser/l10n/combine/tests/README
- + tools/base-browser/l10n/combine/tests/__init__.py
- + tools/base-browser/l10n/combine/tests/test_android.py
- + tools/base-browser/l10n/combine/tests/test_dtd.py
- + tools/base-browser/l10n/combine/tests/test_fluent.py
- + tools/base-browser/l10n/combine/tests/test_properties.py
- + tools/base-browser/tb-dev
- + tools/geckoview/.gitignore
- + tools/geckoview/Makefile
- + tools/geckoview/android-env-linux-template.sh
- + tools/geckoview/android-env-macos-template.sh
- + tools/geckoview/build-fenix.sh
- + tools/geckoview/build-geckoview.sh
- + tools/geckoview/clobber.sh
- + tools/geckoview/config.sh
- + tools/geckoview/jslint.sh
- tools/lint/fluent-lint/exclusions.yml
- + tools/torbrowser/Makefile
- + tools/torbrowser/browser-self-sign-macos.sh
- + tools/torbrowser/build.sh
- + tools/torbrowser/clobber.sh
- + tools/torbrowser/config.sh
- + tools/torbrowser/deploy.sh
- + tools/torbrowser/fetch.sh
- + tools/torbrowser/generate-bugzilla-triage-csv.sh
- + tools/torbrowser/generate_tor_loading_png.py
- + tools/torbrowser/ide.sh
- + tools/torbrowser/jslint.sh
- + tools/torbrowser/l10n/migrate.py
- + tools/torbrowser/l10n/migrations/__init__.py
- + tools/torbrowser/l10n/migrations/bug-41333-new-about-tor.py
- + tools/torbrowser/l10n/migrations/bug-41622-neterror.py
- + tools/torbrowser/l10n/migrations/bug-41820-moz-message-bar-download-warning.py
- + tools/torbrowser/l10n/migrations/bug-42202-crypto-safety.py
- + tools/torbrowser/l10n/migrations/bug-42203-about-dialog.py
- + tools/torbrowser/l10n/migrations/bug-42206-rulesets.py
- + tools/torbrowser/l10n/migrations/bug-42207-settings.py
- + tools/torbrowser/l10n/migrations/bug-42209-tor-circuit.py
- + tools/torbrowser/l10n/migrations/bug-42210-download-warning.py
- + tools/torbrowser/l10n/migrations/bug-42211-new-identity.py
- + tools/torbrowser/l10n/migrations/bug-42212-onion-services.py
- + tools/torbrowser/l10n/migrations/bug-42214-security-level.py
- + tools/torbrowser/update_emojis.py
- tools/update-packaging/common.sh
- tools/update-packaging/make_full_update.sh
- tools/update-packaging/make_incremental_update.sh
- uriloader/base/nsDocLoader.cpp
- uriloader/base/nsURILoader.cpp
- uriloader/exthandler/nsExternalHelperAppService.cpp
- widget/ScrollbarDrawingWin.cpp
- widget/ScrollbarDrawingWin11.cpp
- widget/android/WebExecutorSupport.cpp
- widget/gtk/MPRISServiceHandler.cpp
- widget/gtk/WidgetUtilsGtk.cpp
- widget/windows/WinTaskbar.cpp
- widget/windows/nsDataObj.cpp
- xpcom/base/ErrorList.py
- xpcom/ds/StaticAtoms.py
- xpcom/io/CocoaFileUtils.mm
- xpcom/io/nsAppFileLocationProvider.cpp
- xpfe/appshell/AppWindow.cpp
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/4cd410…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/4cd410…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag tor-browser-132.0a1-15.0-1-build2
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed new tag tor-browser-132.0a1-15.0-1-build2 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-132.0a1-15.0-1] 55 commits: fixup! [android] Implement Android-native Connection Assist UI
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed to branch tor-browser-132.0a1-15.0-1 at The Tor Project / Applications / Tor Browser
Commits:
ed14b1b3 by clairehurst at 2025-03-13T08:30:32+01:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser#43198
- - - - -
55cdc83c by Henry Wilkes at 2025-03-13T08:30:32+01:00
BB 29745: Limit remote access to content accessible resources
- - - - -
5ca1d85b by Henry Wilkes at 2025-03-13T08:30:33+01:00
fixup! BB 42716: Disable unwanted about: pages
TB 43308: Remove about:logo which exposes a branding asset.
- - - - -
3c34f4bd by clairehurst at 2025-03-13T08:31:00+01:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser#43199
- - - - -
ec619dfc by Henry Wilkes at 2025-03-13T08:31:00+01:00
fixup! TB 2176: Rebrand Firefox to TorBrowser
TB 43466: Drop unnecessary changes to the aboutDialog.css stylesheet.
Common branding rules common to tor browser releases were moved to the
existing aboutDialogTor.css.
Duplicate rules that were already in
browser/base/content/aboutDialog.css were dropped.
Rules that only made a minor difference were dropped:
1. We now centre-align the logo, instead of right-aligning (which did
not seem to work as intended in right-to-left locales).
2. We keep the logo at the default 192px size, rather than 180px, which
is a 0.75 scaling of the original 256px PNG.
3. We use the default size between the wordmark and "Extended Support
Release", which increases the gap by 6px.
- - - - -
93a135e5 by Pier Angelo Vendrame at 2025-03-13T08:31:00+01:00
BB 43468: ScreenCaptureKit should be a weak link.
ScreenCaptureKit is not available on older macOS versions.
For some reason, the upstream build have it as a weak import even though
they do not specify the -weak_framework flag, whereas our builds have it
as a normal import and do not work on macOS 10.15 without this patch.
- - - - -
6af8b32e by Henry Wilkes at 2025-03-13T08:31:01+01:00
fixup! TB 21952: Implement Onion-Location
TB 43406: Hide the "onion available" button whilst the "Connect" button
is shown.
- - - - -
063649ec by Henry Wilkes at 2025-03-13T08:31:01+01:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43398: Prevent tor-button CSS rules from overwriting the
tor-urlbar-button-plain class rules.
- - - - -
25b56777 by Henry Wilkes at 2025-03-13T08:31:01+01:00
fixup! TB 2176: Rebrand Firefox to TorBrowser
TB 43461: Drop our wordmark padding.
- - - - -
f61f857d by Morgan at 2025-03-13T08:31:01+01:00
fixup! TB 41649: Create rebase and security backport gitlab issue templates
add base-browser branch+taggging step
- - - - -
cbc2b21c by Henry Wilkes at 2025-03-13T08:31:01+01:00
fixup! TB 41435: Add a Tor Browser migration function
TB 43462: Drop preference for blocking internet tests since it no longer
requires Moat access.
- - - - -
65863d29 by Henry Wilkes at 2025-03-13T08:31:02+01:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43462: Make the internet status in `about:preferences` update
automatically without any user input.
We listen to the status via TorConnect.
- - - - -
ee3b6f9d by Henry Wilkes at 2025-03-13T08:31:02+01:00
fixup! Tor Browser strings
TB 43462: Add a string for the "unknown" internet status.
- - - - -
fdbaf10a by Henry Wilkes at 2025-03-13T08:31:02+01:00
fixup! TB 40597: Implement TorSettings module
TB 43462: Use NetworkLinkService instead of Moat for the internet test.
TorConnect now exposes an `internetStatus` property, which is kept up to
date using `NetworkLinkService`.
- - - - -
62b5af91 by Beatriz Rizental at 2025-03-13T08:59:08+01:00
TB 42669: [android] Use custom no-op app-services
Fetch the custom built no-op application services library
from tor-browser-build when building for Android.
- - - - -
a96e1809 by clairehurst at 2025-03-13T08:59:12+01:00
fixup! TB 40041 [android]: Implement Tor Network Settings
tor-browser#43408
- - - - -
310b223f by clairehurst at 2025-03-13T08:59:12+01:00
fixup! TB 42247: Android helpers for the TorProvider
tor-browser#43408
- - - - -
724e7b26 by clairehurst at 2025-03-13T08:59:12+01:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser#43408
- - - - -
74e3ed30 by clairehurst at 2025-03-13T08:59:13+01:00
fixup! TB 41878: [android] Add standalone Tor Bootstrap
tor-browser#43408
- - - - -
00d0bcd9 by Morgan at 2025-03-13T08:59:13+01:00
fixup! Adding issue and merge request templates
add issue template for mozilla uplifts and tweak MR template to signal to merger an uplift issue should be created after merge
- - - - -
6b94b58f by Dan Ballard at 2025-03-13T08:59:13+01:00
fixup! TB 42669: [android] Use custom no-op app-services
Bug 42669: get latest application services by date and put in tools
- - - - -
82f67ea7 by Dan Ballard at 2025-03-13T08:59:13+01:00
fixup! [android] Modify build system
Bug 42669: Inject gradle property for nimbus-fml path for application services
- - - - -
4d237d98 by Dan Ballard at 2025-03-13T08:59:14+01:00
fixup! TB 42247: Android helpers for the TorProvider
Rename TorIntegrationAndroid.java to TorAndroidIntegration.java
- - - - -
a618f62c by Dan Ballard at 2025-03-13T08:59:14+01:00
fixup! [android] Implement Android-native Connection Assist UI
rename TorIntegrationAndroid.java to TorAndroidIntegration.java
- - - - -
53367f9a by Henry Wilkes at 2025-03-13T08:59:14+01:00
fixup! Add CI for Tor Browser
TB 43446: Include alpha and nightly branding in the translation CI.
- - - - -
3e1c7010 by Henry Wilkes at 2025-03-13T08:59:14+01:00
fixup! BB 42305: Add script to combine translation files across versions.
TB 43446: Allow the combine translation script to select some branding
strings from different files.
- - - - -
9760f731 by Henry Wilkes at 2025-03-13T08:59:14+01:00
fixup! TB 2176: Rebrand Firefox to TorBrowser
TB 43446: Change the branding name for the alpha and nightly releases.
- - - - -
9e4a3c9d by Pier Angelo Vendrame at 2025-03-13T08:59:15+01:00
dropme! BB 40925: Implemented the Security Level component
BB 43498: Remove our old patch for 43129.
This commit should be ignored at the next rebase (and we will likely
have a conflict on the security level commit).
- - - - -
f3897a18 by Pier Angelo Vendrame at 2025-03-13T08:59:15+01:00
Bug 1923260 - Exempt Android resources from svg.disabled. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D224895
- - - - -
051e66ba by Dan Ballard at 2025-03-13T08:59:15+01:00
fixup! TB 42669: [android] Use custom no-op app-services
Bug 42669: use topsrcdir as defined by us in local.properties for gradle to support different project dirs in AS
- - - - -
f24c0637 by Morgan at 2025-03-13T08:59:15+01:00
fixup! Adding issue and merge request templates
add backport template and tweak the uplift template
- - - - -
0c87b72c by Henry Wilkes at 2025-03-13T08:59:16+01:00
fixup! Bug 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43328: Improve the Tor log dialog.
- - - - -
300b1443 by Henry Wilkes at 2025-03-13T08:59:16+01:00
fixup! TB 40933: Add tor-launcher functionality
TB 43328: Make getLog return the LogEntry data.
- - - - -
ffc93b14 by Henry Wilkes at 2025-03-13T08:59:16+01:00
fixup! Tor Browser strings
TB 43328: Improve the Tor log.
- - - - -
cc96d5a4 by Dan Ballard at 2025-03-13T08:59:16+01:00
fixup! fixup! [android] Modify build system
bug 42669: fenix dir missing from nimbusFml path
- - - - -
1674a2d7 by clairehurst at 2025-03-13T08:59:16+01:00
fixup! TB 42669: [android] Use custom no-op app-services
- - - - -
7d92af18 by Morgan at 2025-03-13T08:59:17+01:00
fixup! Adding issue and merge request templates
include Bugzilla as potential source of backports
- - - - -
8ba9120c by Morgan at 2025-03-13T08:59:17+01:00
fixup! Adding issue and merge request templates
update the auto /label command to Apps::Type::Bug
- - - - -
3e9fbd89 by Morgan at 2025-03-13T08:59:17+01:00
fixup! TB 41649: Create rebase and security backport gitlab issue templates
add /label command to add Apps::Type::Rebase automatically
- - - - -
86f813b4 by Henry Wilkes at 2025-03-13T08:59:17+01:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43502: Move about:torconnect methods to TorConnectParent.
- - - - -
37c49b1f by Henry Wilkes at 2025-03-13T08:59:18+01:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43502: Move about:torconnect methods to TorConnectParent.
- - - - -
254eddce by Henry Wilkes at 2025-03-13T08:59:18+01:00
fixup! TB 40597: Implement TorSettings module
TB 43502: Remove about:torconnect specific methods from TorConnect
module.
- - - - -
f60deb10 by Morgan at 2025-03-13T08:59:18+01:00
fixup! Adding issue and merge request templates
update release prep label link
- - - - -
dab78888 by Dan Ballard at 2025-03-13T08:59:18+01:00
fixup! [android] Modify build system
Bug 43518: Fix TBB builds without topsrcdir defined
- - - - -
8db3f814 by Henry Wilkes at 2025-03-13T08:59:18+01:00
fixup! TB 40597: Implement TorSettings module
TB 43529: Await BootstrapAttempt.cancel in AutoBootstrapAttempt.
We also add a comment for the reason why we need to await.
- - - - -
9955d7ec by clairehurst at 2025-03-13T08:59:19+01:00
fixup! [android] Implement Android-native Connection Assist UI
This should have been included with the following.
Bug 43359: Improper handling of TorBootstrapChangeListener with respect to system onDestroy() calls for HomeActivity
- - - - -
3f7207ba by hackademix at 2025-03-13T08:59:19+01:00
fixup! TB 41649: Create rebase and security backport gitlab issue templates
TBB 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation
- - - - -
dc63bb94 by hackademix at 2025-03-13T08:59:19+01:00
fixup! Adding issue and merge request templates
TBB 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation
- - - - -
f71291f8 by Pier Angelo Vendrame at 2025-03-13T08:59:19+01:00
fixup! BB 32308: Use direct browser sizing for letterboxing.
When the dimension is less than 50px, we need to return dimension
itself, rather than a 0px margin.
- - - - -
ad2c6879 by Pier Angelo Vendrame at 2025-03-13T08:59:20+01:00
fixup! BB 41631: Prevent weird initial window dimensions caused by subpixel computations
BB 43205: Fix newwin rounding.
RFP might produce bad rounding because of platform-specific bugs.
Solving them might involve a refactor that is out of our capacity,
therefore we add a JS patch to fix wrong sizes.
- - - - -
9e079a06 by Pier Angelo Vendrame at 2025-03-13T08:59:20+01:00
fixup! BB 41918: Option to reuse last window size when letterboxing is enabled.
BB 43205: Fix newwin rounding.
Do not fix sizes when remember last size is enabled.
- - - - -
c9688ac3 by Henry Wilkes at 2025-03-13T08:59:20+01:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43469: Change the quickstart checkbox to a toggle.
We also update the description text to use "connect automatically"
rather than "Quickstart".
- - - - -
f8b8ce4b by Henry Wilkes at 2025-03-13T08:59:20+01:00
fixup! Tor Browser strings
TB 43469: Use "Connect automatically" instead of "Quickstart" in the UI.
- - - - -
164662bb by Henry Wilkes at 2025-03-13T08:59:20+01:00
fixup! TB 40597: Implement TorSettings module
TB 43465: Replace TorConnect.canBeginBootstrap with
TorConnect.canBeginNormalBootstrap to distinguish it from
TorConnect.canBeginAutoBootstrap.
- - - - -
8c163908 by Henry Wilkes at 2025-03-13T08:59:21+01:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43465: Show the urlbar Connect button when the user might want to
return to about:torconnect.
Instead of hiding the button when canBeginNormalBootstrap is false we
show it as a plain button. Instead we hide it only when we are already
bootstrapped.
We also avoid initialising the button when TorConnect is not enabled.
We also update TorConnect.open:
1. Do not re-open about:torconnect if we are already connected. E.g.
when the user selects "Connect" in a bridge dialog but we are
already connected by the time the settings are applied.
2. Do not call TorConnect.startAgain when receiving a "hard" request.
Only the bridge dialogs make this request, and they would have
already triggered startAgain by changing the bridge settings.
- - - - -
81 changed files:
- .gitignore
- .gitlab/ci/jobs/update-translations.yml
- .gitlab/issue_templates/Backport Android Security Fixes.md
- + .gitlab/issue_templates/Backport.md
- .gitlab/issue_templates/Rebase Browser - Alpha.md
- .gitlab/issue_templates/Rebase Browser - Legacy.md
- .gitlab/issue_templates/Rebase Browser - Rapid.md
- .gitlab/issue_templates/Rebase Browser - Stable.md
- + .gitlab/issue_templates/Uplift.md
- .gitlab/issue_templates/bug.md
- .gitlab/merge_request_templates/Rebase.md
- .gitlab/merge_request_templates/default.md
- browser/base/content/aboutDialogTor.css
- browser/base/content/browser-init.js
- browser/base/content/browser.js
- browser/base/content/browser.js.globals
- browser/branding/tb-alpha/content/about-wordmark.svg
- browser/branding/tb-alpha/content/aboutDialog.css
- browser/branding/tb-alpha/locales/en-US/brand.ftl
- browser/branding/tb-alpha/locales/en-US/brand.properties
- browser/branding/tb-nightly/content/about-wordmark.svg
- browser/branding/tb-nightly/content/aboutDialog.css
- browser/branding/tb-nightly/locales/en-US/brand.ftl
- browser/branding/tb-nightly/locales/en-US/brand.properties
- browser/branding/tb-release/content/about-wordmark.svg
- browser/branding/tb-release/content/aboutDialog.css
- browser/branding/tb-release/locales/en-US/brand.ftl
- browser/branding/tb-release/locales/en-US/brand.properties
- browser/components/BrowserGlue.sys.mjs
- browser/components/onionservices/content/onionlocation.css
- browser/components/torpreferences/content/connectionPane.js
- browser/components/torpreferences/content/connectionPane.xhtml
- browser/components/torpreferences/content/torLogDialog.js
- browser/components/torpreferences/content/torLogDialog.xhtml
- browser/components/torpreferences/content/torPreferences.css
- browser/modules/URILoadingHelper.sys.mjs
- build.gradle
- caps/nsScriptSecurityManager.cpp
- docshell/base/nsAboutRedirector.cpp
- dom/base/nsNodeInfoManager.cpp
- mobile/android/android-components/components/browser/engine-gecko/build.gradle
- mobile/android/android-components/components/browser/storage-sync/src/main/java/mozilla/components/browser/storage/sync/Types.kt
- mobile/android/android-components/components/feature/fxsuggest/build.gradle
- mobile/android/android-components/components/service/firefox-accounts/src/main/java/mozilla/components/service/fxa/Types.kt
- mobile/android/android-components/components/service/firefox-accounts/src/main/java/mozilla/components/service/fxa/sync/WorkManagerSyncManager.kt
- mobile/android/android-components/components/service/nimbus/build.gradle
- mobile/android/android-components/components/support/rustlog/src/main/java/mozilla/components/support/rustlog/RustLog.kt
- mobile/android/android-components/plugins/dependencies/src/main/java/ApplicationServices.kt
- mobile/android/fenix/app/build.gradle
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SettingsFragment.kt
- − mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/QuickStartPreference.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/QuickstartViewModel.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorControllerGV.kt
- mobile/android/fenix/app/src/main/res/drawable/progress_gradient.xml
- mobile/android/fenix/app/src/main/res/values/colors.xml
- mobile/android/fenix/app/src/main/res/xml/preferences.xml
- mobile/android/fenix/tools/tba-fetch-deps.sh
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntime.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorIntegrationAndroid.java → mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorAndroidIntegration.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/androidlegacysettings/TorLegacyAndroidSettings.java
- toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
- toolkit/components/tor-launcher/TorProvider.sys.mjs
- toolkit/components/torconnect/TorConnectChild.sys.mjs
- toolkit/components/torconnect/TorConnectParent.sys.mjs
- toolkit/components/torconnect/content/torConnectUrlbarButton.js
- toolkit/library/moz.build
- toolkit/locales/en-US/toolkit/global/tor-browser.ftl
- toolkit/modules/Moat.sys.mjs
- toolkit/modules/TorAndroidIntegration.sys.mjs
- toolkit/modules/TorConnect.sys.mjs
- tools/base-browser/l10n/combine-translation-versions.py
- tools/base-browser/l10n/combine/combine.py
- tools/base-browser/l10n/combine/tests/test_android.py
- tools/base-browser/l10n/combine/tests/test_dtd.py
- tools/base-browser/l10n/combine/tests/test_fluent.py
- tools/base-browser/l10n/combine/tests/test_properties.py
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/927fcb…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/927fcb…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new branch tor-browser-132.0a1-15.0-2
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed new branch tor-browser-132.0a1-15.0-2 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag tor-browser-132.0a1-15.0-1-build1
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed new tag tor-browser-132.0a1-15.0-1-build1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-132.0a1-15.0-1] 199 commits: Bug 1935621 - Fix virtual environment sysconfig path calculation...
by Pier Angelo Vendrame (@pierov) 13 Mar '25
by Pier Angelo Vendrame (@pierov) 13 Mar '25
13 Mar '25
Pier Angelo Vendrame pushed to branch tor-browser-132.0a1-15.0-1 at The Tor Project / Applications / Tor Browser
Commits:
be2a294a by Filipe Laíns at 2025-02-27T09:42:08+01:00
Bug 1935621 - Fix virtual environment sysconfig path calculation r=firefox-build-system-reviewers,ahochheiden
Signed-off-by: Filipe Laíns <lains(a)riseup.net>
Signed-off-by: Filipe Laíns <lains(a)riseup.net>
Signed-off-by: Filipe Laíns <lains(a)riseup.net>
Differential Revision: https://phabricator.services.mozilla.com/D231480
- - - - -
61a2b63e by Mike Hommey at 2025-02-27T09:42:08+01:00
Bug 1906851 - Use mozbuild.shellutil.quote instead of pipes.quote. a=RyanVM
The latter was removed in python 3.13, and while it can be replaced with
shlex, we also have our own version that considers more characters as
needing quotes.
Original Revision: https://phabricator.services.mozilla.com/D225329
Differential Revision: https://phabricator.services.mozilla.com/D225608
- - - - -
c635236a by Henry Wilkes at 2025-02-27T09:42:09+01:00
BB 41454: Move focus after calling openPreferences for a sub-category.
Temporary fix until mozilla bug 1799153 gets a patch upstream.
- - - - -
5feded0c by Henry Wilkes at 2025-02-27T09:42:09+01:00
BB 43072: Add aria label and description to moz-message-bar.
Ensures that moz-message-bar, including notifications, are announced on
Orca.
This addresses upstream bugzilla bug 1895857 and should likely be
replaced when it is fixed.
- - - - -
5bf9c360 by Henry Wilkes at 2025-02-27T09:42:09+01:00
BB 42739: Use the brand name for profile error messages.
Some messages in profileSelection.properties use gAppData->name as
variable inputs. However, gAppData->name is still "Firefox" for our
base-browser builds, rather than the user-facing browser name. We swap
these instances with the displayed brand name instead.
- - - - -
b6fab048 by hackademix at 2025-02-27T09:42:09+01:00
BB 42194: Fix blank net error page on failed DNS resolution with active proxy.
- - - - -
7d66d3e1 by Henry Wilkes at 2025-02-27T09:42:10+01:00
BB 41483: Remove the firefox override for appstrings.properties
Remove this patch after upstream bugzilla bug 1790187
- - - - -
806d56ea by hackademix at 2025-02-27T09:42:10+01:00
BB 43101: Deep link to the startup security warning explanation.
- - - - -
a930415e by Marco Simonelli at 2025-02-27T09:42:10+01:00
BB 41459: WebRTC fails to build under mingw (Part 1)
- properly define NOMINMAX for just MSVC builds
- - - - -
deeb64bb by Marco Simonelli at 2025-02-27T09:42:10+01:00
BB 41459: WebRTC fails to build under mingw (Part 2)
- fixes required to build third_party/libwebrtc
- - - - -
3c52da7d by Marco Simonelli at 2025-02-27T09:42:11+01:00
BB 41459: WebRTC fails to build under mingw (Part 3)
- fixes required to build third_party/sipcc
- - - - -
e1a07ccb by Marco Simonelli at 2025-02-27T09:42:11+01:00
BB 41459: WebRTC fails to build under mingw (Part 4)
- fixes requried to build netwerk/sctp
- - - - -
5921dc8f by Marco Simonelli at 2025-02-27T09:42:11+01:00
BB 41459: WebRTC fails to build under mingw (Part 5)
- fixes required to build dom/media/webrtc
- - - - -
5efff226 by Marco Simonelli at 2025-02-27T09:42:11+01:00
BB 41459: WebRTC fails to build under mingw (Part 6)
- fixes required to build dom/media/systemservices
- - - - -
2e74282f by june wilde at 2025-02-27T09:42:12+01:00
BB 42758: Fix WebRTC build errors.
- - - - -
8c81616a by hackademix at 2025-02-27T09:42:12+01:00
BB 41854: Allow overriding download spam protection.
- - - - -
cc66d3f7 by hackademix at 2025-02-27T09:42:12+01:00
BB 42832: Download spam prevention exemption for browser extensions.
- - - - -
4be26a8c by Pier Angelo Vendrame at 2025-02-27T09:42:12+01:00
BB 42220: Allow for more file types to be forced-inline.
Firefox allows to open some files in the browser without any
confirmation, but this will result in a disk leak, because the file will
be downloaded to the temporary directory first (and not deleted, in some
cases).
A preference allows PDFs to be opened without being downloaded to disk.
So, we introduce a similar one to do the same for all the files that are
set to be opened automatically in the browser.
- - - - -
76b6cfcd by hackademix at 2025-02-27T09:42:13+01:00
BB 42835: Create an actor to filter file data transfers
- - - - -
71ac7022 by Beatriz Rizental at 2025-02-27T09:42:13+01:00
BB 42728: Modify ./mach lint to skip unused linters
- - - - -
3a2b27e3 by Gaba at 2025-02-27T09:42:13+01:00
Adding issue and merge request templates
- - - - -
900c87a8 by Richard Pospesel at 2025-02-27T09:42:13+01:00
BB 42683: Create script to generate issue triage csv file from bugzilla query and git logs
- - - - -
919acd2c by Henry Wilkes at 2025-02-27T09:42:13+01:00
BB 42305: Add script to combine translation files across versions.
- - - - -
6c539c5a by Beatriz Rizental at 2025-02-27T09:42:14+01:00
Add CI for Base Browser
- - - - -
211e0aa8 by Pier Angelo Vendrame at 2025-02-27T09:42:14+01:00
Base Browser's .mozconfigs.
Bug 17858: Cannot create incremental MARs for hardened builds.
Define HOST_CFLAGS, etc. to avoid compiling programs such as mbsdiff
(which is part of mar-tools and is not distributed to end-users) with
ASan.
Bug 21849: Don't allow SSL key logging.
Bug 25741 - TBA: Disable features at compile-time
Define MOZ_ANDROID_NETWORK_STATE and MOZ_ANDROID_LOCATION
Bug 27623 - Export MOZILLA_OFFICIAL during desktop builds
This fixes a problem where some preferences had the wrong default value.
Also see bug 27472 where we made a similar fix for Android.
Bug 29859: Disable HLS support for now
Bug 30463: Explicitly disable MOZ_TELEMETRY_REPORTING
Bug 32493: Disable MOZ_SERVICES_HEALTHREPORT
Bug 33734: Set MOZ_NORMANDY to False
Bug 33851: Omit Parental Controls.
Bug 40252: Add --enable-rust-simd to our tor-browser mozconfig files
Bug 41584: Move some configuration options to base-browser level
- - - - -
2a34eb61 by Pier Angelo Vendrame at 2025-02-27T09:42:14+01:00
Tweaks to the build system
Bug 40857: Modified the fat .aar creation file
This is a workaround to build fat .aars with the compiling enviornment
disabled.
Mozilla does not use a similar configuration, but either runs a Firefox
build and discards its output, or uses artifacts build.
We might switch to artifact builds too, and drop this patch, or write a
better one to upstream. But until then we need this patch.
See also https://bugzilla.mozilla.org/show_bug.cgi?id=1763770.
Bug 41458: Prevent `mach package-multi-locale` from actually creating a package
macOS builds need some files to be moved around with
./mach package-multi-locale to create multi-locale packages.
The required command isn't exposed through any other mach command.
So, we patch package-multi-locale both to prevent it from failing when
doing official builds and to detect any future changes on it.
- - - - -
9b47ab29 by Pier Angelo Vendrame at 2025-02-27T09:42:14+01:00
BB 29320: Replace the gnu target with gnullvm for Rust.
- - - - -
90efa6dc by Pier Angelo Vendrame at 2025-02-27T09:42:15+01:00
BB 42616: Remove VideoCaptureTest.kt.
This is a workaround to fix the GeckoView build with WebRTC disabled.
We should replace this workaround with a proper solution, that
excludes this test when MOZ_WEBRTC is undefined/False.
- - - - -
ca1400f3 by Pier Angelo Vendrame at 2025-02-27T09:44:46+01:00
BB 41108: Remove privileged macOS installation from 102
- - - - -
ee31cca6 by Dan Ballard at 2025-02-27T09:44:47+01:00
BB 41149: Re-enable DLL injection protection in all builds not just nightlies
- - - - -
f0fc93bb by Henry Wilkes at 2025-02-27T09:44:47+01:00
BB 43092: Disable wayland by default in Base Browser.
- - - - -
f9466a74 by Matthew Finkel at 2025-02-27T09:44:48+01:00
BB 24796: Comment out excess permissions from GeckoView
The GeckoView AndroidManifest.xml is not preprocessed unlike Fennec's
manifest, so we can't use the ifdef preprocessor guards around the
permissions we do not want. Commenting the permissions is the
next-best-thing.
- - - - -
1883d069 by Matthew Finkel at 2025-02-27T09:44:48+01:00
BB 28125: Prevent non-Necko network connections
- - - - -
53aea374 by Mike Perry at 2025-02-27T09:44:48+01:00
BB 12974: Disable NTLM and Negotiate HTTP Auth
The Mozilla bugs: https://bugzilla.mozilla.org/show_bug.cgi?id=1046421,
https://bugzilla.mozilla.org/show_bug.cgi?id=1261591, tor-browser#27602
- - - - -
a6a52c39 by cypherpunks1 at 2025-02-27T09:44:48+01:00
BB 40717: Hide Windows SSO in settings
- - - - -
66a92a2f by Georg Koppen at 2025-02-27T09:44:49+01:00
BB 16285: Exclude ClearKey system for now
In the past the ClearKey system had not been compiled when specifying
--disable-eme. But that changed and it is even bundled nowadays (see:
Mozilla's bug 1300654). We don't want to ship it right now as the use
case for it is not really visible while the code had security
vulnerabilities in the past.
- - - - -
b2ac4853 by Kathy Brade at 2025-02-27T09:44:49+01:00
BB 21431: Clean-up system extensions shipped in Firefox
Only ship the pdfjs extension.
- - - - -
e6a97013 by Henry Wilkes at 2025-02-27T09:48:46+01:00
BB 42831: Remove the shopping components.
- - - - -
d3df766b by Kathy Brade at 2025-02-27T09:48:48+01:00
BB 33852: Clean up about:logins (LockWise) to avoid mentioning sync, etc.
Hide elements on about:logins that mention sync, "Firefox LockWise", and
Mozilla's LockWise mobile apps.
Disable the "Create New Login" button when security.nocertdb is true.
- - - - -
1fac62db by Alex Catarineu at 2025-02-27T09:48:48+01:00
BB 41457: Remove Mozilla permissions
Bug 40025: Remove Mozilla add-on install permissions
- - - - -
58049232 by Kathy Brade at 2025-02-27T09:52:01+01:00
Bug 41662: Disable about:sync-logs
Even though we disable sync by default with
`identity.fxaccounts.enabled`, this about: page is still avilable.
We could throw an exception on the constructor of the related
component, but it would result only in an error in the console, without
a visible "this address does not look right" error page.
If we fix the issues with MOZ_SERVICES_SYNC, we can restore the
component.
- - - - -
a066d183 by Morgan at 2025-02-27T09:52:16+01:00
BB 42716: Disable unwanted about: pages
- - - - -
b5b84eac by Arthur Edelstein at 2025-02-27T09:52:16+01:00
BB 26353: Prevent speculative connect that violated FPI.
Connections were observed in the catch-all circuit when
the user entered an https or http URL in the URL bar, or
typed a search term.
- - - - -
693fbcb1 by Alex Catarineu at 2025-02-27T09:52:17+01:00
BB 31740: Remove some unnecessary RemoteSettings instances
More concretely, SearchService.jsm 'hijack-blocklists' and
url-classifier-skip-urls.
Avoid creating instance for 'anti-tracking-url-decoration'.
If prefs are disabling their usage, avoid creating instances for
'cert-revocations' and 'intermediates'.
Do not ship JSON dumps for collections we do not expect to need. For
the ones in the 'main' bucket, this prevents them from being synced
unnecessarily (the code in remote-settings does so for collections
in the main bucket for which a dump or local data exists). For the
collections in the other buckets, we just save some size by not
shipping their dumps.
We also clear the collections database on the v2 -> v3 migration.
- - - - -
1a0bbcf5 by cypherpunks1 at 2025-02-27T09:52:17+01:00
BB 41092: Add a RemoteSettings JSON dump for query-stripping
- - - - -
7d383d8d by cypherpunks1 at 2025-02-27T09:52:17+01:00
BB 42730: Patch RemoteSettings to use only local dumps as a data source
- - - - -
05196d84 by Pier Angelo Vendrame at 2025-02-27T09:52:17+01:00
BB 41635: Disable the Normandy component
Do not include Normandy at all whenever MOZ_NORMANDY is False.
- - - - -
0462992a by Georg Koppen at 2025-02-27T09:52:18+01:00
BB 30541: Disable WebGL readPixel() for web content
Related Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1428034
- - - - -
622f80b4 by Alex Catarineu at 2025-02-27T09:52:18+01:00
BB 28369: Stop shipping pingsender executable
- - - - -
d7eb6382 by Henry Wilkes at 2025-02-27T09:52:18+01:00
BB 42630: Disable LaterRun module.
- - - - -
343ac63e by Pier Angelo Vendrame at 2025-02-27T09:52:18+01:00
BB 41599: Always return an empty string as network ID
Firefox computes an internal network ID used to detect network changes
and act consequently (e.g., to improve WebSocket UX).
However, there are a few ways to get this internal network ID, so we
patch them out, to be sure any new code will not be able to use them and
possibly link users.
We also sent a patch to Mozilla to seed the internal network ID, to
prevent any accidental leak in the future.
Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1817756
- - - - -
6362a2ce by Pier Angelo Vendrame at 2025-02-27T09:52:18+01:00
BB 43386: Use Firefox in the UA in RFP-exempt request.
XHR requests initiated by extensions are exempt from RFP.
Therefore, they report the actual app name, instead of Firefox, and the
actual Firefox minor version.
This happens whenever the app name has been customized and does not
match a hardcoded "Firefox".
- - - - -
0feac883 by Richard Pospesel at 2025-02-27T09:52:19+01:00
BB 41327: Disable UrlbarProviderInterventions
- - - - -
6d1ad4b4 by Richard Pospesel at 2025-02-27T10:40:45+01:00
BB 42037: Disable about:firefoxview page
- - - - -
cdcaa581 by Mike Perry at 2025-02-27T10:40:47+01:00
Firefox preference overrides.
- - - - -
81c6152e by Pier Angelo Vendrame at 2025-02-27T10:40:47+01:00
BB 43140: Tighten up fonts on Linux.
We ship a fontconfig configuration to esnure all Linux users have the
same defaults and reduce the chances of fingerprinting.
We used to add this file in tor-browser-build, but some users might
skip it by using the browser executable without the wrapper script.
Therefore, we decided to activate the file with the FontConfig API
instead of the environment variables.
Bug 41043: Hardcode the UI font on Linux
The mechanism to choose the UI font does not play well with our
fontconfig configuration. As a result, the final criterion to choose
the font for the UI was its version.
Since we hardcode Arimo as a default sans-serif on preferences, we use
it also for the UI. FontConfig will fall back to some other font for
scripts Arimo does not cover as expected (we tested with Japanese).
Bug 43141: Hardcode system-ui to Arimo.
- - - - -
b642a0b1 by Pier Angelo Vendrame at 2025-02-27T10:40:47+01:00
BB 41901: Hardcode normalized FontSubstitutes.
Windows has a system to set font aliases through the registry.
This allows some customization that could be used as a fingerprinting
vector.
Moreover, this mechanism is used by Windows itself, and different SKUs
might have different default FontSubstitutes.
- - - - -
ec3c4511 by Pier Angelo Vendrame at 2025-02-27T10:40:47+01:00
BB 43322: Customize the font visibility lists.
Customize the lists of fonts to assign base visibility to in
base browser and derivatives.
Also, rename the files with the upstream lists, to make sure we do not
use them by mistake.
- - - - -
53b0e277 by Alex Catarineu at 2025-02-27T10:42:24+01:00
BB 30605: Honor privacy.spoof_english in Android
This checks `privacy.spoof_english` whenever `setLocales` is
called from Fenix side and sets `intl.accept_languages`
accordingly.
Bug 40198: Expose privacy.spoof_english pref in GeckoView
- - - - -
d228c07b by Pier Angelo Vendrame at 2025-02-27T10:43:06+01:00
BB 42562: Normalized the Accepted Languages on Android.
The OS language might be outside the list of actually supported
languages and it might leak the user's region.
Therefore, we force the locale reported in Accept-Language to match one
we support with translations, even when it means using a not exact
region tag.
- - - - -
05d858bd by Alex Catarineu at 2025-02-27T10:43:07+01:00
BB 40171: Make WebRequest and GeckoWebExecutor First-Party aware
- - - - -
d348e442 by Alex Catarineu at 2025-02-27T10:47:28+01:00
BB 26345: Hide tracking protection UI
- - - - -
d754c361 by Henry Wilkes at 2025-02-27T10:47:29+01:00
BB 43109: Hide Firefox Relay from settings.
This should remain disabled, see tor-browser#42814.
- - - - -
e8097977 by Henry Wilkes at 2025-02-27T10:47:29+01:00
BB 42777: Hide Website Privacy Preferences.
We hide the Website Privacy Preferences section, which controls the
"global privacy control" (GPC) and "do not track" (DNT) settings.
- - - - -
53101a48 by Morgan at 2025-02-27T10:47:29+01:00
BB 42070: Hide "Use smooth scrolling" from settings
- - - - -
3e2f8722 by Arthur Edelstein at 2025-02-27T10:47:29+01:00
BB 18905: Hide unwanted items from help menu
Bug 25660: Remove the "New Private Window" option
- - - - -
b582e457 by Pier Angelo Vendrame at 2025-02-27T10:47:30+01:00
BB 41739: Remove "Website appearance" from about:preferences.
It is ignored because of RFP and it is confusing for users.
- - - - -
5d4cfd86 by Henry Wilkes at 2025-02-27T10:47:30+01:00
BB 43117: Hide "Always underline links" from settings.
- - - - -
7d9f31a8 by Pier Angelo Vendrame at 2025-02-27T10:47:30+01:00
BB 42774: Always hide the third-pary certs UI.
- - - - -
8bca9c77 by Henry Wilkes at 2025-02-27T10:47:30+01:00
BB 43118: Hide feature recommendation (CFR) settings.
- - - - -
b3a2f922 by Pier Angelo Vendrame at 2025-02-27T10:47:31+01:00
BB 9173: Change the default Firefox profile directory to be relative.
This commit makes Firefox look for the default profile directory in a
directory relative to the binary path.
The directory can be specified through the --with-relative-data-dir.
This is relative to the same directory as the firefox main binary for
Linux and Windows.
On macOS, we remove Contents/MacOS from it.
Or, in other words, the directory is relative to the application
bundle.
This behavior can be overriden at runtime, by placing a file called
system-install adjacent to the firefox main binary (also on macOS).
- - - - -
cb09d310 by Pier Angelo Vendrame at 2025-02-27T10:47:31+01:00
BB 42773: Replace ~ with the original home.
In Bug 93141, Mozilla started sending users to their home when they type
~ in the URL bar.
On Linux, we change $HOME for various reason, therefore you would be
redirected to the spoofed home directory when typing ~.
So, we check if the original home directory is known, and use that,
instead.
- - - - -
03d236d5 by Alex Catarineu at 2025-02-27T10:47:31+01:00
BB 27604: Fix addon issues when moving the profile directory
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1429838
- - - - -
abc009fd by Mike Perry at 2025-02-27T10:47:31+01:00
BB 13028: Prevent potential proxy bypass cases.
It looks like these cases should only be invoked in the NSS command line
tools, and not the browser, but I decided to patch them anyway because there
literally is a maze of network function pointers being passed around, and it's
very hard to tell if some random code might not pass in the proper proxied
versions of the networking code here by accident.
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1433509
- - - - -
1bf34576 by Pier Angelo Vendrame at 2025-02-27T10:47:32+01:00
BB 40309: Avoid using regional OS locales
Avoid regional OS locales if the pref
`intl.regional_prefs.use_os_locales` is false but RFP is enabled.
- - - - -
07e6e6a9 by Matthew Finkel at 2025-02-27T10:47:32+01:00
BB 40432: Prevent probing installed applications
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1711084
- - - - -
6708e4bc by cypherpunks1 at 2025-02-27T10:47:32+01:00
BB 33955: When copying an image only copy the image contents to the clipboard
- - - - -
38157355 by cypherpunks1 at 2025-02-27T10:47:32+01:00
BB 41791: Omit the source URL when copying page contents to the clipboard
- - - - -
04a37f48 by hackademix at 2025-02-27T10:47:33+01:00
BB 42288: Allow language spoofing in status messages.
- - - - -
f43985c8 by Pier Angelo Vendrame at 2025-02-27T10:47:33+01:00
BB 43196: Remove the vendor name from media notifications on Linux.
Firefox shows "vendor remoteName" as a title of the "... is playing
media" notification on Linux.
However, for our browser the remote name is enough, and prepending the
vendor to it creates a string users usually never see.
- - - - -
786c14ab by Pier Angelo Vendrame at 2025-02-27T10:47:33+01:00
Base Browser strings
This commit adds all the strings needed by following Base Browser
patches.
- - - - -
27054423 by Henry Wilkes at 2025-02-27T10:47:33+01:00
BB 42583: Modify moz-support-link for Base Browser.
- - - - -
5120aa00 by Pier Angelo Vendrame at 2025-02-27T10:47:33+01:00
BB 41369: Improve Firefox language settings for multi-lingual packages
Change the language selector to be sorted by language code, rather than
name, and to display the language code to the user.
Bug 41372: Handle Japanese as a special case in preferences on macOS
Japanese is treated in a special way on macOS. However, seeing the
Japanese language tag could be confusing for users, and moreover the
language name is not localized correctly like other langs.
Bug 41378: Tell users that they can change their language at the first start
With multi-lingual builds, Tor Browser matches the user's system
language, but some users might want to change it.
So, we tell them that it is possible, but only once.
- - - - -
6180e9ea by p13dz at 2025-02-27T10:47:34+01:00
BB 40283: Workaround for the file upload bug
- - - - -
296d1d49 by hackademix at 2025-02-27T10:47:34+01:00
BB 42019: Empty browser's clipboard on browser shutdown
- - - - -
4c9a0514 by hackademix at 2025-02-27T10:47:34+01:00
BB 42084: Ensure English spoofing works even if preferences are set out of order.
- - - - -
b0faf1b8 by Pier Angelo Vendrame at 2025-02-27T10:47:34+01:00
BB 41930: Remove the UI to customize accept_languages.
- - - - -
2e0da44a by hackademix at 2025-02-27T10:47:35+01:00
BB 41434: Letterboxing, improve logging.
- - - - -
46ed2052 by hackademix at 2025-02-27T10:47:35+01:00
BB 41434: Letterboxing, preemptively apply margins in a global CSS rule to mitigate race conditions on newly created windows and tabs.
- - - - -
af182709 by hackademix at 2025-02-27T10:47:35+01:00
BB 31064: Letterboxing, exempt browser extensions.
- - - - -
f74aac6e by hackademix at 2025-02-27T10:47:35+01:00
BB 32411: Letterboxing, exempt view-source: URIs.
- - - - -
05edd16f by hackademix at 2025-02-27T10:47:36+01:00
BB 42574: Letterboxing, exempt pdf.js.
- - - - -
ef94a16f by hackademix at 2025-02-27T10:47:36+01:00
BB 32308: Use direct browser sizing for letterboxing.
Bug 30556: align letterboxing with 200x100 new win width stepping
- - - - -
62f6becc by hackademix at 2025-02-27T10:47:36+01:00
BB 41631: Prevent weird initial window dimensions caused by subpixel computations
- - - - -
4a5bf628 by hackademix at 2025-02-27T10:47:36+01:00
BB 41918: Option to reuse last window size when letterboxing is enabled.
- - - - -
736cbb65 by hackademix at 2025-02-27T10:47:37+01:00
BB 41916: Letterboxing preferences UI
- - - - -
f4d6485f by hackademix at 2025-02-27T10:47:37+01:00
BB 41695: Warn on window maximization without letterboxing in RFPHelper module
- - - - -
ebe2568b by hackademix at 2025-02-27T10:47:37+01:00
BB 42443: Shrink window to match letterboxing size when the emtpy area is clicked.
- - - - -
065f7b30 by Henry Wilkes at 2025-02-27T10:47:37+01:00
BB 42528: Don't leak system scrollbar size on windows.
- - - - -
0035e47f by Henry Wilkes at 2025-02-27T10:47:38+01:00
BB 31575: Disable Firefox Home (Activity Stream)
Treat about:blank as the default home page and new tab page.
Avoid loading AboutNewTab in BrowserGlue.sys.mjs in order
to avoid several network requests that we do not need.
Bug 41624: Disable about:pocket-* pages.
Bug 40144: Redirect about:privatebrowsing to the user's home
- - - - -
e8f0f6cc by Kathy Brade at 2025-02-27T10:49:03+01:00
BB 4234: Use the Firefox Update Process for Base Browser.
Windows: disable "runas" code path in updater (15201).
Windows: avoid writing to the registry (16236).
Also includes fixes for tickets 13047, 13301, 13356, 13594, 15406,
16014, 16909, 24476, and 25909.
Also fix bug 27221: purge the startup cache if the Base Browser
version changed (even if the Firefox version and build ID did
not change), e.g., after a minor Base Browser update.
Also fix 32616: Disable GetSecureOutputDirectoryPath() functionality.
Bug 26048: potentially confusing "restart to update" message
Within the update doorhanger, remove the misleading message that mentions
that windows will be restored after an update is applied, and replace the
"Restart and Restore" button label with an existing
"Restart to update Tor Browser" string.
Bug 28885: notify users that update is downloading
Add a "Downloading Base Browser update" item which appears in the
hamburger (app) menu while the update service is downloading a MAR
file. Before this change, the browser did not indicate to the user
that an update was in progress, which is especially confusing in
Tor Browser because downloads often take some time. If the user
clicks on the new menu item, the about dialog is opened to allow
the user to see download progress.
As part of this fix, the update service was changed to always show
update-related messages in the hamburger menu, even if the update
was started in the foreground via the about dialog or via the
"Check for Tor Browser Update" toolbar menu item. This change is
consistent with the Tor Browser goal of making sure users are
informed about the update process.
Removed #28885 parts of this patch which have been uplifted to Firefox.
- - - - -
27f6ef58 by Pier Angelo Vendrame at 2025-02-27T10:49:04+01:00
BB 42061: Create an alpha update channel.
- - - - -
4d7b04c6 by Nicolas Vigier at 2025-02-27T10:49:04+01:00
BB 41682: Add base-browser nightly mar signing key
- - - - -
275bad85 by Pier Angelo Vendrame at 2025-02-27T10:49:04+01:00
BB 41603: Customize the creation of MOZ_SOURCE_URL
MOZ_SOURCE_URL is created by combining MOZ_SOURCE_REPO and
MOZ_SOURCE_CHANGESET.
But the code takes for granted that it refers to a Hg instance, so it
combines them as `$MOZ_SOURCE_REPO/rev/$MOZ_SOURCE_CHANGESET`.
With this commit, we change this logic to combine them to create a URL
that is valid for GitLab.
$MOZ_SOURCE_CHANGESET needs to be a commit hash, not a branch or a tag.
If that is needed, we could use /-/tree/, instead of /-/commit/.
- - - - -
dea4350b by Pier Angelo Vendrame at 2025-02-27T10:49:04+01:00
BB 41698: Reword the recommendation badges in about:addons
Firefox strings use { -brand-product-name }.
As a result, it seems that the fork is recommending extensions, whereas
AMO curators are doing that.
So, we replace the strings with custom ones that clarify that Mozilla is
recommending them.
We assign the strings with JS because our translation backend does not
support Fluent attributes, yet, but once it does, we should switch to
them, instead.
Upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1825033
- - - - -
afd71200 by Pier Angelo Vendrame at 2025-02-27T10:49:05+01:00
BB 42438: Tweaks to the migration wizard.
Remove the items not compatible with our features (such as history) from
the migration wizard.
On Linux, allow to specify an alternative home directory, since we
usually change $HOME in our startup script.
- - - - -
5a836dd1 by Alex Catarineu at 2025-02-27T10:49:05+01:00
BB 40069: Add helpers for message passing with extensions
- - - - -
10ba9714 by Matthew Finkel at 2025-02-27T10:49:05+01:00
BB 41598: Prevent NoScript from being removed/disabled.
Bug 40253: Explicitly allow NoScript in Private Browsing mode.
- - - - -
c653a9df by Henry Wilkes at 2025-02-27T10:49:05+01:00
BB 41581: Hide NoScript extension's toolbar button by default.
This hides it from both the toolbar and the unified extensions panel.
We also hide the unified-extension-button if the panel would be empty:
not including the NoScript button when it is hidden. As a result, this
will be hidden by default until a user installs another extension (or
shows the NoScript button and unpins it).
- - - - -
e7db21a0 by hackademix at 2025-02-27T10:49:05+01:00
BB 41834: Hide "Can't Be Removed - learn more" menu line for uninstallable add-ons
- - - - -
71751614 by Pier Angelo Vendrame at 2025-02-27T10:49:35+01:00
BB 40925: Implemented the Security Level component
This component adds a new Security Level toolbar button which visually
indicates the current global security level via icon (as defined by the
extensions.torbutton.security_slider pref), a drop-down hanger with a
short description of the current security level, and a new section in
the about:preferences#privacy page where users can change their current
security level. In addition, the hanger and the preferences page will
show a visual warning when the user has modified prefs associated with
the security level and provide a one-click 'Restore Defaults' button to
get the user back on recommended settings.
Bug 40125: Expose Security Level pref in GeckoView
- - - - -
e212c5b1 by Pier Angelo Vendrame at 2025-02-27T10:49:36+01:00
BB 40926: Implemented the New Identity feature
- - - - -
6724d709 by Henry Wilkes at 2025-02-27T10:49:36+01:00
BB 41736: Customize toolbar for base-browser.
- - - - -
e1de40eb by Pier Angelo Vendrame at 2025-02-27T10:49:36+01:00
BB 42027: Base Browser migration procedures.
This commit implmenents the the Base Browser's version of _migrateUI.
- - - - -
e6ae0753 by Henry Wilkes at 2025-02-27T10:49:37+01:00
TB 42308: Create README for tor-browser.
We drop the README.txt that comes from Mozilla Firefox and add README.md
for tor-browser.
- - - - -
ff1741d0 by Richard Pospesel at 2025-02-27T10:49:37+01:00
TB 41649: Create rebase and security backport gitlab issue templates
- - - - -
5fc647f4 by Beatriz Rizental at 2025-02-27T10:49:37+01:00
Add CI for Tor Browser
- - - - -
9c6658d9 by Richard Pospesel at 2025-02-27T10:50:01+01:00
TB 41089: Add tor-browser build scripts + Makefile to tor-browser
- - - - -
6cc7aa9e by Henry Wilkes at 2025-02-27T10:50:02+01:00
TB 41803: Add some developer tools for working on tor-browser.
- - - - -
cafd241e by Alex Catarineu at 2025-02-27T10:50:02+01:00
Add TorStrings module for localization
- - - - -
e9ce6851 by Henry Wilkes at 2025-02-27T10:50:02+01:00
Tor Browser strings
This commit adds all the strings needed for Tor Browser patches.
- - - - -
27f6b259 by Henry Wilkes at 2025-02-27T10:50:03+01:00
Tor Browser localization migration scripts.
- - - - -
10e56200 by Mike Perry at 2025-02-27T10:50:23+01:00
TB 2176: Rebrand Firefox to TorBrowser
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).
- - - - -
e38ee9f8 by Henry Wilkes at 2025-02-27T10:50:24+01:00
Customize moz-toggle for tor-browser.
- - - - -
0b055b09 by Henry Wilkes at 2025-02-27T10:50:24+01:00
TB 43087: Add onion-pattern to be used on Tor pages.
- - - - -
89584a50 by hackademix at 2025-02-27T10:50:25+01:00
TB 41917: Tor brand-specific styles.
- - - - -
293d085e by Henry Wilkes at 2025-02-27T10:50:25+01:00
TB 41817: tor-browser semantic colors.
- - - - -
f56b85e2 by Henry Wilkes at 2025-02-27T10:50:25+01:00
TB 42110: Add TorUIUtils module for common tor component methods.
- - - - -
b715c500 by Henry Wilkes at 2025-02-27T10:50:25+01:00
Add purple tor version of the loading APNG.
- - - - -
8ccef442 by Henry Wilkes at 2025-02-27T10:50:26+01:00
TB 42583: Modify moz-support-link for Tor Browser.
- - - - -
f2441ab2 by sanketh at 2025-02-27T10:50:26+01:00
TB 40209: Implement Basic Crypto Safety
Adds a CryptoSafety actor which detects when you've copied a crypto
address from a HTTP webpage and shows a warning.
Closes #40209.
Bug 40428: Fix string attribute names
- - - - -
0b759f91 by Mike Perry at 2025-02-27T10:50:26+01:00
TB3: Tor Browser's official .mozconfigs.
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
- - - - -
46f89763 by Henry Wilkes at 2025-02-27T10:50:26+01:00
TB 41340: Enable TOR_BROWSER_NIGHTLY_BUILD features for dev and nightly builds
tor-browser#41285: Enable fluent warnings.
- - - - -
e8319771 by Pier Angelo Vendrame at 2025-02-27T10:50:27+01:00
TB 40562: Added Tor Browser preferences to 000-tor-browser.js
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.
- - - - -
7e2ba5c8 by Pier Angelo Vendrame at 2025-02-27T10:50:27+01:00
TB 13252: Customize profile management on macOS
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.
- - - - -
7a035a8a by Pier Angelo Vendrame at 2025-02-27T10:50:27+01:00
TB 40933: Add tor-launcher functionality
Bug 41926: Reimplement the control port
- - - - -
a3bb62c6 by Cecylia Bocovich at 2025-02-27T10:50:27+01:00
Lox integration
- - - - -
f8ef4708 by Richard Pospesel at 2025-02-27T10:50:28+01:00
TB 40597: Implement TorSettings module
- 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
- - - - -
5fb03cb5 by Arthur Edelstein at 2025-02-27T10:50:28+01:00
TB 3455: Add DomainIsolator, for isolating circuit by domain.
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
- - - - -
13bab2c2 by Henry Wilkes at 2025-02-27T10:50:28+01:00
TB 41600: Add a tor circuit display panel.
- - - - -
f0e6718f by Pier Angelo Vendrame at 2025-02-27T10:50:28+01:00
TB 42247: Android helpers for the TorProvider
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.
- - - - -
176eb775 by hackademix at 2025-02-27T10:50:29+01:00
TB 8324: Prevent DNS proxy bypasses caused by Drag&Drop
Bug 41613: Skip Drang & Drop filtering for DNS-safe URLs
- - - - -
23e0b209 by Matthew Finkel at 2025-02-27T10:50:29+01:00
TB 25741: TBA: Disable GeckoNetworkManager
The browser should not need information related to the network
interface or network state, tor should take care of that.
- - - - -
a7d19bb9 by Pier Angelo Vendrame at 2025-02-27T10:50:29+01:00
TB 40807: Added QRCode.js to toolkit/modules
- - - - -
305a9aee by Richard Pospesel at 2025-02-27T10:50:29+01:00
TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
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
- - - - -
b631cdef by Richard Pospesel at 2025-02-27T10:50:30+01:00
TB 27476: Implement about:torconnect captive portal within Tor Browser
- 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.
- - - - -
0a94c137 by Pier Angelo Vendrame at 2025-02-27T10:50:30+01:00
Temporary changes to about:torconnect for Android.
We are planning of tempoorarily using about:torconnect on Android, until
the native UX is ready.
- - - - -
c4e48d46 by Henry Wilkes at 2025-03-03T17:16:15+01:00
TB 7494: Create local home page for TBB.
Bug 41333: Update about:tor to new design. Including:
+ make the favicon match the branding icon.
+ make the location bar show a search icon.
- - - - -
c8c70928 by Pier Angelo Vendrame at 2025-03-03T17:16:15+01:00
TB 41668: Tweaks to the Base Browser updater for Tor Browser
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.
- - - - -
cc9d5bb3 by Kathy Brade at 2025-03-03T17:16:15+01:00
TB 12647: Support symlinks in the updater.
- - - - -
34d792fb by Georg Koppen at 2025-03-03T17:16:15+01:00
TB 32658: Create a new MAR signing key
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
- - - - -
94d80670 by Pier Angelo Vendrame at 2025-03-03T17:16:16+01:00
TB 42891: Set the bundled search engine for Tor Browser.
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.
- - - - -
9008f4e7 by Alex Catarineu at 2025-03-03T17:16:16+01:00
TB 40073: Disable remote Public Suffix List fetching
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.
- - - - -
4f12aa38 by Henry Wilkes at 2025-03-03T17:16:16+01:00
TB 41906: Hide DNS over HTTPS preferences.
- - - - -
2d9c1c68 by Richard Pospesel at 2025-03-03T17:16:16+01:00
TB 23247: Communicating security expectations for .onion
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.
- - - - -
3f91af5a by Kathy Brade at 2025-03-03T17:16:17+01:00
TB 30237: Add v3 onion services client authentication prompt
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.
- - - - -
b62f9c75 by Alex Catarineu at 2025-03-03T17:16:17+01:00
TB 21952: Implement Onion-Location
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.
- - - - -
02c747fc by Pier Angelo Vendrame at 2025-03-03T17:16:17+01:00
TB 40458: Implement .tor.onion aliases
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.
- - - - -
87bf92a6 by Pier Angelo Vendrame at 2025-03-03T17:16:17+01:00
TB 11698: Incorporate Tor Browser Manual pages into Tor Browser
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.
- - - - -
cf237f82 by Pier Angelo Vendrame at 2025-03-03T17:16:18+01:00
TB 41435: Add a Tor Browser migration function
For now this function only deletes old language packs for which we are
already packaging the strings with the application.
- - - - -
acd7f421 by Dan Ballard at 2025-03-03T17:16:18+01:00
TB 40701: Add security warning when downloading a file
Shown in the downloads panel, about:downloads and places.xhtml.
- - - - -
fc3530d7 by Henry Wilkes at 2025-03-03T17:16:18+01:00
TB 41736: Customize toolbar for tor-browser.
- - - - -
c12bff39 by hackademix at 2025-03-03T17:16:18+01:00
TB 41728: Pin bridges.torproject.org domains to Let's Encrypt's root cert public key
- - - - -
016362f2 by Richard Pospesel at 2025-03-03T17:16:19+01:00
TB 41822: Unconditionally disable default browser UX in about:preferences
- - - - -
7a2b0cc0 by Cecylia Bocovich at 2025-03-03T17:16:19+01:00
Temporary commit: manually place generated wasm files
These files are built reproducibly using tor-browser-build: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/merge_re…
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.
- - - - -
9a427e7a by Pier Angelo Vendrame at 2025-03-03T17:16:19+01:00
[android] TBA strings
- - - - -
f620ac10 by Dan Ballard at 2025-03-03T17:16:19+01:00
TB 42660: Disable ProxySelector.openConnectionWithProxy and NOPify CrashReporter.sendCrashReport
- - - - -
457a8c28 by Dan Ballard at 2025-03-03T17:16:20+01:00
TB 43006: Disable RFP for Font Visibility on Android
- - - - -
bbcb3ff1 by Matthew Finkel at 2025-03-03T17:16:20+01:00
TB 40005: [android] Modify Default toolbar menu
Originally android-components#40005.
- - - - -
b470669a by Alex Catarineu at 2025-03-03T17:16:20+01:00
TB 34378: [android] Port external helper app prompting
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.
- - - - -
c2e67ed8 by Alex Catarineu at 2025-03-03T17:16:20+01:00
TB 40002: [android] Ensure system download manager is not used
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
- - - - -
b81adaa5 by Alex Catarineu at 2025-03-03T17:16:21+01:00
TB 40009: [android] Change the default search engines
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
- - - - -
b8b2db3f by hackademix at 2025-03-03T17:16:21+01:00
TB 42191: [android] Temporary StrictMode relaxation to clear the thumbnail cache.
- - - - -
e40e13f0 by hackademix at 2025-03-03T17:16:21+01:00
[android] Modify add-on support
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
- - - - -
607a0178 by Alex Catarineu at 2025-03-03T17:16:21+01:00
[android] Modify Addon support
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.
- - - - -
0181128f by Alex Catarineu at 2025-03-03T17:16:22+01:00
TB 40015: [android] Port padlock states for .onion services
Originally, android-components#40015.
- - - - -
d3001b9e by Matthew Finkel at 2025-03-03T17:16:22+01:00
[android] Modify Tracking Protection configuration
android-components#40020: Disable third-party cookies
android-components#40024: Disable tracking protection by default
- - - - -
91c2364d by Matthew Finkel at 2025-03-03T17:16:22+01:00
TB 40023: [android] Stop PrivateNotificationService
Originally, android-components#40023.
- - - - -
3e89ff73 by Alex Catarineu at 2025-03-03T17:16:22+01:00
TB 34439 [android]: Isolate Icon loader on Android.
Originally, android-components#34439.
- - - - -
ba9df063 by Matthew Finkel at 2025-03-03T17:16:23+01:00
[android] Disable features and functionality
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
- - - - -
382b8bdb by Matthew Finkel at 2025-03-03T17:16:23+01:00
TB 40032 [android]: Set usesCleartextTraffic as false
Originally, fenix#40032.
- - - - -
81d2be61 by Matthew Finkel at 2025-03-03T17:16:23+01:00
[android] Rename as Tor Browser
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
- - - - -
27f035ae by Pier Angelo Vendrame at 2025-03-04T11:58:53+01:00
fixup! [android] Rename as Tor Browser
Fix Tor Browser Android builds after MozBug 1914164.
- - - - -
1741c4e1 by Georg Koppen at 2025-03-04T11:58:53+01:00
[android] Modify build system
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.
- - - - -
4952befa by Matthew Finkel at 2025-03-04T12:25:09+01:00
TB 40185: [android] Use NimbusDisabled
Originally, fenix#40185.
- - - - -
cd63c7fa by Alex Catarineu at 2025-03-04T12:25:09+01:00
TB 40087 [android]: Implement a switch for spoof English.
Originally, fenix#40087 and android-components#40019.
- - - - -
3ee13021 by Matthew Finkel at 2025-03-04T12:25:09+01:00
TB 34403 [android]: Disable Normal mode by default.
Originally, fenix#34403.
- - - - -
40df4c52 by Matthew Finkel at 2025-03-04T12:25:09+01:00
TB 40016 [android]: Don't install WebCompat webext.
Originally, fenix#40016.
- - - - -
b247c410 by Matthew Finkel at 2025-03-04T12:25:10+01:00
[android] Modify UI/UX
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
- - - - -
0f5166a9 by Matthew Finkel at 2025-03-04T12:25:10+01:00
TB 40026 [android]: Implement Security Level settings on Android.
Originally, fenix#40026.
- - - - -
422b2d54 by Dan Ballard at 2025-03-04T12:25:10+01:00
TB 41972: [android] Disable Mozilla onboarding
- - - - -
93eac648 by Dan Ballard at 2025-03-04T12:25:10+01:00
TB 41878: [android] Add standalone Tor Bootstrap
- - - - -
3ecc0f14 by Matthew Finkel at 2025-03-04T12:25:11+01:00
TB 40041 [android]: Implement Tor Network Settings
Originally, fenix#40041.
- - - - -
467e9a73 by clairehurst at 2025-03-04T12:25:11+01:00
[android] Implement Android-native Connection Assist UI
- - - - -
7dd516e6 by clairehurst at 2025-03-04T12:25:11+01:00
TB 42655 [android]: Implement "New circuit for this site" on Android
- - - - -
fa35b193 by clairehurst at 2025-03-04T12:25:12+01:00
TB 42089: [android] Remove ability to submit site support requests
- - - - -
65cc004a by clairehurst at 2025-03-04T12:25:12+01:00
[android] Delete unused media
- - - - -
4ee361e8 by clairehurst at 2025-03-04T12:25:12+01:00
[android] Bug_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 tor-browser#43351 and bugzilla bug 1935387.
TODO: Remove once the forced all caps is removed by mozilla.
- - - - -
927fcba8 by Beatriz Rizental at 2025-03-04T12:25:12+01:00
TB 43243: [android] Implement Android launch test
Also remove exit call from terminate function.
It causes all espresso tests to crash on exit and otherwise doesn't do anything.
- - - - -
1801 changed files:
- .eslintrc-ignores.js
- .gitignore
- + .gitlab-ci.yml
- + .gitlab/ci/containers/base/Containerfile
- + .gitlab/ci/jobs/lint/helpers.py
- + .gitlab/ci/jobs/lint/lint.yml
- + .gitlab/ci/jobs/startup-test/startup-test-android.py
- + .gitlab/ci/jobs/startup-test/startup-test.py
- + .gitlab/ci/jobs/startup-test/startup-test.yml
- + .gitlab/ci/jobs/update-containers.yml
- + .gitlab/ci/jobs/update-translations.yml
- + .gitlab/ci/mixins.yml
- + .gitlab/issue_templates/Backport Android Security Fixes.md
- + .gitlab/issue_templates/Bugzilla Triage.md
- + .gitlab/issue_templates/Emergency Security Issue.md
- + .gitlab/issue_templates/QA - Android.md
- + .gitlab/issue_templates/QA - Desktop.md
- + .gitlab/issue_templates/Rebase Browser - Alpha.md
- + .gitlab/issue_templates/Rebase Browser - Legacy.md
- + .gitlab/issue_templates/Rebase Browser - Rapid.md
- + .gitlab/issue_templates/Rebase Browser - Stable.md
- + .gitlab/issue_templates/bug.md
- + .gitlab/merge_request_templates/Rebase.md
- + .gitlab/merge_request_templates/default.md
- .prettierignore
- + README.md
- − README.txt
- + browser/actors/CryptoSafetyChild.sys.mjs
- + browser/actors/CryptoSafetyParent.sys.mjs
- − browser/actors/RFPHelperChild.sys.mjs
- − browser/actors/RFPHelperParent.sys.mjs
- browser/actors/moz.build
- browser/app/Makefile.in
- browser/app/macbuild/Contents/Info.plist.in
- browser/app/macbuild/Contents/MacOS-files.in
- browser/app/moz.build
- browser/app/permissions
- + browser/app/profile/000-tor-browser.js
- + browser/app/profile/001-base-profile.js
- browser/app/profile/firefox.js
- browser/base/content/aboutDialog-appUpdater.js
- browser/base/content/aboutDialog.js
- browser/base/content/aboutDialog.xhtml
- + browser/base/content/aboutDialogTor.css
- browser/base/content/appmenu-viewcache.inc.xhtml
- browser/base/content/browser-addons.js
- browser/base/content/browser-context.js
- browser/base/content/browser-init.js
- browser/base/content/browser-menubar.inc
- browser/base/content/browser-places.js
- browser/base/content/browser-safebrowsing.js
- browser/base/content/browser-sets.inc
- browser/base/content/browser-siteIdentity.js
- browser/base/content/browser.js
- browser/base/content/browser.js.globals
- browser/base/content/browser.xhtml
- browser/base/content/default-bookmarks.html
- + browser/base/content/languageNotification.js
- browser/base/content/main-popupset.inc.xhtml
- browser/base/content/navigator-toolbox.inc.xhtml
- browser/base/content/pageinfo/pageInfo.xhtml
- browser/base/content/pageinfo/security.js
- browser/base/content/popup-notifications.inc
- browser/base/content/utilityOverlay.js
- browser/base/jar.mn
- browser/base/moz.build
- browser/branding/branding-common.mozbuild
- + browser/branding/tb-alpha/VisualElements_150.png
- + browser/branding/tb-alpha/VisualElements_70.png
- + browser/branding/tb-alpha/configure.sh
- + browser/branding/tb-alpha/content/about-logo.png
- + browser/branding/tb-alpha/content/about-logo.svg
- + browser/branding/tb-alpha/content/about-logo(a)2x.png
- + browser/branding/tb-alpha/content/about-wordmark.svg
- + browser/branding/tb-alpha/content/about.png
- + browser/branding/tb-alpha/content/aboutDialog.css
- + browser/branding/tb-alpha/content/firefox-wordmark.svg
- + browser/branding/tb-alpha/content/jar.mn
- + browser/branding/tb-alpha/content/moz.build
- + browser/branding/tb-alpha/default128.png
- + browser/branding/tb-alpha/default16.png
- + browser/branding/tb-alpha/default22.png
- + browser/branding/tb-alpha/default24.png
- + browser/branding/tb-alpha/default256.png
- + browser/branding/tb-alpha/default32.png
- + browser/branding/tb-alpha/default48.png
- + browser/branding/tb-alpha/default64.png
- + browser/branding/tb-alpha/document.icns
- + browser/branding/tb-alpha/document.ico
- + browser/branding/tb-alpha/document_pdf.ico
- + browser/branding/tb-alpha/firefox.VisualElementsManifest.xml
- + browser/branding/tb-alpha/firefox.icns
- + browser/branding/tb-alpha/firefox.ico
- + browser/branding/tb-alpha/locales/en-US/brand.ftl
- + browser/branding/tb-alpha/locales/en-US/brand.properties
- + browser/branding/tb-alpha/locales/jar.mn
- + browser/branding/tb-alpha/locales/moz.build
- + browser/branding/tb-alpha/moz.build
- + browser/branding/tb-alpha/newtab.ico
- + browser/branding/tb-alpha/newwindow.ico
- + browser/branding/tb-alpha/pbmode.ico
- + browser/branding/tb-alpha/pref/firefox-branding.js
- + browser/branding/tb-nightly/VisualElements_150.png
- + browser/branding/tb-nightly/VisualElements_70.png
- + browser/branding/tb-nightly/configure.sh
- + browser/branding/tb-nightly/content/about-logo.png
- + browser/branding/tb-nightly/content/about-logo.svg
- + browser/branding/tb-nightly/content/about-logo(a)2x.png
- + browser/branding/tb-nightly/content/about-wordmark.svg
- + browser/branding/tb-nightly/content/about.png
- + browser/branding/tb-nightly/content/aboutDialog.css
- + browser/branding/tb-nightly/content/firefox-wordmark.svg
- + browser/branding/tb-nightly/content/jar.mn
- + browser/branding/tb-nightly/content/moz.build
- + browser/branding/tb-nightly/default128.png
- + browser/branding/tb-nightly/default16.png
- + browser/branding/tb-nightly/default22.png
- + browser/branding/tb-nightly/default24.png
- + browser/branding/tb-nightly/default256.png
- + browser/branding/tb-nightly/default32.png
- + browser/branding/tb-nightly/default48.png
- + browser/branding/tb-nightly/default64.png
- + browser/branding/tb-nightly/document.icns
- + browser/branding/tb-nightly/document.ico
- + browser/branding/tb-nightly/document_pdf.ico
- + browser/branding/tb-nightly/firefox.VisualElementsManifest.xml
- + browser/branding/tb-nightly/firefox.icns
- + browser/branding/tb-nightly/firefox.ico
- + browser/branding/tb-nightly/locales/en-US/brand.ftl
- + browser/branding/tb-nightly/locales/en-US/brand.properties
- + browser/branding/tb-nightly/locales/jar.mn
- + browser/branding/tb-nightly/locales/moz.build
- + browser/branding/tb-nightly/moz.build
- + browser/branding/tb-nightly/newtab.ico
- + browser/branding/tb-nightly/newwindow.ico
- + browser/branding/tb-nightly/pbmode.ico
- + browser/branding/tb-nightly/pref/firefox-branding.js
- + browser/branding/tb-release/VisualElements_150.png
- + browser/branding/tb-release/VisualElements_70.png
- + browser/branding/tb-release/configure.sh
- + browser/branding/tb-release/content/about-logo.png
- + browser/branding/tb-release/content/about-logo.svg
- + browser/branding/tb-release/content/about-logo(a)2x.png
- + browser/branding/tb-release/content/about-wordmark.svg
- + browser/branding/tb-release/content/about.png
- + browser/branding/tb-release/content/aboutDialog.css
- + browser/branding/tb-release/content/firefox-wordmark.svg
- + browser/branding/tb-release/content/jar.mn
- + browser/branding/tb-release/content/moz.build
- + browser/branding/tb-release/default128.png
- + browser/branding/tb-release/default16.png
- + browser/branding/tb-release/default22.png
- + browser/branding/tb-release/default24.png
- + browser/branding/tb-release/default256.png
- + browser/branding/tb-release/default32.png
- + browser/branding/tb-release/default48.png
- + browser/branding/tb-release/default64.png
- + browser/branding/tb-release/document.icns
- + browser/branding/tb-release/document.ico
- + browser/branding/tb-release/document_pdf.ico
- + browser/branding/tb-release/firefox.VisualElementsManifest.xml
- + browser/branding/tb-release/firefox.icns
- + browser/branding/tb-release/firefox.ico
- + browser/branding/tb-release/locales/en-US/brand.ftl
- + browser/branding/tb-release/locales/en-US/brand.properties
- + browser/branding/tb-release/locales/jar.mn
- + browser/branding/tb-release/locales/moz.build
- + browser/branding/tb-release/moz.build
- + browser/branding/tb-release/newtab.ico
- + browser/branding/tb-release/newwindow.ico
- + browser/branding/tb-release/pbmode.ico
- + browser/branding/tb-release/pref/firefox-branding.js
- browser/components/BrowserContentHandler.sys.mjs
- browser/components/BrowserGlue.sys.mjs
- browser/components/about/AboutRedirector.cpp
- browser/components/about/components.conf
- browser/components/aboutlogins/AboutLoginsParent.sys.mjs
- browser/components/aboutlogins/content/aboutLogins.css
- browser/components/aboutlogins/content/aboutLogins.mjs
- browser/components/aboutlogins/content/components/fxaccounts-button.css
- + browser/components/abouttor/AboutTorChild.sys.mjs
- + browser/components/abouttor/AboutTorMessage.sys.mjs
- + browser/components/abouttor/AboutTorParent.sys.mjs
- + browser/components/abouttor/HomepageOverride.sys.mjs
- + browser/components/abouttor/content/1f4e3-megaphone.svg
- + browser/components/abouttor/content/26a1-high-voltage.svg
- + browser/components/abouttor/content/2728-sparkles.svg
- + browser/components/abouttor/content/2764-red-heart.svg
- + browser/components/abouttor/content/aboutTor.css
- + browser/components/abouttor/content/aboutTor.html
- + browser/components/abouttor/content/aboutTor.js
- + browser/components/abouttor/content/dax-logo.svg
- + browser/components/abouttor/jar.mn
- + browser/components/abouttor/moz.build
- browser/components/customizableui/CustomizableUI.sys.mjs
- browser/components/customizableui/content/panelUI.inc.xhtml
- browser/components/downloads/DownloadSpamProtection.sys.mjs
- + browser/components/downloads/DownloadsTorWarning.sys.mjs
- browser/components/downloads/content/contentAreaDownloadsView.js
- browser/components/downloads/content/contentAreaDownloadsView.xhtml
- browser/components/downloads/content/downloads.css
- browser/components/downloads/content/downloads.js
- browser/components/downloads/content/downloadsPanel.inc.xhtml
- browser/components/downloads/moz.build
- browser/components/extensions/parent/ext-browserAction.js
- browser/components/extensions/schemas/chrome_settings_overrides.json
- browser/components/migration/ChromeMigrationUtils.sys.mjs
- browser/components/migration/content/migration-wizard.mjs
- browser/components/moz.build
- + browser/components/newidentity/content/newIdentityDialog.css
- + browser/components/newidentity/content/newIdentityDialog.js
- + browser/components/newidentity/content/newIdentityDialog.xhtml
- + browser/components/newidentity/content/newidentity.js
- + browser/components/newidentity/jar.mn
- + browser/components/newidentity/moz.build
- browser/components/newtab/AboutNewTabService.sys.mjs
- + browser/components/onionservices/OnionAliasStore.sys.mjs
- + browser/components/onionservices/OnionLocationChild.sys.mjs
- + browser/components/onionservices/OnionLocationParent.sys.mjs
- + browser/components/onionservices/TorRequestWatch.sys.mjs
- + browser/components/onionservices/content/authNotificationIcon.inc.xhtml
- + browser/components/onionservices/content/authPopup.inc.xhtml
- + browser/components/onionservices/content/authPreferences.css
- + browser/components/onionservices/content/authPreferences.inc.xhtml
- + browser/components/onionservices/content/authPreferences.js
- + browser/components/onionservices/content/authPrompt.js
- + browser/components/onionservices/content/onionlocation-urlbar.inc.xhtml
- + browser/components/onionservices/content/onionlocation.css
- + browser/components/onionservices/content/onionservices.css
- + browser/components/onionservices/content/savedKeysDialog.js
- + browser/components/onionservices/content/savedKeysDialog.xhtml
- + browser/components/onionservices/jar.mn
- + browser/components/onionservices/moz.build
- browser/components/places/PlacesUIUtils.sys.mjs
- browser/components/places/content/controller.js
- browser/components/places/content/places.css
- browser/components/places/content/places.js
- browser/components/places/content/places.xhtml
- browser/components/preferences/home.inc.xhtml
- browser/components/preferences/home.js
- browser/components/preferences/jar.mn
- + browser/components/preferences/letterboxing-middle-dark.svg
- + browser/components/preferences/letterboxing-middle-light.svg
- + browser/components/preferences/letterboxing-top-dark.svg
- + browser/components/preferences/letterboxing-top-light.svg
- + browser/components/preferences/letterboxing.css
- + browser/components/preferences/letterboxing.inc.xhtml
- + browser/components/preferences/letterboxing.js
- browser/components/preferences/main.inc.xhtml
- browser/components/preferences/main.js
- browser/components/preferences/preferences.js
- browser/components/preferences/preferences.xhtml
- browser/components/preferences/privacy.inc.xhtml
- browser/components/preferences/privacy.js
- browser/components/resistfingerprinting/test/browser/browser_dynamical_window_rounding.js
- + browser/components/rulesets/RulesetsChild.sys.mjs
- + browser/components/rulesets/RulesetsParent.sys.mjs
- + browser/components/rulesets/content/aboutRulesets.css
- + browser/components/rulesets/content/aboutRulesets.html
- + browser/components/rulesets/content/aboutRulesets.js
- + browser/components/rulesets/content/securedrop.svg
- + browser/components/rulesets/jar.mn
- + browser/components/rulesets/moz.build
- browser/components/search/SearchSERPTelemetry.sys.mjs
- + browser/components/search/extensions/ddg-onion/favicon.ico
- + browser/components/search/extensions/ddg-onion/manifest.json
- browser/components/search/extensions/ddg/manifest.json
- + browser/components/search/extensions/startpage-onion/favicon.png
- + browser/components/search/extensions/startpage-onion/manifest.json
- + browser/components/search/extensions/startpage/favicon.png
- + browser/components/search/extensions/startpage/manifest.json
- + browser/components/securitylevel/content/securityLevel.js
- + browser/components/securitylevel/content/securityLevelButton.css
- + browser/components/securitylevel/content/securityLevelButton.inc.xhtml
- + browser/components/securitylevel/content/securityLevelIcon.svg
- + browser/components/securitylevel/content/securityLevelPanel.css
- + browser/components/securitylevel/content/securityLevelPanel.inc.xhtml
- + browser/components/securitylevel/content/securityLevelPreferences.css
- + browser/components/securitylevel/content/securityLevelPreferences.inc.xhtml
- + browser/components/securitylevel/jar.mn
- + browser/components/securitylevel/moz.build
- browser/components/shopping/jar.mn
- browser/components/shopping/moz.build
- browser/components/tabbrowser/content/tabbrowser.js
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f4-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f6-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fc-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fc-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fd-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fe-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fe-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/README.txt
- + browser/components/torcircuit/content/tor-circuit-icon-mask.svg
- + browser/components/torcircuit/content/tor-circuit-node-end.svg
- + browser/components/torcircuit/content/tor-circuit-node-middle.svg
- + browser/components/torcircuit/content/tor-circuit-node-relays.svg
- + browser/components/torcircuit/content/tor-circuit-node-start.svg
- + browser/components/torcircuit/content/tor-circuit-redirect.svg
- + browser/components/torcircuit/content/torCircuitPanel.css
- + browser/components/torcircuit/content/torCircuitPanel.inc.xhtml
- + browser/components/torcircuit/content/torCircuitPanel.js
- + browser/components/torcircuit/jar.mn
- + browser/components/torcircuit/moz.build
- + browser/components/torpreferences/content/bridge-bot.svg
- + browser/components/torpreferences/content/bridge-qr.svg
- + browser/components/torpreferences/content/bridge.svg
- + browser/components/torpreferences/content/bridgeQrDialog.js
- + browser/components/torpreferences/content/bridgeQrDialog.xhtml
- + browser/components/torpreferences/content/bridgemoji/BridgeEmoji.js
- + browser/components/torpreferences/content/bridgemoji/annotations.json
- + browser/components/torpreferences/content/bridgemoji/bridge-emojis.json
- + browser/components/torpreferences/content/bridgemoji/svgs/1f300.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f308.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f30a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f30b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f319.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f31f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f321.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f32d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f32e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f332.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f333.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f334.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f335.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f336.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f337.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f339.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f341.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f344.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f345.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f346.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f347.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f348.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f349.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f350.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f351.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f352.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f353.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f354.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f355.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f368.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f369.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f37f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f380.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f381.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f382.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f383.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f388.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f389.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f38f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f392.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f399.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f39f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ac.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3af.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ba.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3bb.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3be.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3dd.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3e1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ee.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f417.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f418.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f419.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f420.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f422.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f425.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f426.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f428.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f430.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f431.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f432.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f433.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f434.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f435.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f436.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f437.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f441.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f451.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f455.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f457.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f45f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f47d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f484.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f488.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f48d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f48e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f490.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4a1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4a7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4b3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4bf.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4cc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4ce.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4d5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4e1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4e2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4fb.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f50b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f511.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f525.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f526.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f54a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f58c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f58d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f5ff.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f680.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f681.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f686.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f68b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f68d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f695.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f697.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f69a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f69c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6fa.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6fc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f916.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f93f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f941.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f94c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f94f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f950.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f951.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f955.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f956.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f965.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f966.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f968.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f980.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f981.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f984.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f986.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f987.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f988.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f989.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f992.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f993.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f994.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f995.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f998.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f999.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ad.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9d9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9da.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9dc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ea.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ec.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ed.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ee.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa73.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa80.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa81.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa83.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa90.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa91.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa95.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa97.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fab6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/23f0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2600.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2602.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2604.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/260e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2693.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2696.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26bd.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26f2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2708.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/270f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2728.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2744.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/README.txt
- + browser/components/torpreferences/content/builtinBridgeDialog.js
- + browser/components/torpreferences/content/builtinBridgeDialog.xhtml
- + browser/components/torpreferences/content/connectionCategory.inc.xhtml
- + browser/components/torpreferences/content/connectionPane.js
- + browser/components/torpreferences/content/connectionPane.xhtml
- + browser/components/torpreferences/content/connectionSettingsDialog.js
- + browser/components/torpreferences/content/connectionSettingsDialog.xhtml
- + browser/components/torpreferences/content/lox-bridge-icon.svg
- + browser/components/torpreferences/content/lox-bridge-pass.svg
- + browser/components/torpreferences/content/lox-complete-ring.svg
- + browser/components/torpreferences/content/lox-invite-icon.svg
- + browser/components/torpreferences/content/lox-progress-ring.svg
- + browser/components/torpreferences/content/lox-success.svg
- + browser/components/torpreferences/content/loxInviteDialog.js
- + browser/components/torpreferences/content/loxInviteDialog.xhtml
- + browser/components/torpreferences/content/mail.svg
- + browser/components/torpreferences/content/network-broken.svg
- + browser/components/torpreferences/content/network.svg
- + browser/components/torpreferences/content/provideBridgeDialog.js
- + browser/components/torpreferences/content/provideBridgeDialog.xhtml
- + browser/components/torpreferences/content/requestBridgeDialog.js
- + browser/components/torpreferences/content/requestBridgeDialog.xhtml
- + browser/components/torpreferences/content/telegram-logo.svg
- + browser/components/torpreferences/content/torLogDialog.js
- + browser/components/torpreferences/content/torLogDialog.xhtml
- + browser/components/torpreferences/content/torPreferences.css
- + browser/components/torpreferences/jar.mn
- + browser/components/torpreferences/moz.build
- browser/components/urlbar/UrlbarInput.sys.mjs
- browser/components/urlbar/UrlbarProvidersManager.sys.mjs
- browser/components/urlbar/UrlbarUtils.sys.mjs
- browser/components/urlbar/moz.build
- + browser/config/mozconfigs/base-browser
- + browser/config/mozconfigs/base-browser-android
- + browser/config/mozconfigs/tor-browser
- + browser/config/mozconfigs/tor-browser-android
- browser/confvars.sh
- browser/extensions/moz.build
- + browser/fonts/fonts.conf
- browser/fonts/moz.build
- browser/installer/Makefile.in
- browser/installer/package-manifest.in
- browser/installer/windows/nsis/shared.nsh
- browser/locales/Makefile.in
- − browser/locales/en-US/chrome/overrides/appstrings.properties
- browser/locales/jar.mn
- browser/modules/BrowserWindowTracker.sys.mjs
- browser/modules/HomePage.sys.mjs
- browser/modules/LaterRun.sys.mjs
- + browser/modules/TorUIUtils.sys.mjs
- browser/modules/URILoadingHelper.sys.mjs
- browser/modules/moz.build
- browser/moz.build
- browser/moz.configure
- browser/themes/shared/addons/unified-extensions.css
- browser/themes/shared/browser-shared.css
- browser/themes/shared/controlcenter/panel.css
- browser/themes/shared/downloads/contentAreaDownloadsView.css
- + browser/themes/shared/icons/new_circuit.svg
- + browser/themes/shared/icons/new_identity.svg
- browser/themes/shared/identity-block/identity-block.css
- browser/themes/shared/jar.inc.mn
- browser/themes/shared/notification-icons.css
- browser/themes/shared/preferences/preferences.css
- browser/themes/shared/tabbrowser/tabs.css
- browser/themes/shared/toolbarbutton-icons.css
- + browser/themes/shared/tor-branding.css
- + browser/themes/shared/tor-urlbar-button.css
- build/application.ini.in
- build/moz.build
- build/moz.configure/init.configure
- build/moz.configure/rust.configure
- build/moz.configure/update-programs.configure
- build/moz.configure/windows.configure
- build/variables.py
- config/createprecomplete.py
- devtools/client/aboutdebugging/src/actions/runtimes.js
- devtools/client/netmonitor/src/components/SecurityState.js
- devtools/client/themes/images/aboutdebugging-firefox-logo.svg
- docshell/base/URIFixup.sys.mjs
- docshell/base/nsAboutRedirector.cpp
- docshell/base/nsDocShell.cpp
- docshell/build/components.conf
- dom/base/ContentAreaDropListener.sys.mjs
- dom/base/Document.cpp
- dom/base/Document.h
- dom/base/nsContentUtils.cpp
- dom/base/nsContentUtils.h
- dom/base/nsCopySupport.cpp
- dom/base/nsGlobalWindowOuter.cpp
- dom/base/nsNodeInfoManager.cpp
- dom/canvas/ClientWebGLContext.cpp
- dom/ipc/BrowserParent.cpp
- dom/ipc/BrowserParent.h
- dom/ipc/PBrowser.ipdl
- dom/ipc/WindowGlobalActor.cpp
- dom/ipc/WindowGlobalChild.cpp
- dom/locales/moz.build
- dom/media/systemservices/video_engine/desktop_device_info.cc
- dom/media/webrtc/libwebrtcglue/VideoConduit.cpp
- dom/media/webrtc/sdp/RsdparsaSdpAttributeList.cpp
- dom/media/webrtc/transport/nrinterfaceprioritizer.cpp
- dom/media/webrtc/transport/sigslot.h
- dom/media/webrtc/transport/test/ice_unittest.cpp
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.c
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.h
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-win32.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs.c
- dom/media/webrtc/transport/third_party/nrappkit/src/log/r_log.c
- dom/media/webrtc/transport/third_party/nrappkit/src/registry/registry.c
- dom/security/nsContentSecurityUtils.cpp
- dom/security/nsMixedContentBlocker.cpp
- dom/webidl/Document.webidl
- dom/websocket/WebSocket.cpp
- dom/xslt/xslt/txMozillaXSLTProcessor.cpp
- dom/xslt/xslt/txXSLTMsgsURL.h
- extensions/auth/nsHttpNegotiateAuth.cpp
- gfx/thebes/StandardFonts-linux.inc → gfx/thebes/StandardFonts-linux-upstream.inc
- + gfx/thebes/StandardFonts-macos-bb.inc
- gfx/thebes/StandardFonts-macos.inc → gfx/thebes/StandardFonts-macos-upstream.inc
- + gfx/thebes/StandardFonts-win10-bb.inc
- gfx/thebes/StandardFonts-win10.inc → gfx/thebes/StandardFonts-win10-upstream.inc
- gfx/thebes/gfxDWriteFontList.cpp
- gfx/thebes/gfxDWriteFontList.h
- gfx/thebes/gfxFcPlatformFontList.cpp
- gfx/thebes/gfxGDIFontList.cpp
- gfx/thebes/gfxMacPlatformFontList.mm
- gfx/thebes/gfxPlatformFontList.cpp
- intl/l10n/Localization.h
- intl/locale/LocaleService.cpp
- intl/strres/nsIStringBundle.idl
- intl/strres/nsStringBundle.cpp
- js/xpconnect/src/xpc.msg
- layout/base/nsLayoutUtils.cpp
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngine.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/cookiebanners/GeckoCookieBannersStorage.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/cookiebanners/ReportSiteDomainsRepository.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/fetch/GeckoViewFetchClient.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/webextension/GeckoWebExtension.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/cookiebanners/GeckoCookieBannersStorageTest.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/cookiebanners/ReportSiteDomainsRepositoryTest.kt
- mobile/android/android-components/components/browser/icons/src/main/java/mozilla/components/browser/icons/loader/HttpIconLoader.kt
- mobile/android/android-components/components/browser/menu/src/main/java/mozilla/components/browser/menu/WebExtensionBrowserMenuBuilder.kt
- mobile/android/android-components/components/browser/thumbnails/src/main/java/mozilla/components/browser/thumbnails/utils/ThumbnailDiskCache.kt
- mobile/android/android-components/components/browser/toolbar/src/main/java/mozilla/components/browser/toolbar/display/DisplayToolbar.kt
- mobile/android/android-components/components/browser/toolbar/src/main/java/mozilla/components/browser/toolbar/display/SiteSecurityIconView.kt
- mobile/android/android-components/components/browser/toolbar/src/main/res/drawable/mozac_ic_site_security.xml
- mobile/android/android-components/components/browser/toolbar/src/main/res/values/attrs_browser_toolbar.xml
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/EngineSession.kt
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/Settings.kt
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/cookiehandling/CookieBannersStorage.kt
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/webextension/WebExtension.kt
- mobile/android/android-components/components/concept/engine/src/test/java/mozilla/components/concept/engine/SettingsTest.kt
- mobile/android/android-components/components/concept/fetch/src/main/java/mozilla/components/concept/fetch/Request.kt
- mobile/android/android-components/components/concept/toolbar/src/main/java/mozilla/components/concept/toolbar/Toolbar.kt
- mobile/android/android-components/components/feature/accounts/build.gradle
- mobile/android/android-components/components/feature/addons/src/main/java/mozilla/components/feature/addons/AddonManager.kt
- mobile/android/android-components/components/feature/addons/src/main/java/mozilla/components/feature/addons/amo/AMOAddonsProvider.kt
- mobile/android/android-components/components/feature/addons/src/main/res/layout/mozac_feature_addons_fragment_dialog_addon_installed.xml
- mobile/android/android-components/components/feature/app-links/build.gradle
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksFeature.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
- mobile/android/android-components/components/feature/awesomebar/src/main/java/mozilla/components/feature/awesomebar/provider/SessionAutocompleteProvider.kt
- mobile/android/android-components/components/feature/awesomebar/src/main/java/mozilla/components/feature/awesomebar/provider/SessionSuggestionProvider.kt
- mobile/android/android-components/components/feature/contextmenu/src/main/java/mozilla/components/feature/contextmenu/ContextMenuCandidate.kt
- mobile/android/android-components/components/feature/downloads/src/main/java/mozilla/components/feature/downloads/AbstractFetchDownloadService.kt
- mobile/android/android-components/components/feature/downloads/src/main/java/mozilla/components/feature/downloads/DownloadsFeature.kt
- mobile/android/android-components/components/feature/downloads/src/test/java/mozilla/components/feature/downloads/DownloadsFeatureTest.kt
- mobile/android/android-components/components/feature/privatemode/src/main/java/mozilla/components/feature/privatemode/notification/PrivateNotificationFeature.kt
- mobile/android/android-components/components/feature/search/build.gradle
- mobile/android/android-components/components/feature/search/src/main/assets/search/list.json
- + mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/ddg-onion.xml
- mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/ddg.xml
- + mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/startpage-onion.xml
- + mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/startpage.xml
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/SearchUseCases.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/ext/SearchEngine.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/internal/SearchUrlBuilder.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/storage/SearchEngineReader.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/telemetry/SerpTelemetryRepository.kt
- mobile/android/android-components/components/feature/search/src/test/java/mozilla/components/feature/search/telemetry/BaseSearchTelemetryTest.kt
- mobile/android/android-components/components/feature/search/src/test/java/mozilla/components/feature/search/telemetry/SerpTelemetryRepositoryTest.kt
- mobile/android/android-components/components/feature/toolbar/src/main/java/mozilla/components/feature/toolbar/ToolbarPresenter.kt
- mobile/android/android-components/components/service/nimbus/src/main/java/mozilla/components/service/nimbus/messaging/NimbusMessagingController.kt
- mobile/android/android-components/components/service/nimbus/src/main/java/mozilla/components/service/nimbus/messaging/NimbusMessagingStorage.kt
- mobile/android/android-components/components/support/ktx/src/main/java/mozilla/components/support/ktx/android/content/Context.kt
- mobile/android/android-components/components/support/ktx/src/main/java/mozilla/components/support/ktx/kotlin/String.kt
- mobile/android/android-components/components/support/remotesettings/src/main/java/mozilla/components/support/remotesettings/RemoteSettingsClient.kt
- + mobile/android/android-components/components/support/utils/src/main/java/mozilla/components/support/utils/TorUtils.kt
- mobile/android/android-components/components/support/webextensions/src/main/java/mozilla/components/support/webextensions/WebExtensionSupport.kt
- + mobile/android/android-components/components/ui/icons/src/main/res/drawable/mozac_ic_onion.xml
- mobile/android/android-components/plugins/config/src/main/java/ConfigPlugin.kt
- mobile/android/android-components/samples/browser/src/main/res/layout/activity_installed_add_on_details.xml
- + mobile/android/app/000-tor-browser-android.js
- mobile/android/app/geckoview-prefs.js
- mobile/android/app/moz.build
- + mobile/android/basebrowser.configure
- mobile/android/branding/beta/locales/jar.mn
- mobile/android/branding/nightly/locales/jar.mn
- mobile/android/branding/official/locales/jar.mn
- mobile/android/branding/unofficial/locales/jar.mn
- mobile/android/confvars.sh
- mobile/android/exoplayer2/src/main/java/org/mozilla/thirdparty/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java
- mobile/android/fenix/.buildconfig.yml
- mobile/android/fenix/app/build.gradle
- mobile/android/fenix/app/lint-baseline.xml
- mobile/android/fenix/app/onboarding.fml.yaml
- mobile/android/fenix/app/proguard-rules.pro
- + mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/AppStartupTest.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/onboarding/view/OnboardingMapperTest.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/BrowserRobot.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuAboutRobot.kt
- + mobile/android/fenix/app/src/beta/ic_launcher-playstore.png
- + mobile/android/fenix/app/src/beta/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/beta/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/beta/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/beta/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/beta/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/beta/res/drawable/ic_launcher_monochrome_foreground.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml → mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_round.webp
- + mobile/android/fenix/app/src/beta/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/beta/res/values/static_strings.xml
- mobile/android/fenix/app/src/beta/res/xml/shortcuts.xml
- − mobile/android/fenix/app/src/debug/ic_launcher-web.webp
- + mobile/android/fenix/app/src/debug/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/debug/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/debug/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/debug/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/debug/res/drawable/ic_launcher_monochrome_foreground.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/values/colors.xml
- + mobile/android/fenix/app/src/debug/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/debug/res/xml/shortcuts.xml
- mobile/android/fenix/app/src/main/AndroidManifest.xml
- + mobile/android/fenix/app/src/main/assets/common/torrc-defaults
- − mobile/android/fenix/app/src/main/assets/searchplugins/reddit.xml
- − mobile/android/fenix/app/src/main/assets/searchplugins/youtube.xml
- − mobile/android/fenix/app/src/main/ic_launcher-web.webp
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/BrowserDirection.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/IntentReceiverActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/addons/InstalledAddonDetailsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/OpenInAppOnboardingObserver.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Analytics.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Components.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Core.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/FenixSnackbar.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NimbusComponents.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NotificationManager.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/TorBrowserFeatures.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/UseCases.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuNavigationMiddleware.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/AdjustMetricsService.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/GleanMetricsService.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/MetricController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/MetricsUtils.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserMenuSignIn.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarCFRPresenter.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/CustomTabToolbarMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/PoweredByNotification.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/downloads/dialog/DynamicDownloadDialog.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/experiments/view/ResearchSurfaceSurvey.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Activity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/gecko/GeckoProvider.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenuView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/intent/HomeDeepLinkIntentProcessor.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/pocket/PocketStoriesComposables.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentsyncedtabs/view/RecentSyncedTab.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/PrivateBrowsingDescriptionViewHolder.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/PagerIndicator.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/TopSiteItemViewHolder.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/TopSites.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyCompleted.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyHeader.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyRequestPrompt.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/FenixOnboarding.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/ReEngagementNotificationWorker.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/OnboardingPage.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/OnboardingScreen.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/UpgradeOnboarding.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/SearchDialogFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/awesomebar/AwesomeBarView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/HttpsOnlyFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/PhoneFeature.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SettingsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SupportUtils.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/TabsSettingsFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/TorBridgeConfigFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/TorSecurityLevelFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/about/AboutFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/AccountUiView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/advanced/DefaultLocaleSettingsController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/advanced/LocaleSettingsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/view/SavedLoginsListView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/QuickSettingsSheetDialogFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/ProtectionsView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerDetailsController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerDetailsInteractor.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerHandlingDetailsView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannersStorageExt.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/sitepermissions/SitePermissionsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/sitepermissions/SitePermissionsManagePhoneFeatureFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/SaveToPDFMiddleware.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/NoAnalysis.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/ReviewQualityCheckContextualOnboarding.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shortcut/PwaOnboardingObserver.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabLayoutMediator.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayBanner.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsList.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/ConnectAssistUiState.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/QuickStartPreference.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/SecurityLevel.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBootstrapStatus.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBridgeTransports.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorController.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorControllerGV.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorLog.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorLogsComposeFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorLogsViewModel.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/trackingprotection/ProtectionsStore.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/NotificationBase.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/gecko/search/SearchWidgetProvider.kt
- + mobile/android/fenix/app/src/main/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-hdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-hdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-mdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-mdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night/onboarding_ctd_default_browser.xml
- mobile/android/fenix/app/src/main/res/drawable-v23/splash_screen.xml
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/main/res/drawable/browser_location.xml
- + mobile/android/fenix/app/src/main/res/drawable/connect.xml
- + mobile/android/fenix/app/src/main/res/drawable/connect_broken.xml
- + mobile/android/fenix/app/src/main/res/drawable/globe_broken.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_account.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_account_warning.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_favorite.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_firefox.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_fx_accounts_avatar.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_launcher_foreground.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_launcher_monochrome.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_notification_permission.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_key_features.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_key_features_icons_only.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_search_widget.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_sync.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_welcome.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_onion_pattern.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_pocket.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_scan.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_screenshot.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_sign_in.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_signed_out.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_status_logo.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_sync_disconnected.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_synced_tabs.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_tor_config_bridge.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_tor_network_settings.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_wordmark_logo.webp
- − mobile/android/fenix/app/src/main/res/drawable/ic_wordmark_text_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable/ic_wordmark_text_private.webp
- − mobile/android/fenix/app/src/main/res/drawable/microsurvey_success.xml
- + mobile/android/fenix/app/src/main/res/drawable/new_circuit.xml
- − mobile/android/fenix/app/src/main/res/drawable/onboarding_ctd_default_browser.xml
- − mobile/android/fenix/app/src/main/res/drawable/onboarding_ctd_notification.xml
- − mobile/android/fenix/app/src/main/res/drawable/onboarding_ctd_sync.xml
- − mobile/android/fenix/app/src/main/res/drawable/pocket_vector.xml
- mobile/android/fenix/app/src/main/res/drawable/progress_gradient.xml
- mobile/android/fenix/app/src/main/res/drawable/pager_dot.xml → mobile/android/fenix/app/src/main/res/drawable/rounded_corners.xml
- mobile/android/fenix/app/src/main/res/drawable-night/ic_logo_wordmark_normal.xml → mobile/android/fenix/app/src/main/res/drawable/tor_bootstrap_background_gradient.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml → mobile/android/fenix/app/src/main/res/drawable/tor_onboarding_donate_gradient.xml
- mobile/android/fenix/app/src/main/res/drawable/onboarding_popup_shape.xml → mobile/android/fenix/app/src/main/res/drawable/tor_onboarding_donate_rounded_corners.xml
- mobile/android/fenix/app/src/main/res/layout/component_cookie_banner_details_panel.xml
- mobile/android/fenix/app/src/main/res/layout/component_tabstray2.xml
- mobile/android/fenix/app/src/main/res/layout/fenix_snackbar.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_about.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_create_shortcut.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_home.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_locale_settings.xml
- + mobile/android/fenix/app/src/main/res/layout/fragment_tor_connection_assist.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_turn_on_sync.xml
- mobile/android/fenix/app/src/main/res/layout/onboarding_inactive_tabs_cfr.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_private.xml → mobile/android/fenix/app/src/main/res/layout/preference_quick_start.xml
- mobile/android/fenix/app/src/main/res/layout/quicksettings_permissions.xml
- mobile/android/fenix/app/src/main/res/layout/quicksettings_protections_panel.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_extra_small_v1.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_extra_small_v2.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_large.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_medium.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_small.xml
- mobile/android/fenix/app/src/main/res/layout/sign_in_preference.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_alternative.xml
- − mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_private_round.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round_alternative.xml
- − mobile/android/fenix/app/src/main/res/mipmap-hdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-mdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xhdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml
- mobile/android/fenix/app/src/main/res/values-night-v27/styles.xml
- mobile/android/fenix/app/src/main/res/values-night/styles.xml
- mobile/android/fenix/app/src/main/res/values-v24/styles.xml
- mobile/android/fenix/app/src/main/res/values-v27/styles.xml
- mobile/android/fenix/app/src/main/res/values/attrs.xml
- mobile/android/fenix/app/src/main/res/values/colors.xml
- + mobile/android/fenix/app/src/main/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/main/res/values/preference_keys.xml
- mobile/android/fenix/app/src/main/res/values/static_strings.xml
- mobile/android/fenix/app/src/main/res/values/styles.xml
- + mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
- mobile/android/fenix/app/src/main/res/xml/logins_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/preferences.xml
- mobile/android/fenix/app/src/main/res/xml/private_browsing_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/search_settings_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/shortcuts.xml
- mobile/android/fenix/app/src/main/res/xml/site_permissions_details_exceptions_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/site_permissions_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/sync_problem.xml
- + mobile/android/fenix/app/src/main/res/xml/tor_bridge_config_preferences.xml
- + mobile/android/fenix/app/src/main/res/xml/tor_security_level_preferences.xml
- + mobile/android/fenix/app/src/nightly/ic_launcher-playstore.png
- + mobile/android/fenix/app/src/nightly/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/nightly/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-hdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-hdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-mdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-mdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/nightly/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/nightly/res/drawable/ic_launcher_monochrome_foreground.xml
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_wordmark_logo.webp
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_wordmark_text_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_wordmark_text_private.webp
- − mobile/android/fenix/app/src/nightly/res/ic_launcher-web.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_round.webp
- + mobile/android/fenix/app/src/nightly/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/nightly/res/values/static_strings.xml
- mobile/android/fenix/app/src/nightly/res/xml/shortcuts.xml
- + mobile/android/fenix/app/src/release/ic_launcher-playstore.png
- + mobile/android/fenix/app/src/release/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/release/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/release/res/drawable-hdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/release/res/drawable-hdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/release/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/release/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/release/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/release/res/drawable/ic_launcher_monochrome_foreground.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_round.webp
- + mobile/android/fenix/app/src/release/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/release/res/values/static_strings.xml
- mobile/android/fenix/app/src/release/res/xml/shortcuts.xml
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuNavigationMiddlewareTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/metrics/MetricsUtilsTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/ContextTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/HomeMenuViewTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/onboarding/view/OnboardingMapperTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/onboarding/view/OnboardingPageUiDataTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/SupportUtilsTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/ProtectionsViewTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/QuickSettingsSheetDialogFragmentTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerHandlingDetailsViewTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/DefaultCookieBannerDetailsControllerTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/share/viewholders/AppViewHolderTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/trackingprotection/ProtectionsStoreTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/utils/SettingsTest.kt
- mobile/android/fenix/build.gradle
- mobile/android/fenix/plugins/fenixdependencies/src/main/java/FenixDependenciesPlugin.kt
- + mobile/android/fenix/tools/tba-fetch-deps.sh
- + mobile/android/fenix/tools/tba-sign-devbuilds.sh
- mobile/android/geckoview/api.txt
- mobile/android/geckoview/build.gradle
- − mobile/android/geckoview/src/androidTest/java/org/mozilla/geckoview/test/VideoCaptureTest.kt
- mobile/android/geckoview/src/main/AndroidManifest.xml
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV21.java
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/ProxySelector.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/CrashReporter.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntime.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntimeSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorIntegrationAndroid.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebExtensionController.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebRequest.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/androidlegacysettings/Prefs.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/androidlegacysettings/TorLegacyAndroidSettings.java
- mobile/android/gradle/with_gecko_binaries.gradle
- mobile/android/installer/package-manifest.in
- mobile/android/moz.configure
- mobile/android/shared-settings.gradle
- mobile/shared/chrome/geckoview/geckoview.js
- mobile/shared/components/geckoview/GeckoViewStartup.sys.mjs
- mobile/shared/modules/geckoview/GeckoViewContent.sys.mjs
- mobile/shared/modules/geckoview/GeckoViewProgress.sys.mjs
- mobile/shared/modules/geckoview/GeckoViewWebExtension.sys.mjs
- modules/libpref/Preferences.cpp
- modules/libpref/init/StaticPrefList.yaml
- modules/libpref/init/all.js
- moz.configure
- + mozconfig-android-aarch64
- + mozconfig-android-all
- + mozconfig-android-armv7
- + mozconfig-android-x86
- + mozconfig-android-x86_64
- + mozconfig-linux-aarch64
- + mozconfig-linux-aarch64-dev
- + mozconfig-linux-arm
- + mozconfig-linux-i686
- + mozconfig-linux-x86_64
- + mozconfig-linux-x86_64-asan
- + mozconfig-linux-x86_64-dev
- + mozconfig-macos
- + mozconfig-macos-dev
- + mozconfig-windows-i686
- + mozconfig-windows-x86_64
- netwerk/base/nsNetUtil.cpp
- netwerk/base/nsSocketTransport2.cpp
- netwerk/build/components.conf
- netwerk/build/nsNetCID.h
- + netwerk/dns/IOnionAliasService.idl
- + netwerk/dns/OnionAliasService.cpp
- + netwerk/dns/OnionAliasService.h
- netwerk/dns/effective_tld_names.dat
- netwerk/dns/moz.build
- netwerk/protocol/http/HttpBaseChannel.cpp
- netwerk/protocol/http/nsHttpHandler.cpp
- netwerk/protocol/http/nsHttpNTLMAuth.cpp
- netwerk/sctp/src/moz.build
- netwerk/sctp/src/netinet/sctp_cc_functions.c
- netwerk/sctp/src/netinet/sctp_indata.c
- netwerk/sctp/src/netinet/sctp_input.c
- netwerk/sctp/src/netinet/sctp_output.c
- netwerk/sctp/src/netinet/sctp_usrreq.c
- netwerk/sctp/src/netinet/sctputil.c
- netwerk/sctp/src/user_mbuf.c
- netwerk/sctp/src/user_socket.c
- netwerk/socket/nsSOCKSIOLayer.cpp
- netwerk/system/android/nsAndroidNetworkLinkService.cpp
- netwerk/system/linux/nsNetworkLinkService.cpp
- netwerk/system/mac/nsNetworkLinkService.mm
- netwerk/system/netlink/NetlinkService.cpp
- netwerk/system/win32/nsNotifyAddrListener.cpp
- netwerk/url-classifier/UrlClassifierFeatureBase.cpp
- netwerk/url-classifier/components.conf
- python/mach/mach/site.py
- python/mozbuild/mozbuild/action/node.py
- python/mozbuild/mozbuild/artifacts.py
- python/mozbuild/mozbuild/mach_commands.py
- python/mozlint/mozlint/cli.py
- security/certverifier/CertVerifier.cpp
- security/manager/ssl/NSSSocketControl.cpp
- security/manager/ssl/RemoteSecuritySettings.sys.mjs
- security/manager/ssl/SSLServerCertVerification.cpp
- security/manager/ssl/SSLServerCertVerification.h
- security/manager/ssl/StaticHPKPins.h
- security/manager/ssl/nsSecureBrowserUI.cpp
- security/moz.build
- security/nss/lib/certhigh/ocsp.c
- security/nss/lib/libpkix/pkix_pl_nss/module/pkix_pl_socket.c
- security/nss/lib/mozpkix/include/pkix/Result.h
- security/nss/lib/mozpkix/include/pkix/pkixnss.h
- security/nss/lib/ssl/Makefile
- security/sandbox/common/SandboxUtils.sys.mjs
- services/settings/Attachments.sys.mjs
- services/settings/IDBHelpers.sys.mjs
- services/settings/RemoteSettingsClient.sys.mjs
- services/settings/dumps/gen_last_modified.py
- services/settings/dumps/main/moz.build
- services/settings/remote-settings.sys.mjs
- services/settings/servicesSettings.manifest
- services/settings/static-dumps/main/moz.build
- + services/settings/static-dumps/main/query-stripping.json
- services/sync/components.conf
- testing/mozbase/mozinstall/mozinstall/mozinstall.py
- testing/mozbase/setup_development.py
- testing/mozharness/scripts/does_it_crash.py
- third_party/libwebrtc/modules/audio_coding/codecs/isac/main/source/os_specific_inline.h
- third_party/libwebrtc/modules/desktop_capture/desktop_capture_types.h
- third_party/libwebrtc/modules/desktop_capture/win/desktop_capture_utils.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capture_session.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capturer_win.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capturer_win.h
- third_party/libwebrtc/modules/video_capture/windows/device_info_ds.h
- third_party/libwebrtc/rtc_base/platform_thread_types.cc
- third_party/libwebrtc/rtc_base/socket.h
- third_party/libwebrtc/rtc_base/system/file_wrapper.cc
- third_party/libwebrtc/rtc_base/win/create_direct3d_device.h
- third_party/sipcc/cpr_win_types.h
- third_party/sipcc/sdp_token.c
- toolkit/.eslintrc.js
- toolkit/actors/AboutHttpsOnlyErrorParent.sys.mjs
- + toolkit/actors/FilesFilterChild.sys.mjs
- + toolkit/actors/FilesFilterParent.sys.mjs
- toolkit/actors/NetErrorChild.sys.mjs
- toolkit/actors/NetErrorParent.sys.mjs
- toolkit/actors/moz.build
- toolkit/components/antitracking/antitracking.manifest
- toolkit/components/antitracking/components.conf
- toolkit/components/downloads/DownloadCore.sys.mjs
- toolkit/components/downloads/DownloadIntegration.sys.mjs
- toolkit/components/extensions/Extension.sys.mjs
- toolkit/components/extensions/ExtensionParent.sys.mjs
- toolkit/components/httpsonlyerror/content/errorpage.js
- + toolkit/components/lox/Lox.sys.mjs
- + toolkit/components/lox/content/lox_wasm_bg.wasm
- + toolkit/components/lox/jar.mn
- + toolkit/components/lox/lox_wasm.jsm
- + toolkit/components/lox/moz.build
- toolkit/components/moz.build
- toolkit/components/places/PlacesUtils.sys.mjs
- toolkit/components/remotebrowserutils/RemoteWebNavigation.sys.mjs
- toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
- + toolkit/components/resistfingerprinting/content/letterboxing.css
- toolkit/components/resistfingerprinting/jar.mn
- toolkit/components/search/AppProvidedSearchEngine.sys.mjs
- toolkit/components/search/SearchEngine.sys.mjs
- toolkit/components/search/SearchService.sys.mjs
- + toolkit/components/search/content/duckduckgo.ico
- + toolkit/components/search/content/startpage.png
- + toolkit/components/search/content/torBrowserSearchEngineIcons.json
- + toolkit/components/search/content/torBrowserSearchEngines.json
- + toolkit/components/search/content/wikipedia.ico
- + toolkit/components/search/jar.mn
- toolkit/components/search/moz.build
- + toolkit/components/securitylevel/SecurityLevel.manifest
- + toolkit/components/securitylevel/SecurityLevel.sys.mjs
- + toolkit/components/securitylevel/components.conf
- + toolkit/components/securitylevel/moz.build
- toolkit/components/shopping/jar.mn
- toolkit/components/telemetry/app/TelemetrySend.sys.mjs
- toolkit/components/telemetry/moz.build
- + toolkit/components/tor-launcher/TorBootstrapRequest.sys.mjs
- + toolkit/components/tor-launcher/TorControlPort.sys.mjs
- + toolkit/components/tor-launcher/TorDomainIsolator.sys.mjs
- + toolkit/components/tor-launcher/TorLauncherUtil.sys.mjs
- + toolkit/components/tor-launcher/TorParsers.sys.mjs
- + toolkit/components/tor-launcher/TorProcess.sys.mjs
- + toolkit/components/tor-launcher/TorProcessAndroid.sys.mjs
- + toolkit/components/tor-launcher/TorProvider.sys.mjs
- + toolkit/components/tor-launcher/TorProviderBuilder.sys.mjs
- + toolkit/components/tor-launcher/TorStartupService.sys.mjs
- + toolkit/components/tor-launcher/components.conf
- + toolkit/components/tor-launcher/moz.build
- + toolkit/components/tor-launcher/tor-launcher.manifest
- + toolkit/components/torconnect/TorConnectChild.sys.mjs
- + toolkit/components/torconnect/TorConnectParent.sys.mjs
- + toolkit/components/torconnect/content/aboutTorConnect.css
- + toolkit/components/torconnect/content/aboutTorConnect.html
- + toolkit/components/torconnect/content/aboutTorConnect.js
- + toolkit/components/torconnect/content/arrow-right.svg
- + toolkit/components/torconnect/content/bridge.svg
- + toolkit/components/torconnect/content/connection-failure.svg
- + toolkit/components/torconnect/content/connection-location.svg
- + toolkit/components/torconnect/content/tor-connect-broken.svg
- + toolkit/components/torconnect/content/tor-connect.svg
- + toolkit/components/torconnect/content/tor-not-connected-to-connected-animated.svg
- + toolkit/components/torconnect/content/torConnectTitlebarStatus.css
- + toolkit/components/torconnect/content/torConnectTitlebarStatus.js
- + toolkit/components/torconnect/content/torConnectUrlbarButton.js
- + toolkit/components/torconnect/jar.mn
- + toolkit/components/torconnect/moz.build
- toolkit/components/windowwatcher/nsWindowWatcher.cpp
- toolkit/content/.eslintrc.js
- toolkit/content/aboutNetError.html
- toolkit/content/aboutNetError.mjs
- toolkit/content/jar.mn
- toolkit/content/license.html
- + toolkit/content/pt_config.json
- toolkit/content/widgets/infobar.css
- toolkit/content/widgets/moz-message-bar/moz-message-bar.mjs
- toolkit/content/widgets/moz-support-link/moz-support-link.mjs
- toolkit/content/widgets/moz-toggle/moz-toggle.mjs
- toolkit/content/widgets/notificationbox.js
- + toolkit/locales-preview/base-browser-no-translate.ftl
- + toolkit/locales-preview/tor-browser-no-translate.ftl
- + toolkit/locales/en-US/toolkit/global/base-browser.ftl
- + toolkit/locales/en-US/toolkit/global/tor-browser.ftl
- toolkit/locales/jar.mn
- toolkit/modules/ActorManagerParent.sys.mjs
- toolkit/modules/AppConstants.sys.mjs
- + toolkit/modules/Bech32Decode.sys.mjs
- + toolkit/modules/BridgeDB.sys.mjs
- + toolkit/modules/DomainFrontedRequests.sys.mjs
- + toolkit/modules/DragDropFilter.sys.mjs
- toolkit/modules/FinderParent.sys.mjs
- + toolkit/modules/Moat.sys.mjs
- toolkit/modules/PopupNotifications.sys.mjs
- + toolkit/modules/QRCode.sys.mjs
- toolkit/modules/RemotePageAccessManager.sys.mjs
- + toolkit/modules/TorAndroidIntegration.sys.mjs
- + toolkit/modules/TorConnect.sys.mjs
- + toolkit/modules/TorSettings.sys.mjs
- + toolkit/modules/TorStrings.sys.mjs
- toolkit/modules/UpdateUtils.sys.mjs
- toolkit/modules/moz.build
- toolkit/moz.build
- toolkit/mozapps/extensions/AddonManager.sys.mjs
- toolkit/mozapps/extensions/components.conf
- toolkit/mozapps/extensions/content/aboutaddons.html
- toolkit/mozapps/extensions/content/aboutaddons.js
- toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
- toolkit/mozapps/extensions/internal/XPIInstall.sys.mjs
- toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs
- toolkit/mozapps/extensions/test/browser/head.js
- toolkit/mozapps/extensions/test/xpcshell/head_addons.js
- toolkit/mozapps/update/UpdateService.sys.mjs
- toolkit/mozapps/update/UpdateServiceStub.sys.mjs
- toolkit/mozapps/update/common/updatehelper.cpp
- toolkit/mozapps/update/updater/launchchild_osx.mm
- toolkit/mozapps/update/updater/moz.build
- toolkit/mozapps/update/updater/nightly_aurora_level3_primary.der
- toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der
- toolkit/mozapps/update/updater/release_primary.der
- toolkit/mozapps/update/updater/release_secondary.der
- toolkit/mozapps/update/updater/updater.cpp
- toolkit/themes/shared/aboutNetError.css
- toolkit/themes/shared/desktop-jar.inc.mn
- toolkit/themes/shared/findbar.css
- + toolkit/themes/shared/icons/onion-site.svg
- + toolkit/themes/shared/icons/onion-slash.svg
- + toolkit/themes/shared/icons/onion-warning.svg
- + toolkit/themes/shared/icons/tor-dark-loading.png
- + toolkit/themes/shared/icons/tor-dark-loading(a)2x.png
- + toolkit/themes/shared/icons/tor-light-loading.png
- + toolkit/themes/shared/icons/tor-light-loading(a)2x.png
- + toolkit/themes/shared/icons/torbrowser.png
- toolkit/themes/shared/minimal-toolkit.jar.inc.mn
- + toolkit/themes/shared/onion-pattern.css
- + toolkit/themes/shared/onion-pattern.svg
- + toolkit/themes/shared/tor-colors.css
- + toolkit/torbutton/chrome/locale/en-US/onionLocation.properties
- + toolkit/torbutton/chrome/locale/en-US/settings.properties
- + toolkit/torbutton/chrome/locale/en-US/torConnect.properties
- + toolkit/torbutton/chrome/locale/en-US/torlauncher.properties
- + toolkit/torbutton/jar.mn
- + toolkit/torbutton/moz.build
- toolkit/xre/LauncherRegistryInfo.cpp
- toolkit/xre/MacLaunchHelper.h
- toolkit/xre/MacLaunchHelper.mm
- toolkit/xre/MacRunFromDmgUtils.mm
- toolkit/xre/ProfileReset.cpp
- toolkit/xre/dllservices/mozglue/WindowsDllBlocklist.cpp
- toolkit/xre/nsAppRunner.cpp
- toolkit/xre/nsIXREDirProvider.idl
- toolkit/xre/nsUpdateDriver.cpp
- toolkit/xre/nsXREDirProvider.cpp
- toolkit/xre/nsXREDirProvider.h
- + tools/base-browser/git-rebase-fixup-preprocessor
- + tools/base-browser/l10n/combine-translation-versions.py
- + tools/base-browser/l10n/combine/__init__.py
- + tools/base-browser/l10n/combine/combine.py
- + tools/base-browser/l10n/combine/tests/README
- + tools/base-browser/l10n/combine/tests/__init__.py
- + tools/base-browser/l10n/combine/tests/test_android.py
- + tools/base-browser/l10n/combine/tests/test_dtd.py
- + tools/base-browser/l10n/combine/tests/test_fluent.py
- + tools/base-browser/l10n/combine/tests/test_properties.py
- + tools/base-browser/tb-dev
- + tools/geckoview/.gitignore
- + tools/geckoview/Makefile
- + tools/geckoview/android-env-linux-template.sh
- + tools/geckoview/android-env-macos-template.sh
- + tools/geckoview/build-fenix.sh
- + tools/geckoview/build-geckoview.sh
- + tools/geckoview/clobber.sh
- + tools/geckoview/config.sh
- + tools/geckoview/jslint.sh
- tools/lint/fluent-lint/exclusions.yml
- + tools/torbrowser/Makefile
- + tools/torbrowser/browser-self-sign-macos.sh
- + tools/torbrowser/build.sh
- + tools/torbrowser/clobber.sh
- + tools/torbrowser/config.sh
- + tools/torbrowser/deploy.sh
- + tools/torbrowser/fetch.sh
- + tools/torbrowser/generate-bugzilla-triage-csv.sh
- + tools/torbrowser/generate_tor_loading_png.py
- + tools/torbrowser/ide.sh
- + tools/torbrowser/jslint.sh
- + tools/torbrowser/l10n/migrate.py
- + tools/torbrowser/l10n/migrations/__init__.py
- + tools/torbrowser/l10n/migrations/bug-41333-new-about-tor.py
- + tools/torbrowser/l10n/migrations/bug-41622-neterror.py
- + tools/torbrowser/l10n/migrations/bug-41820-moz-message-bar-download-warning.py
- + tools/torbrowser/l10n/migrations/bug-42202-crypto-safety.py
- + tools/torbrowser/l10n/migrations/bug-42203-about-dialog.py
- + tools/torbrowser/l10n/migrations/bug-42206-rulesets.py
- + tools/torbrowser/l10n/migrations/bug-42207-settings.py
- + tools/torbrowser/l10n/migrations/bug-42209-tor-circuit.py
- + tools/torbrowser/l10n/migrations/bug-42210-download-warning.py
- + tools/torbrowser/l10n/migrations/bug-42211-new-identity.py
- + tools/torbrowser/l10n/migrations/bug-42212-onion-services.py
- + tools/torbrowser/l10n/migrations/bug-42214-security-level.py
- + tools/torbrowser/update_emojis.py
- tools/update-packaging/common.sh
- tools/update-packaging/make_full_update.sh
- tools/update-packaging/make_incremental_update.sh
- uriloader/base/nsDocLoader.cpp
- uriloader/base/nsURILoader.cpp
- uriloader/exthandler/nsExternalHelperAppService.cpp
- widget/ScrollbarDrawingWin.cpp
- widget/ScrollbarDrawingWin11.cpp
- widget/android/WebExecutorSupport.cpp
- widget/gtk/MPRISServiceHandler.cpp
- widget/gtk/WidgetUtilsGtk.cpp
- widget/windows/WinTaskbar.cpp
- widget/windows/nsDataObj.cpp
- xpcom/base/ErrorList.py
- xpcom/ds/StaticAtoms.py
- xpcom/io/CocoaFileUtils.mm
- xpcom/io/nsAppFileLocationProvider.cpp
- xpfe/appshell/AppWindow.cpp
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/4cd410…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/4cd410…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser-update-responses][main] 4 commits: alpha: new version, 14.5a4 (linux-x86_64)
by boklm (@boklm) 12 Mar '25
by boklm (@boklm) 12 Mar '25
12 Mar '25
boklm pushed to branch main at The Tor Project / Applications / mullvad-browser-update-responses
Commits:
76dc90bb by Nicolas Vigier at 2025-03-12T17:09:29+01:00
alpha: new version, 14.5a4 (linux-x86_64)
- - - - -
3f0625ea by Nicolas Vigier at 2025-03-12T17:09:29+01:00
alpha: new version, 14.5a4 (macos)
- - - - -
3bb21bd6 by Nicolas Vigier at 2025-03-12T17:09:29+01:00
alpha: new version, 14.5a4 (windows-x86_64)
- - - - -
b8494994 by Nicolas Vigier at 2025-03-12T17:09:29+01:00
alpha: new version, 14.5a4
- - - - -
35 changed files:
- update_1/alpha/.htaccess
- − update_1/alpha/14.0a10-14.5a3-linux-x86_64-ALL.xml
- − update_1/alpha/14.0a10-14.5a3-macos-ALL.xml
- − update_1/alpha/14.0a10-14.5a3-windows-x86_64-ALL.xml
- − update_1/alpha/14.5a1-14.5a3-linux-x86_64-ALL.xml
- − update_1/alpha/14.5a1-14.5a3-macos-ALL.xml
- − update_1/alpha/14.5a1-14.5a3-windows-x86_64-ALL.xml
- − update_1/alpha/14.5a2-14.5a3-linux-x86_64-ALL.xml
- − update_1/alpha/14.5a2-14.5a3-macos-ALL.xml
- − update_1/alpha/14.5a2-14.5a3-windows-x86_64-ALL.xml
- − update_1/alpha/14.5a3-linux-x86_64-ALL.xml
- − update_1/alpha/14.5a3-macos-ALL.xml
- − update_1/alpha/14.5a3-windows-x86_64-ALL.xml
- update_1/alpha/download-linux-x86_64.json
- update_1/alpha/download-macos.json
- update_1/alpha/download-windows-x86_64.json
- update_1/alpha/downloads.json
- + update_1/alpha/linux-x86_64/.htaccess
- + update_1/alpha/linux-x86_64/14.5a1-14.5a4-linux-x86_64.xml
- + update_1/alpha/linux-x86_64/14.5a2-14.5a4-linux-x86_64.xml
- + update_1/alpha/linux-x86_64/14.5a3-14.5a4-linux-x86_64.xml
- + update_1/alpha/linux-x86_64/14.5a4-linux-x86_64.xml
- update_1/alpha/no-update.xml → update_1/alpha/linux-x86_64/no-update.xml
- + update_1/alpha/macos/.htaccess
- + update_1/alpha/macos/14.5a1-14.5a4-macos.xml
- + update_1/alpha/macos/14.5a2-14.5a4-macos.xml
- + update_1/alpha/macos/14.5a3-14.5a4-macos.xml
- + update_1/alpha/macos/14.5a4-macos.xml
- + update_1/alpha/macos/no-update.xml
- + update_1/alpha/windows-x86_64/.htaccess
- + update_1/alpha/windows-x86_64/14.5a1-14.5a4-windows-x86_64.xml
- + update_1/alpha/windows-x86_64/14.5a2-14.5a4-windows-x86_64.xml
- + update_1/alpha/windows-x86_64/14.5a3-14.5a4-windows-x86_64.xml
- + update_1/alpha/windows-x86_64/14.5a4-windows-x86_64.xml
- + update_1/alpha/windows-x86_64/no-update.xml
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser-update-respo…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser-update-respo…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] 3 commits: fixup! [android] TBA strings
by morgan (@morgan) 12 Mar '25
by morgan (@morgan) 12 Mar '25
12 Mar '25
morgan pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
29cda346 by Henry Wilkes at 2025-03-12T13:22:23+00:00
fixup! [android] TBA strings
TB 43490: Use lower case "n" for "Tor network".
TB 43091: Also drop unused strings: preferences_tor_network_settings,
tor_bootstrap_quick_start_disabled, tor_bootstrap_quick_start_enabled.
- - - - -
31e3f408 by Henry Wilkes at 2025-03-12T13:22:23+00:00
fixup! Tor Browser strings
TB 43490: Use lower case "n" for "Tor network".
- - - - -
b3637248 by Henry Wilkes at 2025-03-12T13:22:23+00:00
fixup! Add TorStrings module for localization
TB 43490: Use lower case "n" for "Tor network".
- - - - -
4 changed files:
- mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
- toolkit/locales/en-US/toolkit/global/tor-browser.ftl
- toolkit/modules/TorStrings.sys.mjs
- toolkit/torbutton/chrome/locale/en-US/settings.properties
Changes:
=====================================
mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
=====================================
@@ -16,8 +16,6 @@
<string name="tor_bootstrap_connecting">Connecting</string>
<string name="tor_bootstrap_connecting_failed">Connecting Failed</string>
<string name="tor_bootstrap_quick_start_label">Quick Start</string>
- <string name="tor_bootstrap_quick_start_disabled">Enable Quick Start to connect automatically in the future</string>
- <string name="tor_bootstrap_quick_start_enabled">%s will connect automatically to the Tor Network in the future</string>
<string name="tor_bootstrap_swipe_for_logs">Swipe to the left to see Tor logs</string>
<string name="tor_initializing_log">Initializing Tor Log</string>
@@ -34,13 +32,12 @@
<string name="library_new_circuit">New circuit</string>
<string name="preferences_tor_connection_settings_title">Connection</string>
- <string name="preferences_tor_network_settings">Tor Network</string>
- <string name="preferences_tor_network_settings_explanation">Tor Browser routes your traffic over the Tor Network, run by thousands of volunteers around the world.</string>
+ <string name="preferences_tor_network_settings_explanation">Tor Browser routes your traffic over the Tor network, run by thousands of volunteers around the world.</string>
<string name="preferences_tor_network_settings_bridge_config">Config Bridge</string>
<string name="preferences_tor_network_settings_bridge_config_description">Use a Bridge to connect to Tor</string>
<string name="preferences_tor_network_settings_bridge_config_description_builtin_transport_enabled">You’re using a built-in bridge to connect to Tor</string>
<string name="preferences_tor_network_settings_bridge_config_description_user_provided_enabled">You provided a bridge to connect to Tor</string>
- <string name="preferences_tor_network_settings_bridge_config_explanation">Bridges are unlisted relays that make it more difficult to block connections to the Tor Network. Because of how certain countries try to block Tor, certain bridges work in certain countries but not others.</string>
+ <string name="preferences_tor_network_settings_bridge_config_explanation">Bridges are unlisted relays that make it more difficult to block connections to the Tor network. Because of how certain countries try to block Tor, certain bridges work in certain countries but not others.</string>
<string name="preferences_tor_network_settings_bridge_config_toggle">Use a Bridge</string>
<string name="preferences_tor_network_settings_bridge_config_toggle_description">Config a bridge to connect to Tor</string>
<string name="preferences_tor_network_settings_bridge_config_builtin_bridge_obfs4">obfs4</string>
=====================================
toolkit/locales/en-US/toolkit/global/tor-browser.ftl
=====================================
@@ -54,7 +54,7 @@ tor-connection-settings-heading = Connection
tor-connection-settings-category =
.tooltiptext = { tor-connection-settings-heading }
# -brand-short-name refers to 'Tor Browser', localized.
-tor-connection-overview = { -brand-short-name } routes your traffic over the Tor Network, run by thousands of volunteers around the world.
+tor-connection-overview = { -brand-short-name } routes your traffic over the Tor network, run by thousands of volunteers around the world.
tor-connection-browser-learn-more-link = Learn more
tor-connection-automatic-heading = Connect automatically
tor-connection-automatic-description = Automatically connect to the Tor network at launch using your current connection settings.
@@ -94,7 +94,7 @@ tor-connection-network-status-connect-button = Connect
## Tor Bridges Settings.
tor-bridges-heading = Bridges
-tor-bridges-overview = Bridges help you securely access the Tor Network in places where Tor is blocked. Depending on where you are, one bridge may work better than another.
+tor-bridges-overview = Bridges help you securely access the Tor network in places where Tor is blocked. Depending on where you are, one bridge may work better than another.
tor-bridges-learn-more-link = Learn more
# Toggle button for enabling and disabling the use of bridges.
@@ -480,8 +480,8 @@ about-dialog-help-out = Want to help? <label data-l10n-name="donate-link">Donate
# Link text for the Tor Project support page.
about-dialog-questions-link = Questions?
-# Link text for the Tor Project page for Tor Network relay operators.
-about-dialog-grow-tor-network-link = Help the Tor Network Grow!
+# Link text for the Tor Project page for Tor network relay operators.
+about-dialog-grow-tor-network-link = Help the Tor network Grow!
# Link text for the Tor Browser license page (about:license).
about-dialog-browser-license-link = Licensing Information
=====================================
toolkit/modules/TorStrings.sys.mjs
=====================================
@@ -69,7 +69,7 @@ const Loader = {
const strings = {
// Message box
torPreferencesDescription:
- "Tor Browser routes your traffic over the Tor Network, run by thousands of volunteers around the world.",
+ "Tor Browser routes your traffic over the Tor network, run by thousands of volunteers around the world.",
// Quickstart
quickstartCheckbox: "Always connect automatically",
bridgeLocation: "Your location",
=====================================
toolkit/torbutton/chrome/locale/en-US/settings.properties
=====================================
@@ -6,7 +6,7 @@
# Still used in TorConnect.
# Message box
-settings.torPreferencesDescription=Tor Browser routes your traffic over the Tor Network, run by thousands of volunteers around the world.
+settings.torPreferencesDescription=Tor Browser routes your traffic over the Tor network, run by thousands of volunteers around the world.
settings.quickstartCheckbox=Always connect automatically
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/3005b6…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/3005b6…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] fixup! Adding issue and merge request templates
by morgan (@morgan) 12 Mar '25
by morgan (@morgan) 12 Mar '25
12 Mar '25
morgan pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
3005b634 by Pier Angelo Vendrame at 2025-03-12T11:07:44+01:00
fixup! Adding issue and merge request templates
Change the uplift section in the MR template to upstream, and add
information about backporting as well.
- - - - -
1 changed file:
- .gitlab/merge_request_templates/default.md
Changes:
=====================================
.gitlab/merge_request_templates/default.md
=====================================
@@ -48,8 +48,11 @@
- [ ] **Localization**: typos and other localization changes that should be also in the release branch
- [ ] **Other**: please explain
-### Uplifting
+### Upstream
- [ ] Patchset is a candidate for uplift to Firefox
+- [ ] Patchset is a backport from Firefox
+ - Bugzilla link:
+ - Upstream commit:
### Issue Tracking
- [ ] Link resolved issues with appropriate [Release Prep issue](https://gitlab.torproject.org/groups/tpo/applications/-/issues/?sort… for changelog generation
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/3005b63…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/3005b63…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-115.21.0esr-13.5-1] fixup! Bug 7494: Create local home page for TBB.
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed to branch tor-browser-115.21.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
Commits:
2b5edd06 by Henry Wilkes at 2025-03-11T17:31:56+00:00
fixup! Bug 7494: Create local home page for TBB.
TB 43489: Add a survey banner in about:tor.
Backport to 13.5.
- - - - -
8 changed files:
- browser/components/BrowserGlue.sys.mjs
- browser/components/abouttor/AboutTorChild.sys.mjs
- browser/components/abouttor/AboutTorParent.sys.mjs
- + browser/components/abouttor/content/1f44b-waving-hand.svg
- browser/components/abouttor/content/aboutTor.css
- browser/components/abouttor/content/aboutTor.html
- browser/components/abouttor/content/aboutTor.js
- browser/components/abouttor/jar.mn
Changes:
=====================================
browser/components/BrowserGlue.sys.mjs
=====================================
@@ -502,6 +502,7 @@ let JSWINDOWACTORS = {
events: {
DOMContentLoaded: {},
SubmitSearchOnionize: { wantUntrusted: true },
+ SurveyDismissed: { wantUntrusted: true },
},
},
=====================================
browser/components/abouttor/AboutTorChild.sys.mjs
=====================================
@@ -26,6 +26,10 @@ export class AboutTorChild extends JSWindowActorChild {
case "SubmitSearchOnionize":
this.sendAsyncMessage("AboutTor:SetSearchOnionize", !!event.detail);
break;
+ case "SurveyDismissed":
+ // event.detail is the survey version.
+ this.sendAsyncMessage("AboutTor:SurveyDismissed", event.detail);
+ break;
}
}
}
=====================================
browser/components/abouttor/AboutTorParent.sys.mjs
=====================================
@@ -10,6 +10,8 @@ ChromeUtils.defineESModuleGetters(lazy, {
export class AboutTorParent extends JSWindowActorParent {
receiveMessage(message) {
const onionizePref = "torbrowser.homepage.search.onionize";
+ const surveyDismissVersionPref =
+ "torbrowser.homepage.survey.dismiss_version";
switch (message.name) {
case "AboutTor:GetInitialData":
return Promise.resolve({
@@ -17,10 +19,26 @@ export class AboutTorParent extends JSWindowActorParent {
messageData: lazy.AboutTorMessage.getNext(),
isStable: AppConstants.MOZ_UPDATE_CHANNEL === "release",
searchOnionize: Services.prefs.getBoolPref(onionizePref, false),
+ surveyDismissVersion: Services.prefs.getIntPref(
+ surveyDismissVersionPref,
+ 0
+ ),
});
case "AboutTor:SetSearchOnionize":
Services.prefs.setBoolPref(onionizePref, message.data);
break;
+ case "AboutTor:SurveyDismissed":
+ // The message.data contains the version of the current survey.
+ // Rather than introduce a new preference for each survey campaign we
+ // reuse the same integer preference and increase its value every time
+ // a new version of the survey is shown and dismissed by the user.
+ // I.e. if the preference value is 2, we will not show survey version 2
+ // but will show survey version 3 or higher when they are introduced.
+ // It should be safe to overwrite the value since we do not expect more
+ // than one active survey campaign at any given time, nor do we expect
+ // the version value to decrease.
+ Services.prefs.setIntPref(surveyDismissVersionPref, message.data);
+ break;
}
return undefined;
}
=====================================
browser/components/abouttor/content/1f44b-waving-hand.svg
=====================================
@@ -0,0 +1,3 @@
+<!-- FROM https://github.com/twitter/twemoji
+ - licensed under CC-BY 4.0: https://creativecommons.org/licenses/by/4.0/ -->
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#EF9645" d="M4.861 9.147c.94-.657 2.357-.531 3.201.166l-.968-1.407c-.779-1.111-.5-2.313.612-3.093 1.112-.777 4.263 1.312 4.263 1.312-.786-1.122-.639-2.544.483-3.331 1.122-.784 2.67-.513 3.456.611l10.42 14.72L25 31l-11.083-4.042L4.25 12.625c-.793-1.129-.519-2.686.611-3.478z"/><path fill="#FFDC5D" d="M2.695 17.336s-1.132-1.65.519-2.781c1.649-1.131 2.78.518 2.78.518l5.251 7.658c.181-.302.379-.6.6-.894L4.557 11.21s-1.131-1.649.519-2.78c1.649-1.131 2.78.518 2.78.518l6.855 9.997c.255-.208.516-.417.785-.622L7.549 6.732s-1.131-1.649.519-2.78c1.649-1.131 2.78.518 2.78.518l7.947 11.589c.292-.179.581-.334.871-.498L12.238 4.729s-1.131-1.649.518-2.78c1.649-1.131 2.78.518 2.78.518l7.854 11.454 1.194 1.742c-4.948 3.394-5.419 9.779-2.592 13.902.565.825 1.39.26 1.39.26-3.393-4.949-2.357-10.51 2.592-13.903L24.515 8.62s-.545-1.924 1.378-2.47c1.924-.545 2.47 1.379 2.47 1.379l1.685 5.004c.668 1.984 1.379 3.961 2.32 5.831 2.657 5.28 1.07 11.842-3.94 15.279-5.465 3.747-12.936 2.354-16.684-3.11L2.695 17.336z"/><g fill="#5DADEC"><path d="M12 32.042C8 32.042 3.958 28 3.958 24c0-.553-.405-1-.958-1s-1.042.447-1.042 1C1.958 30 6 34.042 12 34.042c.553 0 1-.489 1-1.042s-.447-.958-1-.958z"/><path d="M7 34c-3 0-5-2-5-5 0-.553-.447-1-1-1s-1 .447-1 1c0 4 3 7 7 7 .553 0 1-.447 1-1s-.447-1-1-1zM24 2c-.552 0-1 .448-1 1s.448 1 1 1c4 0 8 3.589 8 8 0 .552.448 1 1 1s1-.448 1-1c0-5.514-4-10-10-10z"/><path d="M29 .042c-.552 0-1 .406-1 .958s.448 1.042 1 1.042c3 0 4.958 2.225 4.958 4.958 0 .552.489 1 1.042 1s.958-.448.958-1C35.958 3.163 33 .042 29 .042z"/></g></svg>
=====================================
browser/components/abouttor/content/aboutTor.css
=====================================
@@ -12,6 +12,7 @@ body {
"tor-check tor-check tor-check" auto
". form ." min-content
"message message message" auto
+ "survey survey survey" auto
/* End space: unfilled.
* Reserve 150px for background image.
* NOTE: Since the body has "auto" height, the other "1fr" flex row will
@@ -48,18 +49,24 @@ h1 {
#tor-check {
grid-area: tor-check;
- max-width: var(--form-max-width);
- box-sizing: border-box;
display: flex;
gap: 10px;
align-items: center;
- padding-inline: 24px;
- padding-block: 12px;
+ padding-inline: 23px;
+ padding-block: 11px;
border-radius: 8px;
margin-block-start: 0;
margin-block-end: 30px;
}
+.tor-home-box {
+ border: 1px solid var(--in-content-box-border-color);
+ background-color: var(--in-content-box-info-background);
+ max-width: var(--form-max-width);
+ width: -moz-available;
+ box-sizing: border-box;
+}
+
body:not(.show-tor-check) #tor-check {
display: none;
}
@@ -82,8 +89,7 @@ body:not(.show-tor-check) #tor-check {
/* line-height and text-align are used when wrapping. */
line-height: 1.5;
text-align: center;
- margin-block-start: 1.6em;
- margin-block-end: 1em;
+ margin-block: 1.6em;
}
.message-emoji {
@@ -165,14 +171,101 @@ body:not(.show-tor-check) #tor-check {
}
+#survey {
+ grid-area: survey;
+ display: grid;
+ grid-template:
+ "icon heading close" min-content
+ "icon body close" auto
+ ". buttons buttons" min-content
+ / min-content 1fr min-content;
+ border-radius: 4px;
+ /* Remove 1px from padding for border. */
+ padding-block: 3px 11px;
+ padding-inline: 15px 3px;
+ gap: 8px;
+ margin-block-end: 1.6em;
+}
+
+body:not(.show-survey) #survey {
+ display: none;
+}
+
+#survey > * {
+ margin: 0;
+}
+
+#survey-icon {
+ grid-area: icon;
+ width: 24px;
+ height: 24px;
+ padding: 8px;
+ border-radius: 20px;
+}
+
+#survey-heading {
+ grid-area: heading;
+ font-size: inherit;
+}
+
+#survey-icon,
+#survey-heading {
+ margin-block-start: 8px;
+}
+
+#survey-body {
+ grid-area: body;
+ margin-block-end: 8px;
+}
+
+#survey-buttons {
+ grid-area: buttons;
+ display: flex;
+ gap: 8px;
+}
+
+#survey-buttons > * {
+ flex: 0 0 auto;
+ margin: 0;
+}
+
+#survey-close {
+ grid-area: close;
+ /* Look like moz-button with "icon ghost" type. */
+ color: inherit;
+ border: transparent;
+ background: transparent;
+ display: grid;
+ width: fit-content;
+ height: fit-content;
+ min-width: fit-content;
+ min-height: fit-content;
+ padding: 8px;
+}
+
+#survey-close:enabled:hover {
+ color: inherit;
+ border: transparent;
+ background: var(--in-content-button-background-hover);
+}
+
+#survey-close:enabled:hover:active {
+ color: inherit;
+ border: transparent;
+ background: var(--in-content-button-background-active);
+}
+
+#survey-close img {
+ width: 16px;
+ height: 16px;
+ -moz-context-properties: fill;
+ fill: currentColor;
+}
+
@media (prefers-contrast) {
#search-form {
border-color: var(--in-content-box-border-color);
}
-
- #tor-check {
- background-color: var(--in-content-box-info-background);
- }
}
@media not (prefers-contrast) {
@@ -187,6 +280,7 @@ body:not(.show-tor-check) #tor-check {
#tor-check {
background-color: #1f0333;
+ border-color: transparent;
}
body > :not(#search-form) {
@@ -202,6 +296,10 @@ body:not(.show-tor-check) #tor-check {
* See tor-browser#42025 */
--in-content-link-color-hover: var(--purple-40);
--in-content-link-color-active: var(--purple-50);
+
+ --in-content-button-text-color: var(--in-content-text-color);
+ --in-content-button-text-color-hover: var(--in-content-text-color);
+ --in-content-button-text-color-active: var(--in-content-text-color);
}
#search-form {
@@ -231,4 +329,20 @@ body:not(.show-tor-check) #tor-check {
#search-form.onionized-search #onionize-toggle {
color: var(--purple-60);
}
+
+ #survey {
+ background-color: #3d1559;
+ border-color: transparent;
+ }
+
+ #survey-icon {
+ background-color: #00000040;
+ }
+
+ #survey-launch {
+ color: #15141a; /* --color-gray-100 */
+ --in-content-primary-button-background: var(--purple-30);
+ --in-content-primary-button-background-hover: var(--purple-40);
+ --in-content-primary-button-background-active: var(--purple-50);
+ }
}
=====================================
browser/components/abouttor/content/aboutTor.html
=====================================
@@ -37,7 +37,7 @@
/>
<span id="tor-browser-home-heading-text"></span>
</h1>
- <p id="tor-check">
+ <p id="tor-check" class="tor-home-box">
<img
id="tor-check-icon"
alt=""
@@ -125,5 +125,22 @@
></a>
</span>
</p>
+ <!-- Survey element, initially used for tor-browser#43504. -->
+ <article id="survey" class="tor-home-box" aria-labelledby="survey-heading">
+ <img
+ id="survey-icon"
+ alt=""
+ src="chrome://browser/content/abouttor/1f44b-waving-hand.svg"
+ />
+ <h2 id="survey-heading"></h2>
+ <p id="survey-body"></p>
+ <div id="survey-buttons">
+ <button id="survey-launch" class="primary"></button>
+ <button id="survey-dismiss"></button>
+ </div>
+ <button id="survey-close">
+ <img alt="" src="chrome://global/skin/icons/close.svg" />
+ </button>
+ </article>
</body>
</html>
=====================================
browser/components/abouttor/content/aboutTor.js
=====================================
@@ -170,14 +170,241 @@ const MessageArea = {
},
};
+/**
+ * A reusable area for surveys.
+ *
+ * Initially used for tor-browser#43504.
+ */
+const SurveyArea = {
+ /**
+ * The current version of the survey.
+ *
+ * Should be increased every time we start a new survey campaign.
+ *
+ * @type {integer}
+ */
+ _version: 1,
+
+ /**
+ * The date to start showing the survey.
+ *
+ * @type {integer}
+ */
+ _startDate: Date.UTC(2025, 3, 14, 12), // 2025 April 14th, 12:00.
+
+ /**
+ * The date to stop showing the current survey.
+ *
+ * @type {integer}
+ */
+ _endDate: Date.UTC(2025, 3, 28), // 2025 April 28th, 00:00.
+
+ /**
+ * The survey URL.
+ *
+ * @type {string}
+ */
+ _urlBase: "https://survey.torproject.org/index.php/923269",
+
+ /**
+ * @typedef {object} SurveyLocaleData
+ *
+ * Locale-specific data for the survey.
+ *
+ * @property {string[]} browserLocales - The browser locales this should match
+ * with. The first locale should match the locale of the strings.
+ * @property {string} urlCode - The language code to pass to the survey URL.
+ * @property {string} dir - The direction of the locale.
+ * @property {object} strings - The strings to use for the survey banner.
+ */
+
+ /**
+ * The data for the selected locale.
+ *
+ * @type {SurveyLocaleData}
+ */
+ _localeData: null,
+
+ /**
+ * The data for each locale that is supported.
+ *
+ * The first entry is the default.
+ *
+ * @type {SurveyLocaleData[]}
+ */
+ _localeDataSet: [
+ {
+ browserLocales: ["en-US"],
+ dir: "ltr",
+ urlCode: "en",
+ strings: {
+ heading: "We’d love your feedback",
+ body: "Help us improve Tor Browser by completing this 10-minute survey.",
+ launch: "Launch the survey",
+ dismiss: "Not now",
+ close: "Close",
+ },
+ },
+ {
+ browserLocales: ["es-ES"],
+ dir: "ltr",
+ urlCode: "es",
+ strings: {
+ heading: "Danos tu opinión",
+ body: "Ayúdanos a mejorar el Navegador Tor completando esta encuesta de 10 minutos.",
+ launch: "Iniciar la encuesta",
+ dismiss: "Más adelante",
+ close: "Cerrar",
+ },
+ },
+ {
+ browserLocales: ["ru"],
+ dir: "ltr",
+ urlCode: "ru",
+ strings: {
+ heading: "Мы будем рады вашим отзывам",
+ body: "Помогите нам улучшить браузер Tor, пройдя 10-минутный опрос.",
+ launch: "Начать опрос",
+ dismiss: "Не сейчас",
+ close: "Закрыть",
+ },
+ },
+ {
+ browserLocales: ["fr"],
+ dir: "ltr",
+ urlCode: "fr",
+ strings: {
+ heading: "Nous serions ravis d’avoir votre avis !",
+ body: "Aidez-nous à améliorer le navigateur Tor en répondant à cette enquête de 10 minutes.",
+ launch: "Lancer l'enquête",
+ dismiss: "Pas maintenant",
+ close: "Fermer",
+ },
+ },
+ {
+ // Also show this pt-BR banner for the pt-PT browser locale.
+ browserLocales: ["pt-BR", "pt-PT"],
+ dir: "ltr",
+ urlCode: "pt-BR",
+ strings: {
+ heading: "Adoraríamos ouvir sua opinião",
+ body: "Ajude-nos a melhorar o Navegador Tor respondendo a esta pesquisa de 10 minutos.",
+ launch: "Iniciar a pesquisa",
+ dismiss: "Mais tarde",
+ close: "Fechar",
+ },
+ },
+ ],
+
+ /**
+ * Initialize the survey area.
+ */
+ init() {
+ document.getElementById("survey-launch").addEventListener("click", () => {
+ if (!this._localeData) {
+ return;
+ }
+ const url = new URL(this._urlBase);
+ url.searchParams.append("lang", this._localeData.urlCode);
+ open(url.href);
+ });
+ document.getElementById("survey-close").addEventListener("click", () => {
+ this._hide();
+ });
+ document.getElementById("survey-dismiss").addEventListener("click", () => {
+ this._hide();
+ });
+ },
+
+ /**
+ * Permanently hide this survey.
+ */
+ _hide() {
+ document.body.classList.remove("show-survey");
+ // Move focus to the search input.
+ document.getElementById("search-input").focus();
+
+ dispatchEvent(
+ new CustomEvent("SurveyDismissed", {
+ // We pass in the current survey version to record the *latest*
+ // version that the user has dismissed. This will overwrite any
+ // previous versions.
+ detail: this._version,
+ bubbles: true,
+ })
+ );
+ },
+
+ /**
+ * Decide whether to show the survey.
+ *
+ * @param {integer} dismissVersion - The latest version of survey that the
+ * user has already dismissed.
+ * @param {boolean} isStable - Whether this is the stable release of Tor
+ * Browser.
+ */
+ potentiallyShow(dismissVersion, isStable) {
+ const now = Date.now();
+ if (
+ now < this._startDate ||
+ now >= this._endDate ||
+ // The user has already dismissed this version of the survey before:
+ dismissVersion >= this._version ||
+ !isStable
+ ) {
+ // Don't show the survey.
+ return;
+ }
+
+ // Determine the survey locale based on the about:tor locale.
+ // NOTE: We do not user document.l10n to translate the survey banner.
+ // Instead we only translate the banner into a limited set of locales that
+ // match the languages that the survey itself supports. This should match
+ // the language of the survey when it is opened by the user.
+ const pageLocale = document.documentElement.getAttribute("lang");
+ for (const localeData of this._localeDataSet) {
+ if (localeData.browserLocales.includes(pageLocale)) {
+ this._localeData = localeData;
+ break;
+ }
+ }
+ if (!this._localeData) {
+ // Show the default en-US banner.
+ this._localeData = this._localeDataSet[0];
+ }
+
+ // Make sure the survey's lang and dir attributes match the chosen locale.
+ const surveyEl = document.getElementById("survey");
+ surveyEl.setAttribute("lang", this._localeData.browserLocales[0]);
+ surveyEl.setAttribute("dir", this._localeData.dir);
+
+ const { heading, body, launch, dismiss, close } = this._localeData.strings;
+
+ document.getElementById("survey-heading").textContent = heading;
+ document.getElementById("survey-body").textContent = body;
+ document.getElementById("survey-launch").textContent = launch;
+ document.getElementById("survey-dismiss").textContent = dismiss;
+ document.getElementById("survey-close").setAttribute("title", close);
+
+ document.body.classList.add("show-survey");
+ },
+};
+
window.addEventListener("DOMContentLoaded", () => {
SearchWidget.init();
MessageArea.init();
+ SurveyArea.init();
});
window.addEventListener("InitialData", event => {
- const { torConnectEnabled, isStable, searchOnionize, messageData } =
- event.detail;
+ const {
+ torConnectEnabled,
+ isStable,
+ searchOnionize,
+ messageData,
+ surveyDismissVersion,
+ } = event.detail;
SearchWidget.setOnionizeState(!!searchOnionize);
MessageArea.setMessageData(messageData, !!isStable, !!torConnectEnabled);
+ SurveyArea.potentiallyShow(surveyDismissVersion, isStable);
});
=====================================
browser/components/abouttor/jar.mn
=====================================
@@ -3,6 +3,7 @@ browser.jar:
content/browser/abouttor/aboutTor.js (content/aboutTor.js)
content/browser/abouttor/aboutTor.html (content/aboutTor.html)
content/browser/abouttor/dax-logo.svg (content/dax-logo.svg)
+ content/browser/abouttor/1f44b-waving-hand.svg (content/1f44b-waving-hand.svg)
content/browser/abouttor/1f4e3-megaphone.svg (content/1f4e3-megaphone.svg)
content/browser/abouttor/26a1-high-voltage.svg (content/26a1-high-voltage.svg)
content/browser/abouttor/2728-sparkles.svg (content/2728-sparkles.svg)
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/2b5edd0…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/2b5edd0…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.0-1] fixup! TB 7494: Create local home page for TBB.
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed to branch tor-browser-128.8.0esr-14.0-1 at The Tor Project / Applications / Tor Browser
Commits:
4966f45e by Henry Wilkes at 2025-03-11T18:57:40+00:00
fixup! TB 7494: Create local home page for TBB.
TB 43489: Add a survey banner in about:tor.
- - - - -
8 changed files:
- browser/components/BrowserGlue.sys.mjs
- browser/components/abouttor/AboutTorChild.sys.mjs
- browser/components/abouttor/AboutTorParent.sys.mjs
- + browser/components/abouttor/content/1f44b-waving-hand.svg
- browser/components/abouttor/content/aboutTor.css
- browser/components/abouttor/content/aboutTor.html
- browser/components/abouttor/content/aboutTor.js
- browser/components/abouttor/jar.mn
Changes:
=====================================
browser/components/BrowserGlue.sys.mjs
=====================================
@@ -524,6 +524,7 @@ let JSWINDOWACTORS = {
DOMContentLoaded: {},
L10nMutationsFinished: {},
SubmitSearchOnionize: { wantUntrusted: true },
+ SurveyDismissed: { wantUntrusted: true },
},
},
=====================================
browser/components/abouttor/AboutTorChild.sys.mjs
=====================================
@@ -16,6 +16,10 @@ export class AboutTorChild extends JSWindowActorChild {
case "SubmitSearchOnionize":
this.sendAsyncMessage("AboutTor:SetSearchOnionize", !!event.detail);
break;
+ case "SurveyDismissed":
+ // event.detail is the survey version.
+ this.sendAsyncMessage("AboutTor:SurveyDismissed", event.detail);
+ break;
case "L10nMutationsFinished":
// Pass on chrome-only event for completed localization to content.
this.contentWindow.dispatchEvent(
=====================================
browser/components/abouttor/AboutTorParent.sys.mjs
=====================================
@@ -13,6 +13,8 @@ ChromeUtils.defineESModuleGetters(lazy, {
export class AboutTorParent extends JSWindowActorParent {
receiveMessage(message) {
const onionizePref = "torbrowser.homepage.search.onionize";
+ const surveyDismissVersionPref =
+ "torbrowser.homepage.survey.dismiss_version";
switch (message.name) {
case "AboutTor:GetInitialData":
return Promise.resolve({
@@ -20,10 +22,26 @@ export class AboutTorParent extends JSWindowActorParent {
messageData: lazy.AboutTorMessage.getNext(),
isStable: AppConstants.MOZ_UPDATE_CHANNEL === "release",
searchOnionize: Services.prefs.getBoolPref(onionizePref, false),
+ surveyDismissVersion: Services.prefs.getIntPref(
+ surveyDismissVersionPref,
+ 0
+ ),
});
case "AboutTor:SetSearchOnionize":
Services.prefs.setBoolPref(onionizePref, message.data);
break;
+ case "AboutTor:SurveyDismissed":
+ // The message.data contains the version of the current survey.
+ // Rather than introduce a new preference for each survey campaign we
+ // reuse the same integer preference and increase its value every time
+ // a new version of the survey is shown and dismissed by the user.
+ // I.e. if the preference value is 2, we will not show survey version 2
+ // but will show survey version 3 or higher when they are introduced.
+ // It should be safe to overwrite the value since we do not expect more
+ // than one active survey campaign at any given time, nor do we expect
+ // the version value to decrease.
+ Services.prefs.setIntPref(surveyDismissVersionPref, message.data);
+ break;
}
return undefined;
}
=====================================
browser/components/abouttor/content/1f44b-waving-hand.svg
=====================================
@@ -0,0 +1,3 @@
+<!-- FROM https://github.com/twitter/twemoji
+ - licensed under CC-BY 4.0: https://creativecommons.org/licenses/by/4.0/ -->
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#EF9645" d="M4.861 9.147c.94-.657 2.357-.531 3.201.166l-.968-1.407c-.779-1.111-.5-2.313.612-3.093 1.112-.777 4.263 1.312 4.263 1.312-.786-1.122-.639-2.544.483-3.331 1.122-.784 2.67-.513 3.456.611l10.42 14.72L25 31l-11.083-4.042L4.25 12.625c-.793-1.129-.519-2.686.611-3.478z"/><path fill="#FFDC5D" d="M2.695 17.336s-1.132-1.65.519-2.781c1.649-1.131 2.78.518 2.78.518l5.251 7.658c.181-.302.379-.6.6-.894L4.557 11.21s-1.131-1.649.519-2.78c1.649-1.131 2.78.518 2.78.518l6.855 9.997c.255-.208.516-.417.785-.622L7.549 6.732s-1.131-1.649.519-2.78c1.649-1.131 2.78.518 2.78.518l7.947 11.589c.292-.179.581-.334.871-.498L12.238 4.729s-1.131-1.649.518-2.78c1.649-1.131 2.78.518 2.78.518l7.854 11.454 1.194 1.742c-4.948 3.394-5.419 9.779-2.592 13.902.565.825 1.39.26 1.39.26-3.393-4.949-2.357-10.51 2.592-13.903L24.515 8.62s-.545-1.924 1.378-2.47c1.924-.545 2.47 1.379 2.47 1.379l1.685 5.004c.668 1.984 1.379 3.961 2.32 5.831 2.657 5.28 1.07 11.842-3.94 15.279-5.465 3.747-12.936 2.354-16.684-3.11L2.695 17.336z"/><g fill="#5DADEC"><path d="M12 32.042C8 32.042 3.958 28 3.958 24c0-.553-.405-1-.958-1s-1.042.447-1.042 1C1.958 30 6 34.042 12 34.042c.553 0 1-.489 1-1.042s-.447-.958-1-.958z"/><path d="M7 34c-3 0-5-2-5-5 0-.553-.447-1-1-1s-1 .447-1 1c0 4 3 7 7 7 .553 0 1-.447 1-1s-.447-1-1-1zM24 2c-.552 0-1 .448-1 1s.448 1 1 1c4 0 8 3.589 8 8 0 .552.448 1 1 1s1-.448 1-1c0-5.514-4-10-10-10z"/><path d="M29 .042c-.552 0-1 .406-1 .958s.448 1.042 1 1.042c3 0 4.958 2.225 4.958 4.958 0 .552.489 1 1.042 1s.958-.448.958-1C35.958 3.163 33 .042 29 .042z"/></g></svg>
=====================================
browser/components/abouttor/content/aboutTor.css
=====================================
@@ -13,6 +13,7 @@ body {
"tor-check tor-check tor-check" auto
". form ." min-content
"message message message" auto
+ "survey survey survey" auto
/* End space: unfilled.
* Reserve 150px for background image.
* NOTE: Since the body has "auto" height, the other "1fr" flex row will
@@ -58,20 +59,24 @@ body:not(.is-testing) #tor-browser-home-heading-testing {
#tor-check {
grid-area: tor-check;
- max-width: var(--form-max-width);
- box-sizing: border-box;
display: flex;
gap: 10px;
align-items: center;
padding-inline: 23px;
padding-block: 11px;
- border: 1px solid var(--in-content-box-border-color);
border-radius: 8px;
- background-color: var(--in-content-box-info-background);
margin-block-start: 0;
margin-block-end: 30px;
}
+.tor-home-box {
+ border: 1px solid var(--in-content-box-border-color);
+ background-color: var(--in-content-box-info-background);
+ max-width: var(--form-max-width);
+ width: -moz-available;
+ box-sizing: border-box;
+}
+
body:not(.show-tor-check) #tor-check {
display: none;
}
@@ -92,8 +97,7 @@ body:not(.show-tor-check) #tor-check {
grid-area: message;
font-weight: 400;
text-align: center;
- margin-block-start: 1.6em;
- margin-block-end: 1em;
+ margin-block: 1.6em;
}
.message-emoji {
@@ -173,6 +177,68 @@ body:not(.show-tor-check) #tor-check {
margin-inline-start: 0.5em;
}
+#survey {
+ grid-area: survey;
+ display: grid;
+ grid-template:
+ "icon heading close" min-content
+ "icon body close" auto
+ ". buttons buttons" min-content
+ / min-content 1fr min-content;
+ border-radius: 4px;
+ /* Remove 1px from padding for border. */
+ padding-block: 3px 11px;
+ padding-inline: 15px 3px;
+ gap: 8px;
+ margin-block-end: 1.6em;
+}
+
+body:not(.show-survey) #survey {
+ display: none;
+}
+
+#survey > * {
+ margin: 0;
+}
+
+#survey-icon {
+ grid-area: icon;
+ width: 24px;
+ height: 24px;
+ padding: 8px;
+ border-radius: 20px;
+}
+
+#survey-heading {
+ grid-area: heading;
+ font-size: inherit;
+}
+
+#survey-icon,
+#survey-heading {
+ margin-block-start: 8px;
+}
+
+#survey-body {
+ grid-area: body;
+ margin-block-end: 8px;
+}
+
+#survey-buttons {
+ grid-area: buttons;
+ display: flex;
+ gap: 8px;
+}
+
+#survey-buttons > * {
+ flex: 0 0 auto;
+ margin: 0;
+}
+
+#survey-close {
+ grid-area: close;
+}
+
@media not ((prefers-contrast) or (forced-colors)) {
/* Force the page to follow the same Tor theme, regardless of
* prefers-color-scheme. */
@@ -196,6 +262,13 @@ body:not(.show-tor-check) #tor-check {
body > :not(#search-form) {
/* Same as --in-content-page-color when "prefers-color-scheme: dark" */
color: var(--color-gray-05);
+ --button-text-color: currentColor;
+ --in-content-button-text-color: var(--button-text-color);
+ --in-content-button-text-color-hover: var(--button-text-color);
+ --in-content-button-text-color-active: var(--button-text-color);
+ --button-text-color-ghost: var(--button-text-color);
+ --button-text-color-ghost-hover: var(--button-text-color);
+ --button-text-color-ghost-active: var(--button-text-color);
--link-color: var(--tor-link-color-dark);
--link-color-hover: var(--tor-link-color-hover-dark);
--link-color-active: var(--tor-link-color-active-dark);
@@ -234,4 +307,20 @@ body:not(.show-tor-check) #tor-check {
#search-form.onionized-search #onionize-toggle {
color: var(--tor-link-color-light);
}
+
+ #survey {
+ background-color: #3d1559;
+ border-color: transparent;
+ }
+
+ #survey-icon {
+ background-color: #00000040;
+ }
+
+ #survey-launch {
+ color: var(--color-gray-100);
+ --in-content-primary-button-background: var(--tor-button-background-color-dark);
+ --in-content-primary-button-background-hover: var(--tor-button-background-color-hover-dark);
+ --in-content-primary-button-background-active: var(--tor-button-background-color-active-dark);
+ }
}
=====================================
browser/components/abouttor/content/aboutTor.html
=====================================
@@ -22,6 +22,10 @@
<link rel="localization" href="browser/newtab/newtab.ftl" />
<link rel="localization" href="toolkit/global/tor-browser.ftl" />
+ <script
+ type="module"
+ src="chrome://global/content/elements/moz-button.mjs"
+ ></script>
<script
type="module"
src="chrome://global/content/elements/moz-toggle.mjs"
@@ -44,7 +48,7 @@
data-l10n-id="tor-browser-home-heading-testing"
></span>
</h1>
- <p id="tor-check">
+ <p id="tor-check" class="tor-home-box">
<img
id="tor-check-icon"
alt=""
@@ -132,5 +136,26 @@
></a>
</span>
</p>
+ <!-- Survey element, initially used for tor-browser#43504. -->
+ <article id="survey" class="tor-home-box" aria-labelledby="survey-heading">
+ <img
+ id="survey-icon"
+ alt=""
+ src="chrome://browser/content/abouttor/1f44b-waving-hand.svg"
+ />
+ <h2 id="survey-heading"></h2>
+ <p id="survey-body"></p>
+ <div id="survey-buttons">
+ <button id="survey-launch" class="primary"></button>
+ <button id="survey-dismiss"></button>
+ </div>
+ <moz-button
+ id="survey-close"
+ type="icon ghost"
+ class="close"
+ size="16"
+ iconSrc="chrome://global/skin/icons/close.svg"
+ ></moz-button>
+ </article>
</body>
</html>
=====================================
browser/components/abouttor/content/aboutTor.js
=====================================
@@ -179,14 +179,241 @@ const MessageArea = {
},
};
+/**
+ * A reusable area for surveys.
+ *
+ * Initially used for tor-browser#43504.
+ */
+const SurveyArea = {
+ /**
+ * The current version of the survey.
+ *
+ * Should be increased every time we start a new survey campaign.
+ *
+ * @type {integer}
+ */
+ _version: 1,
+
+ /**
+ * The date to start showing the survey.
+ *
+ * @type {integer}
+ */
+ _startDate: Date.UTC(2025, 3, 14, 12), // 2025 April 14th, 12:00.
+
+ /**
+ * The date to stop showing the current survey.
+ *
+ * @type {integer}
+ */
+ _endDate: Date.UTC(2025, 3, 28), // 2025 April 28th, 00:00.
+
+ /**
+ * The survey URL.
+ *
+ * @type {string}
+ */
+ _urlBase: "https://survey.torproject.org/index.php/923269",
+
+ /**
+ * @typedef {object} SurveyLocaleData
+ *
+ * Locale-specific data for the survey.
+ *
+ * @property {string[]} browserLocales - The browser locales this should match
+ * with. The first locale should match the locale of the strings.
+ * @property {string} urlCode - The language code to pass to the survey URL.
+ * @property {string} dir - The direction of the locale.
+ * @property {object} strings - The strings to use for the survey banner.
+ */
+
+ /**
+ * The data for the selected locale.
+ *
+ * @type {SurveyLocaleData}
+ */
+ _localeData: null,
+
+ /**
+ * The data for each locale that is supported.
+ *
+ * The first entry is the default.
+ *
+ * @type {SurveyLocaleData[]}
+ */
+ _localeDataSet: [
+ {
+ browserLocales: ["en-US"],
+ dir: "ltr",
+ urlCode: "en",
+ strings: {
+ heading: "We’d love your feedback",
+ body: "Help us improve Tor Browser by completing this 10-minute survey.",
+ launch: "Launch the survey",
+ dismiss: "Not now",
+ close: "Close",
+ },
+ },
+ {
+ browserLocales: ["es-ES"],
+ dir: "ltr",
+ urlCode: "es",
+ strings: {
+ heading: "Danos tu opinión",
+ body: "Ayúdanos a mejorar el Navegador Tor completando esta encuesta de 10 minutos.",
+ launch: "Iniciar la encuesta",
+ dismiss: "Más adelante",
+ close: "Cerrar",
+ },
+ },
+ {
+ browserLocales: ["ru"],
+ dir: "ltr",
+ urlCode: "ru",
+ strings: {
+ heading: "Мы будем рады вашим отзывам",
+ body: "Помогите нам улучшить браузер Tor, пройдя 10-минутный опрос.",
+ launch: "Начать опрос",
+ dismiss: "Не сейчас",
+ close: "Закрыть",
+ },
+ },
+ {
+ browserLocales: ["fr"],
+ dir: "ltr",
+ urlCode: "fr",
+ strings: {
+ heading: "Nous serions ravis d’avoir votre avis !",
+ body: "Aidez-nous à améliorer le navigateur Tor en répondant à cette enquête de 10 minutes.",
+ launch: "Lancer l'enquête",
+ dismiss: "Pas maintenant",
+ close: "Fermer",
+ },
+ },
+ {
+ // Also show this pt-BR banner for the pt-PT browser locale.
+ browserLocales: ["pt-BR", "pt-PT"],
+ dir: "ltr",
+ urlCode: "pt-BR",
+ strings: {
+ heading: "Adoraríamos ouvir sua opinião",
+ body: "Ajude-nos a melhorar o Navegador Tor respondendo a esta pesquisa de 10 minutos.",
+ launch: "Iniciar a pesquisa",
+ dismiss: "Mais tarde",
+ close: "Fechar",
+ },
+ },
+ ],
+
+ /**
+ * Initialize the survey area.
+ */
+ init() {
+ document.getElementById("survey-launch").addEventListener("click", () => {
+ if (!this._localeData) {
+ return;
+ }
+ const url = new URL(this._urlBase);
+ url.searchParams.append("lang", this._localeData.urlCode);
+ open(url.href);
+ });
+ document.getElementById("survey-close").addEventListener("click", () => {
+ this._hide();
+ });
+ document.getElementById("survey-dismiss").addEventListener("click", () => {
+ this._hide();
+ });
+ },
+
+ /**
+ * Permanently hide this survey.
+ */
+ _hide() {
+ document.body.classList.remove("show-survey");
+ // Move focus to the search input.
+ document.getElementById("search-input").focus();
+
+ dispatchEvent(
+ new CustomEvent("SurveyDismissed", {
+ // We pass in the current survey version to record the *latest*
+ // version that the user has dismissed. This will overwrite any
+ // previous versions.
+ detail: this._version,
+ bubbles: true,
+ })
+ );
+ },
+
+ /**
+ * Decide whether to show the survey.
+ *
+ * @param {integer} dismissVersion - The latest version of survey that the
+ * user has already dismissed.
+ * @param {boolean} isStable - Whether this is the stable release of Tor
+ * Browser.
+ */
+ potentiallyShow(dismissVersion, isStable) {
+ const now = Date.now();
+ if (
+ now < this._startDate ||
+ now >= this._endDate ||
+ // The user has already dismissed this version of the survey before:
+ dismissVersion >= this._version ||
+ !isStable
+ ) {
+ // Don't show the survey.
+ return;
+ }
+
+ // Determine the survey locale based on the about:tor locale.
+ // NOTE: We do not user document.l10n to translate the survey banner.
+ // Instead we only translate the banner into a limited set of locales that
+ // match the languages that the survey itself supports. This should match
+ // the language of the survey when it is opened by the user.
+ const pageLocale = document.documentElement.getAttribute("lang");
+ for (const localeData of this._localeDataSet) {
+ if (localeData.browserLocales.includes(pageLocale)) {
+ this._localeData = localeData;
+ break;
+ }
+ }
+ if (!this._localeData) {
+ // Show the default en-US banner.
+ this._localeData = this._localeDataSet[0];
+ }
+
+ // Make sure the survey's lang and dir attributes match the chosen locale.
+ const surveyEl = document.getElementById("survey");
+ surveyEl.setAttribute("lang", this._localeData.browserLocales[0]);
+ surveyEl.setAttribute("dir", this._localeData.dir);
+
+ const { heading, body, launch, dismiss, close } = this._localeData.strings;
+
+ document.getElementById("survey-heading").textContent = heading;
+ document.getElementById("survey-body").textContent = body;
+ document.getElementById("survey-launch").textContent = launch;
+ document.getElementById("survey-dismiss").textContent = dismiss;
+ document.getElementById("survey-close").setAttribute("title", close);
+
+ document.body.classList.add("show-survey");
+ },
+};
+
window.addEventListener("DOMContentLoaded", () => {
SearchWidget.init();
MessageArea.init();
+ SurveyArea.init();
});
window.addEventListener("InitialData", event => {
- const { torConnectEnabled, isStable, searchOnionize, messageData } =
- event.detail;
+ const {
+ torConnectEnabled,
+ isStable,
+ searchOnionize,
+ messageData,
+ surveyDismissVersion,
+ } = event.detail;
SearchWidget.setOnionizeState(!!searchOnionize);
MessageArea.setMessageData(messageData, !!isStable, !!torConnectEnabled);
+ SurveyArea.potentiallyShow(surveyDismissVersion, isStable);
});
=====================================
browser/components/abouttor/jar.mn
=====================================
@@ -3,6 +3,7 @@ browser.jar:
content/browser/abouttor/aboutTor.js (content/aboutTor.js)
content/browser/abouttor/aboutTor.html (content/aboutTor.html)
content/browser/abouttor/dax-logo.svg (content/dax-logo.svg)
+ content/browser/abouttor/1f44b-waving-hand.svg (content/1f44b-waving-hand.svg)
content/browser/abouttor/1f4e3-megaphone.svg (content/1f4e3-megaphone.svg)
content/browser/abouttor/26a1-high-voltage.svg (content/26a1-high-voltage.svg)
content/browser/abouttor/2728-sparkles.svg (content/2728-sparkles.svg)
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4966f45…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4966f45…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] fixup! TB 40597: Implement TorSettings module
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
65026e41 by Henry Wilkes at 2025-03-11T18:34:13+00:00
fixup! TB 40597: Implement TorSettings module
TB 42550: Move straight to FinalError when the user selects a specific
region.
Also fix the `simulateMoatResponse` value for the censorship levels.
Although it does not change the overall outcome (bootstrap fails) it
does change *how* it fails.
- - - - -
1 changed file:
- toolkit/modules/TorConnect.sys.mjs
Changes:
=====================================
toolkit/modules/TorConnect.sys.mjs
=====================================
@@ -1227,7 +1227,10 @@ export const TorConnect = {
bootstrapOptions.simulateCensorship = true;
bootstrapOptions.simulateMoatResponse = {
country: "fi",
- settings: [{}, {}],
+ bridgesList: [
+ { source: 0, builtin_type: "obfs4" },
+ { source: 0, builtin_type: "snowflake" },
+ ],
};
}
} else if (censorshipLevel === 3) {
@@ -1235,7 +1238,7 @@ export const TorConnect = {
bootstrapOptions.simulateCensorship = true;
bootstrapOptions.simulateMoatResponse = {
country: null,
- settings: [],
+ bridgesList: [],
};
}
},
@@ -1412,20 +1415,20 @@ export const TorConnect = {
this._setStage(TorConnectStage.ChooseRegion);
return;
case TorConnectStage.ChooseRegion:
- // TODO: Uncomment for behaviour in tor-browser#42550.
- /*
- if (regionCode !== "automatic") {
- // Not automatic. Go straight to the final error.
- this._setStage(TorConnectStage.FinalError);
+ if (regionCode === "automatic") {
+ // The automatic region failed.
+ if (bootstrapAttempt.detectedRegion) {
+ this._setStage(TorConnectStage.ConfirmRegion);
+ } else {
+ this._setStage(TorConnectStage.RegionNotFound);
+ }
return;
}
- */
- if (regionCode !== "automatic" || bootstrapAttempt.detectedRegion) {
- this._setStage(TorConnectStage.ConfirmRegion);
- return;
- }
- this._setStage(TorConnectStage.RegionNotFound);
- return;
+ // Else, not automatic. Go straight to the final error since the user
+ // is unlikely to succeed re-selecting the same region and it would be
+ // unexpected for the user to select a different region.
+ // See tor-browser#42550.
+ break;
}
this._setStage(TorConnectStage.FinalError);
return;
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/65026e4…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/65026e4…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser] Pushed new tag mullvad-browser-128.8.0esr-14.5-1-build1
by clairehurst (@clairehurst) 11 Mar '25
by clairehurst (@clairehurst) 11 Mar '25
11 Mar '25
clairehurst pushed new tag mullvad-browser-128.8.0esr-14.5-1-build1 at The Tor Project / Applications / Mullvad Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/mullv…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build] Pushed new tag mb-14.5a4-build1
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed new tag mb-14.5a4-build1 at The Tor Project / Applications / tor-browser-build
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/tree/mb-…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build] Pushed new tag tbb-14.5a4-build1
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed new tag tbb-14.5a4-build1 at The Tor Project / Applications / tor-browser-build
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/tree/tbb…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Bug 41369,41370: Prepare Tor+Mullvad Browser 14.5a4
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
136839a7 by Morgan at 2025-03-11T17:29:48+00:00
Bug 41369,41370: Prepare Tor+Mullvad Browser 14.5a4
- - - - -
9 changed files:
- projects/browser/Bundle-Data/Docs-MB/ChangeLog.txt
- projects/browser/Bundle-Data/Docs-TBB/ChangeLog.txt
- projects/firefox/config
- projects/geckoview/config
- projects/go/config
- projects/openssl/config
- projects/translation/config
- projects/zstd/config
- rbm.conf
Changes:
=====================================
projects/browser/Bundle-Data/Docs-MB/ChangeLog.txt
=====================================
@@ -1,3 +1,27 @@
+Mullvad Browser 14.5a4 - March 12 2025
+ * All Platforms
+ * Updated Firefox to 128.8.0esr
+ * Bug 393: Rebase Mullvad Browser Alpha onto 128.8.0esr [mullvad-browser]
+ * Bug 395: Set Mullvad Leta as default search engine [mullvad-browser]
+ * Bug 404: Incorrect information in `about:rights` [mullvad-browser]
+ * Bug 43205: newwin / letterboxing rounding with subpixels is off [tor-browser]
+ * Bug 43551: Backport Mozilla Bug 1924070 - modify H.264 extradata to match sample conversion code.... [tor-browser]
+ * Linux
+ * Bug 394: Missing package when try to install Mullvad Browser in Debian Trixie [mullvad-browser]
+ * Bug 30970: Different window borders in XFCE can lead to different, not rounded window sizes [tor-browser]
+ * Build System
+ * All Platforms
+ * Bug 40799: Remove legacy locale iteration in build and signing scripts [tor-browser-build]
+ * Bug 41040: Add configuration to rbm.conf to select channel and platforms [tor-browser-build]
+ * Bug 41363: Change update-response generation script to create one commit per OS+arch tuple [tor-browser-build]
+ * Bug 41374: Remove support for migrate_archs and migrate_langs in update_responses [tor-browser-build]
+ * Bug 41380: Update kick-devmole script to use Mullvad's new GitHub action [tor-browser-build]
+ * Bug 41381: Usability improvements for the browser commit tagging script [tor-browser-build]
+ * Bug 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation [tor-browser-build]
+ * Bug 41383: Add clairehurst to list of accepted firefox/geckoview signers [tor-browser-build]
+ * Bug 41389: Remove need to update set-config.tbb-version [tor-browser-build]
+ * Bug 40082: With `fetch: if_needed`, rbm is doing a git fetch when it shouldn't, when using a fixed commit [rbm]
+
Mullvad Browser 14.5a3 - February 10 2025
* All Platforms
* Updated Firefox to 128.7.0esr
=====================================
projects/browser/Bundle-Data/Docs-TBB/ChangeLog.txt
=====================================
@@ -1,3 +1,59 @@
+Tor Browser 14.5a4 - March 12 2025
+ * All Platforms
+ * Updated OpenSSL to 3.0.16
+ * Bug 43446: Change the Tor Browser name between releases [tor-browser]
+ * Bug 43463: Include moat circumvention countries in the build (tor-browser part) [tor-browser]
+ * Bug 43487: Rebase Tor Browser Alpha onto 128.8.0esr [tor-browser]
+ * Bug 43529: AutoBootstrapAttempt cancel does not await BootstrapAttempt.cancel [tor-browser]
+ * Bug 43524: Enable new locales: be, bg and pt-PT [tor-browser]
+ * Bug 43551: Backport Mozilla Bug 1924070 - modify H.264 extradata to match sample conversion code.... [tor-browser]
+ * Windows + macOS + Linux
+ * Updated Firefox to 128.8.0esr
+ * Bug 40473: Tor logs do not update in about:preferences#tor as new logs come in [tor-browser]
+ * Bug 43205: newwin / letterboxing rounding with subpixels is off [tor-browser]
+ * Bug 43328: Improve tor log dialog [tor-browser]
+ * Bug 43465: Show the urlbar Connect button during a bootstrap or final error [tor-browser]
+ * Bug 43469: Rename "Quickstart" toggle as "Connect automatically" (Desktop) [tor-browser]
+ * Bug 43502: Move openTorConnect and getRedirectUrl to TorConnectParent [tor-browser]
+ * Bug 43504: Implement User Survey UX (Desktop) [tor-browser]
+ * Bug 43547: Cannot remove the final bridge [tor-browser]
+ * Linux
+ * Bug 30970: Different window borders in XFCE can lead to different, not rounded window sizes [tor-browser]
+ * Android
+ * Updated GeckoView to 128.8.0esr
+ * Updated Zstandard to 1.5.7
+ * Bug 43329: Remove remaining traces of the old Bootstrap on Android [tor-browser]
+ * Bug 43408: Access TorConnect.quickstart separately from TorSettings.getSettings on Android [tor-browser]
+ * Bug 43480: Split up TorConnectionAssistViewModel for better readibility and performance. [tor-browser]
+ * Bug 43498: Uplift tor-browser#43129: about:neterror cannot display SVG on Android with Security Level Safest [tor-browser]
+ * Bug 43528: Improper handling of TorBootstrapChangeListener in HomeActivity [tor-browser]
+ * Build System
+ * All Platforms
+ * Updated Go to 1.23.7
+ * Bug 41040: Add configuration to rbm.conf to select channel and platforms [tor-browser-build]
+ * Bug 41121: Use the official Go binaries for bootstrapping [tor-browser-build]
+ * Bug 41372: Handle branding names in tor-browser-build [tor-browser-build]
+ * Bug 41379: Include moat circumvention countries in the build (tor-browser-build part) [tor-browser-build]
+ * Bug 41380: Update kick-devmole script to use Mullvad's new GitHub action [tor-browser-build]
+ * Bug 41381: Usability improvements for the browser commit tagging script [tor-browser-build]
+ * Bug 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation [tor-browser-build]
+ * Bug 41383: Add clairehurst to list of accepted firefox/geckoview signers [tor-browser-build]
+ * Bug 41384: OpenSSL hash files have changed format [tor-browser-build]
+ * Bug 41389: Remove need to update set-config.tbb-version [tor-browser-build]
+ * Bug 40082: With `fetch: if_needed`, rbm is doing a git fetch when it shouldn't, when using a fixed commit [rbm]
+ * Windows + macOS + Linux
+ * Bug 40799: Remove legacy locale iteration in build and signing scripts [tor-browser-build]
+ * Bug 41363: Change update-response generation script to create one commit per OS+arch tuple [tor-browser-build]
+ * Bug 41374: Remove support for migrate_archs and migrate_langs in update_responses [tor-browser-build]
+ * Windows + Linux + Android
+ * Bug 41386: Upgrade Go to 1.23 for Windows, Linux, and Android [tor-browser-build]
+ * Linux
+ * Bug 41337: Remove libstdc++ from Linux tor-expert-bundle [tor-browser-build]
+ * Android
+ * Bug 42669: Remove dependency on Application-Services [tor-browser]
+ * Bug 43518: Verify existence of localProperties.dependencySubstitutions.geckoviewTopsrcdir before substituting [tor-browser]
+ * Bug 41387: Fix Golang toolchain breakage for lyrebird: linkname [tor-browser-build]
+
Tor Browser 14.5a3 - February 10 2025
* All Platforms
* Bug 41065: navigator.storage "best effort" + "persistent" leak partitionSize/totalSpace entropy [tor-browser]
=====================================
projects/firefox/config
=====================================
@@ -20,7 +20,7 @@ var:
browser_series: '14.5'
browser_rebase: 1
browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]'
- browser_build: 1
+ browser_build: 2
branding_directory_prefix: 'tb'
copyright_year: '[% exec("git show -s --format=%ci " _ c("git_hash") _ "^{commit}", { exec_noco => 1 }).remove("-.*") %]'
nightly_updates_publish_dir: '[% c("var/nightly_updates_publish_dir_prefix") %]nightly-[% c("var/osname") %]'
=====================================
projects/geckoview/config
=====================================
@@ -22,7 +22,7 @@ var:
browser_series: '14.5'
browser_rebase: 1
browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]'
- browser_build: 1
+ browser_build: 2
gitlab_project: https://gitlab.torproject.org/tpo/applications/tor-browser
git_commit: '[% exec("git rev-parse " _ c("git_hash") _ "^{commit}", { exec_noco => 1 }) %]'
deps:
=====================================
projects/go/config
=====================================
@@ -1,11 +1,11 @@
# vim: filetype=yaml sw=2
-version: '1.23.6'
+version: '1.23.7'
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
use_container: 1
var:
- source_sha256: 039c5b04e65279daceee8a6f71e70bd05cf5b801782b6f77c6e19e2ed0511222
+ source_sha256: 7cfabd46b73eb4c26b19d69515dd043d7183a6559acccd5cfdb25eb6b266a458
no_crosscompile: 1
setup: |
mkdir -p /var/tmp/dist
=====================================
projects/openssl/config
=====================================
@@ -1,5 +1,5 @@
# vim: filetype=yaml sw=2
-version: 3.0.15
+version: 3.0.16
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
use_container: 1
@@ -36,5 +36,5 @@ input_files:
- name: '[% c("var/compiler") %]'
project: '[% c("var/compiler") %]'
- URL: 'https://github.com/openssl/openssl/releases/download/openssl-[% c("version") %]/openssl-[% c("version") %].tar.gz'
- sha256sum: 23c666d0edf20f14249b3d8f0368acaee9ab585b09e1de82107c66e1f3ec9533
+ sha256sum: 57e03c50feab5d31b152af2b764f10379aecd8ee92f16c985983ce4a99f7ef86
name: openssl
=====================================
projects/translation/config
=====================================
@@ -12,19 +12,19 @@ compress_tar: 'gz'
steps:
base-browser:
base-browser: '[% INCLUDE build %]'
- git_hash: 93eddbd3888852c09e130d536fb3c9bd7e4e6f57
+ git_hash: 292c09a35bcda153068e77a35107baf034929067
targets:
nightly:
git_hash: 'base-browser'
tor-browser:
tor-browser: '[% INCLUDE build %]'
- git_hash: e7a334a4adb16e506515940e81f41964ef16af76
+ git_hash: f969264d8ca95f8d75a8dfcd61b78cb7f7e5f385
targets:
nightly:
git_hash: 'tor-browser'
mullvad-browser:
mullvad-browser: '[% INCLUDE build %]'
- git_hash: 6a1ef41c664a5185e25ca2c4bbf5d7447bd888a7
+ git_hash: ceaea33b0fa3ad7cf0f563392185bc9e8519079f
targets:
nightly:
git_hash: 'mullvad-browser'
@@ -32,7 +32,7 @@ steps:
fenix: '[% INCLUDE build %]'
# We need to bump the commit before releasing but just pointing to a branch
# might cause too much rebuidling of the Firefox part.
- git_hash: e4f5825b1125e2c8c2aa8d4fdaa7e002d8f2934a
+ git_hash: 16ce780d14da56fd304d2bde886848a6ca19d512
compress_tar: 'zst'
targets:
nightly:
=====================================
projects/zstd/config
=====================================
@@ -1,7 +1,7 @@
# vim: filetype=yaml sw=2
-version: 1.5.6
+version: 1.5.7
git_url: https://github.com/facebook/zstd.git
-git_hash: 794ea1b0afca0f020f4e57b6732332231fb23c70
+git_hash: f8745da6ff1ad1e7bab384bd1f9d742439278e99
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
=====================================
rbm.conf
=====================================
@@ -73,11 +73,11 @@ buildconf:
git_signtag_opt: '-s'
var:
- torbrowser_version: '14.5a3'
+ torbrowser_version: '14.5a4'
torbrowser_build: 'build1'
# This should be the date of when the build is started. For the build
# to be reproducible, browser_release_date should always be in the past.
- browser_release_date: '2025/02/10 18:18:25'
+ browser_release_date: '2025/03/11 16:46:53'
browser_release_date_timestamp: '[% USE date; date.format(c("var/browser_release_date"), "%s") %]'
browser_default_channel: alpha
browser_platforms:
@@ -96,10 +96,9 @@ var:
updater_enabled: 1
build_mar: 1
torbrowser_incremental_from:
+ - 14.5a3
- 14.5a2
- 14.5a1
- - '[% IF c("var/mullvad-browser") %]14.0a10[% END %]'
- - '[% IF c("var/tor-browser") %]14.0a9[% END %]'
mar_channel_id: '[% c("var/projectname") %]-torproject-[% c("var/channel") %]'
# By default, we sort the list of installed packages. This allows sharing
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/1…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/1…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Bug 43524: Enable new locales: be (Belarusian), bg (Bulgarian) and pt-PT (Portugal Portguese)
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
d6c1620f by Morgan at 2025-03-11T16:43:13+00:00
Bug 43524: Enable new locales: be (Belarusian), bg (Bulgarian) and pt-PT (Portugal Portguese)
- - - - -
2 changed files:
- projects/browser/windows-installer/add-strings.py
- rbm.conf
Changes:
=====================================
projects/browser/windows-installer/add-strings.py
=====================================
@@ -27,6 +27,8 @@ args = parser.parse_args()
# languages.nsh.
languages = {
"ar": "Arabic",
+ "be": "Belarusian",
+ "bg": "Bulgarian",
"ca": "Catalan",
"cs": "Czech",
"da": "Danish",
@@ -54,6 +56,7 @@ languages = {
"nl": "Dutch",
"pl": "Polish",
"pt-BR": "PortugueseBR",
+ "pt-PT": "Portuguese",
"ro": "Romanian",
"ru": "Russian",
"sq": "Albanian",
@@ -64,10 +67,6 @@ languages = {
"vi": "Vietnamese",
"zh-CN": "SimpChinese",
"zh-TW": "TradChinese",
- # Nightly-only at the moment
- "be": "Belarusian",
- "bg": "Bulgarian",
- "pt-PT": "Portuguese",
}
replacements = {
=====================================
rbm.conf
=====================================
@@ -133,6 +133,8 @@ var:
# projects/browser/windows-installer/add-strings.py.
locales:
- ar
+ - be
+ - bg
- ca
- cs
- da
@@ -159,6 +161,7 @@ var:
- nl
- pl
- pt-BR
+ - pt-PT
- ro
- ru
- sq
@@ -169,11 +172,10 @@ var:
- vi
- zh-CN
- zh-TW
- - '[% IF c("var/nightly") %]be[% END %]'
- - '[% IF c("var/nightly") %]bg[% END %]'
- - '[% IF c("var/nightly") %]pt-PT[% END %]'
locales_mobile:
- ar
+ - be
+ - bg
- ca
- cs
- da
@@ -200,6 +202,7 @@ var:
- nl
- pl
- pt-rBR
+ - pt-rPT
- ro
- ru
- sq
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/d…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/d…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser] Pushed new tag mullvad-browser-128.8.0esr-14.5-1-build2
by ma1 (@ma1) 11 Mar '25
by ma1 (@ma1) 11 Mar '25
11 Mar '25
ma1 pushed new tag mullvad-browser-128.8.0esr-14.5-1-build2 at The Tor Project / Applications / Mullvad Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/mullv…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser][mullvad-browser-128.8.0esr-14.5-1] 5 commits: Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
by ma1 (@ma1) 11 Mar '25
by ma1 (@ma1) 11 Mar '25
11 Mar '25
ma1 pushed to branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
Commits:
dfb650ec by Tara at 2025-03-11T16:16:15+01:00
Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
Differential Revision: https://phabricator.services.mozilla.com/D236606
- - - - -
df562bda by John Schanck at 2025-03-11T16:16:16+01:00
Bug 1922357 - disallow the fido: URI scheme. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D237313
Differential Revision: https://phabricator.services.mozilla.com/D238681
- - - - -
6edc4c91 by Jeff Boek at 2025-03-11T16:16:17+01:00
Bug 1928334 - Handles animating activities a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D238342
Differential Revision: https://phabricator.services.mozilla.com/D238845
- - - - -
569862aa by Tom Schuster at 2025-03-11T16:16:19+01:00
Bug 1942022 - Improve the about:protections CSP. r=firefox-desktop-core-reviewers ,mossop
Differential Revision: https://phabricator.services.mozilla.com/D234507
- - - - -
12c981ec by Tom Schuster at 2025-03-11T16:16:20+01:00
Bug 1942025 - Improve the about:privatebrowsing CSP. r=firefox-desktop-core-reviewers ,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D234508
- - - - -
11 changed files:
- browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
- browser/components/protections/content/protections.html
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
- mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
- mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
- mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
Changes:
=====================================
browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
=====================================
@@ -10,7 +10,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; img-src chrome: blob:; object-src 'none';"
/>
<meta name="color-scheme" content="light dark" />
<link rel="icon" href="chrome://browser/skin/privatebrowsing/favicon.svg" />
=====================================
browser/components/protections/content/protections.html
=====================================
@@ -8,7 +8,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; object-src 'none'"
/>
<meta name="color-scheme" content="light dark" />
<link rel="localization" href="branding/brand.ftl" />
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
=====================================
@@ -1818,7 +1818,7 @@ class GeckoEngineSession(
internal const val ABOUT_BLANK = "about:blank"
internal const val JS_SCHEME = "javascript"
internal val BLOCKED_SCHEMES =
- listOf("file", "resource", JS_SCHEME) // See 1684761 and 1684947
+ listOf("file", "resource", "fido", JS_SCHEME) // See 1684761 and 1684947
/**
* Provides an ErrorType corresponding to the error code provided.
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
=====================================
@@ -631,6 +631,11 @@ class GeckoEngineSessionTest {
engineSession.loadUrl("RESOURCE://package/test.text")
verify(geckoSession, never()).load(GeckoSession.Loader().uri("resource://package/test.text"))
verify(geckoSession, never()).load(GeckoSession.Loader().uri("RESOURCE://package/test.text"))
+
+ engineSession.loadUrl("fido:/12345678")
+ engineSession.loadUrl("FIDO:/12345678")
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("fido:/12345678"))
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("FIDO:/12345678"))
}
@Test
=====================================
mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
=====================================
@@ -313,6 +313,7 @@ class AppLinksUseCases(
"https", "moz-extension", "moz-safe-about", "resource", "view-source", "ws", "wss", "blob",
)
- internal val ALWAYS_DENY_SCHEMES: Set<String> = setOf("jar", "file", "javascript", "data", "about", "content")
+ internal val ALWAYS_DENY_SCHEMES: Set<String> =
+ setOf("jar", "file", "javascript", "data", "about", "content", "fido")
}
}
=====================================
mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
=====================================
@@ -47,6 +47,7 @@ class AppLinksUseCasesTest {
private val javascriptUrl = "javascript:'hello, world'"
private val jarUrl = "jar:file://some/path/test.html"
private val contentUrl = "content://media/external_primary/downloads/12345"
+ private val fidoPath = "fido:12345678"
private val fileType = "audio/mpeg"
private val layerUrl = "https://example.com"
private val layerPackage = "com.example.app"
@@ -215,6 +216,15 @@ class AppLinksUseCasesTest {
assertFalse(redirect.isRedirect())
}
+ @Test
+ fun `A fido url is not an app link`() {
+ val context = createContext(Triple(fidoPath, appPackage, ""))
+ val subject = AppLinksUseCases(context, { true })
+
+ val redirect = subject.interceptedAppLinkRedirect(fidoPath)
+ assertFalse(redirect.isRedirect())
+ }
+
@Test
fun `Will not redirect app link if browser option set to false and scheme is supported`() {
val context = createContext(Triple(appUrl, appPackage, ""))
=====================================
mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
=====================================
@@ -9,6 +9,7 @@ import android.content.Intent
import androidx.annotation.VisibleForTesting
import androidx.annotation.VisibleForTesting.Companion.PRIVATE
import androidx.core.view.isVisible
+import androidx.fragment.app.DialogFragment
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import kotlinx.coroutines.CoroutineScope
@@ -1094,7 +1095,15 @@ class PromptFeature private constructor(
emitPromptDismissedFact(promptName = promptRequest::class.simpleName.ifNullOrEmpty { "" })
}
+ @VisibleForTesting
+ internal fun redirectDialogFragmentIsActive() =
+ (fragmentManager.findFragmentByTag("SHOULD_OPEN_APP_LINK_PROMPT_DIALOG") as? DialogFragment) != null
+
private fun canShowThisPrompt(promptRequest: PromptRequest): Boolean {
+ if (redirectDialogFragmentIsActive()) {
+ return false
+ }
+
return when (promptRequest) {
is SingleChoice,
is MultipleChoice,
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
=====================================
@@ -798,7 +798,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity {
return false
}
- final override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
ProfilerMarkers.addForDispatchTouchEvent(components.core.engine.profiler, ev)
return super.dispatchTouchEvent(ev)
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
=====================================
@@ -7,6 +7,7 @@ package org.mozilla.fenix.customtabs
import android.app.assist.AssistContent
import android.net.Uri
import android.os.Build
+import android.view.MotionEvent
import androidx.annotation.RequiresApi
import androidx.annotation.VisibleForTesting
import mozilla.components.browser.state.selector.findCustomTab
@@ -24,6 +25,8 @@ const val EXTRA_IS_SANDBOX_CUSTOM_TAB = "org.mozilla.fenix.customtabs.EXTRA_IS_S
*/
@Suppress("TooManyFunctions")
open class ExternalAppBrowserActivity : HomeActivity() {
+ var isFinishedAnimating = false
+
override fun onResume() {
super.onResume()
@@ -74,4 +77,17 @@ open class ExternalAppBrowserActivity : HomeActivity() {
val currentTabUrl = getExternalTab()?.content?.url
outContent?.webUri = currentTabUrl?.let { Uri.parse(it) }
}
+
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ if (!isFinishedAnimating) {
+ return true
+ }
+
+ return super.dispatchTouchEvent(ev)
+ }
+
+ override fun onEnterAnimationComplete() {
+ super.onEnterAnimationComplete()
+ isFinishedAnimating = true
+ }
}
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
=====================================
@@ -76,6 +76,10 @@ public class IntentUtils {
return getSafeIntent(aUri) != null;
}
+ if ("fido".equals(scheme)) {
+ return false;
+ }
+
return true;
}
=====================================
mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
=====================================
@@ -63,4 +63,10 @@ public class IntentUtilsTest {
final String uri = "intent:non_scheme_intent#Intent;end";
assertTrue(IntentUtils.isUriSafeForScheme(uri));
}
+
+ @Test
+ public void unsafeFidoUri() {
+ final String uri = "fido:/12345678";
+ assertFalse(IntentUtils.isUriSafeForScheme(uri));
+ }
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/70…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/70…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag tor-browser-128.8.0esr-14.5-1-build2
by ma1 (@ma1) 11 Mar '25
by ma1 (@ma1) 11 Mar '25
11 Mar '25
ma1 pushed new tag tor-browser-128.8.0esr-14.5-1-build2 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] 5 commits: Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
by ma1 (@ma1) 11 Mar '25
by ma1 (@ma1) 11 Mar '25
11 Mar '25
ma1 pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
7b6625d5 by Tara at 2025-03-11T16:09:32+01:00
Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
Differential Revision: https://phabricator.services.mozilla.com/D236606
- - - - -
3915453d by John Schanck at 2025-03-11T16:09:33+01:00
Bug 1922357 - disallow the fido: URI scheme. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D237313
Differential Revision: https://phabricator.services.mozilla.com/D238681
- - - - -
3d4b0928 by Jeff Boek at 2025-03-11T16:09:34+01:00
Bug 1928334 - Handles animating activities a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D238342
Differential Revision: https://phabricator.services.mozilla.com/D238845
- - - - -
793ba006 by Tom Schuster at 2025-03-11T16:09:36+01:00
Bug 1942022 - Improve the about:protections CSP. r=firefox-desktop-core-reviewers ,mossop
Differential Revision: https://phabricator.services.mozilla.com/D234507
- - - - -
b4b62a4c by Tom Schuster at 2025-03-11T16:09:37+01:00
Bug 1942025 - Improve the about:privatebrowsing CSP. r=firefox-desktop-core-reviewers ,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D234508
- - - - -
11 changed files:
- browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
- browser/components/protections/content/protections.html
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
- mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
- mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
- mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
Changes:
=====================================
browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
=====================================
@@ -10,7 +10,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; img-src chrome: blob:; object-src 'none';"
/>
<meta name="color-scheme" content="light dark" />
<link rel="icon" href="chrome://browser/skin/privatebrowsing/favicon.svg" />
=====================================
browser/components/protections/content/protections.html
=====================================
@@ -8,7 +8,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; object-src 'none'"
/>
<meta name="color-scheme" content="light dark" />
<link rel="localization" href="branding/brand.ftl" />
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
=====================================
@@ -1822,7 +1822,7 @@ class GeckoEngineSession(
internal const val ABOUT_BLANK = "about:blank"
internal const val JS_SCHEME = "javascript"
internal val BLOCKED_SCHEMES =
- listOf("file", "resource", JS_SCHEME) // See 1684761 and 1684947
+ listOf("file", "resource", "fido", JS_SCHEME) // See 1684761 and 1684947
/**
* Provides an ErrorType corresponding to the error code provided.
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
=====================================
@@ -631,6 +631,11 @@ class GeckoEngineSessionTest {
engineSession.loadUrl("RESOURCE://package/test.text")
verify(geckoSession, never()).load(GeckoSession.Loader().uri("resource://package/test.text"))
verify(geckoSession, never()).load(GeckoSession.Loader().uri("RESOURCE://package/test.text"))
+
+ engineSession.loadUrl("fido:/12345678")
+ engineSession.loadUrl("FIDO:/12345678")
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("fido:/12345678"))
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("FIDO:/12345678"))
}
@Test
=====================================
mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
=====================================
@@ -314,6 +314,7 @@ class AppLinksUseCases(
"https", "moz-extension", "moz-safe-about", "resource", "view-source", "ws", "wss", "blob",
)
- internal val ALWAYS_DENY_SCHEMES: Set<String> = setOf("jar", "file", "javascript", "data", "about", "content")
+ internal val ALWAYS_DENY_SCHEMES: Set<String> =
+ setOf("jar", "file", "javascript", "data", "about", "content", "fido")
}
}
=====================================
mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
=====================================
@@ -47,6 +47,7 @@ class AppLinksUseCasesTest {
private val javascriptUrl = "javascript:'hello, world'"
private val jarUrl = "jar:file://some/path/test.html"
private val contentUrl = "content://media/external_primary/downloads/12345"
+ private val fidoPath = "fido:12345678"
private val fileType = "audio/mpeg"
private val layerUrl = "https://example.com"
private val layerPackage = "com.example.app"
@@ -215,6 +216,15 @@ class AppLinksUseCasesTest {
assertFalse(redirect.isRedirect())
}
+ @Test
+ fun `A fido url is not an app link`() {
+ val context = createContext(Triple(fidoPath, appPackage, ""))
+ val subject = AppLinksUseCases(context, { true })
+
+ val redirect = subject.interceptedAppLinkRedirect(fidoPath)
+ assertFalse(redirect.isRedirect())
+ }
+
@Test
fun `Will not redirect app link if browser option set to false and scheme is supported`() {
val context = createContext(Triple(appUrl, appPackage, ""))
=====================================
mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
=====================================
@@ -9,6 +9,7 @@ import android.content.Intent
import androidx.annotation.VisibleForTesting
import androidx.annotation.VisibleForTesting.Companion.PRIVATE
import androidx.core.view.isVisible
+import androidx.fragment.app.DialogFragment
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import kotlinx.coroutines.CoroutineScope
@@ -1094,7 +1095,15 @@ class PromptFeature private constructor(
emitPromptDismissedFact(promptName = promptRequest::class.simpleName.ifNullOrEmpty { "" })
}
+ @VisibleForTesting
+ internal fun redirectDialogFragmentIsActive() =
+ (fragmentManager.findFragmentByTag("SHOULD_OPEN_APP_LINK_PROMPT_DIALOG") as? DialogFragment) != null
+
private fun canShowThisPrompt(promptRequest: PromptRequest): Boolean {
+ if (redirectDialogFragmentIsActive()) {
+ return false
+ }
+
return when (promptRequest) {
is SingleChoice,
is MultipleChoice,
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
=====================================
@@ -905,7 +905,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity, TorAn
return false
}
- final override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
ProfilerMarkers.addForDispatchTouchEvent(components.core.engine.profiler, ev)
return super.dispatchTouchEvent(ev)
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
=====================================
@@ -7,6 +7,7 @@ package org.mozilla.fenix.customtabs
import android.app.assist.AssistContent
import android.net.Uri
import android.os.Build
+import android.view.MotionEvent
import androidx.annotation.RequiresApi
import androidx.annotation.VisibleForTesting
import mozilla.components.browser.state.selector.findCustomTab
@@ -24,6 +25,8 @@ const val EXTRA_IS_SANDBOX_CUSTOM_TAB = "org.mozilla.fenix.customtabs.EXTRA_IS_S
*/
@Suppress("TooManyFunctions")
open class ExternalAppBrowserActivity : HomeActivity() {
+ var isFinishedAnimating = false
+
override fun onResume() {
super.onResume()
@@ -74,4 +77,17 @@ open class ExternalAppBrowserActivity : HomeActivity() {
val currentTabUrl = getExternalTab()?.content?.url
outContent?.webUri = currentTabUrl?.let { Uri.parse(it) }
}
+
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ if (!isFinishedAnimating) {
+ return true
+ }
+
+ return super.dispatchTouchEvent(ev)
+ }
+
+ override fun onEnterAnimationComplete() {
+ super.onEnterAnimationComplete()
+ isFinishedAnimating = true
+ }
}
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
=====================================
@@ -76,6 +76,10 @@ public class IntentUtils {
return getSafeIntent(aUri) != null;
}
+ if ("fido".equals(scheme)) {
+ return false;
+ }
+
return true;
}
=====================================
mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
=====================================
@@ -63,4 +63,10 @@ public class IntentUtilsTest {
final String uri = "intent:non_scheme_intent#Intent;end";
assertTrue(IntentUtils.isUriSafeForScheme(uri));
}
+
+ @Test
+ public void unsafeFidoUri() {
+ final String uri = "fido:/12345678";
+ assertFalse(IntentUtils.isUriSafeForScheme(uri));
+ }
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/d2b56b…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/d2b56b…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag base-browser-128.8.0esr-14.5-1-build2
by ma1 (@ma1) 11 Mar '25
by ma1 (@ma1) 11 Mar '25
11 Mar '25
ma1 pushed new tag base-browser-128.8.0esr-14.5-1-build2 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/base-brow…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-128.8.0esr-14.5-1] 5 commits: Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
by ma1 (@ma1) 11 Mar '25
by ma1 (@ma1) 11 Mar '25
11 Mar '25
ma1 pushed to branch base-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
21515074 by Tara at 2025-03-11T15:57:27+01:00
Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
Differential Revision: https://phabricator.services.mozilla.com/D236606
- - - - -
d5800762 by John Schanck at 2025-03-11T15:57:32+01:00
Bug 1922357 - disallow the fido: URI scheme. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D237313
Differential Revision: https://phabricator.services.mozilla.com/D238681
- - - - -
9faca754 by Jeff Boek at 2025-03-11T15:57:33+01:00
Bug 1928334 - Handles animating activities a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D238342
Differential Revision: https://phabricator.services.mozilla.com/D238845
- - - - -
7759f889 by Tom Schuster at 2025-03-11T15:57:35+01:00
Bug 1942022 - Improve the about:protections CSP. r=firefox-desktop-core-reviewers ,mossop
Differential Revision: https://phabricator.services.mozilla.com/D234507
- - - - -
0beebec4 by Tom Schuster at 2025-03-11T15:57:36+01:00
Bug 1942025 - Improve the about:privatebrowsing CSP. r=firefox-desktop-core-reviewers ,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D234508
- - - - -
11 changed files:
- browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
- browser/components/protections/content/protections.html
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
- mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
- mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
- mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
Changes:
=====================================
browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
=====================================
@@ -10,7 +10,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; img-src chrome: blob:; object-src 'none';"
/>
<meta name="color-scheme" content="light dark" />
<link rel="icon" href="chrome://browser/skin/privatebrowsing/favicon.svg" />
=====================================
browser/components/protections/content/protections.html
=====================================
@@ -8,7 +8,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; object-src 'none'"
/>
<meta name="color-scheme" content="light dark" />
<link rel="localization" href="branding/brand.ftl" />
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
=====================================
@@ -1818,7 +1818,7 @@ class GeckoEngineSession(
internal const val ABOUT_BLANK = "about:blank"
internal const val JS_SCHEME = "javascript"
internal val BLOCKED_SCHEMES =
- listOf("file", "resource", JS_SCHEME) // See 1684761 and 1684947
+ listOf("file", "resource", "fido", JS_SCHEME) // See 1684761 and 1684947
/**
* Provides an ErrorType corresponding to the error code provided.
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
=====================================
@@ -631,6 +631,11 @@ class GeckoEngineSessionTest {
engineSession.loadUrl("RESOURCE://package/test.text")
verify(geckoSession, never()).load(GeckoSession.Loader().uri("resource://package/test.text"))
verify(geckoSession, never()).load(GeckoSession.Loader().uri("RESOURCE://package/test.text"))
+
+ engineSession.loadUrl("fido:/12345678")
+ engineSession.loadUrl("FIDO:/12345678")
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("fido:/12345678"))
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("FIDO:/12345678"))
}
@Test
=====================================
mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
=====================================
@@ -313,6 +313,7 @@ class AppLinksUseCases(
"https", "moz-extension", "moz-safe-about", "resource", "view-source", "ws", "wss", "blob",
)
- internal val ALWAYS_DENY_SCHEMES: Set<String> = setOf("jar", "file", "javascript", "data", "about", "content")
+ internal val ALWAYS_DENY_SCHEMES: Set<String> =
+ setOf("jar", "file", "javascript", "data", "about", "content", "fido")
}
}
=====================================
mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
=====================================
@@ -47,6 +47,7 @@ class AppLinksUseCasesTest {
private val javascriptUrl = "javascript:'hello, world'"
private val jarUrl = "jar:file://some/path/test.html"
private val contentUrl = "content://media/external_primary/downloads/12345"
+ private val fidoPath = "fido:12345678"
private val fileType = "audio/mpeg"
private val layerUrl = "https://example.com"
private val layerPackage = "com.example.app"
@@ -215,6 +216,15 @@ class AppLinksUseCasesTest {
assertFalse(redirect.isRedirect())
}
+ @Test
+ fun `A fido url is not an app link`() {
+ val context = createContext(Triple(fidoPath, appPackage, ""))
+ val subject = AppLinksUseCases(context, { true })
+
+ val redirect = subject.interceptedAppLinkRedirect(fidoPath)
+ assertFalse(redirect.isRedirect())
+ }
+
@Test
fun `Will not redirect app link if browser option set to false and scheme is supported`() {
val context = createContext(Triple(appUrl, appPackage, ""))
=====================================
mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
=====================================
@@ -9,6 +9,7 @@ import android.content.Intent
import androidx.annotation.VisibleForTesting
import androidx.annotation.VisibleForTesting.Companion.PRIVATE
import androidx.core.view.isVisible
+import androidx.fragment.app.DialogFragment
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import kotlinx.coroutines.CoroutineScope
@@ -1094,7 +1095,15 @@ class PromptFeature private constructor(
emitPromptDismissedFact(promptName = promptRequest::class.simpleName.ifNullOrEmpty { "" })
}
+ @VisibleForTesting
+ internal fun redirectDialogFragmentIsActive() =
+ (fragmentManager.findFragmentByTag("SHOULD_OPEN_APP_LINK_PROMPT_DIALOG") as? DialogFragment) != null
+
private fun canShowThisPrompt(promptRequest: PromptRequest): Boolean {
+ if (redirectDialogFragmentIsActive()) {
+ return false
+ }
+
return when (promptRequest) {
is SingleChoice,
is MultipleChoice,
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
=====================================
@@ -798,7 +798,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity {
return false
}
- final override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
ProfilerMarkers.addForDispatchTouchEvent(components.core.engine.profiler, ev)
return super.dispatchTouchEvent(ev)
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
=====================================
@@ -7,6 +7,7 @@ package org.mozilla.fenix.customtabs
import android.app.assist.AssistContent
import android.net.Uri
import android.os.Build
+import android.view.MotionEvent
import androidx.annotation.RequiresApi
import androidx.annotation.VisibleForTesting
import mozilla.components.browser.state.selector.findCustomTab
@@ -24,6 +25,8 @@ const val EXTRA_IS_SANDBOX_CUSTOM_TAB = "org.mozilla.fenix.customtabs.EXTRA_IS_S
*/
@Suppress("TooManyFunctions")
open class ExternalAppBrowserActivity : HomeActivity() {
+ var isFinishedAnimating = false
+
override fun onResume() {
super.onResume()
@@ -74,4 +77,17 @@ open class ExternalAppBrowserActivity : HomeActivity() {
val currentTabUrl = getExternalTab()?.content?.url
outContent?.webUri = currentTabUrl?.let { Uri.parse(it) }
}
+
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ if (!isFinishedAnimating) {
+ return true
+ }
+
+ return super.dispatchTouchEvent(ev)
+ }
+
+ override fun onEnterAnimationComplete() {
+ super.onEnterAnimationComplete()
+ isFinishedAnimating = true
+ }
}
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
=====================================
@@ -76,6 +76,10 @@ public class IntentUtils {
return getSafeIntent(aUri) != null;
}
+ if ("fido".equals(scheme)) {
+ return false;
+ }
+
return true;
}
=====================================
mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
=====================================
@@ -63,4 +63,10 @@ public class IntentUtilsTest {
final String uri = "intent:non_scheme_intent#Intent;end";
assertTrue(IntentUtils.isUriSafeForScheme(uri));
}
+
+ @Test
+ public void unsafeFidoUri() {
+ final String uri = "fido:/12345678";
+ assertFalse(IntentUtils.isUriSafeForScheme(uri));
+ }
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/2aa783…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/2aa783…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser] Pushed new branch tor-browser-128.8.0esr-14.0-1
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed new branch tor-browser-128.8.0esr-14.0-1 at The Tor Project / Applications / Mullvad Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/tor-b…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser][mullvad-browser-128.8.0esr-14.5-1] fixup! MB 63: Customize some about pages for Mullvad Browser
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed to branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
Commits:
705d8618 by Henry Wilkes at 2025-03-11T12:54:10+00:00
fixup! MB 63: Customize some about pages for Mullvad Browser
MB 404: Use aboutRightsMullvad.xhtml in place of aboutRights.xhtml.
- - - - -
1 changed file:
- toolkit/content/jar.mn
Changes:
=====================================
toolkit/content/jar.mn
=====================================
@@ -16,7 +16,9 @@ toolkit.jar:
content/global/aboutProfiles.xhtml
#endif
content/global/aboutRights.js
-#ifdef MOZILLA_OFFICIAL
+#ifdef MULLVAD_BROWSER
+ content/global/aboutRights.xhtml (aboutRightsMullvad.xhtml)
+#elifdef MOZILLA_OFFICIAL
content/global/aboutRights.xhtml
#else
content/global/aboutRights.xhtml (aboutRights-unbranded.xhtml)
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/705…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/705…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser][mullvad-browser-128.8.0esr-14.5-1] 32 commits: MB 38: Mullvad Browser configuration
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed to branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
Commits:
2a456a27 by Pier Angelo Vendrame at 2025-03-10T11:28:45-06:00
MB 38: Mullvad Browser configuration
- - - - -
c3f3d4c6 by Pier Angelo Vendrame at 2025-03-10T11:28:45-06:00
MB 1: Mullvad Browser branding
See also:
mullvad-browser#5: Product name and directory customization
mullvad-browser#12: Create new branding directories and integrate Mullvad icons+branding
mullvad-browser#14: Remove Default Built-in bookmarks
mullvad-browser#35: Add custom PDF icons for Windows builds
mullvad-browser#48: Replace Mozilla copyright and legal trademarks in mullvadbrowser.exe metadata
mullvad-browser#51: Update trademark string
mullvad-browser#104: Update shipped dll metadata copyright/licensing info
mullvad-browser#107: Add alpha and nightly icons
- - - - -
5d9bbae4 by Henry Wilkes at 2025-03-10T11:28:46-06:00
fixup! MB 1: Mullvad Browser branding
MB 312: Differentiate between release channels.
We update the brand.ftl and brand.properties files to add "Alpha" and
"Nightly" to the brand names.
We update about-wordmark.svg to be different between channels and use
context-fill to allow us to customise the appearance in
about:mullvad-browser.
We add mullvad-about-wordmark-en.ftl to provide the English text
equivalent for the wordmark, to be used by screen readers in
about:mullvad-browser.
We add mullvad-branding.css to provide branding colors for
about:mullvad-browser.
We drop firefox-wordmark.svg changes since the asset should be unused in
Mullvad Browser now that about:mullvad-browser uses about-wordmark
instead.
We drop unnecessary rules from branding aboutDialog.css and make sure
the dialog is large enough to show the wordmark for alpha and nightly.
- - - - -
2146695c by Henry Wilkes at 2025-03-10T11:28:46-06:00
Mullvad Browser strings
This commit adds strings needed by the following Mullvad Browser
patches.
- - - - -
92aca1bb by Henry Wilkes at 2025-03-10T11:28:46-06:00
fixup! Mullvad Browser strings
MB 312: Drop mullvad-browser string which has been replaced with
mullvad-about-wordmark-en.
- - - - -
7e934a44 by Pier Angelo Vendrame at 2025-03-10T11:28:47-06:00
MB 20: Allow packaged-addons in PBM.
We install a few addons from the distribution directory, but they are
not automatically enabled for PBM mode.
This commit modifies the code that installs them to also add the PBM
permission to the known ones.
- - - - -
01d964a1 by Pier Angelo Vendrame at 2025-03-10T11:28:47-06:00
MB 63: Customize some about pages for Mullvad Browser
Also:
mullvad-browser#57: Purge unneeded about: pages
- - - - -
f2941bc2 by Pier Angelo Vendrame at 2025-03-10T11:28:47-06:00
MB 37: Customization for the about dialog
- - - - -
ed70935d by Henry Wilkes at 2025-03-10T11:28:48-06:00
MB 39: Add home page about:mullvad-browser
- - - - -
c4281e50 by Henry Wilkes at 2025-03-10T11:28:48-06:00
fixup! MB 39: Add home page about:mullvad-browser
MB 312: Update the home page for different release channels.
We use about-wordmark.svg instead of firefox-wordmark.svg.
We use the colors from the mullvad-branding.css sheet to colour the
background, link text and outline colors.
We now properly support contrast themes, where we do not apply the
branding colors.
We tweak the sizing and spacing.
We switch from XHTML to HTML.
We consistently use kebab case for the DOM IDs, rather than camel case.
We drop the Open Sans font.
- - - - -
d69b0130 by hackademix at 2025-03-10T11:28:48-06:00
MB 97: Remove UI cues to install new extensions.
- - - - -
eaa55b51 by hackademix at 2025-03-10T11:28:49-06:00
MB 47: uBlock Origin customization
- - - - -
513327cd by Pier Angelo Vendrame at 2025-03-10T11:42:27-06:00
MB 21: Disable the password manager
This commit disables the about:login page and removes the "Login and
Password" section of about:preferences.
We do not do anything to the real password manager of Firefox, that is
in toolkit: it contains C++ parts that make it difficult to actually
prevent it from being built..
Finally, we modify the the function that opens about:login to report an
error in the console so that we can quickly get a backtrace to the code
that tries to use it.
- - - - -
99874c27 by Pier Angelo Vendrame at 2025-03-10T11:42:48-06:00
MB 112: Updater customization for Mullvad Browser
MB 71: Set the updater base URL to Mullvad domain
- - - - -
7cf7ac7a by Nicolas Vigier at 2025-03-10T11:42:49-06:00
MB 79: Add Mullvad Browser MAR signing keys
MB 256: Add mullvad-browser nightly mar signing key
- - - - -
f6b6ec48 by Pier Angelo Vendrame at 2025-03-10T11:42:49-06:00
MB 34: Hide unsafe and unwanted preferences UI
about:preferences allow to override some of our defaults, that could
be fingeprintable or have some other unwanted consequences.
- - - - -
ee933853 by Pier Angelo Vendrame at 2025-03-10T11:42:49-06:00
MB 160: Disable the cookie exceptions button
Besides disabling the "Delete on close checkbox", disable also the
"Manage Exceptions" button when always using PBM.
- - - - -
2d43c87a by hackademix at 2025-03-10T11:42:50-06:00
MB 163: prevent uBlock Origin from being uninstalled/disabled
- - - - -
3c0517b6 by Richard Pospesel at 2025-03-10T11:42:50-06:00
MB 188: Customize Gitlab Issue and Merge templates
- - - - -
dfeb2818 by Morgan at 2025-03-10T11:42:50-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
add rebase template for rapid channel
- - - - -
4091dbf3 by Morgan at 2025-03-10T11:42:50-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
tweak backport temlpate for mullvad-browser
- - - - -
a6bd37e9 by Morgan at 2025-03-10T11:42:51-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
add /label Apps::Type::Rebase to rebase issue template
- - - - -
ce6498b8 by Morgan at 2025-03-10T11:42:51-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
add backport template and tweak the uplift template
- - - - -
43978767 by hackademix at 2025-03-10T11:42:51-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
TBB 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation
- - - - -
e6ee15dc by rui hildt at 2025-03-10T11:42:52-06:00
MB 213: Customize the search engines list
MB 328: Refactor the search engine patch.
Upstream switched to a completely different search engine configuration
between ESR 115 and ESR 128.
We moved our configuration to a couple of JSON files that do not follow
upstream's schemas, as they are overcomplicated for our needs.
Also, we keep the old search engine extensions for now, as upstream
also kept them, and planned of removing them with Bug 1885953.
- - - - -
ff0fe851 by Pier Angelo Vendrame at 2025-03-10T11:42:52-06:00
fixup! MB 213: Customize the search engines list
MB 395: Make Leta the default search engine.
- - - - -
0cd3a258 by hackademix at 2025-03-10T11:42:52-06:00
MB 214: Enable cross-tab identity leak protection in "quiet" mode
- - - - -
c337a046 by Pier Angelo Vendrame at 2025-03-10T11:42:53-06:00
MB 80: Enable Mullvad Browser as a default browser
- - - - -
42f31630 by Pier Angelo Vendrame at 2025-03-10T11:42:53-06:00
MB 320: Temporarily disable WebRTC and WDBA on Windows.
WebRTC should be re-enabled when tor-browser#42758 is resolved, and and
the default browser agent when in general we make this feature work
again.
- - - - -
0e5b089a by Henry Wilkes at 2025-03-10T11:42:53-06:00
MB 329: Customize toolbar for mullvad-browser.
- - - - -
80367e1e by Henry Wilkes at 2025-03-10T11:42:53-06:00
Add CI for Mullvad Browser
- - - - -
a5d58219 by Kershaw Chang at 2025-03-10T11:42:54-06:00
Bug 1910593 - Don't prefetch HTTPS RR if proxyDNS is enabled, r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D219528
- - - - -
275 changed files:
- .gitlab/ci/jobs/update-translations.yml
- .gitlab/issue_templates/Backport.md
- .gitlab/issue_templates/Emergency Security Issue.md
- + .gitlab/issue_templates/Rebase Browser - Alpha.md
- + .gitlab/issue_templates/Rebase Browser - Rapid.md
- + .gitlab/issue_templates/Rebase Browser - Stable.md
- .gitlab/merge_request_templates/default.md
- browser/app/Makefile.in
- browser/app/macbuild/Contents/Info.plist.in
- browser/app/module.ver
- browser/app/firefox.exe.manifest → browser/app/mullvadbrowser.exe.manifest
- + browser/app/profile/000-mullvad-browser.js
- browser/app/profile/001-base-profile.js
- browser/base/content/aboutDialog.xhtml
- browser/base/content/appmenu-viewcache.inc.xhtml
- browser/base/content/browser-menubar.inc
- browser/base/content/browser-places.js
- browser/base/content/browser.js
- browser/base/content/default-bookmarks.html
- browser/base/content/nsContextMenu.js
- browser/base/content/overrides/app-license.html
- browser/base/content/pageinfo/pageInfo.xhtml
- browser/base/content/utilityOverlay.js
- browser/branding/branding-common.mozbuild
- + browser/branding/mb-alpha/VisualElements_150.png
- + browser/branding/mb-alpha/VisualElements_70.png
- + browser/branding/mb-alpha/configure.sh
- + browser/branding/mb-alpha/content/about-logo.png
- + browser/branding/mb-alpha/content/about-logo.svg
- + browser/branding/mb-alpha/content/about-logo(a)2x.png
- + browser/branding/mb-alpha/content/about-wordmark.svg
- + browser/branding/mb-alpha/content/about.png
- + browser/branding/mb-alpha/content/aboutDialog.css
- + browser/branding/mb-alpha/content/firefox-wordmark.svg
- + browser/branding/mb-alpha/content/icon128.png
- + browser/branding/mb-alpha/content/icon16.png
- + browser/branding/mb-alpha/content/icon256.png
- + browser/branding/mb-alpha/content/icon32.png
- + browser/branding/mb-alpha/content/icon48.png
- + browser/branding/mb-alpha/content/icon64.png
- + browser/branding/mb-alpha/content/jar.mn
- + browser/branding/mb-alpha/content/moz.build
- + browser/branding/mb-alpha/content/mullvad-branding.css
- + browser/branding/mb-alpha/default128.png
- + browser/branding/mb-alpha/default16.png
- + browser/branding/mb-alpha/default22.png
- + browser/branding/mb-alpha/default24.png
- + browser/branding/mb-alpha/default256.png
- + browser/branding/mb-alpha/default32.png
- + browser/branding/mb-alpha/default48.png
- + browser/branding/mb-alpha/default64.png
- + browser/branding/mb-alpha/document.icns
- + browser/branding/mb-alpha/document.ico
- + browser/branding/mb-alpha/document_pdf.ico
- + browser/branding/mb-alpha/firefox.icns
- + browser/branding/mb-alpha/firefox.ico
- + browser/branding/mb-alpha/firefox.svg
- + browser/branding/mb-alpha/locales/en-US/brand.ftl
- + browser/branding/mb-alpha/locales/en-US/brand.properties
- + browser/branding/mb-alpha/locales/jar.mn
- + browser/branding/mb-alpha/locales/moz.build
- + browser/branding/mb-alpha/locales/mullvad-about-wordmark-en.ftl
- + browser/branding/mb-alpha/moz.build
- + browser/branding/mb-alpha/mullvadbrowser.VisualElementsManifest.xml
- + browser/branding/mb-alpha/newtab.ico
- + browser/branding/mb-alpha/newwindow.ico
- + browser/branding/mb-alpha/pbmode.ico
- + browser/branding/mb-alpha/pref/firefox-branding.js
- + browser/branding/mb-nightly/VisualElements_150.png
- + browser/branding/mb-nightly/VisualElements_70.png
- + browser/branding/mb-nightly/configure.sh
- + browser/branding/mb-nightly/content/about-logo.png
- + browser/branding/mb-nightly/content/about-logo.svg
- + browser/branding/mb-nightly/content/about-logo(a)2x.png
- + browser/branding/mb-nightly/content/about-wordmark.svg
- + browser/branding/mb-nightly/content/about.png
- + browser/branding/mb-nightly/content/aboutDialog.css
- + browser/branding/mb-nightly/content/firefox-wordmark.svg
- + browser/branding/mb-nightly/content/icon128.png
- + browser/branding/mb-nightly/content/icon16.png
- + browser/branding/mb-nightly/content/icon256.png
- + browser/branding/mb-nightly/content/icon32.png
- + browser/branding/mb-nightly/content/icon48.png
- + browser/branding/mb-nightly/content/icon64.png
- + browser/branding/mb-nightly/content/jar.mn
- + browser/branding/mb-nightly/content/moz.build
- + browser/branding/mb-nightly/content/mullvad-branding.css
- + browser/branding/mb-nightly/default128.png
- + browser/branding/mb-nightly/default16.png
- + browser/branding/mb-nightly/default22.png
- + browser/branding/mb-nightly/default24.png
- + browser/branding/mb-nightly/default256.png
- + browser/branding/mb-nightly/default32.png
- + browser/branding/mb-nightly/default48.png
- + browser/branding/mb-nightly/default64.png
- + browser/branding/mb-nightly/document.icns
- + browser/branding/mb-nightly/document.ico
- + browser/branding/mb-nightly/document_pdf.ico
- + browser/branding/mb-nightly/firefox.icns
- + browser/branding/mb-nightly/firefox.ico
- + browser/branding/mb-nightly/firefox.svg
- + browser/branding/mb-nightly/locales/en-US/brand.ftl
- + browser/branding/mb-nightly/locales/en-US/brand.properties
- + browser/branding/mb-nightly/locales/jar.mn
- + browser/branding/mb-nightly/locales/moz.build
- + browser/branding/mb-nightly/locales/mullvad-about-wordmark-en.ftl
- + browser/branding/mb-nightly/moz.build
- + browser/branding/mb-nightly/mullvadbrowser.VisualElementsManifest.xml
- + browser/branding/mb-nightly/newtab.ico
- + browser/branding/mb-nightly/newwindow.ico
- + browser/branding/mb-nightly/pbmode.ico
- + browser/branding/mb-nightly/pref/firefox-branding.js
- + browser/branding/mb-release/VisualElements_150.png
- + browser/branding/mb-release/VisualElements_70.png
- + browser/branding/mb-release/configure.sh
- + browser/branding/mb-release/content/about-logo.png
- + browser/branding/mb-release/content/about-logo.svg
- + browser/branding/mb-release/content/about-logo(a)2x.png
- + browser/branding/mb-release/content/about-wordmark.svg
- + browser/branding/mb-release/content/about.png
- + browser/branding/mb-release/content/aboutDialog.css
- + browser/branding/mb-release/content/firefox-wordmark.svg
- + browser/branding/mb-release/content/icon128.png
- + browser/branding/mb-release/content/icon16.png
- + browser/branding/mb-release/content/icon256.png
- + browser/branding/mb-release/content/icon32.png
- + browser/branding/mb-release/content/icon48.png
- + browser/branding/mb-release/content/icon64.png
- + browser/branding/mb-release/content/jar.mn
- + browser/branding/mb-release/content/moz.build
- + browser/branding/mb-release/content/mullvad-branding.css
- + browser/branding/mb-release/default128.png
- + browser/branding/mb-release/default16.png
- + browser/branding/mb-release/default22.png
- + browser/branding/mb-release/default24.png
- + browser/branding/mb-release/default256.png
- + browser/branding/mb-release/default32.png
- + browser/branding/mb-release/default48.png
- + browser/branding/mb-release/default64.png
- + browser/branding/mb-release/document.icns
- + browser/branding/mb-release/document.ico
- + browser/branding/mb-release/document_pdf.ico
- + browser/branding/mb-release/firefox.icns
- + browser/branding/mb-release/firefox.ico
- + browser/branding/mb-release/firefox.svg
- + browser/branding/mb-release/locales/en-US/brand.ftl
- + browser/branding/mb-release/locales/en-US/brand.properties
- + browser/branding/mb-release/locales/jar.mn
- + browser/branding/mb-release/locales/moz.build
- + browser/branding/mb-release/locales/mullvad-about-wordmark-en.ftl
- + browser/branding/mb-release/moz.build
- + browser/branding/mb-release/mullvadbrowser.VisualElementsManifest.xml
- + browser/branding/mb-release/newtab.ico
- + browser/branding/mb-release/newwindow.ico
- + browser/branding/mb-release/pbmode.ico
- + browser/branding/mb-release/pref/firefox-branding.js
- browser/components/BrowserContentHandler.sys.mjs
- browser/components/BrowserGlue.sys.mjs
- browser/components/about/AboutRedirector.cpp
- browser/components/about/components.conf
- browser/components/customizableui/CustomizableUI.sys.mjs
- browser/components/moz.build
- + browser/components/mullvad-browser/AboutMullvadBrowserChild.sys.mjs
- + browser/components/mullvad-browser/AboutMullvadBrowserParent.sys.mjs
- + browser/components/mullvad-browser/content/2728-sparkles.svg
- + browser/components/mullvad-browser/content/aboutMullvadBrowser.css
- + browser/components/mullvad-browser/content/aboutMullvadBrowser.html
- + browser/components/mullvad-browser/content/aboutMullvadBrowser.js
- + browser/components/mullvad-browser/jar.mn
- + browser/components/mullvad-browser/moz.build
- browser/components/newtab/AboutNewTabService.sys.mjs
- browser/components/preferences/home.inc.xhtml
- browser/components/preferences/main.js
- browser/components/preferences/preferences.xhtml
- browser/components/preferences/privacy.inc.xhtml
- browser/components/preferences/privacy.js
- browser/components/preferences/search.inc.xhtml
- + browser/components/search/extensions/brave/favicon.svg
- + browser/components/search/extensions/brave/manifest.json
- + browser/components/search/extensions/ddg-html/favicon.ico
- + browser/components/search/extensions/ddg-html/manifest.json
- browser/components/search/extensions/ddg/manifest.json
- + browser/components/search/extensions/metager/favicon.ico
- + browser/components/search/extensions/metager/manifest.json
- + browser/components/search/extensions/mojeek/favicon.ico
- + browser/components/search/extensions/mojeek/manifest.json
- + browser/components/search/extensions/mullvad-leta/favicon.svg
- + browser/components/search/extensions/mullvad-leta/manifest.json
- + browser/components/search/extensions/startpage/favicon.png
- + browser/components/search/extensions/startpage/manifest.json
- browser/components/shell/ShellService.sys.mjs
- browser/components/shell/WindowsDefaultBrowser.cpp
- browser/components/shell/nsWindowsShellService.cpp
- browser/config/mozconfigs/base-browser
- + browser/config/mozconfigs/mullvad-browser
- browser/confvars.sh
- browser/installer/package-manifest.in
- browser/installer/windows/nsis/updater_append.ini
- browser/modules/HomePage.sys.mjs
- browser/moz.build
- config/create_rc.py
- devtools/client/aboutdebugging/src/actions/runtimes.js
- devtools/client/aboutdebugging/src/components/sidebar/Sidebar.js
- devtools/client/jar.mn
- devtools/client/themes/images/aboutdebugging-firefox-aurora.svg
- devtools/client/themes/images/aboutdebugging-firefox-beta.svg
- devtools/client/themes/images/aboutdebugging-firefox-logo.svg
- devtools/client/themes/images/aboutdebugging-firefox-nightly.svg
- devtools/client/themes/images/aboutdebugging-firefox-release.svg
- + devtools/client/themes/images/aboutdebugging-mullvadbrowser-logo.svg
- docshell/base/nsAboutRedirector.cpp
- docshell/build/components.conf
- dom/chrome-webidl/NetDashboard.webidl
- moz.configure
- mozconfig-linux-aarch64
- mozconfig-linux-aarch64-dev
- mozconfig-linux-x86_64
- mozconfig-linux-x86_64-asan
- mozconfig-linux-x86_64-dev
- mozconfig-macos
- mozconfig-macos-dev
- mozconfig-windows-x86_64
- netwerk/base/Dashboard.cpp
- netwerk/base/DashboardTypes.h
- netwerk/dns/nsHostResolver.cpp
- netwerk/protocol/http/nsHttp.cpp
- netwerk/protocol/http/nsHttp.h
- netwerk/protocol/http/nsHttpChannel.cpp
- netwerk/protocol/http/nsHttpChannel.h
- netwerk/protocol/http/nsHttpConnectionInfo.h
- netwerk/protocol/http/nsHttpConnectionMgr.cpp
- netwerk/protocol/http/nsHttpHandler.cpp
- netwerk/protocol/http/nsHttpHandler.h
- + netwerk/test/unit/test_proxyDNS_leak.js
- netwerk/test/unit/xpcshell.toml
- + other-licenses/nsis/Contrib/ApplicationID/Makefile
- + other-licenses/nsis/Contrib/CityHash/Makefile
- toolkit/components/extensions/child/ext-storage.js
- toolkit/components/extensions/parent/ext-storage.js
- toolkit/components/passwordmgr/LoginHelper.sys.mjs
- toolkit/components/search/AppProvidedSearchEngine.sys.mjs
- toolkit/components/search/SearchService.sys.mjs
- + toolkit/components/search/content/brave.svg
- + toolkit/components/search/content/duckduckgo.ico
- + toolkit/components/search/content/metager.ico
- + toolkit/components/search/content/mojeek.ico
- + toolkit/components/search/content/mullvad-leta.svg
- + toolkit/components/search/content/mullvadBrowserSearchEngineIcons.json
- + toolkit/components/search/content/mullvadBrowserSearchEngines.json
- + toolkit/components/search/content/startpage.png
- + toolkit/components/search/jar.mn
- toolkit/components/search/moz.build
- toolkit/components/securitylevel/SecurityLevel.sys.mjs
- toolkit/content/aboutNetworking.js
- + toolkit/content/aboutRightsMullvad.xhtml
- + toolkit/content/aboutTelemetryMullvad.xhtml
- toolkit/content/jar.mn
- toolkit/content/widgets/moz-support-link/moz-support-link.mjs
- + toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl
- toolkit/mozapps/defaultagent/EventLog.h
- toolkit/mozapps/defaultagent/SetDefaultBrowser.cpp
- toolkit/mozapps/extensions/AddonManager.sys.mjs
- toolkit/mozapps/extensions/content/aboutaddons.css
- toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
- toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs
- toolkit/mozapps/update/updater/nightly_aurora_level3_primary.der
- toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der
- toolkit/mozapps/update/updater/release_primary.der
- toolkit/mozapps/update/updater/release_secondary.der
- + toolkit/themes/shared/icons/mullvadbrowser.png
- toolkit/themes/shared/minimal-toolkit.jar.inc.mn
- toolkit/xre/nsAppRunner.cpp
- tools/lint/fluent-lint/exclusions.yml
- widget/windows/WinTaskbar.cpp
- widget/windows/moz.build
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/2a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/2a…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] 2 commits: Bug 41389: Always generate and load set-config.generated-config
by morgan (@morgan) 11 Mar '25
by morgan (@morgan) 11 Mar '25
11 Mar '25
morgan pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
4c29020e by Nicolas Vigier at 2025-03-10T13:44:39+01:00
Bug 41389: Always generate and load set-config.generated-config
- - - - -
810e8e20 by Nicolas Vigier at 2025-03-10T13:44:39+01:00
Bug 41389: Remove set-config.tbb-version
The signing script will now get the version information from rbm config.
- - - - -
12 changed files:
- .gitlab/issue_templates/Release Prep - Mullvad Browser Alpha.md
- .gitlab/issue_templates/Release Prep - Tor Browser Alpha.md
- tools/signing/dmg2mar
- tools/signing/functions
- tools/signing/linux-signer-authenticode-signing
- tools/signing/linux-signer-gpg-sign
- tools/signing/linux-signer-rcodesign-sign
- tools/signing/linux-signer-sign-android-apks
- tools/signing/linux-signer-signmars
- tools/signing/set-config
- − tools/signing/set-config.tbb-version
- tools/signing/upload-update_responses-to-staticiforme
Changes:
=====================================
.gitlab/issue_templates/Release Prep - Mullvad Browser Alpha.md
=====================================
@@ -137,7 +137,7 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch
- pierov
- [ ] Ensure all builders have matching builds
- [ ] On `${STAGING_SERVER}`, ensure updated:
- - **NOTE** Having a local git branch with `main` as the upstream branch with these values saved means you only need to periodically `git pull --rebase` and update the `set-config.tbb-version` file
+ - **NOTE** Having a local git branch with `main` as the upstream branch with these values saved means you only need to periodically `git pull --rebase`
- [ ] `tor-browser-build` is on the right commit: `git tag -v mb-${MULLVAD_BROWSER_VERSION}-${MULLVAD_BROWSER_BUILD_N} && git checkout mb-${MULLVAD_BROWSER_VERSION}-${MULLVAD_BROWSER_BUILD_N}`
- [ ] `tor-browser-build/tools/signing/set-config.hosts`
- `ssh_host_builder`: ssh hostname of machine with unsigned builds
@@ -147,10 +147,6 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch
- `appstoreconnect_api_key_path`: path to json file containing appstoreconnect api key infos
- [ ] `set-config.update-responses`
- `update_responses_repository_dir`: directory where you cloned `git@gitlab.torproject.org:tpo/applications/mullvad-browser-update-responses.git`
- - [ ] `tor-browser-build/tools/signing/set-config.tbb-version`
- - `tbb_version`: mullvad browser version string, same as `var/torbrowser_version` in `rbm.conf` (examples: `11.5a12`, `11.0.13`)
- - `tbb_version_build`: the tor-browser-build build number (if `var/torbrowser_build` in `rbm.conf` is `buildN` then this value is `N`)
- - `tbb_version_type`: either `alpha` for alpha releases or `release` for stable releases
- [ ] On `${STAGING_SERVER}` in a separate `screen` session, ensure tor daemon is running with SOCKS5 proxy on the default port 9050
- [ ] On `${STAGING_SERVER}` in a separate `screen` session, run do-all-signing script:
- Run:
=====================================
.gitlab/issue_templates/Release Prep - Tor Browser Alpha.md
=====================================
@@ -192,7 +192,7 @@ Tor Browser Alpha (and Nightly) are on the `main` branch
- pierov
- [ ] Ensure all builders have matching builds
- [ ] On `${STAGING_SERVER}`, ensure updated:
- - **NOTE** Having a local git branch with `main` as the upstream branch with these values saved means you only need to periodically `git pull --rebase` and update the `set-config.tbb-version` file
+ - **NOTE** Having a local git branch with `main` as the upstream branch with these values saved means you only need to periodically `git pull --rebase`
- [ ] `tor-browser-build` is on the right commit: `git tag -v tbb-${TOR_BROWSER_VERSION}-${TOR_BROWSER_BUILD_N} && git checkout tbb-${TOR_BROWSER_VERSION}-${TOR_BROWSER_BUILD_N}`
- [ ] `tor-browser-build/tools/signing/set-config.hosts`
- `ssh_host_builder`: ssh hostname of machine with unsigned builds
@@ -202,10 +202,6 @@ Tor Browser Alpha (and Nightly) are on the `main` branch
- `appstoreconnect_api_key_path`: path to json file containing appstoreconnect api key infos
- [ ] `set-config.update-responses`
- `update_responses_repository_dir`: directory where you cloned `git@gitlab.torproject.org:tpo/applications/tor-browser-update-responses.git`
- - [ ] `tor-browser-build/tools/signing/set-config.tbb-version`
- - `tbb_version`: tor browser version string, same as `var/torbrowser_version` in `rbm.conf` (examples: `11.5a12`, `11.0.13`)
- - `tbb_version_build`: the tor-browser-build build number (if `var/torbrowser_build` in `rbm.conf` is `buildN` then this value is `N`)
- - `tbb_version_type`: either `alpha` for alpha releases or `release` for stable releases
- [ ] On `${STAGING_SERVER}` in a separate `screen` session, ensure tor daemon is running with SOCKS5 proxy on the default port 9050
- [ ] On `${STAGING_SERVER}` in a separate `screen` session, run do-all-signing script:
- Run:
=====================================
tools/signing/dmg2mar
=====================================
@@ -13,10 +13,6 @@ cd "$script_dir/../.."
# some initial checks to make sure directories and file counts are as expected...
-version=$(./rbm/rbm showconf browser --target alpha --target $SIGNING_PROJECTNAME-linux-x86_64 var/torbrowser_version)
-test "$version" = "$tbb_version" || \
- exit_error "Incorrect tor browser version: $version != $tbb_version"
-
test -d "$signed_version_dir" || \
exit_error "$signed_version_dir does not exist"
=====================================
tools/signing/functions
=====================================
@@ -13,12 +13,6 @@ function var_is_defined {
done
}
-function check_torbrowser_version_var {
- local tbver=$("$script_dir/../../rbm/rbm" showconf browser --target "$SIGNING_PROJECTNAME" var/torbrowser_version)
- test "$tbver" != "$tbb_version" && exit_error "Wrong tbb_version: $tbver != $tbb_version"
- return 0
-}
-
function check_update_responses_repository_dir {
if test -z "$update_responses_repository_dir" || ! test -d "$update_responses_repository_dir"
then
@@ -36,44 +30,43 @@ function is_project {
}
function generate_config {
- p1=$("$rbm" showconf browser var/project-name --target "$SIGNING_PROJECTNAME")
- p2=$("$rbm" showconf browser var/Project_Name --target "$SIGNING_PROJECTNAME")
- p3=$("$rbm" showconf browser var/ProjectName --target "$SIGNING_PROJECTNAME")
- p4=$("$rbm" showconf browser var/display_name --target "$SIGNING_PROJECTNAME" --target "$tbb_version_type")
- echo 'rbm_not_available=1' > "$script_dir/set-config.generated-config"
- echo "SIGNING_PROJECTNAMES=(\"$p1\" \"$p2\" \"$p3\" \"$p4\")" >> "$script_dir/set-config.generated-config"
+ local p1=$("$rbm" showconf browser var/project-name --target \
+ "$SIGNING_PROJECTNAME")
+ local p2=$("$rbm" showconf browser var/Project_Name --target \
+ "$SIGNING_PROJECTNAME")
+ local p3=$("$rbm" showconf browser var/ProjectName --target \
+ "$SIGNING_PROJECTNAME")
+ p4=$("$rbm" showconf browser var/display_name --target \
+ "$SIGNING_PROJECTNAME" --target "$tbb_version_type")
+ echo "SIGNING_PROJECTNAMES=(\"$p1\" \"$p2\" \"$p3\" \"$p4\")" > \
+ "$script_dir/set-config.generated-config"
+ local tbb_version_type=$("$rbm" showconf browser \ var/browser_default_channel \
+ --target "$SIGNING_PROJECTNAME")
+ local tbb_version=$("$rbm" showconf browser var/torbrowser_version \
+ --target "$SIGNING_PROJECTNAME" --target \
+ "$tbb_version_type")
+ local tbb_version_build=$("$rbm" showconf browser var/torbrowser_build \
+ --target "$SIGNING_PROJECTNAME" --target \
+ "$tbb_version_type")
+ for v in tbb_version_type tbb_version tbb_version_build; do
+ echo "$v=$(shell-quote "${!v}")" >> "$script_dir/set-config.generated-config"
+ done
}
function project-name {
- if test -n "${rbm_not_available+x}"; then
- echo "${SIGNING_PROJECTNAMES[0]}"
- else
- "$rbm" showconf browser var/project-name --target "$SIGNING_PROJECTNAME"
- fi
+ echo "${SIGNING_PROJECTNAMES[0]}"
}
function Project_Name {
- if test -n "${rbm_not_available+x}"; then
- echo "${SIGNING_PROJECTNAMES[1]}"
- else
- "$rbm" showconf browser var/Project_Name --target "$SIGNING_PROJECTNAME"
- fi
+ echo "${SIGNING_PROJECTNAMES[1]}"
}
function ProjectName {
- if test -n "${rbm_not_available+x}"; then
- echo "${SIGNING_PROJECTNAMES[2]}"
- else
- "$rbm" showconf browser var/ProjectName --target "$SIGNING_PROJECTNAME"
- fi
+ echo "${SIGNING_PROJECTNAMES[2]}"
}
function display_name {
- if test -n "${rbm_not_available+x}"; then
- echo "${SIGNING_PROJECTNAMES[3]}"
- else
- "$rbm" showconf browser var/display_name --target "$SIGNING_PROJECTNAME" --target "$tbb_version_type"
- fi
+ echo "${SIGNING_PROJECTNAMES[3]}"
}
=====================================
tools/signing/linux-signer-authenticode-signing
=====================================
@@ -1,6 +1,7 @@
#!/bin/bash
set -e
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
=====================================
tools/signing/linux-signer-gpg-sign
=====================================
@@ -1,6 +1,7 @@
#!/bin/bash
set -e
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
=====================================
tools/signing/linux-signer-rcodesign-sign
=====================================
@@ -1,9 +1,9 @@
#!/bin/bash
set -e
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
-source "$script_dir/set-config.generated-config"
# tbb_version_type is used in wrappers/sign-rcodesign, so we export it
export tbb_version_type
=====================================
tools/signing/linux-signer-sign-android-apks
=====================================
@@ -1,9 +1,9 @@
#!/bin/bash
set -e
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
-source "$script_dir/set-config.generated-config"
topdir="$script_dir/../.."
ARCHS="armv7 aarch64 x86 x86_64"
=====================================
tools/signing/linux-signer-signmars
=====================================
@@ -3,6 +3,7 @@
set -e
set -u
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
=====================================
tools/signing/set-config
=====================================
@@ -20,9 +20,11 @@ test "$SIGNING_PROJECTNAME" = 'torbrowser' \
export SIGNING_PROJECTNAME
-test -z "${rbm_not_available+x}" && rbm="$script_dir/../../rbm/rbm"
+rbm="$script_dir/../../rbm/rbm"
-. "$script_dir/set-config.tbb-version"
+test -z "$no_generate_config" && generate_config
+. "$script_dir/set-config.generated-config"
+export no_generate_config=1
test "$tbb_version_type" = 'release' \
|| test "$tbb_version_type" = 'alpha' \
=====================================
tools/signing/set-config.tbb-version deleted
=====================================
@@ -1,7 +0,0 @@
-# The following 3 lines should be uncommented and updated:
-
-#tbb_version=11.5a4
-#tbb_version_build=1
-#tbb_version_type=alpha
-
-var_is_defined tbb_version tbb_version_build tbb_version_type
=====================================
tools/signing/upload-update_responses-to-staticiforme
=====================================
@@ -4,8 +4,6 @@ script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
source "$script_dir/set-config.update-responses"
-check_torbrowser_version_var
-
update_responses_tar_filename="update-responses-$tbb_version_type-$tbb_version.tar"
update_responses_tar="$script_dir/../../$SIGNING_PROJECTNAME/$tbb_version_type/update-responses/$update_responses_tar_filename"
test -f "$update_responses_tar" && \
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] fixup! TB 41089: Add tor-browser build scripts + Makefile to tor-browser
by Dan Ballard (@dan) 10 Mar '25
by Dan Ballard (@dan) 10 Mar '25
10 Mar '25
Dan Ballard pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
d2b56be1 by clairehurst at 2025-03-10T19:25:21+00:00
fixup! TB 41089: Add tor-browser build scripts + Makefile to tor-browser
Update android-env-macos-template.sh
- - - - -
1 changed file:
- tools/geckoview/android-env-macos-template.sh
Changes:
=====================================
tools/geckoview/android-env-macos-template.sh
=====================================
@@ -1,6 +1,8 @@
-export JAVA_HOME=/opt/homebrew/opt/openjdk(a)11/libexec/openjdk.jdk/Contents/Home/ # for arm64. Or JAVA_HOME=/usr/local/opt/openjdk(a)11/libexec/openjdk.jdk/Contents/Home/ for x86_64.
+export JAVA_HOME=/opt/homebrew/opt/openjdk(a)17/libexec/openjdk.jdk/Contents/Home/ # for arm64. Or JAVA_HOME=/usr/local/opt/openjdk(a)17/libexec/openjdk.jdk/Contents/Home/ for x86_64.
export ANDROID_HOME=$HOME/Library/Android/sdk # or $HOME/.mozbuild/android-sdk-macosx/
-export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/23.2.8568313 # will need to download NDK 23.2.8568313 via android studio
-export GRADLE_HOME=/opt/homebrew/Cellar/gradle(a)7/7.6.4 # for arm64 or /usr/local/Cellar/gradle(a)7/7.6.4 for x86_64. Make sure the version is up to date
+export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/26.2.11394342 # will need to download the relevant NDK via android studio (e.g. 26.2.11394342)
+GRADLE_DIR=/opt/homebrew/Cellar/gradle # for arm64, or /usr/local/Cellar/gradle for x86_64. Download via homebrew.
+GRADLE_VERSION=`ls -1 "$GRADLE_DIR" | sort -hr | head -n 1` # Finds the latest gradle version in the specified GRADLE_DIR
+export GRADLE_HOME=$GRADLE_DIR/$GRADLE_VERSION
export LOCAL_DEV_BUILD=1
-export PATH=$ANDROID_HOME/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/bin/:$PATH # prepend android studios latest ndk to the path so it's clang gets used to build geckoview. NDK 25.2.9519653 uses clang 14.0.7, ideally we'd use clang 16 (to be the same as Linux) but that's not an option yet for android studio. NDK 26.1.10909125 uses clang 17.0.2, which we should evaluate with the esr128 migration
+export PATH=$ANDROID_HOME/ndk/26.2.11394342/toolchains/llvm/prebuilt/darwin-x86_64/bin/:$PATH # prepend android studios latest ndk to the path so it's clang gets used to build geckoview. Note that it doesn't need to be the same version as above
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/d2b56be…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/d2b56be…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] fixup! [android] Implement Android-native Connection Assist UI
by Dan Ballard (@dan) 10 Mar '25
by Dan Ballard (@dan) 10 Mar '25
10 Mar '25
Dan Ballard pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
d3a9fcd2 by clairehurst at 2025-03-10T10:52:05-06:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser#43480
- - - - -
6 changed files:
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBootstrapProgressViewModel.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/UrlQuickLoadViewModel.kt
Changes:
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
=====================================
@@ -155,7 +155,7 @@ import java.util.Locale
import mozilla.components.browser.engine.gecko.GeckoEngine
import org.mozilla.fenix.components.FenixSnackbar
import org.mozilla.fenix.home.HomeFragment
-import org.mozilla.fenix.tor.TorConnectionAssistViewModel
+import org.mozilla.fenix.tor.UrlQuickLoadViewModel
import org.mozilla.geckoview.TorAndroidIntegration
/**
@@ -237,7 +237,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity, TorAn
private var dialog: RedirectDialogFragment? = null
- private val torConnectionAssistViewModel: TorConnectionAssistViewModel by viewModels()
+ private val urlQuickLoadViewModel: UrlQuickLoadViewModel by viewModels()
@Suppress("ComplexMethod")
final override fun onCreate(savedInstanceState: Bundle?) {
@@ -1124,7 +1124,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity, TorAn
.setText(getString(R.string.connection_assist_connect_to_tor_before_opening_links))
.setAllCapsForActionButton(false)
.setAction(getString(R.string.connection_assist_connect_to_tor_before_opening_links_confirmation)) {
- torConnectionAssistViewModel.handleConnect(searchTermOrURL)
+ urlQuickLoadViewModel.urlToLoadAfterConnecting.value = searchTermOrURL
if (navHost.navController.previousBackStackEntry?.destination?.id == R.id.torConnectionAssistFragment) {
supportFragmentManager.popBackStack()
} else {
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
=====================================
@@ -158,13 +158,14 @@ import org.mozilla.fenix.search.toolbar.SearchSelectorMenu
import org.mozilla.fenix.tabstray.Page
import org.mozilla.fenix.tabstray.TabsTrayAccessPoint
import org.mozilla.fenix.theme.FirefoxTheme
-import org.mozilla.fenix.tor.TorConnectionAssistViewModel
import org.mozilla.fenix.utils.Settings.Companion.TOP_SITES_PROVIDER_MAX_THRESHOLD
import org.mozilla.fenix.utils.allowUndo
import org.mozilla.fenix.wallpapers.Wallpaper
import java.lang.ref.WeakReference
import org.mozilla.fenix.GleanMetrics.TabStrip as TabStripMetrics
+import org.mozilla.fenix.tor.UrlQuickLoadViewModel
+
@Suppress("TooManyFunctions", "LargeClass")
class HomeFragment : Fragment(), UserInteractionHandler {
private val args by navArgs<HomeFragmentArgs>()
@@ -178,7 +179,7 @@ class HomeFragment : Fragment(), UserInteractionHandler {
private val binding get() = _binding!!
private val homeViewModel: HomeScreenViewModel by activityViewModels()
- private val torConnectionAssistViewModel: TorConnectionAssistViewModel by activityViewModels()
+ private val urlQuickLoadViewModel: UrlQuickLoadViewModel by activityViewModels()
private val snackbarAnchorView: View?
get() = when (requireContext().settings().toolbarPosition) {
@@ -892,14 +893,15 @@ class HomeFragment : Fragment(), UserInteractionHandler {
view = view,
)
- torConnectionAssistViewModel.urlToLoadAfterConnecting.also {
- if(!it.isNullOrBlank()){
+ urlQuickLoadViewModel.urlToLoadAfterConnecting.observe(viewLifecycleOwner) {
+ if (!it.isNullOrBlank()) {
(requireActivity() as HomeActivity).openToBrowserAndLoad(
searchTermOrURL = it,
newTab = true,
from = BrowserDirection.FromHome,
)
- torConnectionAssistViewModel.urlToLoadAfterConnecting = null // Only load this url once
+ // Only load this url once
+ urlQuickLoadViewModel.urlToLoadAfterConnecting.value = null
}
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBootstrapProgressViewModel.kt
=====================================
@@ -0,0 +1,44 @@
+package org.mozilla.fenix.tor
+
+import android.app.Application
+import androidx.lifecycle.AndroidViewModel
+import androidx.lifecycle.MutableLiveData
+import org.mozilla.fenix.ext.components
+import org.mozilla.geckoview.TorAndroidIntegration.BootstrapStateChangeListener
+
+class TorBootstrapProgressViewModel(
+ application: Application,
+) : AndroidViewModel(application), BootstrapStateChangeListener {
+
+ private val torIntegrationAndroid =
+ application.components.core.geckoRuntime.torIntegrationController
+
+ val progress: MutableLiveData<Int> by lazy {
+ MutableLiveData<Int>(0)
+ }
+
+ init {
+ torIntegrationAndroid.registerBootstrapStateChangeListener(this)
+ }
+
+ override fun onCleared() {
+ torIntegrationAndroid.unregisterBootstrapStateChangeListener(this)
+ super.onCleared()
+ }
+
+ override fun onBootstrapStateChange(state: String?) {}
+
+ override fun onBootstrapProgress(progress: Double, hasWarnings: Boolean) {
+ this.progress.value = progress.toInt()
+ }
+
+ override fun onBootstrapComplete() {}
+
+ override fun onBootstrapError(
+ code: String?,
+ message: String?,
+ phase: String?,
+ reason: String?,
+ ) {
+ }
+}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt
=====================================
@@ -35,12 +35,14 @@ import org.mozilla.fenix.ext.hideToolbar
class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
private val TAG = "TorConnectionAssistFrag"
- private val viewModel: TorConnectionAssistViewModel by activityViewModels()
+ private val progressViewModel: TorBootstrapProgressViewModel by viewModels()
+ private val quickstartViewModel: QuickstartViewModel by activityViewModels()
+ private val torConnectionAssistViewModel : TorConnectionAssistViewModel by viewModels()
+ private val urlQuickLoadViewModel : UrlQuickLoadViewModel by activityViewModels()
+
private var _binding: FragmentTorConnectionAssistBinding? = null
private val binding get() = _binding!!
- private val quickstartViewModel: QuickstartViewModel by activityViewModels()
-
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
@@ -49,18 +51,23 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
_binding = FragmentTorConnectionAssistBinding.inflate(
inflater, container, false,
)
+
viewLifecycleOwner.lifecycleScope.launch {
repeatOnLifecycle(Lifecycle.State.STARTED) {
- viewModel.collectLastKnownStatus()
+ torConnectionAssistViewModel.collectLastKnownStatus()
}
}
- viewLifecycleOwner.lifecycleScope.launch {
- repeatOnLifecycle(Lifecycle.State.STARTED) {
- viewModel.torConnectScreen.collect { screen ->
- Log.d(TAG, "torConnectScreen is $screen")
- showScreen(screen)
- }
+ torConnectionAssistViewModel.shouldOpenHome.observe(viewLifecycleOwner) {
+ Log.d(TAG, "shouldOpenHome = $it")
+ if (it) {
+ openHome()
+ }
+ }
+
+ urlQuickLoadViewModel.urlToLoadAfterConnecting.observe(viewLifecycleOwner) { url ->
+ if (!url.isNullOrBlank()) {
+ torConnectionAssistViewModel.handleConnect()
}
}
@@ -75,10 +82,13 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
- viewModel.progress().observe(
- viewLifecycleOwner,
- ) { progress ->
- setProgressBarCompat(progress)
+ viewLifecycleOwner.lifecycleScope.launch {
+ repeatOnLifecycle(Lifecycle.State.STARTED) {
+ torConnectionAssistViewModel.torConnectScreen.collect { screen ->
+ Log.d(TAG, "torConnectScreen is $screen")
+ showScreen(screen)
+ }
+ }
}
quickstartViewModel.quickstart().observe(
@@ -87,13 +97,10 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
binding.quickstartSwitch.isChecked = it
}
- viewModel.shouldOpenHome().observe(
+ progressViewModel.progress.observe(
viewLifecycleOwner,
- ) {
- Log.d(TAG, "shouldOpenHome() = $it")
- if (it) {
- openHome()
- }
+ ) { progress ->
+ setProgressBarCompat(progress)
}
}
@@ -142,7 +149,7 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
private fun setBackButton(screen: ConnectAssistUiState) {
binding.backButton.visibility = if (screen.backButtonVisible) View.VISIBLE else View.INVISIBLE
binding.backButton.setOnClickListener {
- viewModel.handleBackButtonPressed()
+ torConnectionAssistViewModel.handleBackButtonPressed()
}
}
@@ -204,10 +211,7 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
if (screen.torBootstrapButton1Visible) View.VISIBLE else View.GONE
binding.torBootstrapButton1.text = getString(screen.torBootstrapButton1TextStringResource)
binding.torBootstrapButton1.setOnClickListener {
- viewModel.handleButton1Pressed(
- screen,
- lifecycleScope,
- )
+ torConnectionAssistViewModel.handleConnect()
}
}
@@ -231,7 +235,7 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
}
}
binding.torBootstrapButton2.setOnClickListener {
- viewModel.cancelTorBootstrap()
+ torConnectionAssistViewModel.cancelTorBootstrap()
if (screen.torBootstrapButton2ShouldOpenSettings) {
openTorConnectionSettings()
} else if (screen.torBootstrapButton2ShouldRestartApp) {
@@ -279,7 +283,9 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
private fun openHome() {
Log.d(TAG, "openHome()")
- viewModel.openHome(findNavController())
+ findNavController().navigate(
+ TorConnectionAssistFragmentDirections.actionHome(),
+ )
}
private fun openSettings(preferenceToScrollTo: String? = null) {
@@ -308,7 +314,7 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler {
}
override fun onBackPressed(): Boolean {
- return viewModel.handleBackButtonPressed()
+ return torConnectionAssistViewModel.handleBackButtonPressed()
}
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt
=====================================
@@ -7,91 +7,42 @@ package org.mozilla.fenix.tor
import android.app.Application
import android.util.Log
import androidx.lifecycle.AndroidViewModel
-import androidx.lifecycle.LifecycleCoroutineScope
-import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
-import androidx.navigation.NavController
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
import org.mozilla.fenix.ext.components
class TorConnectionAssistViewModel(
application: Application,
-) : AndroidViewModel(application), TorEvents {
+) : AndroidViewModel(application) {
private val TAG = "torConnectionAssistVM"
- private val components = getApplication<Application>().components
-
- private val _torController: TorControllerGV = components.torController
+ private val torIntegrationAndroid =
+ application.components.core.geckoRuntime.torIntegrationController
+ private val _torController: TorControllerGV = application.components.torController
private val _torConnectScreen = MutableStateFlow(ConnectAssistUiState.Splash)
internal val torConnectScreen: StateFlow<ConnectAssistUiState> = _torConnectScreen
- private val _shouldOpenHome = MutableLiveData(false)
- fun shouldOpenHome(): LiveData<Boolean> {
- return _shouldOpenHome
- }
-
- private val _progress = MutableLiveData(0)
- fun progress(): LiveData<Int> {
- return _progress
- }
-
- init {
- Log.d(TAG, "initiating TorConnectionAssistViewModel $this")
- _torController.registerTorListener(this)
- }
-
- var urlToLoadAfterConnecting: String? = null
-
- fun handleConnect(
- urlToLoadAfterConnecting: String? = null,
- withDebugLogging: Boolean = false,
- lifecycleScope: LifecycleCoroutineScope? = null,
- ) {
- this.urlToLoadAfterConnecting = urlToLoadAfterConnecting
- if (_torController.lastKnownStatus.value.isOff()) {
- Log.d(TAG, "handleConnect() triggered, initiatingTorBootstrap")
- _torController.initiateTorBootstrap(
- withDebugLogging = withDebugLogging,
- lifecycleScope = lifecycleScope,
- )
- }
+ val shouldOpenHome: MutableLiveData<Boolean> by lazy {
+ MutableLiveData(false)
}
- fun handleButton1Pressed(
- screen: ConnectAssistUiState,
- lifecycleScope: LifecycleCoroutineScope?,
- ) {
- if (screen.torBootstrapButton1ShouldShowTryingABridge) {
+ fun handleConnect() {
+ if (_torConnectScreen.value.torBootstrapButton1ShouldShowTryingABridge) {
tryABridge()
} else {
- handleConnect(lifecycleScope = lifecycleScope)
+ if (_torController.lastKnownStatus.value.isOff()) {
+ torIntegrationAndroid.beginBootstrap()
+ }
}
}
fun cancelTorBootstrap() {
- _torController.stopTor()
+ torIntegrationAndroid.cancelBootstrap()
_torController.setTorStopped()
}
- override fun onTorConnecting() {
- Log.d(TAG, "onTorConnecting()")
- }
-
- override fun onTorConnected() {
- Log.d(TAG, "onTorConnected()")
- _torController.unregisterTorListener(this)
- }
-
- override fun onTorStatusUpdate(entry: String?, status: String?, progress: Double?) {
- Log.d(TAG, "onTorStatusUpdate($entry, $status, $progress)")
- if (progress != null) {
- _progress.value = progress.toInt()
- }
-
- }
-
suspend fun collectLastKnownStatus() {
_torController.lastKnownStatus.collect {
when (it) {
@@ -99,8 +50,8 @@ class TorConnectionAssistViewModel(
TorConnectState.Configuring -> handleConfiguring()
TorConnectState.AutoBootstrapping -> handleBootstrap()
TorConnectState.Bootstrapping -> handleBootstrap()
- TorConnectState.Bootstrapped -> _shouldOpenHome.value = true
- TorConnectState.Disabled -> _shouldOpenHome.value = true
+ TorConnectState.Bootstrapped -> shouldOpenHome.value = true
+ TorConnectState.Disabled -> shouldOpenHome.value = true
TorConnectState.Error -> handleError()
}
}
@@ -145,10 +96,7 @@ class TorConnectionAssistViewModel(
}
else -> _torConnectScreen.value =
- ConnectAssistUiState.Connecting.also { connectAssistUiState ->
- // covers the case of when the bootstrap is already in progress when the UiState "catches up"
- connectAssistUiState.progress = _progress.value ?: 0
- }
+ ConnectAssistUiState.Connecting
}
}
@@ -184,10 +132,6 @@ class TorConnectionAssistViewModel(
_torConnectScreen.value = ConnectAssistUiState.InternetError
}
- override fun onTorStopped() {
- Log.d(TAG, "onTorStopped()")
- }
-
private fun tryABridge() {
if (!locationFound()) {
_torConnectScreen.value = ConnectAssistUiState.LocationError
@@ -198,7 +142,7 @@ class TorConnectionAssistViewModel(
_torController.bridgeTransport =
TorBridgeTransportConfig.BUILTIN_SNOWFLAKE // TODO select based on country
}
- handleConnect(withDebugLogging = true)
+ torIntegrationAndroid.beginBootstrap()
}
private fun locationFound(): Boolean {
@@ -249,10 +193,4 @@ class TorConnectionAssistViewModel(
}
return true
}
-
- fun openHome(navController: NavController) {
- navController.navigate(
- TorConnectionAssistFragmentDirections.actionHome(),
- )
- }
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/UrlQuickLoadViewModel.kt
=====================================
@@ -0,0 +1,10 @@
+package org.mozilla.fenix.tor
+
+import androidx.lifecycle.MutableLiveData
+import androidx.lifecycle.ViewModel
+
+class UrlQuickLoadViewModel : ViewModel() {
+ val urlToLoadAfterConnecting: MutableLiveData<String?> by lazy {
+ MutableLiveData<String?>(null)
+ }
+}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/d3a9fcd…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/d3a9fcd…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] fixup! [android] Implement Android-native Connection Assist UI
by Dan Ballard (@dan) 10 Mar '25
by Dan Ballard (@dan) 10 Mar '25
10 Mar '25
Dan Ballard pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
cbe2d643 by clairehurst at 2025-03-10T15:28:34+00:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser!43408 Add pref to load quickstartUI faster
- - - - -
2 changed files:
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/QuickstartViewModel.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
Changes:
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/QuickstartViewModel.kt
=====================================
@@ -11,8 +11,9 @@ class QuickstartViewModel(
application: Application,
) : AndroidViewModel(application) {
+ private val components = getApplication<Application>().components
private val torIntegrationAndroid =
- (getApplication<Application>().components.core.engine as GeckoEngine).getTorIntegrationController()
+ (components.core.engine as GeckoEngine).getTorIntegrationController()
/**
* NOTE: Whilst the initial value for _quickstart is fetched from
@@ -25,10 +26,11 @@ class QuickstartViewModel(
init {
torIntegrationAndroid.quickstartGet {
_quickstart.value = it
+ components.settings.quickStart = it
}
}
- private val _quickstart = MutableLiveData<Boolean>()
+ private val _quickstart = MutableLiveData(components.settings.quickStart)
fun quickstart(): LiveData<Boolean> {
return _quickstart
}
@@ -36,6 +38,7 @@ class QuickstartViewModel(
fun quickstartSet(value: Boolean) {
torIntegrationAndroid.quickstartSet(value)
_quickstart.value = value
+ components.settings.quickStart = value
}
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
=====================================
@@ -2111,4 +2111,9 @@ class Settings(private val appContext: Context) : PreferencesHolder {
appContext.getPreferenceKey(R.string.pref_key_use_html_connection_ui),
default = false,
)
+
+ var quickStart by booleanPreference(
+ appContext.getPreferenceKey(R.string.pref_key_quick_start),
+ default = false,
+ )
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/cbe2d64…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/cbe2d64…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser][mullvad-browser-128.8.0esr-14.5-1] 4 commits: Bug 1917556 - [marionette] Fix Mn tests with Python 3.12 r=webdriver-reviewers,whimboo
by Pier Angelo Vendrame (@pierov) 10 Mar '25
by Pier Angelo Vendrame (@pierov) 10 Mar '25
10 Mar '25
Pier Angelo Vendrame pushed to branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
Commits:
9492cb87 by Julian Descottes at 2025-03-06T10:46:29+01:00
Bug 1917556 - [marionette] Fix Mn tests with Python 3.12 r=webdriver-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D221448
- - - - -
29861015 by Beatriz Rizental at 2025-03-06T10:47:06+01:00
fixup! Base Browser's .mozconfigs.
- - - - -
63d64ecc by Beatriz Rizental at 2025-03-06T10:47:15+01:00
BB 43535: Enable tests
- - - - -
2aa78353 by John Lin at 2025-03-10T14:20:42+00:00
Bug 1924070 - modify H.264 extradata to match sample conversion code. r=media-playback-reviewers,alwu
In AVC stream, NAL unit is represented with the length of unit data
(NALUnitLength) followed by the actual unit data(NALUnit). The NALUnitLength
field can be 1-4 bytes long and the size can be derived from the
'lengthSizeMinusOne' value recorded in extradata.
H264ChangeMonitor.CheckForChange() reformats all input samples so that
NALUnitLength will always be 4 bytes long while the original extradata is
used during decoder creation earlier, so decoder won't be able to correctly
parse converted samples if extradata is not modified accordingly.
Differential Revision: https://phabricator.services.mozilla.com/D239547
- - - - -
6 changed files:
- dom/media/platforms/wrappers/MediaChangeMonitor.cpp
- mozconfig-linux-aarch64-dev
- mozconfig-linux-x86_64-dev
- mozconfig-macos-dev
- testing/marionette/harness/marionette_harness/runner/base.py
- testing/specialpowers/api.js
Changes:
=====================================
dom/media/platforms/wrappers/MediaChangeMonitor.cpp
=====================================
@@ -42,6 +42,14 @@ class H264ChangeMonitor : public MediaChangeMonitor::CodecChangeMonitor {
: mCurrentConfig(aInfo), mFullParsing(aFullParsing) {
if (CanBeInstantiated()) {
UpdateConfigFromExtraData(aInfo.mExtraData);
+ auto avcc = AVCCConfig::Parse(mCurrentConfig.mExtraData);
+ if (avcc.isOk() && avcc.unwrap().NALUSize() != 4) {
+ // `CheckForChange()` will use `AnnexB::ConvertSampleToAVCC()` to change
+ // NAL units into 4-byte.
+ // `AVCDecoderConfigurationRecord.lengthSizeMinusOne` in the config
+ // should be modified too.
+ mCurrentConfig.mExtraData->ReplaceElementAt(4, 0xfc | 3);
+ }
}
}
=====================================
mozconfig-linux-aarch64-dev
=====================================
@@ -16,3 +16,5 @@ ac_add_options --disable-install-strip
ac_add_options --with-base-browser-version=dev-build
ac_add_options --disable-base-browser-update
+
+ac_add_options --enable-tests
=====================================
mozconfig-linux-x86_64-dev
=====================================
@@ -19,3 +19,5 @@ ac_add_options --disable-base-browser-update
# Let's make sure no preference is enabling either Adobe's or Google's CDM.
ac_add_options --disable-eme
+
+ac_add_options --enable-tests
=====================================
mozconfig-macos-dev
=====================================
@@ -19,3 +19,5 @@ ac_add_options --disable-update-agent
# Let's make sure no preference is enabling either Adobe's or Google's CDM.
ac_add_options --disable-eme
+
+ac_add_options --enable-tests
=====================================
testing/marionette/harness/marionette_harness/runner/base.py
=====================================
@@ -222,7 +222,7 @@ class MarionetteTestResult(StructuredTestResult, TestResultCollection):
self.logger.info("END LOG:")
def stopTest(self, *args, **kwargs):
- unittest._TextTestResult.stopTest(self, *args, **kwargs)
+ unittest.TextTestResult.stopTest(self, *args, **kwargs)
if self.marionette.check_for_crash():
# this tells unittest.TestSuite not to continue running tests
self.shouldStop = True
=====================================
testing/specialpowers/api.js
=====================================
@@ -40,6 +40,18 @@ this.specialpowers = class extends ExtensionAPI {
uri,
resProto.ALLOW_CONTENT_ACCESS
);
+ } else {
+ // This is a hack!
+ // For some reason, this specific substituion has an extra `/` in the path.
+ // This is a workaround to fix it.
+ //
+ // TODO (#43545): Remove this once we have a proper fix.
+ let uri = resProto.getSubstitution("testing-common");
+ resProto.setSubstitution(
+ "testing-common",
+ Services.io.newURI(uri.spec.replace("file:////", "file:///")),
+ resProto.ALLOW_CONTENT_ACCESS
+ );
}
SpecialPowersParent.registerActor();
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/cb…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/cb…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-128.8.0esr-14.5-1] Bug 1924070 - modify H.264 extradata to match sample conversion code....
by morgan (@morgan) 10 Mar '25
by morgan (@morgan) 10 Mar '25
10 Mar '25
morgan pushed to branch base-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
2aa78353 by John Lin at 2025-03-10T14:20:42+00:00
Bug 1924070 - modify H.264 extradata to match sample conversion code. r=media-playback-reviewers,alwu
In AVC stream, NAL unit is represented with the length of unit data
(NALUnitLength) followed by the actual unit data(NALUnit). The NALUnitLength
field can be 1-4 bytes long and the size can be derived from the
'lengthSizeMinusOne' value recorded in extradata.
H264ChangeMonitor.CheckForChange() reformats all input samples so that
NALUnitLength will always be 4 bytes long while the original extradata is
used during decoder creation earlier, so decoder won't be able to correctly
parse converted samples if extradata is not modified accordingly.
Differential Revision: https://phabricator.services.mozilla.com/D239547
- - - - -
1 changed file:
- dom/media/platforms/wrappers/MediaChangeMonitor.cpp
Changes:
=====================================
dom/media/platforms/wrappers/MediaChangeMonitor.cpp
=====================================
@@ -42,6 +42,14 @@ class H264ChangeMonitor : public MediaChangeMonitor::CodecChangeMonitor {
: mCurrentConfig(aInfo), mFullParsing(aFullParsing) {
if (CanBeInstantiated()) {
UpdateConfigFromExtraData(aInfo.mExtraData);
+ auto avcc = AVCCConfig::Parse(mCurrentConfig.mExtraData);
+ if (avcc.isOk() && avcc.unwrap().NALUSize() != 4) {
+ // `CheckForChange()` will use `AnnexB::ConvertSampleToAVCC()` to change
+ // NAL units into 4-byte.
+ // `AVCDecoderConfigurationRecord.lengthSizeMinusOne` in the config
+ // should be modified too.
+ mCurrentConfig.mExtraData->ReplaceElementAt(4, 0xfc | 3);
+ }
}
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/2aa7835…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/2aa7835…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] Bug 1924070 - modify H.264 extradata to match sample conversion code....
by morgan (@morgan) 10 Mar '25
by morgan (@morgan) 10 Mar '25
10 Mar '25
morgan pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
4224ae27 by John Lin at 2025-03-10T15:04:22+01:00
Bug 1924070 - modify H.264 extradata to match sample conversion code. r=media-playback-reviewers,alwu
In AVC stream, NAL unit is represented with the length of unit data
(NALUnitLength) followed by the actual unit data(NALUnit). The NALUnitLength
field can be 1-4 bytes long and the size can be derived from the
'lengthSizeMinusOne' value recorded in extradata.
H264ChangeMonitor.CheckForChange() reformats all input samples so that
NALUnitLength will always be 4 bytes long while the original extradata is
used during decoder creation earlier, so decoder won't be able to correctly
parse converted samples if extradata is not modified accordingly.
Differential Revision: https://phabricator.services.mozilla.com/D239547
- - - - -
1 changed file:
- dom/media/platforms/wrappers/MediaChangeMonitor.cpp
Changes:
=====================================
dom/media/platforms/wrappers/MediaChangeMonitor.cpp
=====================================
@@ -42,6 +42,14 @@ class H264ChangeMonitor : public MediaChangeMonitor::CodecChangeMonitor {
: mCurrentConfig(aInfo), mFullParsing(aFullParsing) {
if (CanBeInstantiated()) {
UpdateConfigFromExtraData(aInfo.mExtraData);
+ auto avcc = AVCCConfig::Parse(mCurrentConfig.mExtraData);
+ if (avcc.isOk() && avcc.unwrap().NALUSize() != 4) {
+ // `CheckForChange()` will use `AnnexB::ConvertSampleToAVCC()` to change
+ // NAL units into 4-byte.
+ // `AVCDecoderConfigurationRecord.lengthSizeMinusOne` in the config
+ // should be modified too.
+ mCurrentConfig.mExtraData->ReplaceElementAt(4, 0xfc | 3);
+ }
}
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4224ae2…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4224ae2…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] 2 commits: Bug 41040: Add configuration to rbm.conf to select channel and platforms
by morgan (@morgan) 10 Mar '25
by morgan (@morgan) 10 Mar '25
10 Mar '25
morgan pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
f27def7c by Nicolas Vigier at 2025-03-10T12:07:48+01:00
Bug 41040: Add configuration to rbm.conf to select channel and platforms
The browser can now be built using `make torbrowser` and `make
mullvadbrowser`. In this case, the channel and platforms to build are
selected by the variables defined in rbm.conf:
* var/browser_default_channel
* var/browser_platforms
- - - - -
fb835be6 by Nicolas Vigier at 2025-03-10T13:42:15+01:00
Bug 41040: Update release prep alpha templates
The stable release prep templates should be updated in a separate commit
when this is backported to `maint-14.0`.
- - - - -
6 changed files:
- .gitlab/issue_templates/Release Prep - Mullvad Browser Alpha.md
- .gitlab/issue_templates/Release Prep - Tor Browser Alpha.md
- Makefile
- projects/release/build
- projects/release/config
- rbm.conf
Changes:
=====================================
.gitlab/issue_templates/Release Prep - Mullvad Browser Alpha.md
=====================================
@@ -65,6 +65,7 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch
- [ ] `var/torbrowser_build`: updated to `${MULLVAD_BROWSER_BUILD_N}`
- [ ] `var/browser_release_date`: updated to build date. For the build to be reproducible, the date should be in the past when building.
- **⚠️ WARNING**: If we have updated `var/torbrowser_build` without updating the `firefox` tag, then we can leave this unchanged to avoid forcing a firefox re-build (e.g. when bumping `var/torbrowser_build` to build2, build3, etc due to non-firefox related build issues)
+ - [ ] `var/browser_platforms`: updated to enable the platforms included in this release
- [ ] `var/torbrowser_incremental_from`: updated to previous Desktop version
- **NOTE**: We try to build incrementals for the previous 3 desktop versions
- **⚠️ WARNING**: Really *actually* make sure this is the previous Desktop version or else the `make mullvadbrowser-incrementals-*` step will fail
@@ -111,7 +112,7 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch
- [ ] Build the tag:
- Run:
```bash
- make mullvadbrowser-alpha && make mullvadbrowser-incrementals-alpha
+ make mullvadbrowser
```
- [ ] Tor Project build machine
- [ ] Local developer machine
=====================================
.gitlab/issue_templates/Release Prep - Tor Browser Alpha.md
=====================================
@@ -65,6 +65,7 @@ Tor Browser Alpha (and Nightly) are on the `main` branch
- [ ] `var/torbrowser_build`: updated to `${TOR_BROWSER_BUILD_N}`
- [ ] `var/browser_release_date`: updated to build date. For the build to be reproducible, the date should be in the past when building.
- **⚠️ WARNING**: If we have updated `var/torbrowser_build` without updating the `firefox` or `geckoview` tags, then we can leave this unchanged to avoid forcing a firefox re-build (e.g. when bumping `var/torbrwoser_build` to build2, build3, etc due to non-firefox related build issues)
+ - [ ] `var/browser_platforms`: updated to enable the platforms included in this release
- [ ] ***(Desktop Only)*** `var/torbrowser_incremental_from`: updated to previous Desktop version
- **NOTE**: We try to build incrementals for the previous 3 desktop versions
- **⚠️ WARNING**: Really *actually* make sure this is the previous Desktop version or else the `make torbrowser-incrementals-*` step will fail
@@ -135,7 +136,7 @@ Tor Browser Alpha (and Nightly) are on the `main` branch
- [ ] Build the tag:
- Run:
```bash
- make torbrowser-alpha && make torbrowser-incrementals-alpha
+ make torbrowser
```
- [ ] Tor Project build machine
- [ ] Local developer machine
=====================================
Makefile
=====================================
@@ -1,196 +1,180 @@
rbm=./rbm/rbm
+browser_default_channel=$(shell $(rbm) showconf release var/browser_default_channel)
-all: torbrowser-release
+.PHONY: torbrowser mullvadbrowser
+all: torbrowser mullvadbrowser
#######################
# Tor Browser Targets #
#######################
+torbrowser: submodule-update
+ @echo Building torbrowser-$(browser_default_channel)
+ $(MAKE) torbrowser-$(browser_default_channel)
+ @echo Building incrementals for torbrowser-$(browser_default_channel)
+ $(MAKE) torbrowser-incrementals-$(browser_default_channel)
+
torbrowser-release: submodule-update
$(rbm) build release --target release --target browser-all --target torbrowser
-torbrowser-release-android: submodule-update
- $(rbm) build release --target release --target browser-all-android --target torbrowser
-
torbrowser-release-android-armv7: submodule-update
- $(rbm) build release --target release --target browser-android-armv7 --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-android-armv7 --target torbrowser
torbrowser-release-android-x86: submodule-update
- $(rbm) build release --target release --target browser-android-x86 --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-android-x86 --target torbrowser
torbrowser-release-android-x86_64: submodule-update
- $(rbm) build release --target release --target browser-android-x86_64 --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-android-x86_64 --target torbrowser
torbrowser-release-android-aarch64: submodule-update
- $(rbm) build release --target release --target browser-android-aarch64 --target torbrowser
-
-torbrowser-release-desktop: submodule-update
- $(rbm) build release --target release --target browser-all-desktop --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-android-aarch64 --target torbrowser
torbrowser-release-linux-x86_64: submodule-update
- $(rbm) build release --target release --target browser-linux-x86_64 --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-x86_64 --target torbrowser
torbrowser-release-linux-x86_64-asan: submodule-update
- $(rbm) build release --target release --target browser-linux-x86_64-asan --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-x86_64-asan --target torbrowser
torbrowser-release-linux-i686: submodule-update
- $(rbm) build release --target release --target browser-linux-i686 --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-i686 --target torbrowser
torbrowser-release-linux-aarch64: submodule-update
- $(rbm) build release --target release --target browser-linux-aarch64 --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-aarch64 --target torbrowser
torbrowser-release-windows-i686: submodule-update
- $(rbm) build release --target release --target browser-windows-i686 --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-windows-i686 --target torbrowser
torbrowser-release-windows-x86_64: submodule-update
- $(rbm) build release --target release --target browser-windows-x86_64 --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-windows-x86_64 --target torbrowser
torbrowser-release-macos: submodule-update
- $(rbm) build release --target release --target browser-macos --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-macos --target torbrowser
torbrowser-release-src: submodule-update
- $(rbm) build release --target release --target browser-src --target torbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-src --target torbrowser
torbrowser-alpha: submodule-update
$(rbm) build release --target alpha --target browser-all --target torbrowser
-torbrowser-alpha-android: submodule-update
- $(rbm) build release --target alpha --target browser-all-android --target torbrowser
-
torbrowser-alpha-android-armv7: submodule-update
- $(rbm) build release --target alpha --target browser-android-armv7 --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-android-armv7 --target torbrowser
torbrowser-alpha-android-x86: submodule-update
- $(rbm) build release --target alpha --target browser-android-x86 --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-android-x86 --target torbrowser
torbrowser-alpha-android-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-android-x86_64 --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-android-x86_64 --target torbrowser
torbrowser-alpha-android-aarch64: submodule-update
- $(rbm) build release --target alpha --target browser-android-aarch64 --target torbrowser
-
-torbrowser-alpha-desktop: submodule-update
- $(rbm) build release --target alpha --target browser-all-desktop --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-android-aarch64 --target torbrowser
torbrowser-alpha-linux-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-linux-x86_64 --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-x86_64 --target torbrowser
torbrowser-alpha-linux-x86_64-asan: submodule-update
- $(rbm) build release --target alpha --target browser-linux-x86_64-asan --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-x86_64-asan --target torbrowser
torbrowser-alpha-linux-aarch64: submodule-update
- $(rbm) build release --target alpha --target browser-linux-aarch64 --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-aarch64 --target torbrowser
torbrowser-alpha-linux-i686: submodule-update
- $(rbm) build release --target alpha --target browser-linux-i686 --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-i686 --target torbrowser
torbrowser-alpha-windows-i686: submodule-update
- $(rbm) build release --target alpha --target browser-windows-i686 --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-windows-i686 --target torbrowser
torbrowser-alpha-windows-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-windows-x86_64 --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-windows-x86_64 --target torbrowser
torbrowser-alpha-macos: submodule-update
- $(rbm) build release --target alpha --target browser-macos --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-macos --target torbrowser
torbrowser-alpha-src: submodule-update
- $(rbm) build release --target alpha --target browser-src --target torbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-src --target torbrowser
torbrowser-nightly: submodule-update
$(rbm) build release --target nightly --target browser-all --target torbrowser
-torbrowser-nightly-android: submodule-update
- $(rbm) build release --target nightly --target browser-all-android --target torbrowser
-
torbrowser-nightly-android-armv7: submodule-update
- $(rbm) build release --target nightly --target browser-android-armv7 --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-android-armv7 --target torbrowser
torbrowser-nightly-android-x86: submodule-update
- $(rbm) build release --target nightly --target browser-android-x86 --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-android-x86 --target torbrowser
torbrowser-nightly-android-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-android-x86_64 --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-android-x86_64 --target torbrowser
torbrowser-nightly-android-aarch64: submodule-update
- $(rbm) build release --target nightly --target browser-android-aarch64 --target torbrowser
-
-torbrowser-nightly-desktop: submodule-update
- $(rbm) build release --target nightly --target browser-all-desktop --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-android-aarch64 --target torbrowser
torbrowser-nightly-linux-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-linux-x86_64 --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-x86_64 --target torbrowser
torbrowser-nightly-linux-x86_64-asan: submodule-update
- $(rbm) build release --target nightly --target browser-linux-x86_64-asan --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-x86_64-asan --target torbrowser
torbrowser-nightly-linux-aarch64: submodule-update
- $(rbm) build release --target nightly --target browser-linux-aarch64 --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-aarch64 --target torbrowser
torbrowser-nightly-linux-i686: submodule-update
- $(rbm) build release --target nightly --target browser-linux-i686 --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-i686 --target torbrowser
torbrowser-nightly-windows-i686: submodule-update
- $(rbm) build release --target nightly --target browser-windows-i686 --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-windows-i686 --target torbrowser
torbrowser-nightly-windows-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-windows-x86_64 --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-windows-x86_64 --target torbrowser
torbrowser-nightly-macos: submodule-update
- $(rbm) build release --target nightly --target browser-macos --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-macos --target torbrowser
torbrowser-nightly-src: submodule-update
- $(rbm) build release --target nightly --target browser-src --target torbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-src --target torbrowser
torbrowser-testbuild: submodule-update
$(rbm) build release --target testbuild --target browser-all --target torbrowser
-torbrowser-testbuild-android: submodule-update
- $(rbm) build release --target testbuild --target browser-all-android --target torbrowser
-
torbrowser-testbuild-android-armv7: submodule-update
- $(rbm) build release --target testbuild --target browser-android-armv7 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-android-armv7 --target torbrowser
torbrowser-testbuild-android-x86: submodule-update
- $(rbm) build release --target testbuild --target browser-android-x86 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-android-x86 --target torbrowser
torbrowser-testbuild-android-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-android-x86_64 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-android-x86_64 --target torbrowser
torbrowser-testbuild-android-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-android-aarch64 --target torbrowser
-
-torbrowser-testbuild-desktop: submodule-update
- $(rbm) build release --target testbuild --target browser-all-desktop --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-android-aarch64 --target torbrowser
torbrowser-testbuild-linux-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-x86_64 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-x86_64 --target torbrowser
torbrowser-testbuild-linux-x86_64-asan: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-x86_64-asan --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-x86_64-asan --target torbrowser
torbrowser-testbuild-linux-i686: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-i686 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-i686 --target torbrowser
torbrowser-testbuild-linux-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-aarch64 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-aarch64 --target torbrowser
torbrowser-testbuild-windows-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-windows-x86_64 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-windows-x86_64 --target torbrowser
torbrowser-testbuild-windows-i686: submodule-update
- $(rbm) build release --target testbuild --target browser-windows-i686 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-windows-i686 --target torbrowser
torbrowser-testbuild-macos: submodule-update
- $(rbm) build release --target testbuild --target browser-macos --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-macos --target torbrowser
torbrowser-testbuild-macos-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-macos-x86_64 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-macos-x86_64 --target torbrowser
torbrowser-testbuild-macos-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-macos-aarch64 --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-macos-aarch64 --target torbrowser
torbrowser-testbuild-src: submodule-update
- $(rbm) build release --target testbuild --target browser-src-testbuild --target torbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-src-testbuild --target torbrowser
torbrowser-incrementals-release: submodule-update
$(rbm) build release --step update_responses_config --target release --target create_unsigned_incrementals --target torbrowser
@@ -259,188 +243,164 @@ torbrowser-compare-mar-signed-unsigned-alpha: submodule-update
basebrowser-release: submodule-update
$(rbm) build release --target release --target browser-all --target basebrowser
-basebrowser-release-android: submodule-update
- $(rbm) build release --target release --target browser-all-android --target basebrowser
-
basebrowser-release-android-armv7: submodule-update
- $(rbm) build release --target release --target browser-android-armv7 --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-android-armv7 --target basebrowser
basebrowser-release-android-x86: submodule-update
- $(rbm) build release --target release --target browser-android-x86 --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-android-x86 --target basebrowser
basebrowser-release-android-x86_64: submodule-update
- $(rbm) build release --target release --target browser-android-x86_64 --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-android-x86_64 --target basebrowser
basebrowser-release-android-aarch64: submodule-update
- $(rbm) build release --target release --target browser-android-aarch64 --target basebrowser
-
-basebrowser-release-desktop: submodule-update
- $(rbm) build release --target release --target browser-all-desktop --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-android-aarch64 --target basebrowser
basebrowser-release-linux-x86_64: submodule-update
- $(rbm) build release --target release --target browser-linux-x86_64 --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-x86_64 --target basebrowser
basebrowser-release-linux-x86_64-asan: submodule-update
- $(rbm) build release --target release --target browser-linux-x86_64-asan --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-x86_64-asan --target basebrowser
basebrowser-release-linux-i686: submodule-update
- $(rbm) build release --target release --target browser-linux-i686 --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-i686 --target basebrowser
basebrowser-release-linux-aarch64: submodule-update
- $(rbm) build release --target release --target browser-linux-aarch64 --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-aarch64 --target basebrowser
basebrowser-release-windows-i686: submodule-update
- $(rbm) build release --target release --target browser-windows-i686 --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-windows-i686 --target basebrowser
basebrowser-release-windows-x86_64: submodule-update
- $(rbm) build release --target release --target browser-windows-x86_64 --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-windows-x86_64 --target basebrowser
basebrowser-release-macos: submodule-update
- $(rbm) build release --target release --target browser-macos --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-macos --target basebrowser
basebrowser-release-src: submodule-update
- $(rbm) build release --target release --target browser-src --target basebrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-src --target basebrowser
basebrowser-alpha: submodule-update
$(rbm) build release --target alpha --target browser-all --target basebrowser
-basebrowser-alpha-android: submodule-update
- $(rbm) build release --target alpha --target browser-all-android --target basebrowser
-
basebrowser-alpha-android-armv7: submodule-update
- $(rbm) build release --target alpha --target browser-android-armv7 --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-android-armv7 --target basebrowser
basebrowser-alpha-android-x86: submodule-update
- $(rbm) build release --target alpha --target browser-android-x86 --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-android-x86 --target basebrowser
basebrowser-alpha-android-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-android-x86_64 --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-android-x86_64 --target basebrowser
basebrowser-alpha-android-aarch64: submodule-update
- $(rbm) build release --target alpha --target browser-android-aarch64 --target basebrowser
-
-basebrowser-alpha-desktop: submodule-update
- $(rbm) build release --target alpha --target browser-all-desktop --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-android-aarch64 --target basebrowser
basebrowser-alpha-linux-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-linux-x86_64 --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-x86_64 --target basebrowser
basebrowser-alpha-linux-x86_64-asan: submodule-update
- $(rbm) build release --target alpha --target browser-linux-x86_64-asan --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-x86_64-asan --target basebrowser
basebrowser-alpha-linux-i686: submodule-update
- $(rbm) build release --target alpha --target browser-linux-i686 --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-i686 --target basebrowser
basebrowser-alpha-linux-aarch64: submodule-update
- $(rbm) build release --target alpha --target browser-linux-aarch64 --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-aarch64 --target basebrowser
basebrowser-alpha-windows-i686: submodule-update
- $(rbm) build release --target alpha --target browser-windows-i686 --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-windows-i686 --target basebrowser
basebrowser-alpha-windows-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-windows-x86_64 --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-windows-x86_64 --target basebrowser
basebrowser-alpha-macos: submodule-update
- $(rbm) build release --target alpha --target browser-macos --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-macos --target basebrowser
basebrowser-alpha-src: submodule-update
- $(rbm) build release --target alpha --target browser-src --target basebrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-src --target basebrowser
basebrowser-nightly: submodule-update
$(rbm) build release --target nightly --target browser-all --target basebrowser
-basebrowser-nightly-android: submodule-update
- $(rbm) build release --target nightly --target browser-all-android --target basebrowser
-
basebrowser-nightly-android-armv7: submodule-update
- $(rbm) build release --target nightly --target browser-android-armv7 --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-android-armv7 --target basebrowser
basebrowser-nightly-android-x86: submodule-update
- $(rbm) build release --target nightly --target browser-android-x86 --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-android-x86 --target basebrowser
basebrowser-nightly-android-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-android-x86_64 --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-android-x86_64 --target basebrowser
basebrowser-nightly-android-aarch64: submodule-update
- $(rbm) build release --target nightly --target browser-android-aarch64 --target basebrowser
-
-basebrowser-nightly-desktop: submodule-update
- $(rbm) build release --target nightly --target browser-all-desktop --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-android-aarch64 --target basebrowser
basebrowser-nightly-linux-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-linux-x86_64 --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-x86_64 --target basebrowser
basebrowser-nightly-linux-x86_64-asan: submodule-update
- $(rbm) build release --target nightly --target browser-linux-x86_64-asan --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-x86_64-asan --target basebrowser
basebrowser-nightly-linux-i686: submodule-update
- $(rbm) build release --target nightly --target browser-linux-i686 --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-i686 --target basebrowser
basebrowser-nightly-linux-aarch64: submodule-update
- $(rbm) build release --target nightly --target browser-linux-aarch64 --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-aarch64 --target basebrowser
basebrowser-nightly-windows-i686: submodule-update
- $(rbm) build release --target nightly --target browser-windows-i686 --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-windows-i686 --target basebrowser
basebrowser-nightly-windows-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-windows-x86_64 --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-windows-x86_64 --target basebrowser
basebrowser-nightly-macos: submodule-update
- $(rbm) build release --target nightly --target browser-macos --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-macos --target basebrowser
basebrowser-nightly-src: submodule-update
- $(rbm) build release --target nightly --target browser-src --target basebrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-src --target basebrowser
basebrowser-testbuild: submodule-update
$(rbm) build release --target testbuild --target browser-all --target basebrowser
-basebrowser-testbuild-android: submodule-update
- $(rbm) build release --target testbuild --target browser-all-android --target basebrowser
-
basebrowser-testbuild-android-armv7: submodule-update
- $(rbm) build release --target testbuild --target browser-android-armv7 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-android-armv7 --target basebrowser
basebrowser-testbuild-android-x86: submodule-update
- $(rbm) build release --target testbuild --target browser-android-x86 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-android-x86 --target basebrowser
basebrowser-testbuild-android-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-android-x86_64 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-android-x86_64 --target basebrowser
basebrowser-testbuild-android-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-android-aarch64 --target basebrowser
-
-basebrowser-testbuild-desktop: submodule-update
- $(rbm) build release --target testbuild --target browser-all-desktop --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-android-aarch64 --target basebrowser
basebrowser-testbuild-linux-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-x86_64 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-x86_64 --target basebrowser
basebrowser-testbuild-linux-x86_64-asan: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-x86_64-asan --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-x86_64-asan --target basebrowser
basebrowser-testbuild-linux-i686: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-i686 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-i686 --target basebrowser
basebrowser-testbuild-linux-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-aarch64 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-aarch64 --target basebrowser
basebrowser-testbuild-windows-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-windows-x86_64 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-windows-x86_64 --target basebrowser
basebrowser-testbuild-windows-i686: submodule-update
- $(rbm) build release --target testbuild --target browser-windows-i686 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-windows-i686 --target basebrowser
basebrowser-testbuild-macos: submodule-update
- $(rbm) build release --target testbuild --target browser-macos --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-macos --target basebrowser
basebrowser-testbuild-macos-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-macos-x86_64 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-macos-x86_64 --target basebrowser
basebrowser-testbuild-macos-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-macos-aarch64 --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-macos-aarch64 --target basebrowser
basebrowser-testbuild-src: submodule-update
- $(rbm) build release --target testbuild --target browser-src-testbuild --target basebrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-src-testbuild --target basebrowser
basebrowser-incrementals-nightly: submodule-update
$(rbm) build release --step update_responses_config --target nightly --target basebrowser
@@ -452,107 +412,101 @@ basebrowser-incrementals-nightly: submodule-update
# Mullvad Browser Targets #
###########################
-mullvadbrowser-release: submodule-update
- $(rbm) build release --target release --target browser-all-desktop --target mullvadbrowser
+mullvadbrowser: submodule-update
+ @echo Building mullvadbrowser-$(browser_default_channel)
+ $(MAKE) mullvadbrowser-$(browser_default_channel)
+ @echo Building incrementals for mullvadbrowser-$(browser_default_channel)
+ $(MAKE) mullvadbrowser-incrementals-$(browser_default_channel)
-mullvadbrowser-release-desktop: submodule-update
- $(rbm) build release --target release --target browser-all-desktop --target mullvadbrowser
+mullvadbrowser-release: submodule-update
+ $(rbm) build release --target release --target browser-all --target mullvadbrowser
mullvadbrowser-release-linux-x86_64: submodule-update
- $(rbm) build release --target release --target browser-linux-x86_64 --target mullvadbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-x86_64 --target mullvadbrowser
mullvadbrowser-release-linux-x86_64-asan: submodule-update
- $(rbm) build release --target release --target browser-linux-x86_64-asan --target mullvadbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-x86_64-asan --target mullvadbrowser
mullvadbrowser-release-linux-aarch64: submodule-update
- $(rbm) build release --target release --target browser-linux-aarch64 --target mullvadbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-linux-aarch64 --target mullvadbrowser
mullvadbrowser-release-windows-x86_64: submodule-update
- $(rbm) build release --target release --target browser-windows-x86_64 --target mullvadbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-windows-x86_64 --target mullvadbrowser
mullvadbrowser-release-macos: submodule-update
- $(rbm) build release --target release --target browser-macos --target mullvadbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-macos --target mullvadbrowser
mullvadbrowser-release-src: submodule-update
- $(rbm) build release --target release --target browser-src --target mullvadbrowser
+ $(rbm) build release --target release --target browser-single-platform --target browser-src --target mullvadbrowser
mullvadbrowser-alpha: submodule-update
- $(rbm) build release --target alpha --target browser-all-desktop --target mullvadbrowser
-
-mullvadbrowser-alpha-desktop: submodule-update
- $(rbm) build release --target alpha --target browser-all-desktop --target mullvadbrowser
+ $(rbm) build release --target alpha --target browser-all --target mullvadbrowser
mullvadbrowser-alpha-linux-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-linux-x86_64 --target mullvadbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-x86_64 --target mullvadbrowser
mullvadbrowser-alpha-linux-x86_64-asan: submodule-update
- $(rbm) build release --target alpha --target browser-linux-x86_64-asan --target mullvadbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-x86_64-asan --target mullvadbrowser
mullvadbrowser-alpha-linux-aarch64: submodule-update
- $(rbm) build release --target alpha --target browser-linux-aarch64 --target mullvadbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-linux-aarch64 --target mullvadbrowser
mullvadbrowser-alpha-windows-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-windows-x86_64 --target mullvadbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-windows-x86_64 --target mullvadbrowser
mullvadbrowser-alpha-macos: submodule-update
- $(rbm) build release --target alpha --target browser-macos --target mullvadbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-macos --target mullvadbrowser
mullvadbrowser-alpha-src: submodule-update
- $(rbm) build release --target alpha --target browser-src --target mullvadbrowser
+ $(rbm) build release --target alpha --target browser-single-platform --target browser-src --target mullvadbrowser
mullvadbrowser-nightly: submodule-update
- $(rbm) build release --target nightly --target browser-all-desktop --target mullvadbrowser
-
-mullvadbrowser-nightly-desktop: submodule-update
- $(rbm) build release --target nightly --target browser-all-desktop --target mullvadbrowser
+ $(rbm) build release --target nightly --target browser-all --target mullvadbrowser
mullvadbrowser-nightly-linux-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-linux-x86_64 --target mullvadbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-x86_64 --target mullvadbrowser
mullvadbrowser-nightly-linux-x86_64-asan: submodule-update
- $(rbm) build release --target nightly --target browser-linux-x86_64-asan --target mullvadbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-x86_64-asan --target mullvadbrowser
mullvadbrowser-nightly-linux-aarch64: submodule-update
- $(rbm) build release --target nightly --target browser-linux-aarch64 --target mullvadbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-linux-aarch64 --target mullvadbrowser
mullvadbrowser-nightly-windows-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-windows-x86_64 --target mullvadbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-windows-x86_64 --target mullvadbrowser
mullvadbrowser-nightly-macos: submodule-update
- $(rbm) build release --target nightly --target browser-macos --target mullvadbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-macos --target mullvadbrowser
mullvadbrowser-nightly-src: submodule-update
- $(rbm) build release --target nightly --target browser-src --target mullvadbrowser
+ $(rbm) build release --target nightly --target browser-single-platform --target browser-src --target mullvadbrowser
mullvadbrowser-testbuild: submodule-update
- $(rbm) build release --target testbuild --target browser-all-desktop --target mullvadbrowser
-
-mullvadbrowser-testbuild-desktop: submodule-update
- $(rbm) build release --target testbuild --target browser-all-desktop --target mullvadbrowser
+ $(rbm) build release --target testbuild --target browser-all --target mullvadbrowser
mullvadbrowser-testbuild-linux-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-x86_64 --target mullvadbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-x86_64 --target mullvadbrowser
mullvadbrowser-testbuild-linux-x86_64-asan: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-x86_64-asan --target mullvadbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-x86_64-asan --target mullvadbrowser
mullvadbrowser-testbuild-linux-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-linux-aarch64 --target mullvadbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-linux-aarch64 --target mullvadbrowser
mullvadbrowser-testbuild-windows-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-windows-x86_64 --target mullvadbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-windows-x86_64 --target mullvadbrowser
mullvadbrowser-testbuild-macos: submodule-update
- $(rbm) build release --target testbuild --target browser-macos --target mullvadbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-macos --target mullvadbrowser
mullvadbrowser-testbuild-macos-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-macos-x86_64 --target mullvadbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-macos-x86_64 --target mullvadbrowser
mullvadbrowser-testbuild-macos-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-macos-aarch64 --target mullvadbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-macos-aarch64 --target mullvadbrowser
mullvadbrowser-testbuild-src: submodule-update
- $(rbm) build release --target testbuild --target browser-src-testbuild --target mullvadbrowser
+ $(rbm) build release --target testbuild --target browser-single-platform --target browser-src-testbuild --target mullvadbrowser
mullvadbrowser-incrementals-release: submodule-update
$(rbm) build release --step update_responses_config --target release --target create_unsigned_incrementals --target mullvadbrowser
@@ -701,7 +655,7 @@ cargo_vendor-rcodesign: submodule-update
##################
submodule-update:
- git submodule update --init
+ @git submodule update --init
# requires tpo_user variable be set in rbm.local.conf
torbrowser-upload-sha256sums-release: submodule-update
=====================================
projects/release/build
=====================================
@@ -4,40 +4,40 @@
[% IF ENV.HOME %]export HOME="[% ENV.HOME %]"[% END %]
destdir="[% dest_dir _ '/' _ c("var/publish_dir") %]"
mkdir -p "$destdir"
-[% IF c("var/browser-android-armv7") -%]
+[% IF c("var/browser_platforms/android-armv7") -%]
mv [% c('input_files_by_name/android-armv7') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-android-x86") -%]
+[% IF c("var/browser_platforms/android-x86") -%]
mv [% c('input_files_by_name/android-x86') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-android-x86_64") -%]
+[% IF c("var/browser_platforms/android-x86_64") -%]
mv [% c('input_files_by_name/android-x86_64') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-android-aarch64") -%]
+[% IF c("var/browser_platforms/android-aarch64") -%]
mv [% c('input_files_by_name/android-aarch64') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-windows-i686") -%]
+[% IF c("var/browser_platforms/windows-i686") -%]
mv [% c('input_files_by_name/windows-i686') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-windows-x86_64") -%]
+[% IF c("var/browser_platforms/windows-x86_64") -%]
mv [% c('input_files_by_name/windows-x86_64') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-macos") -%]
+[% IF c("var/browser_platforms/macos") -%]
mv [% c('input_files_by_name/macos') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-macos-x86_64") -%]
+[% IF c("var/browser_platforms/macos-x86_64") -%]
mv [% c('input_files_by_name/macos-x86_64') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-macos-aarch64") -%]
+[% IF c("var/browser_platforms/macos-aarch64") -%]
mv [% c('input_files_by_name/macos-aarch64') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-linux-i686") -%]
+[% IF c("var/browser_platforms/linux-i686") -%]
mv [% c('input_files_by_name/linux-i686') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-linux-x86_64") -%]
+[% IF c("var/browser_platforms/linux-x86_64") -%]
mv [% c('input_files_by_name/linux-x86_64') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-linux-aarch64") -%]
+[% IF c("var/browser_platforms/linux-aarch64") -%]
mv [% c('input_files_by_name/linux-aarch64') %]/* "$destdir"/
[% END -%]
[% IF c("var/linux-packages") || c("var/linux-packages-aarch64") -%]
=====================================
projects/release/config
=====================================
@@ -10,75 +10,69 @@ var:
targets:
browser-all:
- - browser-linux-x86_64
- - browser-linux-i686
- - browser-linux-aarch64
- - browser-windows-i686
- - browser-windows-x86_64
- - browser-macos
- - browser-android-armv7
- - browser-android-x86
- - browser-android-x86_64
- - browser-android-aarch64
- browser-src
- browser-all-target
- browser-all-desktop:
- - browser-linux-x86_64
- - browser-linux-i686
- - browser-linux-aarch64
- - browser-windows-i686
- - browser-windows-x86_64
- - browser-macos
- - browser-src
- - browser-all-target
- browser-all-android:
- - browser-android-armv7
- - browser-android-x86
- - browser-android-x86_64
- - browser-android-aarch64
+ browser-single-platform:
+ var:
+ browser_platforms:
+ is_android_release: 0
+ is_desktop_release: 0
browser-android-armv7:
var:
- browser-android-armv7: 1
+ browser_platforms:
+ android-armv7: 1
browser-android-x86:
var:
- browser-android-x86: 1
+ browser_platforms:
+ android-x86: 1
browser-android-x86_64:
var:
- browser-android-x86_64: 1
+ browser_platforms:
+ android-x86_64: 1
browser-android-aarch64:
var:
- browser-android-aarch64: 1
+ browser_platforms:
+ android-aarch64: 1
browser-linux-x86_64:
var:
- browser-linux-x86_64: 1
+ browser_platforms:
+ linux-x86_64: 1
linux-packages: '[% c("var/mullvad-browser") || c("var/tor-browser-linux-packages") %]'
browser-linux-x86_64-asan:
var:
- browser-linux-x86_64: 1
+ browser_platforms:
+ linux-x86_64: 1
asan-build: '-asan'
browser-linux-i686:
var:
- browser-linux-i686: '[% c("var/browser_type") != "mullvadbrowser" %]'
+ browser_platforms:
+ linux-i686: 1
linux-packages: '[% c("var/mullvad-browser") || c("var/tor-browser-linux-packages") %]'
browser-linux-aarch64:
var:
- browser-linux-aarch64: '[% ! c("var/browser-all-target") || c("var/testbuild") || c("var/nightly") %]'
+ browser_platforms:
+ linux-aarch64: 1
linux-packages-aarch64: '[% (! c("var/browser-all-target") || c("var/testbuild") || c("var/nightly")) && (c("var/mullvad-browser") || c("var/tor-browser-linux-packages")) %]'
browser-windows-i686:
var:
- browser-windows-i686: '[% c("var/browser_type") != "mullvadbrowser" %]'
+ browser_platforms:
+ windows-i686: '[% c("var/browser_type") != "mullvadbrowser" %]'
browser-windows-x86_64:
var:
- browser-windows-x86_64: 1
+ browser_platforms:
+ windows-x86_64: 1
browser-macos:
var:
- browser-macos: 1
+ browser_platforms:
+ macos: 1
browser-macos-x86_64:
var:
- browser-macos-x86_64: 1
+ browser_platforms:
+ macos-x86_64: 1
browser-macos-aarch64:
var:
- browser-macos-aarch64: 1
+ browser_platforms:
+ macos-aarch64: 1
browser-src:
var:
browser-src: '[% ! c("var/testbuild") %]'
@@ -93,8 +87,6 @@ targets:
- torbrowser
- release
- browser-all
- - browser-all-android
- - browser-all-desktop
noversiondir:
var:
@@ -156,7 +148,7 @@ input_files:
# Release
- name: android-armv7
project: browser
- enable: '[% c("var/browser-android-armv7") %]'
+ enable: '[% c("var/browser_platforms/android-armv7") %]'
target:
- '[% c("var/containers_target") %]'
- '[% c("var/build_target") %]'
@@ -164,7 +156,7 @@ input_files:
- name: android-x86
project: browser
- enable: '[% c("var/browser-android-x86") %]'
+ enable: '[% c("var/browser_platforms/android-x86") %]'
target:
- '[% c("var/containers_target") %]'
- '[% c("var/build_target") %]'
@@ -172,7 +164,7 @@ input_files:
- name: android-x86_64
project: browser
- enable: '[% c("var/browser-android-x86_64") %]'
+ enable: '[% c("var/browser_platforms/android-x86_64") %]'
target:
- '[% c("var/containers_target") %]'
- '[% c("var/build_target") %]'
@@ -180,7 +172,7 @@ input_files:
- name: android-aarch64
project: browser
- enable: '[% c("var/browser-android-aarch64") %]'
+ enable: '[% c("var/browser_platforms/android-aarch64") %]'
target:
- '[% c("var/containers_target") %]'
- '[% c("var/build_target") %]'
@@ -188,28 +180,28 @@ input_files:
- name: linux-x86_64
project: browser
- enable: '[% c("var/browser-linux-x86_64") %]'
+ enable: '[% c("var/browser_platforms/linux-x86_64") %]'
target:
- '[% c("var/build_target") %]'
- '[% c("var/browser_type") %]-linux-x86_64[% c("var/asan-build") %]'
- name: linux-i686
project: browser
- enable: '[% c("var/browser-linux-i686") %]'
+ enable: '[% c("var/browser_platforms/linux-i686") %]'
target:
- '[% c("var/build_target") %]'
- '[% c("var/browser_type") %]-linux-i686'
- name: linux-aarch64
project: browser
- enable: '[% c("var/browser-linux-aarch64") %]'
+ enable: '[% c("var/browser_platforms/linux-aarch64") %]'
target:
- '[% c("var/build_target") %]'
- '[% c("var/browser_type") %]-linux-aarch64'
- name: deb-packages
project: linux-packages
- enable: '[% c("var/linux-packages") %]'
+ enable: '[% c("var/browser_platforms/packages") %]'
# Add $browser_type-linux-x86_64 target for container config
target:
- '[% IF c("var/testbuild") %]testbuild[% END %]'
@@ -247,21 +239,21 @@ input_files:
- name: windows-i686
project: browser
- enable: '[% c("var/browser-windows-i686") %]'
+ enable: '[% c("var/browser_platforms/windows-i686") %]'
target:
- '[% c("var/build_target") %]'
- '[% c("var/browser_type") %]-windows-i686'
- name: windows-x86_64
project: browser
- enable: '[% c("var/browser-windows-x86_64") %]'
+ enable: '[% c("var/browser_platforms/windows-x86_64") %]'
target:
- '[% c("var/build_target") %]'
- '[% c("var/browser_type") %]-windows-x86_64'
- name: macos
project: browser
- enable: '[% c("var/browser-macos") %]'
+ enable: '[% c("var/browser_platforms/macos") %]'
target:
- '[% c("var/build_target") %]'
- '[% c("var/browser_type") %]-macos'
@@ -269,7 +261,7 @@ input_files:
# non-universal macos build
- name: macos-x86_64
project: browser
- enable: '[% c("var/browser-macos-x86_64") %]'
+ enable: '[% c("var/browser_platforms/macos-x86_64") %]'
target:
- '[% c("var/build_target") %]'
- '[% c("var/browser_type") %]-macos-x86_64'
@@ -277,7 +269,7 @@ input_files:
# non-universal macos build
- name: macos-aarch64
project: browser
- enable: '[% c("var/browser-macos-aarch64") %]'
+ enable: '[% c("var/browser_platforms/macos-aarch64") %]'
target:
- '[% c("var/build_target") %]'
- '[% c("var/browser_type") %]-macos-aarch64'
=====================================
rbm.conf
=====================================
@@ -79,6 +79,20 @@ var:
# to be reproducible, browser_release_date should always be in the past.
browser_release_date: '2025/02/10 18:18:25'
browser_release_date_timestamp: '[% USE date; date.format(c("var/browser_release_date"), "%s") %]'
+ browser_default_channel: alpha
+ browser_platforms:
+ is_android_release: '[% c("var/tor-browser") %]'
+ is_desktop_release: '1'
+ android-armv7: '[% c("var/browser_platforms/is_android_release") %]'
+ android-x86: '[% c("var/browser_platforms/is_android_release") %]'
+ android-x86_64: '[% c("var/browser_platforms/is_android_release") %]'
+ android-aarch64: '[% c("var/browser_platforms/is_android_release") %]'
+ linux-x86_64: '[% c("var/browser_platforms/is_desktop_release") %]'
+ linux-i686: '[% c("var/browser_platforms/is_desktop_release") && c("var/tor-browser") %]'
+ linux-aarch64: '[% c("var/browser_platforms/is_desktop_release") && ( c("var/testbuild") || c("var/nightly") ) %]'
+ windows-i686: '[% c("var/browser_platforms/is_desktop_release") && c("var/tor-browser") %]'
+ windows-x86_64: '[% c("var/browser_platforms/is_desktop_release") %]'
+ macos: '[% c("var/browser_platforms/is_desktop_release") %]'
updater_enabled: 1
build_mar: 1
torbrowser_incremental_from:
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] fixup! TB 7494: Create local home page for TBB.
by morgan (@morgan) 10 Mar '25
by morgan (@morgan) 10 Mar '25
10 Mar '25
morgan pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
dce8efc3 by Henry Wilkes at 2025-03-10T13:03:54+00:00
fixup! TB 7494: Create local home page for TBB.
TB 43489: Add a survey banner in about:tor.
- - - - -
8 changed files:
- browser/components/BrowserGlue.sys.mjs
- browser/components/abouttor/AboutTorChild.sys.mjs
- browser/components/abouttor/AboutTorParent.sys.mjs
- + browser/components/abouttor/content/1f44b-waving-hand.svg
- browser/components/abouttor/content/aboutTor.css
- browser/components/abouttor/content/aboutTor.html
- browser/components/abouttor/content/aboutTor.js
- browser/components/abouttor/jar.mn
Changes:
=====================================
browser/components/BrowserGlue.sys.mjs
=====================================
@@ -524,6 +524,7 @@ let JSWINDOWACTORS = {
DOMContentLoaded: {},
L10nMutationsFinished: {},
SubmitSearchOnionize: { wantUntrusted: true },
+ SurveyDismissed: { wantUntrusted: true },
},
},
=====================================
browser/components/abouttor/AboutTorChild.sys.mjs
=====================================
@@ -16,6 +16,10 @@ export class AboutTorChild extends JSWindowActorChild {
case "SubmitSearchOnionize":
this.sendAsyncMessage("AboutTor:SetSearchOnionize", !!event.detail);
break;
+ case "SurveyDismissed":
+ // event.detail is the survey version.
+ this.sendAsyncMessage("AboutTor:SurveyDismissed", event.detail);
+ break;
case "L10nMutationsFinished":
// Pass on chrome-only event for completed localization to content.
this.contentWindow.dispatchEvent(
=====================================
browser/components/abouttor/AboutTorParent.sys.mjs
=====================================
@@ -13,6 +13,8 @@ ChromeUtils.defineESModuleGetters(lazy, {
export class AboutTorParent extends JSWindowActorParent {
receiveMessage(message) {
const onionizePref = "torbrowser.homepage.search.onionize";
+ const surveyDismissVersionPref =
+ "torbrowser.homepage.survey.dismiss_version";
switch (message.name) {
case "AboutTor:GetInitialData":
return Promise.resolve({
@@ -20,10 +22,26 @@ export class AboutTorParent extends JSWindowActorParent {
messageData: lazy.AboutTorMessage.getNext(),
isStable: AppConstants.MOZ_UPDATE_CHANNEL === "release",
searchOnionize: Services.prefs.getBoolPref(onionizePref, false),
+ surveyDismissVersion: Services.prefs.getIntPref(
+ surveyDismissVersionPref,
+ 0
+ ),
});
case "AboutTor:SetSearchOnionize":
Services.prefs.setBoolPref(onionizePref, message.data);
break;
+ case "AboutTor:SurveyDismissed":
+ // The message.data contains the version of the current survey.
+ // Rather than introduce a new preference for each survey campaign we
+ // reuse the same integer preference and increase its value every time
+ // a new version of the survey is shown and dismissed by the user.
+ // I.e. if the preference value is 2, we will not show survey version 2
+ // but will show survey version 3 or higher when they are introduced.
+ // It should be safe to overwrite the value since we do not expect more
+ // than one active survey campaign at any given time, nor do we expect
+ // the version value to decrease.
+ Services.prefs.setIntPref(surveyDismissVersionPref, message.data);
+ break;
}
return undefined;
}
=====================================
browser/components/abouttor/content/1f44b-waving-hand.svg
=====================================
@@ -0,0 +1,3 @@
+<!-- FROM https://github.com/twitter/twemoji
+ - licensed under CC-BY 4.0: https://creativecommons.org/licenses/by/4.0/ -->
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path fill="#EF9645" d="M4.861 9.147c.94-.657 2.357-.531 3.201.166l-.968-1.407c-.779-1.111-.5-2.313.612-3.093 1.112-.777 4.263 1.312 4.263 1.312-.786-1.122-.639-2.544.483-3.331 1.122-.784 2.67-.513 3.456.611l10.42 14.72L25 31l-11.083-4.042L4.25 12.625c-.793-1.129-.519-2.686.611-3.478z"/><path fill="#FFDC5D" d="M2.695 17.336s-1.132-1.65.519-2.781c1.649-1.131 2.78.518 2.78.518l5.251 7.658c.181-.302.379-.6.6-.894L4.557 11.21s-1.131-1.649.519-2.78c1.649-1.131 2.78.518 2.78.518l6.855 9.997c.255-.208.516-.417.785-.622L7.549 6.732s-1.131-1.649.519-2.78c1.649-1.131 2.78.518 2.78.518l7.947 11.589c.292-.179.581-.334.871-.498L12.238 4.729s-1.131-1.649.518-2.78c1.649-1.131 2.78.518 2.78.518l7.854 11.454 1.194 1.742c-4.948 3.394-5.419 9.779-2.592 13.902.565.825 1.39.26 1.39.26-3.393-4.949-2.357-10.51 2.592-13.903L24.515 8.62s-.545-1.924 1.378-2.47c1.924-.545 2.47 1.379 2.47 1.379l1.685 5.004c.668 1.984 1.379 3.961 2.32 5.831 2.657 5.28 1.07 11.842-3.94 15.279-5.465 3.747-12.936 2.354-16.684-3.11L2.695 17.336z"/><g fill="#5DADEC"><path d="M12 32.042C8 32.042 3.958 28 3.958 24c0-.553-.405-1-.958-1s-1.042.447-1.042 1C1.958 30 6 34.042 12 34.042c.553 0 1-.489 1-1.042s-.447-.958-1-.958z"/><path d="M7 34c-3 0-5-2-5-5 0-.553-.447-1-1-1s-1 .447-1 1c0 4 3 7 7 7 .553 0 1-.447 1-1s-.447-1-1-1zM24 2c-.552 0-1 .448-1 1s.448 1 1 1c4 0 8 3.589 8 8 0 .552.448 1 1 1s1-.448 1-1c0-5.514-4-10-10-10z"/><path d="M29 .042c-.552 0-1 .406-1 .958s.448 1.042 1 1.042c3 0 4.958 2.225 4.958 4.958 0 .552.489 1 1.042 1s.958-.448.958-1C35.958 3.163 33 .042 29 .042z"/></g></svg>
=====================================
browser/components/abouttor/content/aboutTor.css
=====================================
@@ -13,6 +13,7 @@ body {
"tor-check tor-check tor-check" auto
". form ." min-content
"message message message" auto
+ "survey survey survey" auto
/* End space: unfilled.
* Reserve 150px for background image.
* NOTE: Since the body has "auto" height, the other "1fr" flex row will
@@ -58,20 +59,24 @@ body:not(.is-testing) #tor-browser-home-heading-testing {
#tor-check {
grid-area: tor-check;
- max-width: var(--form-max-width);
- box-sizing: border-box;
display: flex;
gap: 10px;
align-items: center;
padding-inline: 23px;
padding-block: 11px;
- border: 1px solid var(--in-content-box-border-color);
border-radius: 8px;
- background-color: var(--in-content-box-info-background);
margin-block-start: 0;
margin-block-end: 30px;
}
+.tor-home-box {
+ border: 1px solid var(--in-content-box-border-color);
+ background-color: var(--in-content-box-info-background);
+ max-width: var(--form-max-width);
+ width: -moz-available;
+ box-sizing: border-box;
+}
+
body:not(.show-tor-check) #tor-check {
display: none;
}
@@ -92,8 +97,7 @@ body:not(.show-tor-check) #tor-check {
grid-area: message;
font-weight: 400;
text-align: center;
- margin-block-start: 1.6em;
- margin-block-end: 1em;
+ margin-block: 1.6em;
}
.message-emoji {
@@ -173,6 +177,68 @@ body:not(.show-tor-check) #tor-check {
margin-inline-start: 0.5em;
}
+#survey {
+ grid-area: survey;
+ display: grid;
+ grid-template:
+ "icon heading close" min-content
+ "icon body close" auto
+ ". buttons buttons" min-content
+ / min-content 1fr min-content;
+ border-radius: 4px;
+ /* Remove 1px from padding for border. */
+ padding-block: 3px 11px;
+ padding-inline: 15px 3px;
+ gap: 8px;
+ margin-block-end: 1.6em;
+}
+
+body:not(.show-survey) #survey {
+ display: none;
+}
+
+#survey > * {
+ margin: 0;
+}
+
+#survey-icon {
+ grid-area: icon;
+ width: 24px;
+ height: 24px;
+ padding: 8px;
+ border-radius: 20px;
+}
+
+#survey-heading {
+ grid-area: heading;
+ font-size: inherit;
+}
+
+#survey-icon,
+#survey-heading {
+ margin-block-start: 8px;
+}
+
+#survey-body {
+ grid-area: body;
+ margin-block-end: 8px;
+}
+
+#survey-buttons {
+ grid-area: buttons;
+ display: flex;
+ gap: 8px;
+}
+
+#survey-buttons > * {
+ flex: 0 0 auto;
+ margin: 0;
+}
+
+#survey-close {
+ grid-area: close;
+}
+
@media not ((prefers-contrast) or (forced-colors)) {
/* Force the page to follow the same Tor theme, regardless of
* prefers-color-scheme. */
@@ -196,6 +262,13 @@ body:not(.show-tor-check) #tor-check {
body > :not(#search-form) {
/* Same as --in-content-page-color when "prefers-color-scheme: dark" */
color: var(--color-gray-05);
+ --button-text-color: currentColor;
+ --in-content-button-text-color: var(--button-text-color);
+ --in-content-button-text-color-hover: var(--button-text-color);
+ --in-content-button-text-color-active: var(--button-text-color);
+ --button-text-color-ghost: var(--button-text-color);
+ --button-text-color-ghost-hover: var(--button-text-color);
+ --button-text-color-ghost-active: var(--button-text-color);
--link-color: var(--tor-link-color-dark);
--link-color-hover: var(--tor-link-color-hover-dark);
--link-color-active: var(--tor-link-color-active-dark);
@@ -234,4 +307,20 @@ body:not(.show-tor-check) #tor-check {
#search-form.onionized-search #onionize-toggle {
color: var(--tor-link-color-light);
}
+
+ #survey {
+ background-color: #3d1559;
+ border-color: transparent;
+ }
+
+ #survey-icon {
+ background-color: #00000040;
+ }
+
+ #survey-launch {
+ color: var(--color-gray-100);
+ --in-content-primary-button-background: var(--tor-button-background-color-dark);
+ --in-content-primary-button-background-hover: var(--tor-button-background-color-hover-dark);
+ --in-content-primary-button-background-active: var(--tor-button-background-color-active-dark);
+ }
}
=====================================
browser/components/abouttor/content/aboutTor.html
=====================================
@@ -22,6 +22,10 @@
<link rel="localization" href="browser/newtab/newtab.ftl" />
<link rel="localization" href="toolkit/global/tor-browser.ftl" />
+ <script
+ type="module"
+ src="chrome://global/content/elements/moz-button.mjs"
+ ></script>
<script
type="module"
src="chrome://global/content/elements/moz-toggle.mjs"
@@ -44,7 +48,7 @@
data-l10n-id="tor-browser-home-heading-testing"
></span>
</h1>
- <p id="tor-check">
+ <p id="tor-check" class="tor-home-box">
<img
id="tor-check-icon"
alt=""
@@ -132,5 +136,26 @@
></a>
</span>
</p>
+ <!-- Survey element, initially used for tor-browser#43504. -->
+ <article id="survey" class="tor-home-box" aria-labelledby="survey-heading">
+ <img
+ id="survey-icon"
+ alt=""
+ src="chrome://browser/content/abouttor/1f44b-waving-hand.svg"
+ />
+ <h2 id="survey-heading"></h2>
+ <p id="survey-body"></p>
+ <div id="survey-buttons">
+ <button id="survey-launch" class="primary"></button>
+ <button id="survey-dismiss"></button>
+ </div>
+ <moz-button
+ id="survey-close"
+ type="icon ghost"
+ class="close"
+ size="16"
+ iconSrc="chrome://global/skin/icons/close.svg"
+ ></moz-button>
+ </article>
</body>
</html>
=====================================
browser/components/abouttor/content/aboutTor.js
=====================================
@@ -167,14 +167,241 @@ const MessageArea = {
},
};
+/**
+ * A reusable area for surveys.
+ *
+ * Initially used for tor-browser#43504.
+ */
+const SurveyArea = {
+ /**
+ * The current version of the survey.
+ *
+ * Should be increased every time we start a new survey campaign.
+ *
+ * @type {integer}
+ */
+ _version: 1,
+
+ /**
+ * The date to start showing the survey.
+ *
+ * @type {integer}
+ */
+ _startDate: Date.UTC(2025, 3, 14, 12), // 2025 April 14th, 12:00.
+
+ /**
+ * The date to stop showing the current survey.
+ *
+ * @type {integer}
+ */
+ _endDate: Date.UTC(2025, 3, 28), // 2025 April 28th, 00:00.
+
+ /**
+ * The survey URL.
+ *
+ * @type {string}
+ */
+ _urlBase: "https://survey.torproject.org/index.php/923269",
+
+ /**
+ * @typedef {object} SurveyLocaleData
+ *
+ * Locale-specific data for the survey.
+ *
+ * @property {string[]} browserLocales - The browser locales this should match
+ * with. The first locale should match the locale of the strings.
+ * @property {string} urlCode - The language code to pass to the survey URL.
+ * @property {string} dir - The direction of the locale.
+ * @property {object} strings - The strings to use for the survey banner.
+ */
+
+ /**
+ * The data for the selected locale.
+ *
+ * @type {SurveyLocaleData}
+ */
+ _localeData: null,
+
+ /**
+ * The data for each locale that is supported.
+ *
+ * The first entry is the default.
+ *
+ * @type {SurveyLocaleData[]}
+ */
+ _localeDataSet: [
+ {
+ browserLocales: ["en-US"],
+ dir: "ltr",
+ urlCode: "en",
+ strings: {
+ heading: "We’d love your feedback",
+ body: "Help us improve Tor Browser by completing this 10-minute survey.",
+ launch: "Launch the survey",
+ dismiss: "Not now",
+ close: "Close",
+ },
+ },
+ {
+ browserLocales: ["es-ES"],
+ dir: "ltr",
+ urlCode: "es",
+ strings: {
+ heading: "Danos tu opinión",
+ body: "Ayúdanos a mejorar el Navegador Tor completando esta encuesta de 10 minutos.",
+ launch: "Iniciar la encuesta",
+ dismiss: "Más adelante",
+ close: "Cerrar",
+ },
+ },
+ {
+ browserLocales: ["ru"],
+ dir: "ltr",
+ urlCode: "ru",
+ strings: {
+ heading: "Мы будем рады вашим отзывам",
+ body: "Помогите нам улучшить браузер Tor, пройдя 10-минутный опрос.",
+ launch: "Начать опрос",
+ dismiss: "Не сейчас",
+ close: "Закрыть",
+ },
+ },
+ {
+ browserLocales: ["fr"],
+ dir: "ltr",
+ urlCode: "fr",
+ strings: {
+ heading: "Nous serions ravis d’avoir votre avis !",
+ body: "Aidez-nous à améliorer le navigateur Tor en répondant à cette enquête de 10 minutes.",
+ launch: "Lancer l'enquête",
+ dismiss: "Pas maintenant",
+ close: "Fermer",
+ },
+ },
+ {
+ // Also show this pt-BR banner for the pt-PT browser locale.
+ browserLocales: ["pt-BR", "pt-PT"],
+ dir: "ltr",
+ urlCode: "pt-BR",
+ strings: {
+ heading: "Adoraríamos ouvir sua opinião",
+ body: "Ajude-nos a melhorar o Navegador Tor respondendo a esta pesquisa de 10 minutos.",
+ launch: "Iniciar a pesquisa",
+ dismiss: "Mais tarde",
+ close: "Fechar",
+ },
+ },
+ ],
+
+ /**
+ * Initialize the survey area.
+ */
+ init() {
+ document.getElementById("survey-launch").addEventListener("click", () => {
+ if (!this._localeData) {
+ return;
+ }
+ const url = new URL(this._urlBase);
+ url.searchParams.append("lang", this._localeData.urlCode);
+ open(url.href);
+ });
+ document.getElementById("survey-close").addEventListener("click", () => {
+ this._hide();
+ });
+ document.getElementById("survey-dismiss").addEventListener("click", () => {
+ this._hide();
+ });
+ },
+
+ /**
+ * Permanently hide this survey.
+ */
+ _hide() {
+ document.body.classList.remove("show-survey");
+ // Move focus to the search input.
+ document.getElementById("search-input").focus();
+
+ dispatchEvent(
+ new CustomEvent("SurveyDismissed", {
+ // We pass in the current survey version to record the *latest*
+ // version that the user has dismissed. This will overwrite any
+ // previous versions.
+ detail: this._version,
+ bubbles: true,
+ })
+ );
+ },
+
+ /**
+ * Decide whether to show the survey.
+ *
+ * @param {integer} dismissVersion - The latest version of survey that the
+ * user has already dismissed.
+ * @param {boolean} isStable - Whether this is the stable release of Tor
+ * Browser.
+ */
+ potentiallyShow(dismissVersion, isStable) {
+ const now = Date.now();
+ if (
+ now < this._startDate ||
+ now >= this._endDate ||
+ // The user has already dismissed this version of the survey before:
+ dismissVersion >= this._version ||
+ !isStable
+ ) {
+ // Don't show the survey.
+ return;
+ }
+
+ // Determine the survey locale based on the about:tor locale.
+ // NOTE: We do not user document.l10n to translate the survey banner.
+ // Instead we only translate the banner into a limited set of locales that
+ // match the languages that the survey itself supports. This should match
+ // the language of the survey when it is opened by the user.
+ const pageLocale = document.documentElement.getAttribute("lang");
+ for (const localeData of this._localeDataSet) {
+ if (localeData.browserLocales.includes(pageLocale)) {
+ this._localeData = localeData;
+ break;
+ }
+ }
+ if (!this._localeData) {
+ // Show the default en-US banner.
+ this._localeData = this._localeDataSet[0];
+ }
+
+ // Make sure the survey's lang and dir attributes match the chosen locale.
+ const surveyEl = document.getElementById("survey");
+ surveyEl.setAttribute("lang", this._localeData.browserLocales[0]);
+ surveyEl.setAttribute("dir", this._localeData.dir);
+
+ const { heading, body, launch, dismiss, close } = this._localeData.strings;
+
+ document.getElementById("survey-heading").textContent = heading;
+ document.getElementById("survey-body").textContent = body;
+ document.getElementById("survey-launch").textContent = launch;
+ document.getElementById("survey-dismiss").textContent = dismiss;
+ document.getElementById("survey-close").setAttribute("title", close);
+
+ document.body.classList.add("show-survey");
+ },
+};
+
window.addEventListener("DOMContentLoaded", () => {
SearchWidget.init();
MessageArea.init();
+ SurveyArea.init();
});
window.addEventListener("InitialData", event => {
- const { torConnectEnabled, isStable, searchOnionize, messageData } =
- event.detail;
+ const {
+ torConnectEnabled,
+ isStable,
+ searchOnionize,
+ messageData,
+ surveyDismissVersion,
+ } = event.detail;
SearchWidget.setOnionizeState(!!searchOnionize);
MessageArea.setMessageData(messageData, !!isStable, !!torConnectEnabled);
+ SurveyArea.potentiallyShow(surveyDismissVersion, isStable);
});
=====================================
browser/components/abouttor/jar.mn
=====================================
@@ -3,6 +3,7 @@ browser.jar:
content/browser/abouttor/aboutTor.js (content/aboutTor.js)
content/browser/abouttor/aboutTor.html (content/aboutTor.html)
content/browser/abouttor/dax-logo.svg (content/dax-logo.svg)
+ content/browser/abouttor/1f44b-waving-hand.svg (content/1f44b-waving-hand.svg)
content/browser/abouttor/1f4e3-megaphone.svg (content/1f4e3-megaphone.svg)
content/browser/abouttor/26a1-high-voltage.svg (content/26a1-high-voltage.svg)
content/browser/abouttor/2728-sparkles.svg (content/2728-sparkles.svg)
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/dce8efc…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/dce8efc…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in...
by henry (@henry) 10 Mar '25
by henry (@henry) 10 Mar '25
10 Mar '25
henry pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
4b55145d by Henry Wilkes at 2025-03-10T11:17:32+00:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43547: Removing the last bridge sets the source to Invalid instead.
- - - - -
1 changed file:
- browser/components/torpreferences/content/connectionPane.js
Changes:
=====================================
browser/components/torpreferences/content/connectionPane.js
=====================================
@@ -739,9 +739,16 @@ const gBridgeGrid = {
}
strings.splice(index, 1);
- TorSettings.changeSettings({
- bridges: { source, bridge_strings: strings },
- });
+ if (strings.length) {
+ TorSettings.changeSettings({
+ bridges: { source, bridge_strings: strings },
+ });
+ } else {
+ // Remove all bridges and disable.
+ TorSettings.changeSettings({
+ bridges: { source: TorBridgeSource.Invalid },
+ });
+ }
});
},
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4b55145…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4b55145…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] 3 commits: fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in...
by henry (@henry) 10 Mar '25
by henry (@henry) 10 Mar '25
10 Mar '25
henry pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
03900c02 by Henry Wilkes at 2025-03-10T11:05:42+00:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43463: Use TorConnect.frequentRegionCodes promise to populate the
locations popup. Also ensure the initial value is "automatic".
- - - - -
8e2dc3e0 by Henry Wilkes at 2025-03-10T11:05:44+00:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43463: Renamed TorConnect getCountryCodes to getFrequentRegions.
- - - - -
48d3af20 by Henry Wilkes at 2025-03-10T11:05:45+00:00
fixup! TB 40597: Implement TorSettings module
TB 43463: Load Moat regions from a local file rather than using Moat.
Also rename getCountryCodes to getFrequentRegions.
- - - - -
10 changed files:
- .eslintignore
- .prettierignore
- browser/components/torpreferences/content/connectionPane.js
- toolkit/components/torconnect/TorConnectParent.sys.mjs
- toolkit/components/torconnect/content/aboutTorConnect.js
- toolkit/content/jar.mn
- + toolkit/content/moat_countries_dev_build.json
- toolkit/modules/Moat.sys.mjs
- toolkit/modules/RemotePageAccessManager.sys.mjs
- toolkit/modules/TorConnect.sys.mjs
Changes:
=====================================
.eslintignore
=====================================
@@ -304,4 +304,5 @@ browser/app/profile/001-base-profile.js
browser/app/profile/000-tor-browser.js
mobile/android/app/000-tor-browser-android.js
toolkit/content/pt_config.json
+toolkit/content/moat_contries_dev_build.json
toolkit/components/lox/lox_wasm.jsm
=====================================
.prettierignore
=====================================
@@ -1533,4 +1533,5 @@ browser/app/profile/001-base-profile.js
browser/app/profile/000-tor-browser.js
mobile/android/app/000-tor-browser-android.js
toolkit/content/pt_config.json
+toolkit/content/moat_countries_dev_build.json
toolkit/components/lox/lox_wasm.jsm
=====================================
browser/components/torpreferences/content/connectionPane.js
=====================================
@@ -2529,65 +2529,48 @@ const gConnectionPane = (function () {
regionCode: location.value,
});
});
- this._populateLocations = () => {
- const currentValue = location.value;
- locationEntries.textContent = "";
- const createItem = (value, label, disabled) => {
- const item = document.createXULElement("menuitem");
- item.setAttribute("value", value);
- item.setAttribute("label", label);
- if (disabled) {
- item.setAttribute("disabled", "true");
- }
- return item;
- };
- const addLocations = codes => {
- const items = [];
- for (const code of codes) {
- items.push(
- createItem(
- code,
- TorConnect.countryNames[code]
- ? TorConnect.countryNames[code]
- : code
- )
- );
- }
- items.sort((left, right) => left.label.localeCompare(right.label));
- locationEntries.append(...items);
- };
- locationEntries.append(
- createItem("automatic", TorStrings.settings.bridgeLocationAutomatic)
- );
- if (TorConnect.countryCodes.length) {
- locationEntries.append(
- createItem("", TorStrings.settings.bridgeLocationFrequent, true)
- );
- addLocations(TorConnect.countryCodes);
- locationEntries.append(
- createItem("", TorStrings.settings.bridgeLocationOther, true)
+ const createItem = (value, label, disabled) => {
+ const item = document.createXULElement("menuitem");
+ item.setAttribute("value", value);
+ item.setAttribute("label", label);
+ if (disabled) {
+ item.setAttribute("disabled", "true");
+ }
+ return item;
+ };
+ const addLocations = codes => {
+ const items = [];
+ for (const code of codes) {
+ items.push(
+ createItem(
+ code,
+ TorConnect.countryNames[code]
+ ? TorConnect.countryNames[code]
+ : code
+ )
);
}
- addLocations(Object.keys(TorConnect.countryNames));
- location.value = currentValue;
+ items.sort((left, right) => left.label.localeCompare(right.label));
+ locationEntries.append(...items);
};
+ // Add automatic before waiting for getFrequentRegions.
+ locationEntries.append(
+ createItem("automatic", TorStrings.settings.bridgeLocationAutomatic)
+ );
+ location.value = "automatic";
+ TorConnect.getFrequentRegions().then(frequentCodes => {
+ locationEntries.append(
+ createItem("", TorStrings.settings.bridgeLocationFrequent, true)
+ );
+ addLocations(frequentCodes);
+ locationEntries.append(
+ createItem("", TorStrings.settings.bridgeLocationOther, true)
+ );
+ addLocations(Object.keys(TorConnect.countryNames));
+ });
this._showAutoconfiguration = () => {
- if (
- !TorConnect.canBeginAutoBootstrap ||
- !TorConnect.potentiallyBlocked
- ) {
- locationGroup.setAttribute("hidden", "true");
- return;
- }
- // Populate locations, even though we will show only the automatic
- // item for a moment. In my opinion showing the button immediately is
- // better then waiting for the Moat query to finish (after a while)
- // and showing the controls only after that.
- this._populateLocations();
- locationGroup.removeAttribute("hidden");
- if (!TorConnect.countryCodes.length) {
- TorConnect.getCountryCodes().then(() => this._populateLocations());
- }
+ locationGroup.hidden =
+ !TorConnect.canBeginAutoBootstrap || !TorConnect.potentiallyBlocked;
};
this._showAutoconfiguration();
}
=====================================
toolkit/components/torconnect/TorConnectParent.sys.mjs
=====================================
@@ -132,8 +132,8 @@ export class TorConnectParent extends JSWindowActorParent {
stage: TorConnect.stage,
quickstartEnabled: TorConnect.quickstart,
};
- case "torconnect:get-country-codes":
- return TorConnect.getCountryCodes();
+ case "torconnect:get-frequent-regions":
+ return TorConnect.getFrequentRegions();
}
return undefined;
}
=====================================
toolkit/components/torconnect/content/aboutTorConnect.js
=====================================
@@ -610,7 +610,7 @@ class AboutTorConnect {
showLocationForm(isChoose, buttonLabel) {
this.hideButtons();
- RPMSendQuery("torconnect:get-country-codes").then(codes => {
+ RPMSendQuery("torconnect:get-frequent-regions").then(codes => {
if (codes && codes.length) {
this.populateFrequentLocations(codes);
this.setLocation();
=====================================
toolkit/content/jar.mn
=====================================
@@ -158,4 +158,9 @@ toolkit.jar:
content/global/third_party/d3/d3.js (/third_party/js/d3/d3.js)
content/global/third_party/cfworker/json-schema.js (/third_party/js/cfworker/json-schema.js)
+ # The pt_config.json content should be replaced in the omni.ja in
+ # tor-browser-build. See tor-browser#42343.
content/global/pt_config.json (pt_config.json)
+ # The moat_countries.json content should be replaced in the omni.ja in
+ # tor-browser-build. See tor-browser#43463.
+ content/global/moat_countries.json (moat_countries_dev_build.json)
=====================================
toolkit/content/moat_countries_dev_build.json
=====================================
@@ -0,0 +1,7 @@
+[
+ {
+ "_comment1": "Used for dev build, replaced for release builds in tor-browser-build.",
+ "_comment2": "List is taken from tpo/anti-censorship/rdsys-admin 810fb24b:conf/circumvention.json and filtered with `jq -c keys`."
+ },
+ "by","cn","eg","hk","ir","mm","ru","tm"
+]
=====================================
toolkit/modules/Moat.sys.mjs
=====================================
@@ -335,20 +335,6 @@ export class MoatRPC {
return settings;
}
- // Request a list of country codes with available censorship circumvention
- // settings.
- //
- // returns an array of ISO 3166-1 alpha-2 country codes which we can query
- // settings for.
- async circumvention_countries() {
- const args = {};
- const { response } = await this.#makeRequest(
- "circumvention/countries",
- args
- );
- return response;
- }
-
// Request a copy of the builtin bridges, takes the following parameters:
// - transports: optional, an array of transports we would like the latest
// bridge strings for; if empty (or not given) returns all of them
=====================================
toolkit/modules/RemotePageAccessManager.sys.mjs
=====================================
@@ -255,7 +255,7 @@ export let RemotePageAccessManager = {
],
RPMSendQuery: [
"torconnect:get-init-args",
- "torconnect:get-country-codes",
+ "torconnect:get-frequent-regions",
],
},
"about:welcome": {
=====================================
toolkit/modules/TorConnect.sys.mjs
=====================================
@@ -817,8 +817,14 @@ export const TorConnect = {
};
},
- // list of country codes Moat has settings for
- _countryCodes: [],
+ /**
+ * Promise that resolves to a list of region codes that Moat has special
+ * bridge settings for.
+ *
+ * @type {Promise<string[]>}
+ */
+ _moatRegionsPromise: null,
+
_countryNames: Object.freeze(
(() => {
const codes = Services.intl.getAvailableLocaleDisplayNames("region");
@@ -892,6 +898,18 @@ export const TorConnect = {
return;
}
+ this._moatRegionsPromise = fetch(
+ "chrome://global/content/moat_countries.json"
+ )
+ .then(req => req.json())
+ // Filter out the "_comment" object in the moat_countries_dev_build.json
+ // file.
+ .then(regionList => regionList.filter(r => typeof r === "string"))
+ .catch(e => {
+ lazy.logger.error("Failed to fetch Moat region codes", e);
+ return [];
+ });
+
let observeTopic = addTopic => {
Services.obs.addObserver(this, addTopic);
lazy.logger.debug(`Observing topic '${addTopic}'`);
@@ -1113,10 +1131,6 @@ export const TorConnect = {
return null;
},
- get countryCodes() {
- return this._countryCodes;
- },
-
get countryNames() {
return this._countryNames;
},
@@ -1526,25 +1540,12 @@ export const TorConnect = {
this._makeStageRequest(TorConnectStage.ChooseRegion);
},
- /*
- Further external commands and helper methods
+ /**
+ * Get the list of regions that Moat has settings for.
+ *
+ * @returns {string[]} - The list of region codes.
*/
-
- async getCountryCodes() {
- // Difference with the getter: this is to be called by TorConnectParent, and
- // downloads the country codes if they are not already in cache.
- if (this._countryCodes.length) {
- return this._countryCodes;
- }
- const mrpc = new lazy.MoatRPC();
- try {
- await mrpc.init();
- this._countryCodes = await mrpc.circumvention_countries();
- } catch (err) {
- lazy.logger.error("An error occurred while fetching country codes", err);
- } finally {
- mrpc.uninit();
- }
- return this._countryCodes;
+ async getFrequentRegions() {
+ return this._moatRegionsPromise ?? [];
},
};
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/8bb1b9…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/8bb1b9…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] 2 commits: fixup! TB 40041 [android]: Implement Tor Network Settings
by Dan Ballard (@dan) 07 Mar '25
by Dan Ballard (@dan) 07 Mar '25
07 Mar '25
Dan Ballard pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
496a888f by clairehurst at 2025-03-07T04:03:11+00:00
fixup! TB 40041 [android]: Implement Tor Network Settings
tor-browser#43329 [Android] Remove remaining traces of the old Bootstrap
- - - - -
8bb1b960 by clairehurst at 2025-03-07T04:03:11+00:00
fixup! TB 41878: [android] Add standalone Tor Bootstrap
tor-browser#43329 [Android] Remove remaining traces of the old Bootstrap
# Conflicts:
# mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
- - - - -
3 changed files:
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
- − mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBootstrapStatus.kt
- mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml
Changes:
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
=====================================
@@ -158,8 +158,6 @@ import org.mozilla.fenix.search.toolbar.SearchSelectorMenu
import org.mozilla.fenix.tabstray.Page
import org.mozilla.fenix.tabstray.TabsTrayAccessPoint
import org.mozilla.fenix.theme.FirefoxTheme
-import org.mozilla.fenix.tor.TorBootstrapFragmentDirections
-import org.mozilla.fenix.tor.TorBootstrapStatus
import org.mozilla.fenix.tor.TorConnectionAssistViewModel
import org.mozilla.fenix.utils.Settings.Companion.TOP_SITES_PROVIDER_MAX_THRESHOLD
import org.mozilla.fenix.utils.allowUndo
@@ -262,7 +260,6 @@ class HomeFragment : Fragment(), UserInteractionHandler {
private val bottomToolbarContainerIntegration = ViewBoundFeatureWrapper<BottomToolbarContainerIntegration>()
private lateinit var savedLoginsLauncher: ActivityResultLauncher<Intent>
- private lateinit var torBootstrapStatus: TorBootstrapStatus
override fun onCreate(savedInstanceState: Bundle?) {
// DO NOT ADD ANYTHING ABOVE THIS getProfilerTime CALL!
@@ -295,12 +292,6 @@ class HomeFragment : Fragment(), UserInteractionHandler {
val activity = activity as HomeActivity
val components = requireComponents
- torBootstrapStatus = TorBootstrapStatus(
- !BuildConfig.DISABLE_TOR,
- components.torController,
- ::dispatchModeChanges
- )
-
val currentWallpaperName = requireContext().settings().currentWallpaperName
applyWallpaper(
wallpaperName = currentWallpaperName,
@@ -1037,7 +1028,6 @@ class HomeFragment : Fragment(), UserInteractionHandler {
override fun onStop() {
dismissRecommendPrivateBrowsingShortcut()
super.onStop()
- torBootstrapStatus.unregisterTorListener()
}
override fun onStart() {
@@ -1090,15 +1080,6 @@ class HomeFragment : Fragment(), UserInteractionHandler {
}
}
- private fun dispatchModeChanges(isBootstrapping: Boolean) {
- if (isBootstrapping) {
- val directions =
- TorBootstrapFragmentDirections
- .actionStartupTorbootstrap()
- findNavController().navigate(directions)
- }
- }
-
@VisibleForTesting
internal fun removeCollectionWithUndo(tabCollection: TabCollection) {
val snackbarMessage = getString(R.string.snackbar_collection_deleted)
@@ -1122,7 +1103,6 @@ class HomeFragment : Fragment(), UserInteractionHandler {
override fun onResume() {
super.onResume()
- torBootstrapStatus.registerTorListener()
if (browsingModeManager.mode == BrowsingMode.Private) {
activity?.window?.setBackgroundDrawableResource(R.drawable.private_home_background_gradient)
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBootstrapStatus.kt deleted
=====================================
@@ -1,45 +0,0 @@
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
-package org.mozilla.fenix.tor
-
-@SuppressWarnings("LongParameterList", "TooManyFunctions")
-class TorBootstrapStatus(
- private val shouldStartTor: Boolean,
- private val torController: TorController,
- private val dispatchModeChanges: (isShouldBootstrap: Boolean) -> Unit
- ) : TorEvents {
-
- init {
- torController.registerTorListener(this)
- }
-
- fun isBootstrapping() = (shouldStartTor && !torController.isBootstrapped)
-
-
- @SuppressWarnings("EmptyFunctionBlock")
- override fun onTorConnecting() {
- }
-
- override fun onTorConnected() {
- dispatchModeChanges(isBootstrapping())
- }
-
- override fun onTorStopped() {
- dispatchModeChanges(isBootstrapping())
- }
-
- @SuppressWarnings("EmptyFunctionBlock")
- override fun onTorStatusUpdate(entry: String?, status: String?, progress: Double?) {
- }
-
- fun unregisterTorListener() {
- torController.unregisterTorListener(this)
- }
-
- fun registerTorListener() {
- torController.registerTorListener(this)
- }
-
-}
=====================================
mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml
=====================================
@@ -15,12 +15,6 @@
app:popUpTo="@id/startupFragment"
app:popUpToInclusive="true" />
- <action
- android:id="@+id/action_startup_torbootstrap"
- app:destination="@id/torbootstrapFragment"
- app:popUpTo="@id/startupFragment"
- app:popUpToInclusive="true" />
-
<action
android:id="@+id/action_startup_tor_connection_assist"
app:destination="@+id/torConnectionAssistFragment"
@@ -248,25 +242,6 @@
app:popExitAnim="@anim/slide_out_right" />
</fragment>
- <fragment
- android:id="@+id/torbootstrapFragment"
- android:name="org.mozilla.fenix.tor.TorBootstrapFragment"
- tools:layout="@layout/fragment_home">
-
- <action
- android:id="@+id/action_home"
- app:destination="@id/homeFragment"
- app:popUpTo="@id/torbootstrapFragment"
- app:popUpToInclusive="true" />
- <action
- android:id="@+id/action_torbootstrapFragment_to_SettingsFragment"
- app:destination="@id/settingsFragment"
- app:enterAnim="@anim/slide_in_right"
- app:exitAnim="@anim/slide_out_left"
- app:popEnterAnim="@anim/slide_in_left"
- app:popExitAnim="@anim/slide_out_right" />
- </fragment>
-
<fragment
android:id="@+id/torConnectionAssistFragment"
android:name="org.mozilla.fenix.tor.TorConnectionAssistFragment"
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/e68b04…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/e68b04…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Bug 41387: Fix Lyrebird for Android with Go 1.23.
by Pier Angelo Vendrame (@pierov) 06 Mar '25
by Pier Angelo Vendrame (@pierov) 06 Mar '25
06 Mar '25
Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
34b8f1ae by Pier Angelo Vendrame at 2025-03-06T16:52:55+01:00
Bug 41387: Fix Lyrebird for Android with Go 1.23.
- - - - -
1 changed file:
- projects/lyrebird/build
Changes:
=====================================
projects/lyrebird/build
=====================================
@@ -17,7 +17,7 @@ cd /var/tmp/build/[% project %]-[% c('version') %]
tar -xf $rootdir/[% c('input_files_by_name/go_vendor') %]
-go build -mod=vendor -ldflags '-s' ./cmd/lyrebird
+go build -mod=vendor -ldflags '-s[% IF c("var/android") %] -checklinkname=0[% END %]' ./cmd/lyrebird
cp -a lyrebird[% IF c("var/windows") %].exe[% END %] $distdir
cd $distdir
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/3…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/3…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-13.5] Bug 41383: Add clairehurst to list of accepted firefox/geckoview signers
by morgan (@morgan) 06 Mar '25
by morgan (@morgan) 06 Mar '25
06 Mar '25
morgan pushed to branch maint-13.5 at The Tor Project / Applications / tor-browser-build
Commits:
e2aea614 by Morgan at 2025-03-06T11:29:19+00:00
Bug 41383: Add clairehurst to list of accepted firefox/geckoview signers
- - - - -
3 changed files:
- + keyring/clairehurst.gpg
- projects/firefox/config
- projects/geckoview/config
Changes:
=====================================
keyring/clairehurst.gpg
=====================================
Binary files /dev/null and b/keyring/clairehurst.gpg differ
=====================================
projects/firefox/config
=====================================
@@ -6,6 +6,7 @@ tag_gpg_id: 1
git_url: https://gitlab.torproject.org/tpo/applications/tor-browser.git
gpg_keyring:
- boklm.gpg
+ - clairehurst.gpg
- dan_b.gpg
- ma1.gpg
- morgan.gpg
=====================================
projects/geckoview/config
=====================================
@@ -6,6 +6,7 @@ tag_gpg_id: 1
git_url: https://gitlab.torproject.org/tpo/applications/tor-browser.git
gpg_keyring:
- boklm.gpg
+ - clairehurst.gpg
- dan_b.gpg
- ma1.gpg
- morgan.gpg
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/e…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/e…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-14.0] Bug 41383: Add clairehurst to list of accepted firefox/geckoview signers
by morgan (@morgan) 06 Mar '25
by morgan (@morgan) 06 Mar '25
06 Mar '25
morgan pushed to branch maint-14.0 at The Tor Project / Applications / tor-browser-build
Commits:
08b0f096 by Morgan at 2025-03-06T11:28:47+00:00
Bug 41383: Add clairehurst to list of accepted firefox/geckoview signers
- - - - -
3 changed files:
- + keyring/clairehurst.gpg
- projects/firefox/config
- projects/geckoview/config
Changes:
=====================================
keyring/clairehurst.gpg
=====================================
Binary files /dev/null and b/keyring/clairehurst.gpg differ
=====================================
projects/firefox/config
=====================================
@@ -6,6 +6,7 @@ tag_gpg_id: 1
git_url: https://gitlab.torproject.org/tpo/applications/tor-browser.git
gpg_keyring:
- boklm.gpg
+ - clairehurst.gpg
- dan_b.gpg
- ma1.gpg
- morgan.gpg
=====================================
projects/geckoview/config
=====================================
@@ -6,6 +6,7 @@ tag_gpg_id: 1
git_url: https://gitlab.torproject.org/tpo/applications/tor-browser.git
gpg_keyring:
- boklm.gpg
+ - clairehurst.gpg
- dan_b.gpg
- ma1.gpg
- morgan.gpg
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/0…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/0…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Bug 41383: Add clairehurst to list of accepted firefox/geckoview signers
by morgan (@morgan) 06 Mar '25
by morgan (@morgan) 06 Mar '25
06 Mar '25
morgan pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
d4b60fd3 by Morgan at 2025-03-06T11:20:46+00:00
Bug 41383: Add clairehurst to list of accepted firefox/geckoview signers
- - - - -
3 changed files:
- + keyring/clairehurst.gpg
- projects/firefox/config
- projects/geckoview/config
Changes:
=====================================
keyring/clairehurst.gpg
=====================================
Binary files /dev/null and b/keyring/clairehurst.gpg differ
=====================================
projects/firefox/config
=====================================
@@ -6,6 +6,7 @@ tag_gpg_id: 1
git_url: https://gitlab.torproject.org/tpo/applications/tor-browser.git
gpg_keyring:
- boklm.gpg
+ - clairehurst.gpg
- dan_b.gpg
- ma1.gpg
- morgan.gpg
=====================================
projects/geckoview/config
=====================================
@@ -6,6 +6,7 @@ tag_gpg_id: 1
git_url: https://gitlab.torproject.org/tpo/applications/tor-browser.git
gpg_keyring:
- boklm.gpg
+ - clairehurst.gpg
- dan_b.gpg
- ma1.gpg
- morgan.gpg
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/d…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/d…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-128.8.0esr-14.5-1] 3 commits: Bug 1917556 - [marionette] Fix Mn tests with Python 3.12 r=webdriver-reviewers,whimboo
by Pier Angelo Vendrame (@pierov) 06 Mar '25
by Pier Angelo Vendrame (@pierov) 06 Mar '25
06 Mar '25
Pier Angelo Vendrame pushed to branch base-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
9492cb87 by Julian Descottes at 2025-03-06T10:46:29+01:00
Bug 1917556 - [marionette] Fix Mn tests with Python 3.12 r=webdriver-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D221448
- - - - -
29861015 by Beatriz Rizental at 2025-03-06T10:47:06+01:00
fixup! Base Browser's .mozconfigs.
- - - - -
63d64ecc by Beatriz Rizental at 2025-03-06T10:47:15+01:00
BB 43535: Enable tests
- - - - -
5 changed files:
- mozconfig-linux-aarch64-dev
- mozconfig-linux-x86_64-dev
- mozconfig-macos-dev
- testing/marionette/harness/marionette_harness/runner/base.py
- testing/specialpowers/api.js
Changes:
=====================================
mozconfig-linux-aarch64-dev
=====================================
@@ -16,3 +16,5 @@ ac_add_options --disable-install-strip
ac_add_options --with-base-browser-version=dev-build
ac_add_options --disable-base-browser-update
+
+ac_add_options --enable-tests
=====================================
mozconfig-linux-x86_64-dev
=====================================
@@ -19,3 +19,5 @@ ac_add_options --disable-base-browser-update
# Let's make sure no preference is enabling either Adobe's or Google's CDM.
ac_add_options --disable-eme
+
+ac_add_options --enable-tests
=====================================
mozconfig-macos-dev
=====================================
@@ -19,3 +19,5 @@ ac_add_options --disable-update-agent
# Let's make sure no preference is enabling either Adobe's or Google's CDM.
ac_add_options --disable-eme
+
+ac_add_options --enable-tests
=====================================
testing/marionette/harness/marionette_harness/runner/base.py
=====================================
@@ -222,7 +222,7 @@ class MarionetteTestResult(StructuredTestResult, TestResultCollection):
self.logger.info("END LOG:")
def stopTest(self, *args, **kwargs):
- unittest._TextTestResult.stopTest(self, *args, **kwargs)
+ unittest.TextTestResult.stopTest(self, *args, **kwargs)
if self.marionette.check_for_crash():
# this tells unittest.TestSuite not to continue running tests
self.shouldStop = True
=====================================
testing/specialpowers/api.js
=====================================
@@ -40,6 +40,18 @@ this.specialpowers = class extends ExtensionAPI {
uri,
resProto.ALLOW_CONTENT_ACCESS
);
+ } else {
+ // This is a hack!
+ // For some reason, this specific substituion has an extra `/` in the path.
+ // This is a workaround to fix it.
+ //
+ // TODO (#43545): Remove this once we have a proper fix.
+ let uri = resProto.getSubstitution("testing-common");
+ resProto.setSubstitution(
+ "testing-common",
+ Services.io.newURI(uri.spec.replace("file:////", "file:///")),
+ resProto.ALLOW_CONTENT_ACCESS
+ );
}
SpecialPowersParent.registerActor();
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/cb0e95…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/cb0e95…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] 4 commits: Bug 1917556 - [marionette] Fix Mn tests with Python 3.12 r=webdriver-reviewers,whimboo
by Pier Angelo Vendrame (@pierov) 06 Mar '25
by Pier Angelo Vendrame (@pierov) 06 Mar '25
06 Mar '25
Pier Angelo Vendrame pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
3d30c6e9 by Julian Descottes at 2025-03-06T10:30:48+01:00
Bug 1917556 - [marionette] Fix Mn tests with Python 3.12 r=webdriver-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D221448
- - - - -
a21c94fd by Beatriz Rizental at 2025-03-06T10:30:48+01:00
fixup! Base Browser's .mozconfigs.
- - - - -
d5d98c87 by Beatriz Rizental at 2025-03-06T10:30:48+01:00
fixup! TB 41089: Add tor-browser build scripts + Makefile to tor-browser
- - - - -
e68b047e by Beatriz Rizental at 2025-03-06T10:30:49+01:00
BB 43535: Enable tests
- - - - -
7 changed files:
- mozconfig-linux-aarch64-dev
- mozconfig-linux-x86_64-dev
- mozconfig-macos-dev
- testing/marionette/harness/marionette_harness/runner/base.py
- testing/specialpowers/api.js
- tools/torbrowser/Makefile
- + tools/torbrowser/prepare-tests.sh
Changes:
=====================================
mozconfig-linux-aarch64-dev
=====================================
@@ -18,3 +18,5 @@ ac_add_options --disable-install-strip
ac_add_options --with-base-browser-version=dev-build
ac_add_options --disable-base-browser-update
+
+ac_add_options --enable-tests
=====================================
mozconfig-linux-x86_64-dev
=====================================
@@ -21,3 +21,5 @@ ac_add_options --disable-base-browser-update
# Let's make sure no preference is enabling either Adobe's or Google's CDM.
ac_add_options --disable-eme
+
+ac_add_options --enable-tests
=====================================
mozconfig-macos-dev
=====================================
@@ -25,3 +25,5 @@ ac_add_options --with-relative-data-dir=../TorBrowser-Data/Browser
#copied from the diff between mozconfig-linux-x86_64 and mozconfig-linux-x86_64-dev
export MOZ_APP_REMOTINGNAME="Tor Browser Dev"
ac_add_options --with-branding=browser/branding/tb-nightly
+
+ac_add_options --enable-tests
=====================================
testing/marionette/harness/marionette_harness/runner/base.py
=====================================
@@ -222,7 +222,7 @@ class MarionetteTestResult(StructuredTestResult, TestResultCollection):
self.logger.info("END LOG:")
def stopTest(self, *args, **kwargs):
- unittest._TextTestResult.stopTest(self, *args, **kwargs)
+ unittest.TextTestResult.stopTest(self, *args, **kwargs)
if self.marionette.check_for_crash():
# this tells unittest.TestSuite not to continue running tests
self.shouldStop = True
=====================================
testing/specialpowers/api.js
=====================================
@@ -40,6 +40,18 @@ this.specialpowers = class extends ExtensionAPI {
uri,
resProto.ALLOW_CONTENT_ACCESS
);
+ } else {
+ // This is a hack!
+ // For some reason, this specific substituion has an extra `/` in the path.
+ // This is a workaround to fix it.
+ //
+ // TODO (#43545): Remove this once we have a proper fix.
+ let uri = resProto.getSubstitution("testing-common");
+ resProto.setSubstitution(
+ "testing-common",
+ Services.io.newURI(uri.spec.replace("file:////", "file:///")),
+ resProto.ALLOW_CONTENT_ACCESS
+ );
}
SpecialPowersParent.registerActor();
=====================================
tools/torbrowser/Makefile
=====================================
@@ -53,6 +53,9 @@ build:
deploy:
./deploy.sh $(BINARIES) $(BUILD_OUTPUT)
+prepare-tests:
+ ./prepare-tests.sh $(BINARIES) $(BUILD_OUTPUT)
+
all: build deploy
run:
=====================================
tools/torbrowser/prepare-tests.sh
=====================================
@@ -0,0 +1,25 @@
+#!/bin/sh
+set -e
+
+BINARIES="$1"
+BUILD_OUTPUT="$2"
+
+if [ ! -d "$BUILD_OUTPUT" ]; then
+ echo "Error: $BUILD_OUTPUT directory does not exist."
+ echo "Make sure to run `mach ./build` or `make -C tools/torbrowser build`."
+ exit 1
+fi
+
+if [ ! -d "$BINARIES" ]; then
+ echo "Error: $BINARIES directory does not exist."
+ echo "Make sure to run `make -C tools/torbrowser fetch`."
+ exit 1
+fi
+
+if [ "$(uname)" = "Darwin" ]; then
+ cp -r "$BINARIES/Tor Browser.app/Contents/MacOS/Tor" "$BUILD_OUTPUT/dist/firefox/"*.app/Contents/MacOS
+ cp -r "$BINARIES/Tor Browser.app/Contents/Resources/fonts" "$BUILD_OUTPUT/dist/firefox/"*.app/Contents/Resources
+else
+ cp -r "$BINARIES/dev/Browser/fonts" "$BUILD_OUTPUT/dist/bin"
+ cp -r "$BINARIES/dev/Browser/TorBrowser" "$BUILD_OUTPUT/dist/bin"
+fi
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/347af8…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/347af8…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser] Pushed new tag base-browser-128.8.0esr-14.5-1-build1
by clairehurst (@clairehurst) 05 Mar '25
by clairehurst (@clairehurst) 05 Mar '25
05 Mar '25
clairehurst pushed new tag base-browser-128.8.0esr-14.5-1-build1 at The Tor Project / Applications / Mullvad Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/base-…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser] Pushed new branch mullvad-browser-128.8.0esr-14.5-1
by clairehurst (@clairehurst) 05 Mar '25
by clairehurst (@clairehurst) 05 Mar '25
05 Mar '25
clairehurst pushed new branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/mullv…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Bump Firefox version to 128.8.0esr for nightly builds.
by clairehurst (@clairehurst) 05 Mar '25
by clairehurst (@clairehurst) 05 Mar '25
05 Mar '25
clairehurst pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
f3e61226 by clairehurst at 2025-03-05T13:20:04-07:00
Bump Firefox version to 128.8.0esr for nightly builds.
- - - - -
2 changed files:
- projects/firefox/config
- projects/geckoview/config
Changes:
=====================================
projects/firefox/config
=====================================
@@ -14,12 +14,12 @@ container:
use_container: 1
var:
- firefox_platform_version: '128.7.0'
+ firefox_platform_version: '128.8.0'
firefox_version: '[% c("var/firefox_platform_version") %]esr'
browser_series: '14.5'
browser_rebase: 1
browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]'
- browser_build: 2
+ browser_build: 1
branding_directory_prefix: 'tb'
copyright_year: '[% exec("git show -s --format=%ci " _ c("git_hash") _ "^{commit}", { exec_noco => 1 }).remove("-.*") %]'
nightly_updates_publish_dir: '[% c("var/nightly_updates_publish_dir_prefix") %]nightly-[% c("var/osname") %]'
=====================================
projects/geckoview/config
=====================================
@@ -16,12 +16,12 @@ container:
build_apk: 1
var:
- firefox_platform_version: '128.7.0'
+ firefox_platform_version: '128.8.0'
geckoview_version: '[% c("var/firefox_platform_version") %]esr'
browser_series: '14.5'
browser_rebase: 1
browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]'
- browser_build: 2
+ browser_build: 1
gitlab_project: https://gitlab.torproject.org/tpo/applications/tor-browser
git_commit: '[% exec("git rev-parse " _ c("git_hash") _ "^{commit}", { exec_noco => 1 }) %]'
deps:
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/f…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/f…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag base-browser-128.8.0esr-14.5-1-build1
by clairehurst (@clairehurst) 05 Mar '25
by clairehurst (@clairehurst) 05 Mar '25
05 Mar '25
clairehurst pushed new tag base-browser-128.8.0esr-14.5-1-build1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/base-brow…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag tor-browser-128.8.0esr-14.5-1-build1
by clairehurst (@clairehurst) 05 Mar '25
by clairehurst (@clairehurst) 05 Mar '25
05 Mar '25
clairehurst pushed new tag tor-browser-128.8.0esr-14.5-1-build1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-128.8.0esr-14.5-1] 151 commits: Bug 1899180. If a channel is not nsIPrivateBrowsingChannel and has no load...
by clairehurst (@clairehurst) 05 Mar '25
by clairehurst (@clairehurst) 05 Mar '25
05 Mar '25
clairehurst pushed to branch base-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
5ca07b51 by Timothy Nikkel at 2025-02-27T17:06:30+00:00
Bug 1899180. If a channel is not nsIPrivateBrowsingChannel and has no load context, use the private browsing field from it's origin attributes. r=necko-reviewers,anti-tracking-reviewers,valentin
If the channel is not a nsIPrivateBrowsingChannel, and it also has no load context (eg inside svg images) then we will over write a non-zero mPrivateBrowsingId on the OriginAttributes of the channel with 0, making NS_UsePrivateBrowsing return false for the channel.
Differential Revision: https://phabricator.services.mozilla.com/D212083
- - - - -
74bfe8a6 by Jon Coppeard at 2025-02-27T17:06:30+00:00
Bug 1904011 - Ignore finalized scripts when iterating code covarage tables r=iain
Differential Revision: https://phabricator.services.mozilla.com/D214799
- - - - -
fb06682f by Arturo Mejia at 2025-02-27T17:06:31+00:00
Bug 1908344 - Improve prompts showing a=dmeehan - BP, tor-browser#43005
Original Revision: https://phabricator.services.mozilla.com/D216996
Differential Revision: https://phabricator.services.mozilla.com/D217718
- - - - -
b310f20c by Sam Foster at 2025-02-27T17:06:31+00:00
Bug 1909099 - Always clean up old session restore and sync log files. r=markh,sessionstore-reviewers,dao
Differential Revision: https://phabricator.services.mozilla.com/D217520
- - - - -
e24f0732 by pollymce at 2025-02-27T17:06:32+00:00
Bug 1902996 - Improve messaging for fullscreen notifications. r=android-reviewers,gl
Instead of explaining to users that they are in fullscreen mode, which may be obvious, we explain how to get out of it :)
Also use a Toast rather than a custom Dialog.
Update Focus too.
Fix lint errors.
Differential Revision: https://phabricator.services.mozilla.com/D215782
- - - - -
f8f4af65 by Roger Yang at 2025-02-27T17:06:32+00:00
Bug 1862537 - Do not try to go back when it's a initial load r=android-reviewers,harrisono, a=pascalc
Differential Revision: https://phabricator.services.mozilla.com/D219782
- - - - -
787a1860 by Henry Wilkes at 2025-02-27T17:06:33+00:00
Bug 1436462 - Use "Open in new private window" for bookmarks when in PBM. r=places-reviewers,mak
This makes the bookmark menu consistent with the "File" and context
menu when using private browsing mode.
We also share the same hide item logic for these "open" items in one
place in PlacesUIUtils so that they can be shared between the two
consumers (regular bookmarks and managed bookmarks). This ensures that
the "Open in container" item if hidden for managed bookmarks in a
private window.
Differential Revision: https://phabricator.services.mozilla.com/D220120
- - - - -
a1458db2 by Fatih at 2025-02-27T17:06:33+00:00
Bug 1834307: Change StaticPrefs::general_smoothScroll() calls with nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221363
- - - - -
f26cbe1a by Fatih at 2025-02-27T17:06:34+00:00
Bug 1834307: Check RFPTarget::CSSPrefersReducedMotion in nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221364
- - - - -
c8ac612a by Henry Wilkes at 2025-02-27T17:06:34+00:00
Bug 1919363 - Only show one app menu "new window" item in permanent private browsing. r=mconley
We also update the browser_private_browsing_window.js test.
The previous test was limited because it was referring to non-existent
"appmenu_newNavigator" and "appmenu_newPrivateWindow".
Differential Revision: https://phabricator.services.mozilla.com/D222507
- - - - -
07271014 by rahulsainani at 2025-02-27T17:06:35+00:00
Bug 1906024 - Format download file names better a=diannaS
Original Revision: https://phabricator.services.mozilla.com/D220559
Differential Revision: https://phabricator.services.mozilla.com/D222254
- - - - -
76e0020a by rahulsainani at 2025-02-27T17:06:35+00:00
Bug 1906024 - Format download file names a=diannaS
Original Revision: https://phabricator.services.mozilla.com/D221771
Differential Revision: https://phabricator.services.mozilla.com/D222259
- - - - -
df425552 by Nika Layzell at 2025-02-27T17:06:36+00:00
Bug 1911745 - Unify BrowsingContext flag coherency checks, r=mccr8
Previously these checks were largely diagnostic tools for finding bugs
in other code as it evolves. This unifies the checks a bit more and
makes them stronger for BrowsingContexts created over IPC, providing a
place for more coherency checks to be added in the future.
Differential Revision: https://phabricator.services.mozilla.com/D218860
- - - - -
0f64acf0 by Pier Angelo Vendrame at 2025-02-27T17:06:36+00:00
Bug 1918009 - Fix the RFP-spoofed User-Agent header. r=tjr
The spoofed value of the HTTP user-agent header is not consistent with
the value of navigator.userAgent on Windows, and this can lead to
compatibility issues.
Differential Revision: https://phabricator.services.mozilla.com/D223745
- - - - -
b9aa9428 by Fatih at 2025-02-27T17:06:37+00:00
Bug 1607032: Spoof screen orientation and angle to primary values. r=tjr,geckoview-reviewers,owlish
Differential Revision: https://phabricator.services.mozilla.com/D220904
- - - - -
1d554b76 by Fatih at 2025-02-27T17:06:37+00:00
Bug 1918202: Spoof orientation based on screen size. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221863
- - - - -
4501f6d4 by Fatih at 2025-02-27T17:06:38+00:00
Bug 1922204: fixup square spoofed orientation. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D224312
- - - - -
eecffb21 by Pier Angelo Vendrame at 2025-02-27T17:06:38+00:00
Bug 1923264 - Discard unsupported updates in selectUpdate. r=bytesized,nalexander
UpdateService.#selectUpdate currently chooses always the most recent
update even when unsupported and an older but supported one is
available.
This commit makes #selectUpdate discard the unsupported update if a
supported alternative is found.
Differential Revision: https://phabricator.services.mozilla.com/D224905
- - - - -
5ffde69f by stransky at 2025-02-27T17:06:38+00:00
Bug 1501744 [Linux] Fill PointerEvents on the Gtk backend r=emilio
Patch author is tpxp <tpxp(a)live.fr>
Differential Revision: https://phabricator.services.mozilla.com/D215201
- - - - -
3a415e20 by Fatih at 2025-02-27T17:06:39+00:00
Bug 1436226: Ignore user prefs and hardware support for media capabilities when RFPTarget::MediaCapabilities is enabled. r=tjr,media-playback-reviewers,padenot
This patch mostly targeted Android, as media.mediasource.vp9.enabled is disabled on only Android and HW support takes precedence over pref, hence leaking HW support for VP9. However, we ended up modifying the patch to ignore prefs or HW support, fixing both possible user pref leak and HW support leak.
Differential Revision: https://phabricator.services.mozilla.com/D221338
- - - - -
16550559 by hackademix at 2025-02-27T17:06:39+00:00
Bug 1556002 - Update initial window size and letterboxing stepping. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D226598
- - - - -
1a2b0257 by Arturo Mejia at 2025-02-27T17:06:40+00:00
Bug 1836921 - Improve dialogs a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D226961
Differential Revision: https://phabricator.services.mozilla.com/D228842
- - - - -
660f1f57 by Makoto Kato at 2025-02-27T17:06:40+00:00
Bug 1776646 - Support EXTRA_IS_SENSITIVE for clipboard. r=geckoview-reviewers,owlish
When nsITransferable.isPrivateData is true, such as coping password or
private mode, we should set EXTRA_IS_SENSITIVE to ClipData.
AndroidJunit test runner doesn't often get `ClipDescription.extras`
from clipboard service in test runner. So we cannot write a unit test
using AndroidJUnit test runner.
Differential Revision: https://phabricator.services.mozilla.com/D225326
- - - - -
3c85583c by Malte Juergens at 2025-02-27T17:06:41+00:00
Bug 1909396 - Remove HTTPS-Only exception button in iframes r=freddyb,fluent-reviewers
Rationale for this can be read in Bug 1909396, but the main reason is that the iframe will get blocked regardless by mixed content blocking.
Differential Revision: https://phabricator.services.mozilla.com/D220257
- - - - -
35a49488 by Cathy Lu at 2025-02-27T17:06:41+00:00
Bug 1914797 - Part 1 + 2 + partial backout (details below)
Bug 1914797 - Part 1 - Revert bug 1868469 r=android-reviewers,jonalmeida, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D226431
Bug 1914797 - Part 2 - Add url change during onPageStart for slow loading sites r=android-reviewers,jonalmeida, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D226432
Backed out 1 changesets (bug 1914797) for causing Bug 1929028
Backed out changeset a79554879d7b (bug 1914797)
- - - - -
2746a0cb by Emilio Cobos Álvarez at 2025-02-27T17:06:42+00:00
Bug 1909625 - Ignore CSS zoom and text zoom for canvas. r=gfx-reviewers,lsalzman
The spec doesn't mention anything about applying them, and other
browsers don't, so let's just be consistent...
Differential Revision: https://phabricator.services.mozilla.com/D221709
- - - - -
541aa098 by Emilio Cobos Álvarez at 2025-02-27T17:06:42+00:00
Bug 1918454 - Prevent divide by zero when inverting effective zoom. r=firefox-style-system-reviewers,layout-reviewers,boris
See comment.
Differential Revision: https://phabricator.services.mozilla.com/D222090
- - - - -
1030bdb9 by Pier Angelo Vendrame at 2025-02-27T17:06:43+00:00
Bug 1840385 - Do not spoof the OS in HTTP User Agent. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D234835
- - - - -
ba7c412a by Pier Angelo Vendrame at 2025-02-27T14:54:29-07:00
Bug 1923260 - Exempt Android resources from svg.disabled. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D224895
- - - - -
a29ed43f by Henry Wilkes at 2025-02-27T14:54:29-07:00
BB 41454: Move focus after calling openPreferences for a sub-category.
Temporary fix until mozilla bug 1799153 gets a patch upstream.
- - - - -
79bbfcf8 by Henry Wilkes at 2025-02-27T14:54:29-07:00
BB 43072: Add aria label and description to moz-message-bar.
Ensures that moz-message-bar, including notifications, are announced on
Orca.
This addresses upstream bugzilla bug 1895857 and should likely be
replaced when it is fixed.
- - - - -
10f321e6 by Henry Wilkes at 2025-02-27T14:54:29-07:00
BB 42739: Use the brand name for profile error messages.
Some messages in profileSelection.properties use gAppData->name as
variable inputs. However, gAppData->name is still "Firefox" for our
base-browser builds, rather than the user-facing browser name. We swap
these instances with the displayed brand name instead.
- - - - -
ac50cc61 by hackademix at 2025-02-27T14:54:30-07:00
BB 42194: Fix blank net error page on failed DNS resolution with active proxy.
- - - - -
0f32e83c by Henry Wilkes at 2025-02-27T14:54:30-07:00
BB 41483: Remove the firefox override for appstrings.properties
Remove this patch after upstream bugzilla bug 1790187
- - - - -
9befb7c6 by hackademix at 2025-02-27T14:54:30-07:00
BB 43101: Deep link to the startup security warning explanation.
- - - - -
75b62337 by Marco Simonelli at 2025-02-27T14:54:31-07:00
BB 41459: WebRTC fails to build under mingw (Part 1)
- properly define NOMINMAX for just MSVC builds
- - - - -
47596441 by Marco Simonelli at 2025-02-27T14:54:31-07:00
BB 41459: WebRTC fails to build under mingw (Part 2)
- fixes required to build third_party/libwebrtc
- - - - -
0072d069 by Marco Simonelli at 2025-02-27T14:54:31-07:00
BB 41459: WebRTC fails to build under mingw (Part 3)
- fixes required to build third_party/sipcc
- - - - -
72f1b014 by Marco Simonelli at 2025-02-27T14:54:32-07:00
BB 41459: WebRTC fails to build under mingw (Part 4)
- fixes requried to build netwerk/sctp
- - - - -
01d58705 by Marco Simonelli at 2025-02-27T14:54:32-07:00
BB 41459: WebRTC fails to build under mingw (Part 5)
- fixes required to build dom/media/webrtc
- - - - -
1fa54dc7 by Marco Simonelli at 2025-02-27T14:54:32-07:00
BB 41459: WebRTC fails to build under mingw (Part 6)
- fixes required to build dom/media/systemservices
- - - - -
65e746f3 by june wilde at 2025-02-27T14:54:33-07:00
BB 42758: Fix WebRTC build errors.
- - - - -
8b4fd885 by hackademix at 2025-02-27T14:54:33-07:00
BB 41854: Allow overriding download spam protection.
- - - - -
e440cb57 by hackademix at 2025-02-27T14:54:34-07:00
BB 42832: Download spam prevention exemption for browser extensions.
- - - - -
cea27ac8 by Pier Angelo Vendrame at 2025-02-27T14:54:34-07:00
BB 42220: Allow for more file types to be forced-inline.
Firefox allows to open some files in the browser without any
confirmation, but this will result in a disk leak, because the file will
be downloaded to the temporary directory first (and not deleted, in some
cases).
A preference allows PDFs to be opened without being downloaded to disk.
So, we introduce a similar one to do the same for all the files that are
set to be opened automatically in the browser.
- - - - -
54f2f856 by hackademix at 2025-02-27T14:54:34-07:00
BB 42835: Create an actor to filter file data transfers
- - - - -
55574d6e by Beatriz Rizental at 2025-02-27T14:54:35-07:00
BB 42728: Modify ./mach lint to skip unused linters
- - - - -
d9beddba by Gaba at 2025-02-27T14:54:35-07:00
Adding issue and merge request templates
- - - - -
86297295 by Morgan at 2025-02-27T15:14:07-07:00
fixup! Adding issue and merge request templates
add issue template for mozilla uplifts and tweak MR template to signal to merger an uplift issue should be created after merge
- - - - -
13549ac0 by Morgan at 2025-02-27T15:14:07-07:00
fixup! Adding issue and merge request templates
add backport template and tweak the uplift template
- - - - -
352336a4 by Morgan at 2025-02-27T15:14:07-07:00
fixup! Adding issue and merge request templates
include Bugzilla as potential source of backports
- - - - -
b304ca50 by Morgan at 2025-02-27T15:14:07-07:00
fixup! Adding issue and merge request templates
update the auto /label command to Apps::Type::Bug
- - - - -
8336d10c by Morgan at 2025-02-27T15:14:08-07:00
fixup! Adding issue and merge request templates
update release prep label link
- - - - -
a4f5561b by hackademix at 2025-02-27T15:14:08-07:00
fixup! Adding issue and merge request templates
TBB 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation
- - - - -
17af6ece by Richard Pospesel at 2025-02-27T15:14:08-07:00
BB 42683: Create script to generate issue triage csv file from bugzilla query and git logs
- - - - -
6983dd02 by Henry Wilkes at 2025-02-27T15:14:09-07:00
BB 42305: Add script to combine translation files across versions.
- - - - -
616093c7 by Henry Wilkes at 2025-02-27T15:14:09-07:00
fixup! BB 42305: Add script to combine translation files across versions.
TB 43446: Allow the combine translation script to select some branding
strings from different files.
- - - - -
1df35ef6 by Beatriz Rizental at 2025-02-27T15:14:09-07:00
Add CI for Base Browser
- - - - -
3e5d8115 by Pier Angelo Vendrame at 2025-02-27T15:14:10-07:00
Base Browser's .mozconfigs.
Bug 17858: Cannot create incremental MARs for hardened builds.
Define HOST_CFLAGS, etc. to avoid compiling programs such as mbsdiff
(which is part of mar-tools and is not distributed to end-users) with
ASan.
Bug 21849: Don't allow SSL key logging.
Bug 25741 - TBA: Disable features at compile-time
Define MOZ_ANDROID_NETWORK_STATE and MOZ_ANDROID_LOCATION
Bug 27623 - Export MOZILLA_OFFICIAL during desktop builds
This fixes a problem where some preferences had the wrong default value.
Also see bug 27472 where we made a similar fix for Android.
Bug 29859: Disable HLS support for now
Bug 30463: Explicitly disable MOZ_TELEMETRY_REPORTING
Bug 32493: Disable MOZ_SERVICES_HEALTHREPORT
Bug 33734: Set MOZ_NORMANDY to False
Bug 33851: Omit Parental Controls.
Bug 40252: Add --enable-rust-simd to our tor-browser mozconfig files
Bug 41584: Move some configuration options to base-browser level
- - - - -
1d30c01d by Pier Angelo Vendrame at 2025-02-27T15:14:10-07:00
Tweaks to the build system
Bug 40857: Modified the fat .aar creation file
This is a workaround to build fat .aars with the compiling enviornment
disabled.
Mozilla does not use a similar configuration, but either runs a Firefox
build and discards its output, or uses artifacts build.
We might switch to artifact builds too, and drop this patch, or write a
better one to upstream. But until then we need this patch.
See also https://bugzilla.mozilla.org/show_bug.cgi?id=1763770.
Bug 41458: Prevent `mach package-multi-locale` from actually creating a package
macOS builds need some files to be moved around with
./mach package-multi-locale to create multi-locale packages.
The required command isn't exposed through any other mach command.
So, we patch package-multi-locale both to prevent it from failing when
doing official builds and to detect any future changes on it.
- - - - -
fc17e314 by Pier Angelo Vendrame at 2025-02-27T15:14:10-07:00
BB 29320: Replace the gnu target with gnullvm for Rust.
- - - - -
a2eeb47e by Pier Angelo Vendrame at 2025-02-27T15:14:11-07:00
BB 42616: Remove VideoCaptureTest.kt.
This is a workaround to fix the GeckoView build with WebRTC disabled.
We should replace this workaround with a proper solution, that
excludes this test when MOZ_WEBRTC is undefined/False.
- - - - -
d4b78d66 by Pier Angelo Vendrame at 2025-02-27T15:14:11-07:00
BB 41108: Remove privileged macOS installation from 102
- - - - -
5b6ab42e by Dan Ballard at 2025-02-27T15:14:11-07:00
BB 41149: Re-enable DLL injection protection in all builds not just nightlies
- - - - -
5e522a87 by Henry Wilkes at 2025-02-27T15:14:11-07:00
BB 43092: Disable wayland by default in Base Browser.
- - - - -
9db961f6 by Matthew Finkel at 2025-02-27T15:14:12-07:00
BB 24796: Comment out excess permissions from GeckoView
The GeckoView AndroidManifest.xml is not preprocessed unlike Fennec's
manifest, so we can't use the ifdef preprocessor guards around the
permissions we do not want. Commenting the permissions is the
next-best-thing.
- - - - -
8c41040a by Matthew Finkel at 2025-02-27T15:14:12-07:00
BB 28125: Prevent non-Necko network connections
- - - - -
e5436066 by Mike Perry at 2025-02-27T15:14:12-07:00
BB 12974: Disable NTLM and Negotiate HTTP Auth
The Mozilla bugs: https://bugzilla.mozilla.org/show_bug.cgi?id=1046421,
https://bugzilla.mozilla.org/show_bug.cgi?id=1261591, tor-browser#27602
- - - - -
feeb1f08 by cypherpunks1 at 2025-02-27T15:14:13-07:00
BB 40717: Hide Windows SSO in settings
- - - - -
cecdf2cb by Georg Koppen at 2025-02-27T15:14:13-07:00
BB 16285: Exclude ClearKey system for now
In the past the ClearKey system had not been compiled when specifying
--disable-eme. But that changed and it is even bundled nowadays (see:
Mozilla's bug 1300654). We don't want to ship it right now as the use
case for it is not really visible while the code had security
vulnerabilities in the past.
- - - - -
96514263 by Kathy Brade at 2025-02-27T15:14:13-07:00
BB 21431: Clean-up system extensions shipped in Firefox
Only ship the pdfjs extension.
- - - - -
59d94baf by Henry Wilkes at 2025-02-27T15:14:14-07:00
BB 42831: Remove the shopping components.
- - - - -
e29e293f by Kathy Brade at 2025-02-27T15:14:14-07:00
BB 33852: Clean up about:logins (LockWise) to avoid mentioning sync, etc.
Hide elements on about:logins that mention sync, "Firefox LockWise", and
Mozilla's LockWise mobile apps.
Disable the "Create New Login" button when security.nocertdb is true.
- - - - -
3505f141 by Alex Catarineu at 2025-02-27T15:14:14-07:00
BB 41457: Remove Mozilla permissions
Bug 40025: Remove Mozilla add-on install permissions
- - - - -
652154d2 by Kathy Brade at 2025-02-27T15:14:14-07:00
BB 40002: Remove about:ion
Firefox Ion (previously Firefox Pioneer) is an opt-in program in which people
volunteer to participate in studies that collect detailed, sensitive data about
how they use their browser.
Bug 41662: Disable about:sync-logs
Even though we disable sync by default with
`identity.fxaccounts.enabled`, this about: page is still avilable.
We could throw an exception on the constructor of the related
component, but it would result only in an error in the console, without
a visible "this address does not look right" error page.
If we fix the issues with MOZ_SERVICES_SYNC, we can restore the
component.
- - - - -
8a8057b5 by Morgan at 2025-02-27T15:14:15-07:00
BB 42716: Disable unwanted about: pages
- - - - -
00bce81c by Arthur Edelstein at 2025-02-27T15:14:15-07:00
BB 26353: Prevent speculative connect that violated FPI.
Connections were observed in the catch-all circuit when
the user entered an https or http URL in the URL bar, or
typed a search term.
- - - - -
ef0bd45e by Alex Catarineu at 2025-02-27T15:14:15-07:00
BB 31740: Remove some unnecessary RemoteSettings instances
More concretely, SearchService.jsm 'hijack-blocklists' and
url-classifier-skip-urls.
Avoid creating instance for 'anti-tracking-url-decoration'.
If prefs are disabling their usage, avoid creating instances for
'cert-revocations' and 'intermediates'.
Do not ship JSON dumps for collections we do not expect to need. For
the ones in the 'main' bucket, this prevents them from being synced
unnecessarily (the code in remote-settings does so for collections
in the main bucket for which a dump or local data exists). For the
collections in the other buckets, we just save some size by not
shipping their dumps.
We also clear the collections database on the v2 -> v3 migration.
- - - - -
ca805a32 by cypherpunks1 at 2025-02-27T15:14:16-07:00
BB 41092: Add a RemoteSettings JSON dump for query-stripping
- - - - -
7e8c7fb6 by cypherpunks1 at 2025-02-27T15:14:16-07:00
BB 42730: Patch RemoteSettings to use only local dumps as a data source
- - - - -
87acbb78 by Pier Angelo Vendrame at 2025-02-27T15:14:16-07:00
BB 41635: Disable the Normandy component
Do not include Normandy at all whenever MOZ_NORMANDY is False.
- - - - -
8c63ddb0 by Georg Koppen at 2025-02-27T15:14:16-07:00
BB 30541: Disable WebGL readPixel() for web content
Related Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1428034
- - - - -
0eccef40 by Alex Catarineu at 2025-02-27T15:14:17-07:00
BB 28369: Stop shipping pingsender executable
- - - - -
dc81b199 by Henry Wilkes at 2025-02-27T15:14:17-07:00
BB 42630: Disable LaterRun module.
- - - - -
d6e25540 by Pier Angelo Vendrame at 2025-02-27T15:14:17-07:00
BB 41599: Always return an empty string as network ID
Firefox computes an internal network ID used to detect network changes
and act consequently (e.g., to improve WebSocket UX).
However, there are a few ways to get this internal network ID, so we
patch them out, to be sure any new code will not be able to use them and
possibly link users.
We also sent a patch to Mozilla to seed the internal network ID, to
prevent any accidental leak in the future.
Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1817756
- - - - -
b5cf607b by Pier Angelo Vendrame at 2025-02-27T15:14:18-07:00
BB 43386: Use Firefox in the UA in RFP-exempt request.
XHR requests initiated by extensions are exempt from RFP.
Therefore, they report the actual app name, instead of Firefox, and the
actual Firefox minor version.
This happens whenever the app name has been customized and does not
match a hardcoded "Firefox".
- - - - -
5b9b5094 by Richard Pospesel at 2025-02-27T15:14:18-07:00
BB 41327: Disable UrlbarProviderInterventions
- - - - -
fb7688b4 by Richard Pospesel at 2025-02-27T15:14:18-07:00
BB 42037: Disable about:firefoxview page
- - - - -
83739561 by Mike Perry at 2025-02-27T15:14:19-07:00
Firefox preference overrides.
- - - - -
751a872a by Pier Angelo Vendrame at 2025-02-27T15:14:19-07:00
BB 43140: Tighten up fonts on Linux.
We ship a fontconfig configuration to esnure all Linux users have the
same defaults and reduce the chances of fingerprinting.
We used to add this file in tor-browser-build, but some users might
skip it by using the browser executable without the wrapper script.
Therefore, we decided to activate the file with the FontConfig API
instead of the environment variables.
Bug 41043: Hardcode the UI font on Linux
The mechanism to choose the UI font does not play well with our
fontconfig configuration. As a result, the final criterion to choose
the font for the UI was its version.
Since we hardcode Arimo as a default sans-serif on preferences, we use
it also for the UI. FontConfig will fall back to some other font for
scripts Arimo does not cover as expected (we tested with Japanese).
Bug 43141: Hardcode system-ui to Arimo.
- - - - -
764427c0 by Pier Angelo Vendrame at 2025-02-27T15:14:19-07:00
BB 41901: Hardcode normalized FontSubstitutes.
Windows has a system to set font aliases through the registry.
This allows some customization that could be used as a fingerprinting
vector.
Moreover, this mechanism is used by Windows itself, and different SKUs
might have different default FontSubstitutes.
- - - - -
3cf49e16 by Pier Angelo Vendrame at 2025-02-27T15:14:20-07:00
BB 43322: Customize the font visibility lists.
Customize the lists of fonts to assign base visibility to in
base browser and derivatives.
Also, rename the files with the upstream lists, to make sure we do not
use them by mistake.
- - - - -
ebd21404 by Alex Catarineu at 2025-02-27T15:14:20-07:00
BB 30605: Honor privacy.spoof_english in Android
This checks `privacy.spoof_english` whenever `setLocales` is
called from Fenix side and sets `intl.accept_languages`
accordingly.
Bug 40198: Expose privacy.spoof_english pref in GeckoView
- - - - -
f202f47c by Pier Angelo Vendrame at 2025-02-27T15:14:20-07:00
BB 42562: Normalized the Accepted Languages on Android.
The OS language might be outside the list of actually supported
languages and it might leak the user's region.
Therefore, we force the locale reported in Accept-Language to match one
we support with translations, even when it means using a not exact
region tag.
- - - - -
8a333854 by Alex Catarineu at 2025-02-27T15:14:21-07:00
BB 40171: Make WebRequest and GeckoWebExecutor First-Party aware
- - - - -
8e08b71a by Alex Catarineu at 2025-02-27T15:14:21-07:00
BB 26345: Hide tracking protection UI
- - - - -
fb5eeebf by Henry Wilkes at 2025-02-27T15:14:22-07:00
BB 43109: Hide Firefox Relay from settings.
This should remain disabled, see tor-browser#42814.
- - - - -
cc442cce by Henry Wilkes at 2025-02-27T15:14:22-07:00
BB 42777: Hide Website Privacy Preferences.
We hide the Website Privacy Preferences section, which controls the
"global privacy control" (GPC) and "do not track" (DNT) settings.
- - - - -
f9818ad1 by Morgan at 2025-02-27T15:14:22-07:00
BB 42070: Hide "Use smooth scrolling" from settings
- - - - -
a3986f07 by Arthur Edelstein at 2025-02-27T15:14:23-07:00
BB 18905: Hide unwanted items from help menu
Bug 25660: Remove the "New Private Window" option
- - - - -
cb5f1704 by Pier Angelo Vendrame at 2025-02-27T15:14:23-07:00
BB 41739: Remove "Website appearance" from about:preferences.
It is ignored because of RFP and it is confusing for users.
- - - - -
61f05e22 by Henry Wilkes at 2025-02-27T15:14:24-07:00
BB 43117: Hide "Always underline links" from settings.
- - - - -
e3b47e68 by Pier Angelo Vendrame at 2025-02-27T15:14:24-07:00
BB 42774: Always hide the third-pary certs UI.
- - - - -
e57e042a by Henry Wilkes at 2025-02-27T15:14:25-07:00
BB 43118: Hide feature recommendation (CFR) settings.
- - - - -
a7f6d8be by Pier Angelo Vendrame at 2025-02-27T15:14:25-07:00
BB 9173: Change the default Firefox profile directory to be relative.
This commit makes Firefox look for the default profile directory in a
directory relative to the binary path.
The directory can be specified through the --with-relative-data-dir.
This is relative to the same directory as the firefox main binary for
Linux and Windows.
On macOS, we remove Contents/MacOS from it.
Or, in other words, the directory is relative to the application
bundle.
This behavior can be overriden at runtime, by placing a file called
system-install adjacent to the firefox main binary (also on macOS).
- - - - -
35c8864f by Pier Angelo Vendrame at 2025-02-27T15:14:26-07:00
BB 42773: Replace ~ with the original home.
In Bug 93141, Mozilla started sending users to their home when they type
~ in the URL bar.
On Linux, we change $HOME for various reason, therefore you would be
redirected to the spoofed home directory when typing ~.
So, we check if the original home directory is known, and use that,
instead.
- - - - -
d9fcaf6e by Alex Catarineu at 2025-02-27T15:14:26-07:00
BB 27604: Fix addon issues when moving the profile directory
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1429838
- - - - -
402a9676 by Mike Perry at 2025-02-27T15:14:26-07:00
BB 13028: Prevent potential proxy bypass cases.
It looks like these cases should only be invoked in the NSS command line
tools, and not the browser, but I decided to patch them anyway because there
literally is a maze of network function pointers being passed around, and it's
very hard to tell if some random code might not pass in the proper proxied
versions of the networking code here by accident.
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1433509
- - - - -
fd2df1ad by Pier Angelo Vendrame at 2025-02-27T15:14:27-07:00
BB 40309: Avoid using regional OS locales
Avoid regional OS locales if the pref
`intl.regional_prefs.use_os_locales` is false but RFP is enabled.
- - - - -
6fddd934 by Matthew Finkel at 2025-02-27T15:14:27-07:00
BB 40432: Prevent probing installed applications
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1711084
- - - - -
0fa3f7d1 by cypherpunks1 at 2025-02-27T15:14:27-07:00
BB 33955: When copying an image only copy the image contents to the clipboard
- - - - -
5ffb61bc by cypherpunks1 at 2025-02-27T15:14:28-07:00
BB 41791: Omit the source URL when copying page contents to the clipboard
- - - - -
db083eb5 by hackademix at 2025-02-27T15:14:28-07:00
BB 42288: Allow language spoofing in status messages.
- - - - -
172368a6 by Pier Angelo Vendrame at 2025-02-27T15:14:29-07:00
BB 43196: Remove the vendor name from media notifications on Linux.
Firefox shows "vendor remoteName" as a title of the "... is playing
media" notification on Linux.
However, for our browser the remote name is enough, and prepending the
vendor to it creates a string users usually never see.
- - - - -
7706c02b by Pier Angelo Vendrame at 2025-02-27T15:14:29-07:00
Base Browser strings
This commit adds all the strings needed by following Base Browser
patches.
- - - - -
3cb027c6 by Henry Wilkes at 2025-02-27T15:14:29-07:00
BB 42583: Modify moz-support-link for Base Browser.
- - - - -
3426ad69 by Pier Angelo Vendrame at 2025-02-27T15:14:30-07:00
BB 41369: Improve Firefox language settings for multi-lingual packages
Change the language selector to be sorted by language code, rather than
name, and to display the language code to the user.
Bug 41372: Handle Japanese as a special case in preferences on macOS
Japanese is treated in a special way on macOS. However, seeing the
Japanese language tag could be confusing for users, and moreover the
language name is not localized correctly like other langs.
Bug 41378: Tell users that they can change their language at the first start
With multi-lingual builds, Tor Browser matches the user's system
language, but some users might want to change it.
So, we tell them that it is possible, but only once.
- - - - -
46b64e0a by p13dz at 2025-02-27T15:14:30-07:00
BB 40283: Workaround for the file upload bug
- - - - -
beeb8c40 by hackademix at 2025-02-27T15:14:30-07:00
BB 42019: Empty browser's clipboard on browser shutdown
- - - - -
a0c73b1a by hackademix at 2025-02-27T15:14:31-07:00
BB 42084: Ensure English spoofing works even if preferences are set out of order.
- - - - -
f6e56700 by Pier Angelo Vendrame at 2025-02-27T15:14:31-07:00
BB 41930: Remove the UI to customize accept_languages.
- - - - -
08a0ec58 by hackademix at 2025-02-27T15:14:31-07:00
BB 41434: Letterboxing, improve logging.
- - - - -
615db592 by hackademix at 2025-02-27T15:14:31-07:00
BB 41434: Letterboxing, preemptively apply margins in a global CSS rule to mitigate race conditions on newly created windows and tabs.
- - - - -
15f4cae4 by hackademix at 2025-02-27T15:14:32-07:00
BB 31064: Letterboxing, exempt browser extensions.
- - - - -
89235904 by hackademix at 2025-02-27T15:14:32-07:00
BB 32411: Letterboxing, exempt view-source: URIs.
- - - - -
d98e1b4b by hackademix at 2025-02-27T15:14:32-07:00
BB 42574: Letterboxing, exempt pdf.js.
- - - - -
302ea2ed by hackademix at 2025-02-27T15:14:33-07:00
BB 32308: Use direct browser sizing for letterboxing.
Bug 30556: align letterboxing with 200x100 new win width stepping
- - - - -
dea7318d by hackademix at 2025-03-03T12:12:55-07:00
BB 41631: Prevent weird initial window dimensions caused by subpixel computations
- - - - -
bc139a42 by hackademix at 2025-03-03T12:13:50-07:00
BB 41918: Option to reuse last window size when letterboxing is enabled.
- - - - -
837b6061 by hackademix at 2025-03-03T12:13:50-07:00
BB 41916: Letterboxing preferences UI
- - - - -
2641ee8a by hackademix at 2025-03-03T12:13:51-07:00
BB 41695: Warn on window maximization without letterboxing in RFPHelper module
- - - - -
c9804e10 by hackademix at 2025-03-03T12:13:51-07:00
BB 42443: Shrink window to match letterboxing size when the emtpy area is clicked.
- - - - -
5bc66f9e by Henry Wilkes at 2025-03-03T12:13:51-07:00
BB 42528: Don't leak system scrollbar size on windows.
- - - - -
c71fd645 by Henry Wilkes at 2025-03-03T12:13:51-07:00
BB 31575: Disable Firefox Home (Activity Stream)
Treat about:blank as the default home page and new tab page.
Avoid loading AboutNewTab in BrowserGlue.sys.mjs in order
to avoid several network requests that we do not need.
Bug 41624: Disable about:pocket-* pages.
Bug 40144: Redirect about:privatebrowsing to the user's home
- - - - -
810787a1 by Kathy Brade at 2025-03-03T12:13:52-07:00
BB 4234: Use the Firefox Update Process for Base Browser.
Windows: disable "runas" code path in updater (15201).
Windows: avoid writing to the registry (16236).
Also includes fixes for tickets 13047, 13301, 13356, 13594, 15406,
16014, 16909, 24476, and 25909.
Also fix bug 27221: purge the startup cache if the Base Browser
version changed (even if the Firefox version and build ID did
not change), e.g., after a minor Base Browser update.
Also fix 32616: Disable GetSecureOutputDirectoryPath() functionality.
Bug 26048: potentially confusing "restart to update" message
Within the update doorhanger, remove the misleading message that mentions
that windows will be restored after an update is applied, and replace the
"Restart and Restore" button label with an existing
"Restart to update Tor Browser" string.
Bug 28885: notify users that update is downloading
Add a "Downloading Base Browser update" item which appears in the
hamburger (app) menu while the update service is downloading a MAR
file. Before this change, the browser did not indicate to the user
that an update was in progress, which is especially confusing in
Tor Browser because downloads often take some time. If the user
clicks on the new menu item, the about dialog is opened to allow
the user to see download progress.
As part of this fix, the update service was changed to always show
update-related messages in the hamburger menu, even if the update
was started in the foreground via the about dialog or via the
"Check for Tor Browser Update" toolbar menu item. This change is
consistent with the Tor Browser goal of making sure users are
informed about the update process.
Removed #28885 parts of this patch which have been uplifted to Firefox.
- - - - -
8a9fb9d7 by Pier Angelo Vendrame at 2025-03-03T12:13:52-07:00
BB 42061: Create an alpha update channel.
- - - - -
a61cf9f2 by Nicolas Vigier at 2025-03-03T12:13:52-07:00
BB 41682: Add base-browser nightly mar signing key
- - - - -
a13ec52f by Pier Angelo Vendrame at 2025-03-03T12:13:53-07:00
BB 41603: Customize the creation of MOZ_SOURCE_URL
MOZ_SOURCE_URL is created by combining MOZ_SOURCE_REPO and
MOZ_SOURCE_CHANGESET.
But the code takes for granted that it refers to a Hg instance, so it
combines them as `$MOZ_SOURCE_REPO/rev/$MOZ_SOURCE_CHANGESET`.
With this commit, we change this logic to combine them to create a URL
that is valid for GitLab.
$MOZ_SOURCE_CHANGESET needs to be a commit hash, not a branch or a tag.
If that is needed, we could use /-/tree/, instead of /-/commit/.
- - - - -
fc2b55fb by Pier Angelo Vendrame at 2025-03-03T12:13:53-07:00
BB 41698: Reword the recommendation badges in about:addons
Firefox strings use { -brand-product-name }.
As a result, it seems that the fork is recommending extensions, whereas
AMO curators are doing that.
So, we replace the strings with custom ones that clarify that Mozilla is
recommending them.
We assign the strings with JS because our translation backend does not
support Fluent attributes, yet, but once it does, we should switch to
them, instead.
Upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1825033
- - - - -
8887091e by Pier Angelo Vendrame at 2025-03-03T12:13:53-07:00
BB 42438: Tweaks to the migration wizard.
Remove the items not compatible with our features (such as history) from
the migration wizard.
On Linux, allow to specify an alternative home directory, since we
usually change $HOME in our startup script.
- - - - -
daf42a9a by Alex Catarineu at 2025-03-03T12:13:53-07:00
BB 40069: Add helpers for message passing with extensions
- - - - -
a358e791 by Matthew Finkel at 2025-03-03T12:13:54-07:00
BB 41598: Prevent NoScript from being removed/disabled.
Bug 40253: Explicitly allow NoScript in Private Browsing mode.
- - - - -
e962502e by Henry Wilkes at 2025-03-03T12:13:54-07:00
BB 41581: Hide NoScript extension's toolbar button by default.
This hides it from both the toolbar and the unified extensions panel.
We also hide the unified-extension-button if the panel would be empty:
not including the NoScript button when it is hidden. As a result, this
will be hidden by default until a user installs another extension (or
shows the NoScript button and unpins it).
- - - - -
be2bcd25 by hackademix at 2025-03-03T12:13:54-07:00
BB 41834: Hide "Can't Be Removed - learn more" menu line for uninstallable add-ons
- - - - -
d36b8a6c by Pier Angelo Vendrame at 2025-03-03T12:13:55-07:00
BB 40925: Implemented the Security Level component
This component adds a new Security Level toolbar button which visually
indicates the current global security level via icon (as defined by the
extensions.torbutton.security_slider pref), a drop-down hanger with a
short description of the current security level, and a new section in
the about:preferences#privacy page where users can change their current
security level. In addition, the hanger and the preferences page will
show a visual warning when the user has modified prefs associated with
the security level and provide a one-click 'Restore Defaults' button to
get the user back on recommended settings.
Bug 40125: Expose Security Level pref in GeckoView
- - - - -
c1c17e97 by Pier Angelo Vendrame at 2025-03-05T12:11:19-07:00
fixup! BB 40925: Implemented the Security Level component
BB 43498: Remove our old patch for 43129.
This commit should be ignored at the next rebase (and we will likely
have a conflict on the security level commit).
- - - - -
c42dba02 by Pier Angelo Vendrame at 2025-03-05T12:11:19-07:00
BB 40926: Implemented the New Identity feature
- - - - -
3cd5f28e by Henry Wilkes at 2025-03-05T12:11:19-07:00
BB 41736: Customize toolbar for base-browser.
- - - - -
9840450e by Pier Angelo Vendrame at 2025-03-05T12:11:19-07:00
BB 42027: Base Browser migration procedures.
This commit implmenents the the Base Browser's version of _migrateUI.
- - - - -
682636bb by Henry Wilkes at 2025-03-05T12:11:20-07:00
BB 29745: Limit remote access to content accessible resources
- - - - -
cb0e9508 by Pier Angelo Vendrame at 2025-03-05T12:11:20-07:00
BB 43468: ScreenCaptureKit should be a weak link.
ScreenCaptureKit is not available on older macOS versions.
For some reason, the upstream build have it as a weak import even though
they do not specify the -weak_framework flag, whereas our builds have it
as a normal import and do not work on macOS 10.15 without this patch.
- - - - -
488 changed files:
- .eslintignore
- + .gitlab-ci.yml
- + .gitlab/ci/docker/base/Dockerfile
- + .gitlab/ci/jobs/lint/helpers.py
- + .gitlab/ci/jobs/lint/lint.yml
- + .gitlab/ci/jobs/update-translations.yml
- + .gitlab/ci/mixins.yml
- + .gitlab/issue_templates/Backport.md
- + .gitlab/issue_templates/Emergency Security Issue.md
- + .gitlab/issue_templates/QA - Android.md
- + .gitlab/issue_templates/QA - Desktop.md
- + .gitlab/issue_templates/Uplift.md
- + .gitlab/issue_templates/bug.md
- + .gitlab/merge_request_templates/Rebase.md
- + .gitlab/merge_request_templates/default.md
- .prettierignore
- − browser/actors/RFPHelperChild.sys.mjs
- − browser/actors/RFPHelperParent.sys.mjs
- browser/actors/moz.build
- browser/app/Makefile.in
- browser/app/macbuild/Contents/MacOS-files.in
- browser/app/moz.build
- browser/app/permissions
- + browser/app/profile/001-base-profile.js
- browser/app/profile/firefox.js
- browser/base/content/aboutDialog-appUpdater.js
- browser/base/content/aboutDialog.js
- browser/base/content/aboutDialog.xhtml
- browser/base/content/appmenu-viewcache.inc.xhtml
- browser/base/content/browser-addons.js
- browser/base/content/browser-context.inc
- browser/base/content/browser-init.js
- browser/base/content/browser-menubar.inc
- browser/base/content/browser-safebrowsing.js
- browser/base/content/browser-sets.inc
- browser/base/content/browser.css
- browser/base/content/browser.js
- browser/base/content/browser.js.globals
- browser/base/content/browser.xhtml
- + browser/base/content/languageNotification.js
- browser/base/content/main-popupset.inc.xhtml
- browser/base/content/navigator-toolbox.inc.xhtml
- browser/base/content/test/general/browser_private_browsing_window.js
- browser/base/jar.mn
- browser/base/moz.build
- browser/components/BrowserContentHandler.sys.mjs
- browser/components/BrowserGlue.sys.mjs
- browser/components/about/AboutRedirector.cpp
- browser/components/about/components.conf
- browser/components/aboutlogins/AboutLoginsParent.sys.mjs
- browser/components/aboutlogins/content/aboutLogins.css
- browser/components/aboutlogins/content/aboutLogins.mjs
- browser/components/aboutlogins/content/components/fxaccounts-button.css
- browser/components/customizableui/CustomizableUI.sys.mjs
- browser/components/customizableui/content/panelUI.inc.xhtml
- browser/components/downloads/DownloadSpamProtection.sys.mjs
- browser/components/extensions/parent/ext-browserAction.js
- browser/components/migration/ChromeMigrationUtils.sys.mjs
- browser/components/migration/content/migration-wizard.mjs
- browser/components/moz.build
- + browser/components/newidentity/content/newIdentityDialog.css
- + browser/components/newidentity/content/newIdentityDialog.js
- + browser/components/newidentity/content/newIdentityDialog.xhtml
- + browser/components/newidentity/content/newidentity.js
- + browser/components/newidentity/jar.mn
- + browser/components/newidentity/moz.build
- browser/components/newtab/AboutNewTabService.sys.mjs
- browser/components/places/PlacesUIUtils.sys.mjs
- browser/components/places/content/controller.js
- browser/components/places/content/placesContextMenu.inc.xhtml
- browser/components/places/tests/browser/browser_bookmark_context_menu_contents.js
- browser/components/places/tests/browser/head.js
- browser/components/preferences/home.inc.xhtml
- browser/components/preferences/home.js
- browser/components/preferences/jar.mn
- + browser/components/preferences/letterboxing-middle-dark.svg
- + browser/components/preferences/letterboxing-middle-light.svg
- + browser/components/preferences/letterboxing-top-dark.svg
- + browser/components/preferences/letterboxing-top-light.svg
- + browser/components/preferences/letterboxing.css
- + browser/components/preferences/letterboxing.inc.xhtml
- + browser/components/preferences/letterboxing.js
- browser/components/preferences/main.inc.xhtml
- browser/components/preferences/main.js
- browser/components/preferences/preferences.js
- browser/components/preferences/preferences.xhtml
- browser/components/preferences/privacy.inc.xhtml
- browser/components/preferences/privacy.js
- browser/components/resistfingerprinting/test/browser/browser_dynamical_window_rounding.js
- browser/components/resistfingerprinting/test/browser/browser_navigator.js
- browser/components/resistfingerprinting/test/browser/browser_navigator_iframes.js
- browser/components/resistfingerprinting/test/browser/browser_roundedWindow_open_max_inner.js
- browser/components/resistfingerprinting/test/browser/head.js
- browser/components/search/SearchSERPTelemetry.sys.mjs
- + browser/components/securitylevel/content/securityLevel.js
- + browser/components/securitylevel/content/securityLevelButton.css
- + browser/components/securitylevel/content/securityLevelButton.inc.xhtml
- + browser/components/securitylevel/content/securityLevelIcon.svg
- + browser/components/securitylevel/content/securityLevelPanel.css
- + browser/components/securitylevel/content/securityLevelPanel.inc.xhtml
- + browser/components/securitylevel/content/securityLevelPreferences.css
- + browser/components/securitylevel/content/securityLevelPreferences.inc.xhtml
- + browser/components/securitylevel/jar.mn
- + browser/components/securitylevel/moz.build
- browser/components/shopping/jar.mn
- browser/components/shopping/moz.build
- browser/components/tabbrowser/content/tabbrowser.js
- browser/components/urlbar/UrlbarProvidersManager.sys.mjs
- browser/components/urlbar/UrlbarUtils.sys.mjs
- browser/components/urlbar/moz.build
- + browser/config/mozconfigs/base-browser
- + browser/config/mozconfigs/base-browser-android
- browser/confvars.sh
- browser/extensions/moz.build
- + browser/fonts/fonts.conf
- browser/fonts/moz.build
- browser/installer/Makefile.in
- browser/installer/package-manifest.in
- browser/installer/windows/nsis/shared.nsh
- browser/locales/Makefile.in
- − browser/locales/en-US/chrome/overrides/appstrings.properties
- browser/locales/jar.mn
- browser/modules/BrowserWindowTracker.sys.mjs
- browser/modules/HomePage.sys.mjs
- browser/modules/LaterRun.sys.mjs
- browser/moz.build
- browser/moz.configure
- browser/themes/shared/addons/unified-extensions.css
- + browser/themes/shared/icons/new_identity.svg
- browser/themes/shared/identity-block/identity-block.css
- browser/themes/shared/jar.inc.mn
- browser/themes/shared/preferences/preferences.css
- browser/themes/shared/tabbrowser/tabs.css
- browser/themes/shared/toolbarbutton-icons.css
- build/application.ini.in
- build/moz.build
- build/moz.configure/init.configure
- build/moz.configure/rust.configure
- build/moz.configure/update-programs.configure
- build/variables.py
- caps/nsScriptSecurityManager.cpp
- devtools/client/aboutdebugging/src/actions/runtimes.js
- docshell/base/BrowsingContext.cpp
- docshell/base/BrowsingContext.h
- docshell/base/URIFixup.sys.mjs
- docshell/base/nsAboutRedirector.cpp
- docshell/build/components.conf
- dom/base/Navigator.cpp
- dom/base/ScreenOrientation.cpp
- dom/base/nsContentUtils.cpp
- dom/base/nsContentUtils.h
- dom/base/nsCopySupport.cpp
- dom/base/nsGlobalWindowInner.cpp
- dom/base/nsNodeInfoManager.cpp
- dom/base/test/chrome/bug418986-1.js
- dom/canvas/CanvasRenderingContext2D.cpp
- dom/canvas/ClientWebGLContext.cpp
- dom/ipc/WindowGlobalParent.cpp
- dom/locales/moz.build
- dom/media/eme/MediaKeySystemAccess.cpp
- dom/media/mediacapabilities/MediaCapabilities.cpp
- dom/media/mediasource/MediaSource.cpp
- dom/media/mediasource/MediaSource.h
- dom/media/mediasource/SourceBuffer.cpp
- dom/media/systemservices/video_engine/desktop_device_info.cc
- dom/media/webrtc/libwebrtcglue/VideoConduit.cpp
- dom/media/webrtc/sdp/RsdparsaSdpAttributeList.cpp
- dom/media/webrtc/transport/nrinterfaceprioritizer.cpp
- dom/media/webrtc/transport/sigslot.h
- dom/media/webrtc/transport/test/ice_unittest.cpp
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.c
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.h
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-win32.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs.c
- dom/media/webrtc/transport/third_party/nrappkit/src/log/r_log.c
- dom/media/webrtc/transport/third_party/nrappkit/src/registry/registry.c
- dom/security/test/https-only/browser.toml
- + dom/security/test/https-only/browser_iframe_buttons.js
- + dom/security/test/https-only/file_iframe_buttons.html
- dom/xslt/xslt/txMozillaXSLTProcessor.cpp
- dom/xslt/xslt/txXSLTMsgsURL.h
- extensions/auth/nsHttpNegotiateAuth.cpp
- gfx/layers/apz/src/APZInputBridge.cpp
- gfx/layers/apz/src/APZPublicUtils.cpp
- gfx/layers/apz/src/GenericScrollAnimation.cpp
- gfx/layers/apz/src/WheelScrollAnimation.cpp
- gfx/thebes/StandardFonts-linux.inc → gfx/thebes/StandardFonts-linux-upstream.inc
- + gfx/thebes/StandardFonts-macos-bb.inc
- gfx/thebes/StandardFonts-macos.inc → gfx/thebes/StandardFonts-macos-upstream.inc
- + gfx/thebes/StandardFonts-win10-bb.inc
- gfx/thebes/StandardFonts-win10.inc → gfx/thebes/StandardFonts-win10-upstream.inc
- gfx/thebes/gfxDWriteFontList.cpp
- gfx/thebes/gfxDWriteFontList.h
- gfx/thebes/gfxFcPlatformFontList.cpp
- gfx/thebes/gfxGDIFontList.cpp
- gfx/thebes/gfxMacPlatformFontList.mm
- gfx/thebes/gfxPlatformFontList.cpp
- hal/android/AndroidHal.cpp
- image/test/browser/browser.toml
- + image/test/browser/browser_bug1899180.js
- + image/test/browser/helper1899180.html
- intl/locale/LocaleService.cpp
- intl/strres/nsIStringBundle.idl
- intl/strres/nsStringBundle.cpp
- js/src/gc/Zone.cpp
- + js/src/jit-test/tests/debug/bug-1904011.js
- js/src/old-configure.in
- layout/base/nsLayoutUtils.cpp
- layout/xul/nsSliderFrame.cpp
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/SimpleRedirectDialogFragment.kt
- mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/SimpleRedirectDialogFragmentTest.kt
- mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
- + mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/dialog/FullScreenNotification.kt
- − mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/dialog/FullScreenNotificationDialog.kt
- + mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/dialog/GestureNavUtils.kt
- + mobile/android/android-components/components/feature/prompts/src/test/java/mozilla/components/feature/prompts/dialog/FullScreenNotificationTest.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/SearchUseCases.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/ext/SearchEngine.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/internal/SearchUrlBuilder.kt
- mobile/android/android-components/components/feature/session/src/main/java/mozilla/components/feature/session/SessionUseCases.kt
- mobile/android/android-components/components/feature/session/src/test/java/mozilla/components/feature/session/SessionUseCasesTest.kt
- mobile/android/android-components/components/support/ktx/src/main/java/mozilla/components/support/ktx/kotlin/String.kt
- mobile/android/android-components/components/support/ktx/src/test/java/mozilla/components/support/ktx/kotlin/StringTest.kt
- mobile/android/android-components/docs/changelog.md
- + mobile/android/basebrowser.configure
- mobile/android/confvars.sh
- mobile/android/exoplayer2/src/main/java/org/mozilla/thirdparty/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/UseCases.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/gecko/GeckoProvider.kt
- − mobile/android/fenix/app/src/main/res/layout/full_screen_notification_dialog.xml
- mobile/android/fenix/app/src/main/res/values-be/strings.xml
- mobile/android/fenix/app/src/main/res/values-bg/strings.xml
- mobile/android/fenix/app/src/main/res/values-bs/strings.xml
- mobile/android/fenix/app/src/main/res/values-ca/strings.xml
- mobile/android/fenix/app/src/main/res/values-co/strings.xml
- mobile/android/fenix/app/src/main/res/values-cs/strings.xml
- mobile/android/fenix/app/src/main/res/values-cy/strings.xml
- mobile/android/fenix/app/src/main/res/values-da/strings.xml
- mobile/android/fenix/app/src/main/res/values-de/strings.xml
- mobile/android/fenix/app/src/main/res/values-dsb/strings.xml
- mobile/android/fenix/app/src/main/res/values-el/strings.xml
- mobile/android/fenix/app/src/main/res/values-en-rCA/strings.xml
- mobile/android/fenix/app/src/main/res/values-en-rGB/strings.xml
- mobile/android/fenix/app/src/main/res/values-es-rAR/strings.xml
- mobile/android/fenix/app/src/main/res/values-es-rCL/strings.xml
- mobile/android/fenix/app/src/main/res/values-es-rMX/strings.xml
- mobile/android/fenix/app/src/main/res/values-eu/strings.xml
- mobile/android/fenix/app/src/main/res/values-fi/strings.xml
- mobile/android/fenix/app/src/main/res/values-fr/strings.xml
- mobile/android/fenix/app/src/main/res/values-fur/strings.xml
- mobile/android/fenix/app/src/main/res/values-fy-rNL/strings.xml
- mobile/android/fenix/app/src/main/res/values-gl/strings.xml
- mobile/android/fenix/app/src/main/res/values-hsb/strings.xml
- mobile/android/fenix/app/src/main/res/values-hy-rAM/strings.xml
- mobile/android/fenix/app/src/main/res/values-ia/strings.xml
- mobile/android/fenix/app/src/main/res/values-is/strings.xml
- mobile/android/fenix/app/src/main/res/values-it/strings.xml
- mobile/android/fenix/app/src/main/res/values-iw/strings.xml
- mobile/android/fenix/app/src/main/res/values-ja/strings.xml
- mobile/android/fenix/app/src/main/res/values-kab/strings.xml
- mobile/android/fenix/app/src/main/res/values-kk/strings.xml
- mobile/android/fenix/app/src/main/res/values-ko/strings.xml
- mobile/android/fenix/app/src/main/res/values-nb-rNO/strings.xml
- mobile/android/fenix/app/src/main/res/values-nl/strings.xml
- mobile/android/fenix/app/src/main/res/values-nn-rNO/strings.xml
- mobile/android/fenix/app/src/main/res/values-oc/strings.xml
- mobile/android/fenix/app/src/main/res/values-pa-rIN/strings.xml
- mobile/android/fenix/app/src/main/res/values-pl/strings.xml
- mobile/android/fenix/app/src/main/res/values-pt-rBR/strings.xml
- mobile/android/fenix/app/src/main/res/values-pt-rPT/strings.xml
- mobile/android/fenix/app/src/main/res/values-rm/strings.xml
- mobile/android/fenix/app/src/main/res/values-ru/strings.xml
- mobile/android/fenix/app/src/main/res/values-sat/strings.xml
- mobile/android/fenix/app/src/main/res/values-si/strings.xml
- mobile/android/fenix/app/src/main/res/values-sk/strings.xml
- mobile/android/fenix/app/src/main/res/values-sl/strings.xml
- mobile/android/fenix/app/src/main/res/values-sq/strings.xml
- mobile/android/fenix/app/src/main/res/values-sv-rSE/strings.xml
- mobile/android/fenix/app/src/main/res/values-tg/strings.xml
- mobile/android/fenix/app/src/main/res/values-th/strings.xml
- mobile/android/fenix/app/src/main/res/values-tr/strings.xml
- mobile/android/fenix/app/src/main/res/values-ug/strings.xml
- mobile/android/fenix/app/src/main/res/values-vi/strings.xml
- mobile/android/fenix/app/src/main/res/values-zh-rCN/strings.xml
- mobile/android/fenix/app/src/main/res/values-zh-rTW/strings.xml
- mobile/android/fenix/app/src/main/res/values/strings.xml
- mobile/android/focus-android/app/src/main/java/org/mozilla/focus/browser/integration/FullScreenIntegration.kt
- mobile/android/focus-android/app/src/main/java/org/mozilla/focus/fragment/BrowserFragment.kt
- − mobile/android/focus-android/app/src/main/res/layout/dialog_full_screen_notification.xml
- mobile/android/focus-android/app/src/main/res/values/strings.xml
- mobile/android/focus-android/app/src/test/java/org/mozilla/focus/browser/integration/FullScreenIntegrationTest.kt
- mobile/android/geckoview/api.txt
- − mobile/android/geckoview/src/androidTest/java/org/mozilla/geckoview/test/VideoCaptureTest.kt
- mobile/android/geckoview/src/main/AndroidManifest.xml
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/Clipboard.java
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV21.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoInputConnection.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntimeSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebRequest.java
- mobile/android/gradle/with_gecko_binaries.gradle
- mobile/android/installer/package-manifest.in
- mobile/android/moz.configure
- mobile/shared/chrome/geckoview/geckoview.js
- mobile/shared/components/geckoview/GeckoViewStartup.sys.mjs
- modules/libpref/init/StaticPrefList.yaml
- modules/libpref/init/all.js
- moz.configure
- + mozconfig-android-aarch64
- + mozconfig-android-all
- + mozconfig-android-armv7
- + mozconfig-android-x86
- + mozconfig-android-x86_64
- + mozconfig-linux-aarch64
- + mozconfig-linux-aarch64-dev
- + mozconfig-linux-arm
- + mozconfig-linux-i686
- + mozconfig-linux-x86_64
- + mozconfig-linux-x86_64-asan
- + mozconfig-linux-x86_64-dev
- + mozconfig-macos
- + mozconfig-macos-dev
- + mozconfig-windows-i686
- + mozconfig-windows-x86_64
- netwerk/protocol/http/nsHttpHandler.cpp
- netwerk/protocol/http/nsHttpNTLMAuth.cpp
- netwerk/sctp/src/moz.build
- netwerk/sctp/src/netinet/sctp_cc_functions.c
- netwerk/sctp/src/netinet/sctp_indata.c
- netwerk/sctp/src/netinet/sctp_input.c
- netwerk/sctp/src/netinet/sctp_output.c
- netwerk/sctp/src/netinet/sctp_usrreq.c
- netwerk/sctp/src/netinet/sctputil.c
- netwerk/sctp/src/user_mbuf.c
- netwerk/sctp/src/user_socket.c
- netwerk/system/android/nsAndroidNetworkLinkService.cpp
- netwerk/system/linux/nsNetworkLinkService.cpp
- netwerk/system/mac/nsNetworkLinkService.mm
- netwerk/system/netlink/NetlinkService.cpp
- netwerk/system/win32/nsNotifyAddrListener.cpp
- netwerk/url-classifier/UrlClassifierFeatureBase.cpp
- netwerk/url-classifier/components.conf
- old-configure.in
- python/mozbuild/mozbuild/artifacts.py
- python/mozbuild/mozbuild/mach_commands.py
- python/mozlint/mozlint/cli.py
- security/manager/ssl/RemoteSecuritySettings.sys.mjs
- security/moz.build
- security/nss/lib/certhigh/ocsp.c
- security/nss/lib/libpkix/pkix_pl_nss/module/pkix_pl_socket.c
- security/nss/lib/ssl/Makefile
- security/sandbox/common/SandboxUtils.sys.mjs
- services/settings/Attachments.sys.mjs
- services/settings/IDBHelpers.sys.mjs
- services/settings/RemoteSettingsClient.sys.mjs
- services/settings/dumps/gen_last_modified.py
- services/settings/dumps/main/moz.build
- services/settings/remote-settings.sys.mjs
- services/settings/servicesSettings.manifest
- services/settings/static-dumps/main/moz.build
- + services/settings/static-dumps/main/query-stripping.json
- services/sync/components.conf
- servo/components/style/properties/cascade.rs
- servo/components/style/properties/properties.mako.rs
- servo/components/style/values/computed/box.rs
- servo/components/style/values/specified/length.rs
- servo/ports/geckolib/glue.rs
- + testing/web-platform/tests/css/css-viewport/zoom/canvas-ref.html
- + testing/web-platform/tests/css/css-viewport/zoom/canvas.html
- + testing/web-platform/tests/css/css-viewport/zoom/textarea-very-small-zoom-crash.html
- third_party/libwebrtc/modules/audio_coding/codecs/isac/main/source/os_specific_inline.h
- third_party/libwebrtc/modules/desktop_capture/desktop_capture_types.h
- third_party/libwebrtc/modules/desktop_capture/win/desktop_capture_utils.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capture_session.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capturer_win.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capturer_win.h
- third_party/libwebrtc/modules/video_capture/windows/device_info_ds.h
- third_party/libwebrtc/rtc_base/platform_thread_types.cc
- third_party/libwebrtc/rtc_base/socket.h
- third_party/libwebrtc/rtc_base/system/file_wrapper.cc
- third_party/libwebrtc/rtc_base/win/create_direct3d_device.h
- third_party/sipcc/cpr_win_types.h
- third_party/sipcc/sdp_token.c
- toolkit/.eslintrc.js
- + toolkit/actors/FilesFilterChild.sys.mjs
- + toolkit/actors/FilesFilterParent.sys.mjs
- toolkit/actors/NetErrorChild.sys.mjs
- toolkit/actors/moz.build
- toolkit/components/antitracking/StoragePrincipalHelper.cpp
- toolkit/components/antitracking/antitracking.manifest
- toolkit/components/antitracking/components.conf
- toolkit/components/downloads/DownloadCore.sys.mjs
- toolkit/components/downloads/DownloadIntegration.sys.mjs
- toolkit/components/extensions/Extension.sys.mjs
- toolkit/components/extensions/ExtensionParent.sys.mjs
- toolkit/components/httpsonlyerror/content/errorpage.html
- toolkit/components/httpsonlyerror/content/errorpage.js
- toolkit/components/moz.build
- toolkit/components/remotebrowserutils/RemoteWebNavigation.sys.mjs
- toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
- toolkit/components/resistfingerprinting/nsRFPService.cpp
- toolkit/components/resistfingerprinting/nsRFPService.h
- toolkit/components/search/SearchEngine.sys.mjs
- toolkit/components/search/SearchService.sys.mjs
- + toolkit/components/securitylevel/SecurityLevel.manifest
- + toolkit/components/securitylevel/SecurityLevel.sys.mjs
- + toolkit/components/securitylevel/components.conf
- + toolkit/components/securitylevel/moz.build
- toolkit/components/shopping/jar.mn
- toolkit/components/telemetry/app/TelemetrySend.sys.mjs
- toolkit/components/telemetry/moz.build
- toolkit/components/windowwatcher/nsWindowWatcher.cpp
- toolkit/content/jar.mn
- toolkit/content/widgets/moz-message-bar/moz-message-bar.mjs
- toolkit/content/widgets/moz-support-link/moz-support-link.mjs
- toolkit/content/widgets/notificationbox.js
- toolkit/library/moz.build
- + toolkit/locales-preview/base-browser-no-translate.ftl
- toolkit/locales/en-US/toolkit/about/aboutHttpsOnlyError.ftl
- + toolkit/locales/en-US/toolkit/global/base-browser.ftl
- toolkit/locales/jar.mn
- toolkit/modules/ActorManagerParent.sys.mjs
- toolkit/modules/AppConstants.sys.mjs
- toolkit/modules/FinderParent.sys.mjs
- toolkit/modules/LogManager.sys.mjs
- toolkit/modules/RemotePageAccessManager.sys.mjs
- toolkit/modules/UpdateUtils.sys.mjs
- toolkit/modules/moz.build
- toolkit/mozapps/extensions/AddonManager.sys.mjs
- toolkit/mozapps/extensions/content/aboutaddons.html
- toolkit/mozapps/extensions/content/aboutaddons.js
- toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
- toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs
- toolkit/mozapps/extensions/test/browser/head.js
- toolkit/mozapps/extensions/test/xpcshell/head_addons.js
- toolkit/mozapps/update/UpdateService.sys.mjs
- toolkit/mozapps/update/UpdateServiceStub.sys.mjs
- toolkit/mozapps/update/common/updatehelper.cpp
- toolkit/mozapps/update/tests/data/sharedUpdateXML.js
- + toolkit/mozapps/update/tests/unit_aus_update/mixedUnsupported.js
- toolkit/mozapps/update/tests/unit_aus_update/xpcshell.toml
- toolkit/mozapps/update/updater/launchchild_osx.mm
- toolkit/mozapps/update/updater/moz.build
- toolkit/mozapps/update/updater/nightly_aurora_level3_primary.der
- toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der
- toolkit/mozapps/update/updater/updater.cpp
- toolkit/themes/shared/findbar.css
- toolkit/xre/LauncherRegistryInfo.cpp
- toolkit/xre/MacLaunchHelper.h
- toolkit/xre/MacLaunchHelper.mm
- toolkit/xre/MacRunFromDmgUtils.mm
- toolkit/xre/ProfileReset.cpp
- toolkit/xre/dllservices/mozglue/WindowsDllBlocklist.cpp
- toolkit/xre/nsAppRunner.cpp
- toolkit/xre/nsIXREDirProvider.idl
- toolkit/xre/nsUpdateDriver.cpp
- toolkit/xre/nsXREDirProvider.cpp
- toolkit/xre/nsXREDirProvider.h
- + tools/base-browser/l10n/combine-translation-versions.py
- + tools/base-browser/l10n/combine/__init__.py
- + tools/base-browser/l10n/combine/combine.py
- + tools/base-browser/l10n/combine/tests/README
- + tools/base-browser/l10n/combine/tests/__init__.py
- + tools/base-browser/l10n/combine/tests/test_android.py
- + tools/base-browser/l10n/combine/tests/test_dtd.py
- + tools/base-browser/l10n/combine/tests/test_fluent.py
- + tools/base-browser/l10n/combine/tests/test_properties.py
- tools/lint/fluent-lint/exclusions.yml
- + tools/torbrowser/generate-bugzilla-triage-csv.sh
- uriloader/base/nsDocLoader.cpp
- uriloader/base/nsURILoader.cpp
- uriloader/exthandler/nsExternalHelperAppService.cpp
- widget/ScrollbarDrawingWin.cpp
- widget/ScrollbarDrawingWin11.cpp
- widget/android/WebExecutorSupport.cpp
- widget/android/nsClipboard.cpp
- widget/cocoa/nsChildView.mm
- widget/gtk/MPRISServiceHandler.cpp
- widget/gtk/nsWindow.cpp
- widget/windows/WinTaskbar.cpp
- widget/windows/nsDataObj.cpp
- xpcom/io/nsAppFileLocationProvider.cpp
- xpfe/appshell/AppWindow.cpp
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/0ab79d…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/0ab79d…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.5-1] 266 commits: Bug 1899180. If a channel is not nsIPrivateBrowsingChannel and has no load...
by clairehurst (@clairehurst) 05 Mar '25
by clairehurst (@clairehurst) 05 Mar '25
05 Mar '25
clairehurst pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
5ca07b51 by Timothy Nikkel at 2025-02-27T17:06:30+00:00
Bug 1899180. If a channel is not nsIPrivateBrowsingChannel and has no load context, use the private browsing field from it's origin attributes. r=necko-reviewers,anti-tracking-reviewers,valentin
If the channel is not a nsIPrivateBrowsingChannel, and it also has no load context (eg inside svg images) then we will over write a non-zero mPrivateBrowsingId on the OriginAttributes of the channel with 0, making NS_UsePrivateBrowsing return false for the channel.
Differential Revision: https://phabricator.services.mozilla.com/D212083
- - - - -
74bfe8a6 by Jon Coppeard at 2025-02-27T17:06:30+00:00
Bug 1904011 - Ignore finalized scripts when iterating code covarage tables r=iain
Differential Revision: https://phabricator.services.mozilla.com/D214799
- - - - -
fb06682f by Arturo Mejia at 2025-02-27T17:06:31+00:00
Bug 1908344 - Improve prompts showing a=dmeehan - BP, tor-browser#43005
Original Revision: https://phabricator.services.mozilla.com/D216996
Differential Revision: https://phabricator.services.mozilla.com/D217718
- - - - -
b310f20c by Sam Foster at 2025-02-27T17:06:31+00:00
Bug 1909099 - Always clean up old session restore and sync log files. r=markh,sessionstore-reviewers,dao
Differential Revision: https://phabricator.services.mozilla.com/D217520
- - - - -
e24f0732 by pollymce at 2025-02-27T17:06:32+00:00
Bug 1902996 - Improve messaging for fullscreen notifications. r=android-reviewers,gl
Instead of explaining to users that they are in fullscreen mode, which may be obvious, we explain how to get out of it :)
Also use a Toast rather than a custom Dialog.
Update Focus too.
Fix lint errors.
Differential Revision: https://phabricator.services.mozilla.com/D215782
- - - - -
f8f4af65 by Roger Yang at 2025-02-27T17:06:32+00:00
Bug 1862537 - Do not try to go back when it's a initial load r=android-reviewers,harrisono, a=pascalc
Differential Revision: https://phabricator.services.mozilla.com/D219782
- - - - -
787a1860 by Henry Wilkes at 2025-02-27T17:06:33+00:00
Bug 1436462 - Use "Open in new private window" for bookmarks when in PBM. r=places-reviewers,mak
This makes the bookmark menu consistent with the "File" and context
menu when using private browsing mode.
We also share the same hide item logic for these "open" items in one
place in PlacesUIUtils so that they can be shared between the two
consumers (regular bookmarks and managed bookmarks). This ensures that
the "Open in container" item if hidden for managed bookmarks in a
private window.
Differential Revision: https://phabricator.services.mozilla.com/D220120
- - - - -
a1458db2 by Fatih at 2025-02-27T17:06:33+00:00
Bug 1834307: Change StaticPrefs::general_smoothScroll() calls with nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221363
- - - - -
f26cbe1a by Fatih at 2025-02-27T17:06:34+00:00
Bug 1834307: Check RFPTarget::CSSPrefersReducedMotion in nsLayoutUtils::IsSmoothScrollingEnabled. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221364
- - - - -
c8ac612a by Henry Wilkes at 2025-02-27T17:06:34+00:00
Bug 1919363 - Only show one app menu "new window" item in permanent private browsing. r=mconley
We also update the browser_private_browsing_window.js test.
The previous test was limited because it was referring to non-existent
"appmenu_newNavigator" and "appmenu_newPrivateWindow".
Differential Revision: https://phabricator.services.mozilla.com/D222507
- - - - -
07271014 by rahulsainani at 2025-02-27T17:06:35+00:00
Bug 1906024 - Format download file names better a=diannaS
Original Revision: https://phabricator.services.mozilla.com/D220559
Differential Revision: https://phabricator.services.mozilla.com/D222254
- - - - -
76e0020a by rahulsainani at 2025-02-27T17:06:35+00:00
Bug 1906024 - Format download file names a=diannaS
Original Revision: https://phabricator.services.mozilla.com/D221771
Differential Revision: https://phabricator.services.mozilla.com/D222259
- - - - -
df425552 by Nika Layzell at 2025-02-27T17:06:36+00:00
Bug 1911745 - Unify BrowsingContext flag coherency checks, r=mccr8
Previously these checks were largely diagnostic tools for finding bugs
in other code as it evolves. This unifies the checks a bit more and
makes them stronger for BrowsingContexts created over IPC, providing a
place for more coherency checks to be added in the future.
Differential Revision: https://phabricator.services.mozilla.com/D218860
- - - - -
0f64acf0 by Pier Angelo Vendrame at 2025-02-27T17:06:36+00:00
Bug 1918009 - Fix the RFP-spoofed User-Agent header. r=tjr
The spoofed value of the HTTP user-agent header is not consistent with
the value of navigator.userAgent on Windows, and this can lead to
compatibility issues.
Differential Revision: https://phabricator.services.mozilla.com/D223745
- - - - -
b9aa9428 by Fatih at 2025-02-27T17:06:37+00:00
Bug 1607032: Spoof screen orientation and angle to primary values. r=tjr,geckoview-reviewers,owlish
Differential Revision: https://phabricator.services.mozilla.com/D220904
- - - - -
1d554b76 by Fatih at 2025-02-27T17:06:37+00:00
Bug 1918202: Spoof orientation based on screen size. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D221863
- - - - -
4501f6d4 by Fatih at 2025-02-27T17:06:38+00:00
Bug 1922204: fixup square spoofed orientation. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D224312
- - - - -
eecffb21 by Pier Angelo Vendrame at 2025-02-27T17:06:38+00:00
Bug 1923264 - Discard unsupported updates in selectUpdate. r=bytesized,nalexander
UpdateService.#selectUpdate currently chooses always the most recent
update even when unsupported and an older but supported one is
available.
This commit makes #selectUpdate discard the unsupported update if a
supported alternative is found.
Differential Revision: https://phabricator.services.mozilla.com/D224905
- - - - -
5ffde69f by stransky at 2025-02-27T17:06:38+00:00
Bug 1501744 [Linux] Fill PointerEvents on the Gtk backend r=emilio
Patch author is tpxp <tpxp(a)live.fr>
Differential Revision: https://phabricator.services.mozilla.com/D215201
- - - - -
3a415e20 by Fatih at 2025-02-27T17:06:39+00:00
Bug 1436226: Ignore user prefs and hardware support for media capabilities when RFPTarget::MediaCapabilities is enabled. r=tjr,media-playback-reviewers,padenot
This patch mostly targeted Android, as media.mediasource.vp9.enabled is disabled on only Android and HW support takes precedence over pref, hence leaking HW support for VP9. However, we ended up modifying the patch to ignore prefs or HW support, fixing both possible user pref leak and HW support leak.
Differential Revision: https://phabricator.services.mozilla.com/D221338
- - - - -
16550559 by hackademix at 2025-02-27T17:06:39+00:00
Bug 1556002 - Update initial window size and letterboxing stepping. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D226598
- - - - -
1a2b0257 by Arturo Mejia at 2025-02-27T17:06:40+00:00
Bug 1836921 - Improve dialogs a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D226961
Differential Revision: https://phabricator.services.mozilla.com/D228842
- - - - -
660f1f57 by Makoto Kato at 2025-02-27T17:06:40+00:00
Bug 1776646 - Support EXTRA_IS_SENSITIVE for clipboard. r=geckoview-reviewers,owlish
When nsITransferable.isPrivateData is true, such as coping password or
private mode, we should set EXTRA_IS_SENSITIVE to ClipData.
AndroidJunit test runner doesn't often get `ClipDescription.extras`
from clipboard service in test runner. So we cannot write a unit test
using AndroidJUnit test runner.
Differential Revision: https://phabricator.services.mozilla.com/D225326
- - - - -
3c85583c by Malte Juergens at 2025-02-27T17:06:41+00:00
Bug 1909396 - Remove HTTPS-Only exception button in iframes r=freddyb,fluent-reviewers
Rationale for this can be read in Bug 1909396, but the main reason is that the iframe will get blocked regardless by mixed content blocking.
Differential Revision: https://phabricator.services.mozilla.com/D220257
- - - - -
35a49488 by Cathy Lu at 2025-02-27T17:06:41+00:00
Bug 1914797 - Part 1 + 2 + partial backout (details below)
Bug 1914797 - Part 1 - Revert bug 1868469 r=android-reviewers,jonalmeida, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D226431
Bug 1914797 - Part 2 - Add url change during onPageStart for slow loading sites r=android-reviewers,jonalmeida, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D226432
Backed out 1 changesets (bug 1914797) for causing Bug 1929028
Backed out changeset a79554879d7b (bug 1914797)
- - - - -
2746a0cb by Emilio Cobos Álvarez at 2025-02-27T17:06:42+00:00
Bug 1909625 - Ignore CSS zoom and text zoom for canvas. r=gfx-reviewers,lsalzman
The spec doesn't mention anything about applying them, and other
browsers don't, so let's just be consistent...
Differential Revision: https://phabricator.services.mozilla.com/D221709
- - - - -
541aa098 by Emilio Cobos Álvarez at 2025-02-27T17:06:42+00:00
Bug 1918454 - Prevent divide by zero when inverting effective zoom. r=firefox-style-system-reviewers,layout-reviewers,boris
See comment.
Differential Revision: https://phabricator.services.mozilla.com/D222090
- - - - -
1030bdb9 by Pier Angelo Vendrame at 2025-02-27T17:06:43+00:00
Bug 1840385 - Do not spoof the OS in HTTP User Agent. r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D234835
- - - - -
ba7c412a by Pier Angelo Vendrame at 2025-02-27T14:54:29-07:00
Bug 1923260 - Exempt Android resources from svg.disabled. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D224895
- - - - -
a29ed43f by Henry Wilkes at 2025-02-27T14:54:29-07:00
BB 41454: Move focus after calling openPreferences for a sub-category.
Temporary fix until mozilla bug 1799153 gets a patch upstream.
- - - - -
79bbfcf8 by Henry Wilkes at 2025-02-27T14:54:29-07:00
BB 43072: Add aria label and description to moz-message-bar.
Ensures that moz-message-bar, including notifications, are announced on
Orca.
This addresses upstream bugzilla bug 1895857 and should likely be
replaced when it is fixed.
- - - - -
10f321e6 by Henry Wilkes at 2025-02-27T14:54:29-07:00
BB 42739: Use the brand name for profile error messages.
Some messages in profileSelection.properties use gAppData->name as
variable inputs. However, gAppData->name is still "Firefox" for our
base-browser builds, rather than the user-facing browser name. We swap
these instances with the displayed brand name instead.
- - - - -
ac50cc61 by hackademix at 2025-02-27T14:54:30-07:00
BB 42194: Fix blank net error page on failed DNS resolution with active proxy.
- - - - -
0f32e83c by Henry Wilkes at 2025-02-27T14:54:30-07:00
BB 41483: Remove the firefox override for appstrings.properties
Remove this patch after upstream bugzilla bug 1790187
- - - - -
9befb7c6 by hackademix at 2025-02-27T14:54:30-07:00
BB 43101: Deep link to the startup security warning explanation.
- - - - -
75b62337 by Marco Simonelli at 2025-02-27T14:54:31-07:00
BB 41459: WebRTC fails to build under mingw (Part 1)
- properly define NOMINMAX for just MSVC builds
- - - - -
47596441 by Marco Simonelli at 2025-02-27T14:54:31-07:00
BB 41459: WebRTC fails to build under mingw (Part 2)
- fixes required to build third_party/libwebrtc
- - - - -
0072d069 by Marco Simonelli at 2025-02-27T14:54:31-07:00
BB 41459: WebRTC fails to build under mingw (Part 3)
- fixes required to build third_party/sipcc
- - - - -
72f1b014 by Marco Simonelli at 2025-02-27T14:54:32-07:00
BB 41459: WebRTC fails to build under mingw (Part 4)
- fixes requried to build netwerk/sctp
- - - - -
01d58705 by Marco Simonelli at 2025-02-27T14:54:32-07:00
BB 41459: WebRTC fails to build under mingw (Part 5)
- fixes required to build dom/media/webrtc
- - - - -
1fa54dc7 by Marco Simonelli at 2025-02-27T14:54:32-07:00
BB 41459: WebRTC fails to build under mingw (Part 6)
- fixes required to build dom/media/systemservices
- - - - -
65e746f3 by june wilde at 2025-02-27T14:54:33-07:00
BB 42758: Fix WebRTC build errors.
- - - - -
8b4fd885 by hackademix at 2025-02-27T14:54:33-07:00
BB 41854: Allow overriding download spam protection.
- - - - -
e440cb57 by hackademix at 2025-02-27T14:54:34-07:00
BB 42832: Download spam prevention exemption for browser extensions.
- - - - -
cea27ac8 by Pier Angelo Vendrame at 2025-02-27T14:54:34-07:00
BB 42220: Allow for more file types to be forced-inline.
Firefox allows to open some files in the browser without any
confirmation, but this will result in a disk leak, because the file will
be downloaded to the temporary directory first (and not deleted, in some
cases).
A preference allows PDFs to be opened without being downloaded to disk.
So, we introduce a similar one to do the same for all the files that are
set to be opened automatically in the browser.
- - - - -
54f2f856 by hackademix at 2025-02-27T14:54:34-07:00
BB 42835: Create an actor to filter file data transfers
- - - - -
55574d6e by Beatriz Rizental at 2025-02-27T14:54:35-07:00
BB 42728: Modify ./mach lint to skip unused linters
- - - - -
d9beddba by Gaba at 2025-02-27T14:54:35-07:00
Adding issue and merge request templates
- - - - -
86297295 by Morgan at 2025-02-27T15:14:07-07:00
fixup! Adding issue and merge request templates
add issue template for mozilla uplifts and tweak MR template to signal to merger an uplift issue should be created after merge
- - - - -
13549ac0 by Morgan at 2025-02-27T15:14:07-07:00
fixup! Adding issue and merge request templates
add backport template and tweak the uplift template
- - - - -
352336a4 by Morgan at 2025-02-27T15:14:07-07:00
fixup! Adding issue and merge request templates
include Bugzilla as potential source of backports
- - - - -
b304ca50 by Morgan at 2025-02-27T15:14:07-07:00
fixup! Adding issue and merge request templates
update the auto /label command to Apps::Type::Bug
- - - - -
8336d10c by Morgan at 2025-02-27T15:14:08-07:00
fixup! Adding issue and merge request templates
update release prep label link
- - - - -
a4f5561b by hackademix at 2025-02-27T15:14:08-07:00
fixup! Adding issue and merge request templates
TBB 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation
- - - - -
17af6ece by Richard Pospesel at 2025-02-27T15:14:08-07:00
BB 42683: Create script to generate issue triage csv file from bugzilla query and git logs
- - - - -
6983dd02 by Henry Wilkes at 2025-02-27T15:14:09-07:00
BB 42305: Add script to combine translation files across versions.
- - - - -
616093c7 by Henry Wilkes at 2025-02-27T15:14:09-07:00
fixup! BB 42305: Add script to combine translation files across versions.
TB 43446: Allow the combine translation script to select some branding
strings from different files.
- - - - -
1df35ef6 by Beatriz Rizental at 2025-02-27T15:14:09-07:00
Add CI for Base Browser
- - - - -
3e5d8115 by Pier Angelo Vendrame at 2025-02-27T15:14:10-07:00
Base Browser's .mozconfigs.
Bug 17858: Cannot create incremental MARs for hardened builds.
Define HOST_CFLAGS, etc. to avoid compiling programs such as mbsdiff
(which is part of mar-tools and is not distributed to end-users) with
ASan.
Bug 21849: Don't allow SSL key logging.
Bug 25741 - TBA: Disable features at compile-time
Define MOZ_ANDROID_NETWORK_STATE and MOZ_ANDROID_LOCATION
Bug 27623 - Export MOZILLA_OFFICIAL during desktop builds
This fixes a problem where some preferences had the wrong default value.
Also see bug 27472 where we made a similar fix for Android.
Bug 29859: Disable HLS support for now
Bug 30463: Explicitly disable MOZ_TELEMETRY_REPORTING
Bug 32493: Disable MOZ_SERVICES_HEALTHREPORT
Bug 33734: Set MOZ_NORMANDY to False
Bug 33851: Omit Parental Controls.
Bug 40252: Add --enable-rust-simd to our tor-browser mozconfig files
Bug 41584: Move some configuration options to base-browser level
- - - - -
1d30c01d by Pier Angelo Vendrame at 2025-02-27T15:14:10-07:00
Tweaks to the build system
Bug 40857: Modified the fat .aar creation file
This is a workaround to build fat .aars with the compiling enviornment
disabled.
Mozilla does not use a similar configuration, but either runs a Firefox
build and discards its output, or uses artifacts build.
We might switch to artifact builds too, and drop this patch, or write a
better one to upstream. But until then we need this patch.
See also https://bugzilla.mozilla.org/show_bug.cgi?id=1763770.
Bug 41458: Prevent `mach package-multi-locale` from actually creating a package
macOS builds need some files to be moved around with
./mach package-multi-locale to create multi-locale packages.
The required command isn't exposed through any other mach command.
So, we patch package-multi-locale both to prevent it from failing when
doing official builds and to detect any future changes on it.
- - - - -
fc17e314 by Pier Angelo Vendrame at 2025-02-27T15:14:10-07:00
BB 29320: Replace the gnu target with gnullvm for Rust.
- - - - -
a2eeb47e by Pier Angelo Vendrame at 2025-02-27T15:14:11-07:00
BB 42616: Remove VideoCaptureTest.kt.
This is a workaround to fix the GeckoView build with WebRTC disabled.
We should replace this workaround with a proper solution, that
excludes this test when MOZ_WEBRTC is undefined/False.
- - - - -
d4b78d66 by Pier Angelo Vendrame at 2025-02-27T15:14:11-07:00
BB 41108: Remove privileged macOS installation from 102
- - - - -
5b6ab42e by Dan Ballard at 2025-02-27T15:14:11-07:00
BB 41149: Re-enable DLL injection protection in all builds not just nightlies
- - - - -
5e522a87 by Henry Wilkes at 2025-02-27T15:14:11-07:00
BB 43092: Disable wayland by default in Base Browser.
- - - - -
9db961f6 by Matthew Finkel at 2025-02-27T15:14:12-07:00
BB 24796: Comment out excess permissions from GeckoView
The GeckoView AndroidManifest.xml is not preprocessed unlike Fennec's
manifest, so we can't use the ifdef preprocessor guards around the
permissions we do not want. Commenting the permissions is the
next-best-thing.
- - - - -
8c41040a by Matthew Finkel at 2025-02-27T15:14:12-07:00
BB 28125: Prevent non-Necko network connections
- - - - -
e5436066 by Mike Perry at 2025-02-27T15:14:12-07:00
BB 12974: Disable NTLM and Negotiate HTTP Auth
The Mozilla bugs: https://bugzilla.mozilla.org/show_bug.cgi?id=1046421,
https://bugzilla.mozilla.org/show_bug.cgi?id=1261591, tor-browser#27602
- - - - -
feeb1f08 by cypherpunks1 at 2025-02-27T15:14:13-07:00
BB 40717: Hide Windows SSO in settings
- - - - -
cecdf2cb by Georg Koppen at 2025-02-27T15:14:13-07:00
BB 16285: Exclude ClearKey system for now
In the past the ClearKey system had not been compiled when specifying
--disable-eme. But that changed and it is even bundled nowadays (see:
Mozilla's bug 1300654). We don't want to ship it right now as the use
case for it is not really visible while the code had security
vulnerabilities in the past.
- - - - -
96514263 by Kathy Brade at 2025-02-27T15:14:13-07:00
BB 21431: Clean-up system extensions shipped in Firefox
Only ship the pdfjs extension.
- - - - -
59d94baf by Henry Wilkes at 2025-02-27T15:14:14-07:00
BB 42831: Remove the shopping components.
- - - - -
e29e293f by Kathy Brade at 2025-02-27T15:14:14-07:00
BB 33852: Clean up about:logins (LockWise) to avoid mentioning sync, etc.
Hide elements on about:logins that mention sync, "Firefox LockWise", and
Mozilla's LockWise mobile apps.
Disable the "Create New Login" button when security.nocertdb is true.
- - - - -
3505f141 by Alex Catarineu at 2025-02-27T15:14:14-07:00
BB 41457: Remove Mozilla permissions
Bug 40025: Remove Mozilla add-on install permissions
- - - - -
652154d2 by Kathy Brade at 2025-02-27T15:14:14-07:00
BB 40002: Remove about:ion
Firefox Ion (previously Firefox Pioneer) is an opt-in program in which people
volunteer to participate in studies that collect detailed, sensitive data about
how they use their browser.
Bug 41662: Disable about:sync-logs
Even though we disable sync by default with
`identity.fxaccounts.enabled`, this about: page is still avilable.
We could throw an exception on the constructor of the related
component, but it would result only in an error in the console, without
a visible "this address does not look right" error page.
If we fix the issues with MOZ_SERVICES_SYNC, we can restore the
component.
- - - - -
8a8057b5 by Morgan at 2025-02-27T15:14:15-07:00
BB 42716: Disable unwanted about: pages
- - - - -
00bce81c by Arthur Edelstein at 2025-02-27T15:14:15-07:00
BB 26353: Prevent speculative connect that violated FPI.
Connections were observed in the catch-all circuit when
the user entered an https or http URL in the URL bar, or
typed a search term.
- - - - -
ef0bd45e by Alex Catarineu at 2025-02-27T15:14:15-07:00
BB 31740: Remove some unnecessary RemoteSettings instances
More concretely, SearchService.jsm 'hijack-blocklists' and
url-classifier-skip-urls.
Avoid creating instance for 'anti-tracking-url-decoration'.
If prefs are disabling their usage, avoid creating instances for
'cert-revocations' and 'intermediates'.
Do not ship JSON dumps for collections we do not expect to need. For
the ones in the 'main' bucket, this prevents them from being synced
unnecessarily (the code in remote-settings does so for collections
in the main bucket for which a dump or local data exists). For the
collections in the other buckets, we just save some size by not
shipping their dumps.
We also clear the collections database on the v2 -> v3 migration.
- - - - -
ca805a32 by cypherpunks1 at 2025-02-27T15:14:16-07:00
BB 41092: Add a RemoteSettings JSON dump for query-stripping
- - - - -
7e8c7fb6 by cypherpunks1 at 2025-02-27T15:14:16-07:00
BB 42730: Patch RemoteSettings to use only local dumps as a data source
- - - - -
87acbb78 by Pier Angelo Vendrame at 2025-02-27T15:14:16-07:00
BB 41635: Disable the Normandy component
Do not include Normandy at all whenever MOZ_NORMANDY is False.
- - - - -
8c63ddb0 by Georg Koppen at 2025-02-27T15:14:16-07:00
BB 30541: Disable WebGL readPixel() for web content
Related Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1428034
- - - - -
0eccef40 by Alex Catarineu at 2025-02-27T15:14:17-07:00
BB 28369: Stop shipping pingsender executable
- - - - -
dc81b199 by Henry Wilkes at 2025-02-27T15:14:17-07:00
BB 42630: Disable LaterRun module.
- - - - -
d6e25540 by Pier Angelo Vendrame at 2025-02-27T15:14:17-07:00
BB 41599: Always return an empty string as network ID
Firefox computes an internal network ID used to detect network changes
and act consequently (e.g., to improve WebSocket UX).
However, there are a few ways to get this internal network ID, so we
patch them out, to be sure any new code will not be able to use them and
possibly link users.
We also sent a patch to Mozilla to seed the internal network ID, to
prevent any accidental leak in the future.
Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1817756
- - - - -
b5cf607b by Pier Angelo Vendrame at 2025-02-27T15:14:18-07:00
BB 43386: Use Firefox in the UA in RFP-exempt request.
XHR requests initiated by extensions are exempt from RFP.
Therefore, they report the actual app name, instead of Firefox, and the
actual Firefox minor version.
This happens whenever the app name has been customized and does not
match a hardcoded "Firefox".
- - - - -
5b9b5094 by Richard Pospesel at 2025-02-27T15:14:18-07:00
BB 41327: Disable UrlbarProviderInterventions
- - - - -
fb7688b4 by Richard Pospesel at 2025-02-27T15:14:18-07:00
BB 42037: Disable about:firefoxview page
- - - - -
83739561 by Mike Perry at 2025-02-27T15:14:19-07:00
Firefox preference overrides.
- - - - -
751a872a by Pier Angelo Vendrame at 2025-02-27T15:14:19-07:00
BB 43140: Tighten up fonts on Linux.
We ship a fontconfig configuration to esnure all Linux users have the
same defaults and reduce the chances of fingerprinting.
We used to add this file in tor-browser-build, but some users might
skip it by using the browser executable without the wrapper script.
Therefore, we decided to activate the file with the FontConfig API
instead of the environment variables.
Bug 41043: Hardcode the UI font on Linux
The mechanism to choose the UI font does not play well with our
fontconfig configuration. As a result, the final criterion to choose
the font for the UI was its version.
Since we hardcode Arimo as a default sans-serif on preferences, we use
it also for the UI. FontConfig will fall back to some other font for
scripts Arimo does not cover as expected (we tested with Japanese).
Bug 43141: Hardcode system-ui to Arimo.
- - - - -
764427c0 by Pier Angelo Vendrame at 2025-02-27T15:14:19-07:00
BB 41901: Hardcode normalized FontSubstitutes.
Windows has a system to set font aliases through the registry.
This allows some customization that could be used as a fingerprinting
vector.
Moreover, this mechanism is used by Windows itself, and different SKUs
might have different default FontSubstitutes.
- - - - -
3cf49e16 by Pier Angelo Vendrame at 2025-02-27T15:14:20-07:00
BB 43322: Customize the font visibility lists.
Customize the lists of fonts to assign base visibility to in
base browser and derivatives.
Also, rename the files with the upstream lists, to make sure we do not
use them by mistake.
- - - - -
ebd21404 by Alex Catarineu at 2025-02-27T15:14:20-07:00
BB 30605: Honor privacy.spoof_english in Android
This checks `privacy.spoof_english` whenever `setLocales` is
called from Fenix side and sets `intl.accept_languages`
accordingly.
Bug 40198: Expose privacy.spoof_english pref in GeckoView
- - - - -
f202f47c by Pier Angelo Vendrame at 2025-02-27T15:14:20-07:00
BB 42562: Normalized the Accepted Languages on Android.
The OS language might be outside the list of actually supported
languages and it might leak the user's region.
Therefore, we force the locale reported in Accept-Language to match one
we support with translations, even when it means using a not exact
region tag.
- - - - -
8a333854 by Alex Catarineu at 2025-02-27T15:14:21-07:00
BB 40171: Make WebRequest and GeckoWebExecutor First-Party aware
- - - - -
8e08b71a by Alex Catarineu at 2025-02-27T15:14:21-07:00
BB 26345: Hide tracking protection UI
- - - - -
fb5eeebf by Henry Wilkes at 2025-02-27T15:14:22-07:00
BB 43109: Hide Firefox Relay from settings.
This should remain disabled, see tor-browser#42814.
- - - - -
cc442cce by Henry Wilkes at 2025-02-27T15:14:22-07:00
BB 42777: Hide Website Privacy Preferences.
We hide the Website Privacy Preferences section, which controls the
"global privacy control" (GPC) and "do not track" (DNT) settings.
- - - - -
f9818ad1 by Morgan at 2025-02-27T15:14:22-07:00
BB 42070: Hide "Use smooth scrolling" from settings
- - - - -
a3986f07 by Arthur Edelstein at 2025-02-27T15:14:23-07:00
BB 18905: Hide unwanted items from help menu
Bug 25660: Remove the "New Private Window" option
- - - - -
cb5f1704 by Pier Angelo Vendrame at 2025-02-27T15:14:23-07:00
BB 41739: Remove "Website appearance" from about:preferences.
It is ignored because of RFP and it is confusing for users.
- - - - -
61f05e22 by Henry Wilkes at 2025-02-27T15:14:24-07:00
BB 43117: Hide "Always underline links" from settings.
- - - - -
e3b47e68 by Pier Angelo Vendrame at 2025-02-27T15:14:24-07:00
BB 42774: Always hide the third-pary certs UI.
- - - - -
e57e042a by Henry Wilkes at 2025-02-27T15:14:25-07:00
BB 43118: Hide feature recommendation (CFR) settings.
- - - - -
a7f6d8be by Pier Angelo Vendrame at 2025-02-27T15:14:25-07:00
BB 9173: Change the default Firefox profile directory to be relative.
This commit makes Firefox look for the default profile directory in a
directory relative to the binary path.
The directory can be specified through the --with-relative-data-dir.
This is relative to the same directory as the firefox main binary for
Linux and Windows.
On macOS, we remove Contents/MacOS from it.
Or, in other words, the directory is relative to the application
bundle.
This behavior can be overriden at runtime, by placing a file called
system-install adjacent to the firefox main binary (also on macOS).
- - - - -
35c8864f by Pier Angelo Vendrame at 2025-02-27T15:14:26-07:00
BB 42773: Replace ~ with the original home.
In Bug 93141, Mozilla started sending users to their home when they type
~ in the URL bar.
On Linux, we change $HOME for various reason, therefore you would be
redirected to the spoofed home directory when typing ~.
So, we check if the original home directory is known, and use that,
instead.
- - - - -
d9fcaf6e by Alex Catarineu at 2025-02-27T15:14:26-07:00
BB 27604: Fix addon issues when moving the profile directory
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1429838
- - - - -
402a9676 by Mike Perry at 2025-02-27T15:14:26-07:00
BB 13028: Prevent potential proxy bypass cases.
It looks like these cases should only be invoked in the NSS command line
tools, and not the browser, but I decided to patch them anyway because there
literally is a maze of network function pointers being passed around, and it's
very hard to tell if some random code might not pass in the proper proxied
versions of the networking code here by accident.
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1433509
- - - - -
fd2df1ad by Pier Angelo Vendrame at 2025-02-27T15:14:27-07:00
BB 40309: Avoid using regional OS locales
Avoid regional OS locales if the pref
`intl.regional_prefs.use_os_locales` is false but RFP is enabled.
- - - - -
6fddd934 by Matthew Finkel at 2025-02-27T15:14:27-07:00
BB 40432: Prevent probing installed applications
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1711084
- - - - -
0fa3f7d1 by cypherpunks1 at 2025-02-27T15:14:27-07:00
BB 33955: When copying an image only copy the image contents to the clipboard
- - - - -
5ffb61bc by cypherpunks1 at 2025-02-27T15:14:28-07:00
BB 41791: Omit the source URL when copying page contents to the clipboard
- - - - -
db083eb5 by hackademix at 2025-02-27T15:14:28-07:00
BB 42288: Allow language spoofing in status messages.
- - - - -
172368a6 by Pier Angelo Vendrame at 2025-02-27T15:14:29-07:00
BB 43196: Remove the vendor name from media notifications on Linux.
Firefox shows "vendor remoteName" as a title of the "... is playing
media" notification on Linux.
However, for our browser the remote name is enough, and prepending the
vendor to it creates a string users usually never see.
- - - - -
7706c02b by Pier Angelo Vendrame at 2025-02-27T15:14:29-07:00
Base Browser strings
This commit adds all the strings needed by following Base Browser
patches.
- - - - -
3cb027c6 by Henry Wilkes at 2025-02-27T15:14:29-07:00
BB 42583: Modify moz-support-link for Base Browser.
- - - - -
3426ad69 by Pier Angelo Vendrame at 2025-02-27T15:14:30-07:00
BB 41369: Improve Firefox language settings for multi-lingual packages
Change the language selector to be sorted by language code, rather than
name, and to display the language code to the user.
Bug 41372: Handle Japanese as a special case in preferences on macOS
Japanese is treated in a special way on macOS. However, seeing the
Japanese language tag could be confusing for users, and moreover the
language name is not localized correctly like other langs.
Bug 41378: Tell users that they can change their language at the first start
With multi-lingual builds, Tor Browser matches the user's system
language, but some users might want to change it.
So, we tell them that it is possible, but only once.
- - - - -
46b64e0a by p13dz at 2025-02-27T15:14:30-07:00
BB 40283: Workaround for the file upload bug
- - - - -
beeb8c40 by hackademix at 2025-02-27T15:14:30-07:00
BB 42019: Empty browser's clipboard on browser shutdown
- - - - -
a0c73b1a by hackademix at 2025-02-27T15:14:31-07:00
BB 42084: Ensure English spoofing works even if preferences are set out of order.
- - - - -
f6e56700 by Pier Angelo Vendrame at 2025-02-27T15:14:31-07:00
BB 41930: Remove the UI to customize accept_languages.
- - - - -
08a0ec58 by hackademix at 2025-02-27T15:14:31-07:00
BB 41434: Letterboxing, improve logging.
- - - - -
615db592 by hackademix at 2025-02-27T15:14:31-07:00
BB 41434: Letterboxing, preemptively apply margins in a global CSS rule to mitigate race conditions on newly created windows and tabs.
- - - - -
15f4cae4 by hackademix at 2025-02-27T15:14:32-07:00
BB 31064: Letterboxing, exempt browser extensions.
- - - - -
89235904 by hackademix at 2025-02-27T15:14:32-07:00
BB 32411: Letterboxing, exempt view-source: URIs.
- - - - -
d98e1b4b by hackademix at 2025-02-27T15:14:32-07:00
BB 42574: Letterboxing, exempt pdf.js.
- - - - -
302ea2ed by hackademix at 2025-02-27T15:14:33-07:00
BB 32308: Use direct browser sizing for letterboxing.
Bug 30556: align letterboxing with 200x100 new win width stepping
- - - - -
dea7318d by hackademix at 2025-03-03T12:12:55-07:00
BB 41631: Prevent weird initial window dimensions caused by subpixel computations
- - - - -
bc139a42 by hackademix at 2025-03-03T12:13:50-07:00
BB 41918: Option to reuse last window size when letterboxing is enabled.
- - - - -
837b6061 by hackademix at 2025-03-03T12:13:50-07:00
BB 41916: Letterboxing preferences UI
- - - - -
2641ee8a by hackademix at 2025-03-03T12:13:51-07:00
BB 41695: Warn on window maximization without letterboxing in RFPHelper module
- - - - -
c9804e10 by hackademix at 2025-03-03T12:13:51-07:00
BB 42443: Shrink window to match letterboxing size when the emtpy area is clicked.
- - - - -
5bc66f9e by Henry Wilkes at 2025-03-03T12:13:51-07:00
BB 42528: Don't leak system scrollbar size on windows.
- - - - -
c71fd645 by Henry Wilkes at 2025-03-03T12:13:51-07:00
BB 31575: Disable Firefox Home (Activity Stream)
Treat about:blank as the default home page and new tab page.
Avoid loading AboutNewTab in BrowserGlue.sys.mjs in order
to avoid several network requests that we do not need.
Bug 41624: Disable about:pocket-* pages.
Bug 40144: Redirect about:privatebrowsing to the user's home
- - - - -
810787a1 by Kathy Brade at 2025-03-03T12:13:52-07:00
BB 4234: Use the Firefox Update Process for Base Browser.
Windows: disable "runas" code path in updater (15201).
Windows: avoid writing to the registry (16236).
Also includes fixes for tickets 13047, 13301, 13356, 13594, 15406,
16014, 16909, 24476, and 25909.
Also fix bug 27221: purge the startup cache if the Base Browser
version changed (even if the Firefox version and build ID did
not change), e.g., after a minor Base Browser update.
Also fix 32616: Disable GetSecureOutputDirectoryPath() functionality.
Bug 26048: potentially confusing "restart to update" message
Within the update doorhanger, remove the misleading message that mentions
that windows will be restored after an update is applied, and replace the
"Restart and Restore" button label with an existing
"Restart to update Tor Browser" string.
Bug 28885: notify users that update is downloading
Add a "Downloading Base Browser update" item which appears in the
hamburger (app) menu while the update service is downloading a MAR
file. Before this change, the browser did not indicate to the user
that an update was in progress, which is especially confusing in
Tor Browser because downloads often take some time. If the user
clicks on the new menu item, the about dialog is opened to allow
the user to see download progress.
As part of this fix, the update service was changed to always show
update-related messages in the hamburger menu, even if the update
was started in the foreground via the about dialog or via the
"Check for Tor Browser Update" toolbar menu item. This change is
consistent with the Tor Browser goal of making sure users are
informed about the update process.
Removed #28885 parts of this patch which have been uplifted to Firefox.
- - - - -
8a9fb9d7 by Pier Angelo Vendrame at 2025-03-03T12:13:52-07:00
BB 42061: Create an alpha update channel.
- - - - -
a61cf9f2 by Nicolas Vigier at 2025-03-03T12:13:52-07:00
BB 41682: Add base-browser nightly mar signing key
- - - - -
a13ec52f by Pier Angelo Vendrame at 2025-03-03T12:13:53-07:00
BB 41603: Customize the creation of MOZ_SOURCE_URL
MOZ_SOURCE_URL is created by combining MOZ_SOURCE_REPO and
MOZ_SOURCE_CHANGESET.
But the code takes for granted that it refers to a Hg instance, so it
combines them as `$MOZ_SOURCE_REPO/rev/$MOZ_SOURCE_CHANGESET`.
With this commit, we change this logic to combine them to create a URL
that is valid for GitLab.
$MOZ_SOURCE_CHANGESET needs to be a commit hash, not a branch or a tag.
If that is needed, we could use /-/tree/, instead of /-/commit/.
- - - - -
fc2b55fb by Pier Angelo Vendrame at 2025-03-03T12:13:53-07:00
BB 41698: Reword the recommendation badges in about:addons
Firefox strings use { -brand-product-name }.
As a result, it seems that the fork is recommending extensions, whereas
AMO curators are doing that.
So, we replace the strings with custom ones that clarify that Mozilla is
recommending them.
We assign the strings with JS because our translation backend does not
support Fluent attributes, yet, but once it does, we should switch to
them, instead.
Upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1825033
- - - - -
8887091e by Pier Angelo Vendrame at 2025-03-03T12:13:53-07:00
BB 42438: Tweaks to the migration wizard.
Remove the items not compatible with our features (such as history) from
the migration wizard.
On Linux, allow to specify an alternative home directory, since we
usually change $HOME in our startup script.
- - - - -
daf42a9a by Alex Catarineu at 2025-03-03T12:13:53-07:00
BB 40069: Add helpers for message passing with extensions
- - - - -
a358e791 by Matthew Finkel at 2025-03-03T12:13:54-07:00
BB 41598: Prevent NoScript from being removed/disabled.
Bug 40253: Explicitly allow NoScript in Private Browsing mode.
- - - - -
e962502e by Henry Wilkes at 2025-03-03T12:13:54-07:00
BB 41581: Hide NoScript extension's toolbar button by default.
This hides it from both the toolbar and the unified extensions panel.
We also hide the unified-extension-button if the panel would be empty:
not including the NoScript button when it is hidden. As a result, this
will be hidden by default until a user installs another extension (or
shows the NoScript button and unpins it).
- - - - -
be2bcd25 by hackademix at 2025-03-03T12:13:54-07:00
BB 41834: Hide "Can't Be Removed - learn more" menu line for uninstallable add-ons
- - - - -
d36b8a6c by Pier Angelo Vendrame at 2025-03-03T12:13:55-07:00
BB 40925: Implemented the Security Level component
This component adds a new Security Level toolbar button which visually
indicates the current global security level via icon (as defined by the
extensions.torbutton.security_slider pref), a drop-down hanger with a
short description of the current security level, and a new section in
the about:preferences#privacy page where users can change their current
security level. In addition, the hanger and the preferences page will
show a visual warning when the user has modified prefs associated with
the security level and provide a one-click 'Restore Defaults' button to
get the user back on recommended settings.
Bug 40125: Expose Security Level pref in GeckoView
- - - - -
c1c17e97 by Pier Angelo Vendrame at 2025-03-05T12:11:19-07:00
fixup! BB 40925: Implemented the Security Level component
BB 43498: Remove our old patch for 43129.
This commit should be ignored at the next rebase (and we will likely
have a conflict on the security level commit).
- - - - -
c42dba02 by Pier Angelo Vendrame at 2025-03-05T12:11:19-07:00
BB 40926: Implemented the New Identity feature
- - - - -
3cd5f28e by Henry Wilkes at 2025-03-05T12:11:19-07:00
BB 41736: Customize toolbar for base-browser.
- - - - -
9840450e by Pier Angelo Vendrame at 2025-03-05T12:11:19-07:00
BB 42027: Base Browser migration procedures.
This commit implmenents the the Base Browser's version of _migrateUI.
- - - - -
682636bb by Henry Wilkes at 2025-03-05T12:11:20-07:00
BB 29745: Limit remote access to content accessible resources
- - - - -
cb0e9508 by Pier Angelo Vendrame at 2025-03-05T12:11:20-07:00
BB 43468: ScreenCaptureKit should be a weak link.
ScreenCaptureKit is not available on older macOS versions.
For some reason, the upstream build have it as a weak import even though
they do not specify the -weak_framework flag, whereas our builds have it
as a normal import and do not work on macOS 10.15 without this patch.
- - - - -
47f44e55 by Henry Wilkes at 2025-03-05T12:11:20-07:00
TB 42308: Create README for tor-browser.
We drop the README.txt that comes from Mozilla Firefox and add README.md
for tor-browser.
- - - - -
d4083c73 by Richard Pospesel at 2025-03-05T12:11:21-07:00
TB 41649: Create rebase and security backport gitlab issue templates
- - - - -
79b2063c by Morgan at 2025-03-05T12:11:21-07:00
fixup! TB 41649: Create rebase and security backport gitlab issue templates
add /label command to add Apps::Type::Rebase automatically
- - - - -
2bcf2908 by hackademix at 2025-03-05T12:11:21-07:00
fixup! TB 41649: Create rebase and security backport gitlab issue templates
TBB 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation
- - - - -
b21393f5 by Beatriz Rizental at 2025-03-05T12:11:21-07:00
Add CI for Tor Browser
- - - - -
8f6dc6fc by Henry Wilkes at 2025-03-05T12:11:22-07:00
fixup! Add CI for Tor Browser
TB 43481: Revert d9df89b1f48781d78847976d2cb48748bf864f7c to re-enable
translation CI in tor-browser branch.
- - - - -
4fde4bd3 by Henry Wilkes at 2025-03-05T12:11:22-07:00
fixup! Add CI for Tor Browser
TB 43446: Include alpha and nightly branding in the translation CI.
- - - - -
5c274e99 by Richard Pospesel at 2025-03-05T12:11:22-07:00
TB 41089: Add tor-browser build scripts + Makefile to tor-browser
- - - - -
e20a67e6 by Henry Wilkes at 2025-03-05T12:11:23-07:00
TB 41803: Add some developer tools for working on tor-browser.
- - - - -
8c7cf475 by Kathy Brade at 2025-03-05T12:11:23-07:00
TB 11641: Disable remoting by default.
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.
- - - - -
cfa255d6 by Alex Catarineu at 2025-03-05T12:11:23-07:00
Add TorStrings module for localization
- - - - -
b67a3196 by Henry Wilkes at 2025-03-05T12:11:23-07:00
Tor Browser strings
This commit adds all the strings needed for Tor Browser patches.
- - - - -
b811b10a by Henry Wilkes at 2025-03-05T12:11:24-07:00
fixup! Tor Browser strings
TB 43328: Improve the Tor log.
- - - - -
2e1eaa3f by Henry Wilkes at 2025-03-05T12:11:24-07:00
fixup! Tor Browser strings
TB 43469: Use "Connect automatically" instead of "Quickstart" in the UI.
- - - - -
b3221c6f by Henry Wilkes at 2025-03-05T12:11:24-07:00
Tor Browser localization migration scripts.
- - - - -
ec712703 by Mike Perry at 2025-03-05T12:11:25-07:00
TB 2176: Rebrand Firefox to TorBrowser
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).
- - - - -
0eead4a5 by Henry Wilkes at 2025-03-05T12:11:25-07:00
fixup! TB 2176: Rebrand Firefox to TorBrowser
TB 43446: Change the branding name for the alpha and nightly releases.
- - - - -
e1b2ea3c by Henry Wilkes at 2025-03-05T12:11:25-07:00
Customize moz-toggle for tor-browser.
- - - - -
9e77d6c3 by Henry Wilkes at 2025-03-05T12:11:25-07:00
TB 43087: Add onion-pattern to be used on Tor pages.
- - - - -
71392095 by hackademix at 2025-03-05T12:11:26-07:00
TB 41917: Tor brand-specific styles.
- - - - -
e4ac5249 by Henry Wilkes at 2025-03-05T12:11:26-07:00
TB 41817: tor-browser semantic colors.
- - - - -
fe9e4dfd by Henry Wilkes at 2025-03-05T12:11:26-07:00
TB 42110: Add TorUIUtils module for common tor component methods.
- - - - -
69c4e290 by Henry Wilkes at 2025-03-05T12:11:26-07:00
Add purple tor version of the loading APNG.
- - - - -
4b16086b by Henry Wilkes at 2025-03-05T12:11:27-07:00
TB 42583: Modify moz-support-link for Tor Browser.
- - - - -
aeaebf79 by sanketh at 2025-03-05T12:11:27-07:00
TB 40209: Implement Basic Crypto Safety
Adds a CryptoSafety actor which detects when you've copied a crypto
address from a HTTP webpage and shows a warning.
Closes #40209.
Bug 40428: Fix string attribute names
- - - - -
a30ff98d by Mike Perry at 2025-03-05T12:11:27-07:00
TB3: Tor Browser's official .mozconfigs.
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
- - - - -
8c6c4bf6 by Henry Wilkes at 2025-03-05T12:11:28-07:00
TB 41340: Enable TOR_BROWSER_NIGHTLY_BUILD features for dev and nightly builds
tor-browser#41285: Enable fluent warnings.
- - - - -
3b28456c by Pier Angelo Vendrame at 2025-03-05T12:11:28-07:00
TB 40562: Added Tor Browser preferences to 000-tor-browser.js
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.
- - - - -
3093e37c by Pier Angelo Vendrame at 2025-03-05T12:11:28-07:00
TB 13252: Customize profile management on macOS
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.
- - - - -
4fcc1eb9 by Pier Angelo Vendrame at 2025-03-05T12:11:28-07:00
TB 40933: Add tor-launcher functionality
Bug 41926: Reimplement the control port
- - - - -
f670da22 by Henry Wilkes at 2025-03-05T12:11:29-07:00
fixup! TB 40933: Add tor-launcher functionality
TB 43328: Make getLog return the LogEntry data.
- - - - -
763a9f9a by Pier Angelo Vendrame at 2025-03-05T12:11:29-07:00
fixup! TB 40933: Add tor-launcher functionality
Update types to be compatible with future RR eslint settings.
- - - - -
47156c0b by Cecylia Bocovich at 2025-03-05T12:11:29-07:00
Lox integration
- - - - -
67f0edf5 by Richard Pospesel at 2025-03-05T12:11:30-07:00
TB 40597: Implement TorSettings module
- 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
- - - - -
1e6bdc4e by Henry Wilkes at 2025-03-05T12:11:30-07:00
fixup! TB 40597: Implement TorSettings module
TB 43502: Remove about:torconnect specific methods from TorConnect
module.
- - - - -
a5d0a09f by Henry Wilkes at 2025-03-05T12:11:30-07:00
fixup! TB 40597: Implement TorSettings module
TB 43529: Await BootstrapAttempt.cancel in AutoBootstrapAttempt.
We also add a comment for the reason why we need to await.
- - - - -
9ebdbc2c by Henry Wilkes at 2025-03-05T12:11:30-07:00
fixup! TB 40597: Implement TorSettings module
TB 43465: Replace TorConnect.canBeginBootstrap with
TorConnect.canBeginNormalBootstrap to distinguish it from
TorConnect.canBeginAutoBootstrap.
- - - - -
edb86aab by Arthur Edelstein at 2025-03-05T12:11:31-07:00
TB 3455: Add DomainIsolator, for isolating circuit by domain.
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
- - - - -
6d40c48b by Henry Wilkes at 2025-03-05T12:11:31-07:00
TB 41600: Add a tor circuit display panel.
- - - - -
d9bd39f6 by Pier Angelo Vendrame at 2025-03-05T12:11:31-07:00
TB 42247: Android helpers for the TorProvider
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.
- - - - -
9560335d by clairehurst at 2025-03-05T12:11:32-07:00
fixup! TB 42247: Android helpers for the TorProvider
tor-browser#43408
- - - - -
00ed5c23 by Dan Ballard at 2025-03-05T12:11:32-07:00
fixup! TB 42247: Android helpers for the TorProvider
Rename TorIntegrationAndroid.java to TorAndroidIntegration.java
- - - - -
407e4c61 by hackademix at 2025-03-05T12:11:33-07:00
TB 8324: Prevent DNS proxy bypasses caused by Drag&Drop
Bug 41613: Skip Drang & Drop filtering for DNS-safe URLs
- - - - -
7e385026 by Matthew Finkel at 2025-03-05T12:11:33-07:00
TB 25741: TBA: Disable GeckoNetworkManager
The browser should not need information related to the network
interface or network state, tor should take care of that.
- - - - -
40d3ccd3 by Pier Angelo Vendrame at 2025-03-05T12:11:33-07:00
TB 40807: Added QRCode.js to toolkit/modules
- - - - -
d183f9ac by Richard Pospesel at 2025-03-05T12:11:34-07:00
TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
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
- - - - -
a900ae7e by Henry Wilkes at 2025-03-05T12:11:34-07:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43502: Move about:torconnect methods to TorConnectParent.
- - - - -
e741a594 by Pier Angelo Vendrame at 2025-03-05T12:11:34-07:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
Update types to be compatible with future RR eslint settings.
- - - - -
7f2dd324 by Henry Wilkes at 2025-03-05T12:11:35-07:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43469: Change the quickstart checkbox to a toggle.
We also update the description text to use "connect automatically"
rather than "Quickstart".
- - - - -
db599119 by Henry Wilkes at 2025-03-05T12:11:35-07:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43328: Improve the Tor log dialog.
- - - - -
4d133ad8 by Richard Pospesel at 2025-03-05T12:11:36-07:00
TB 27476: Implement about:torconnect captive portal within Tor Browser
- 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.
- - - - -
bed8b006 by Henry Wilkes at 2025-03-05T12:11:36-07:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43502: Move about:torconnect methods to TorConnectParent.
- - - - -
82bfca5b by Henry Wilkes at 2025-03-05T12:11:37-07:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43465: Show the urlbar Connect button when the user might want to
return to about:torconnect.
Instead of hiding the button when canBeginNormalBootstrap is false we
show it as a plain button. Instead we hide it only when we are already
bootstrapped.
We also avoid initialising the button when TorConnect is not enabled.
We also update TorConnect.open:
1. Do not re-open about:torconnect if we are already connected. E.g.
when the user selects "Connect" in a bridge dialog but we are
already connected by the time the settings are applied.
2. Do not call TorConnect.startAgain when receiving a "hard" request.
Only the bridge dialogs make this request, and they would have
already triggered startAgain by changing the bridge settings.
- - - - -
4f1f7b10 by Pier Angelo Vendrame at 2025-03-05T12:11:37-07:00
Temporary changes to about:torconnect for Android.
We are planning of tempoorarily using about:torconnect on Android, until
the native UX is ready.
- - - - -
3c6ecb4a by Henry Wilkes at 2025-03-05T12:11:38-07:00
TB 7494: Create local home page for TBB.
Bug 41333: Update about:tor to new design. Including:
+ make the favicon match the branding icon.
+ make the location bar show a search icon.
- - - - -
62667955 by Pier Angelo Vendrame at 2025-03-05T12:11:38-07:00
TB 41668: Tweaks to the Base Browser updater for Tor Browser
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.
- - - - -
1870d4ff by Kathy Brade at 2025-03-05T12:11:38-07:00
TB 12647: Support symlinks in the updater.
- - - - -
1ed63b2d by Georg Koppen at 2025-03-05T12:11:38-07:00
TB 32658: Create a new MAR signing key
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
- - - - -
5d865a5b by Pier Angelo Vendrame at 2025-03-05T12:11:39-07:00
TB 42891: Set the bundled search engine for Tor Browser.
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.
- - - - -
5095e967 by Alex Catarineu at 2025-03-05T12:11:39-07:00
TB 40073: Disable remote Public Suffix List fetching
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.
- - - - -
ed2fb4bd by Henry Wilkes at 2025-03-05T12:11:39-07:00
TB 41906: Hide DNS over HTTPS preferences.
- - - - -
33e2bced by Richard Pospesel at 2025-03-05T12:11:40-07:00
TB 23247: Communicating security expectations for .onion
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.
- - - - -
8395afc8 by Kathy Brade at 2025-03-05T12:11:40-07:00
TB 30237: Add v3 onion services client authentication prompt
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.
- - - - -
ec0cd78f by Alex Catarineu at 2025-03-05T12:11:40-07:00
TB 21952: Implement Onion-Location
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.
- - - - -
bea3489b by Pier Angelo Vendrame at 2025-03-05T12:11:41-07:00
TB 40458: Implement .tor.onion aliases
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.
- - - - -
9b491370 by Pier Angelo Vendrame at 2025-03-05T12:11:41-07:00
TB 11698: Incorporate Tor Browser Manual pages into Tor Browser
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.
- - - - -
e65cb5e0 by Pier Angelo Vendrame at 2025-03-05T12:11:41-07:00
TB 41435: Add a Tor Browser migration function
For now this function only deletes old language packs for which we are
already packaging the strings with the application.
- - - - -
91a7f32f by Dan Ballard at 2025-03-05T12:11:42-07:00
TB 40701: Add security warning when downloading a file
Shown in the downloads panel, about:downloads and places.xhtml.
- - - - -
8d880bdb by Henry Wilkes at 2025-03-05T12:11:42-07:00
TB 41736: Customize toolbar for tor-browser.
- - - - -
f00933f6 by hackademix at 2025-03-05T12:11:42-07:00
TB 41728: Pin bridges.torproject.org domains to Let's Encrypt's root cert public key
- - - - -
e8bc8dff by Richard Pospesel at 2025-03-05T12:11:42-07:00
TB 41822: Unconditionally disable default browser UX in about:preferences
- - - - -
6e6819d0 by Cecylia Bocovich at 2025-03-05T12:11:43-07:00
Temporary commit: manually place generated wasm files
These files are built reproducibly using tor-browser-build: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/merge_re…
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.
- - - - -
6f2fff79 by Pier Angelo Vendrame at 2025-03-05T12:11:43-07:00
[android] TBA strings
- - - - -
447fb8bd by Dan Ballard at 2025-03-05T12:11:43-07:00
TB 42660: Disable ProxySelector.openConnectionWithProxy and NOPify CrashReporter.sendCrashReport
- - - - -
6fa22093 by Dan Ballard at 2025-03-05T12:11:44-07:00
TB 43006: Disable RFP for Font Visibility on Android
- - - - -
1cbe93d3 by Matthew Finkel at 2025-03-05T12:11:44-07:00
TB 40005: [android] Modify Default toolbar menu
Originally android-components#40005.
- - - - -
84d631ad by Alex Catarineu at 2025-03-05T12:11:44-07:00
TB 34378: [android] Port external helper app prompting
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.
- - - - -
a79ed41b by Alex Catarineu at 2025-03-05T12:11:44-07:00
TB 40002: [android] Ensure system download manager is not used
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
- - - - -
14f2a2f2 by Alex Catarineu at 2025-03-05T12:11:45-07:00
TB 40009: [android] Change the default search engines
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
- - - - -
b4498fd6 by hackademix at 2025-03-05T12:11:45-07:00
TB 42191: [android] Temporary StrictMode relaxation to clear the thumbnail cache.
- - - - -
38c2ce86 by hackademix at 2025-03-05T12:11:45-07:00
[android] Modify add-on support
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
- - - - -
6ae94400 by Alex Catarineu at 2025-03-05T12:11:46-07:00
[android] Modify Addon support
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.
- - - - -
88f54872 by Alex Catarineu at 2025-03-05T12:11:46-07:00
TB 40015: [android] Port padlock states for .onion services
Originally, android-components#40015.
- - - - -
d0152dbc by Matthew Finkel at 2025-03-05T12:11:46-07:00
[android] Modify Tracking Protection configuration
android-components#40020: Disable third-party cookies
android-components#40024: Disable tracking protection by default
- - - - -
0f8aa7c3 by Matthew Finkel at 2025-03-05T12:11:47-07:00
TB 40023: [android] Stop PrivateNotificationService
Originally, android-components#40023.
- - - - -
dc381f88 by Alex Catarineu at 2025-03-05T12:11:47-07:00
TB 34439 [android]: Isolate Icon loader on Android.
Originally, android-components#34439.
- - - - -
ca9cb4a6 by Matthew Finkel at 2025-03-05T12:11:48-07:00
[android] Disable features and functionality
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
- - - - -
873d12a5 by Matthew Finkel at 2025-03-05T12:11:48-07:00
TB 40032 [android]: Set usesCleartextTraffic as false
Originally, fenix#40032.
- - - - -
b490dc2b by Matthew Finkel at 2025-03-05T12:11:48-07:00
[android] Rename as Tor Browser
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
- - - - -
ee7ea5ab by Georg Koppen at 2025-03-05T12:11:49-07:00
[android] Modify build system
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.
- - - - -
e8ec841a by Dan Ballard at 2025-03-05T12:11:49-07:00
fixup! [android] Modify build system
Bug 42669: Inject gradle property for nimbus-fml path for application services
- - - - -
b3f90f55 by Dan Ballard at 2025-03-05T12:11:49-07:00
fixup! [android] Modify build system
Bug 43518: Fix TBB builds without topsrcdir defined
# Conflicts:
# mobile/android/fenix/app/build.gradle
- - - - -
dfd72734 by Matthew Finkel at 2025-03-05T12:11:50-07:00
TB 40185: [android] Use NimbusDisabled
Originally, fenix#40185.
- - - - -
70764ec7 by Alex Catarineu at 2025-03-05T12:11:50-07:00
TB 40087 [android]: Implement a switch for spoof English.
Originally, fenix#40087 and android-components#40019.
- - - - -
9ca75b01 by Matthew Finkel at 2025-03-05T12:11:50-07:00
TB 34403 [android]: Disable Normal mode by default.
Originally, fenix#34403.
- - - - -
830acc32 by Matthew Finkel at 2025-03-05T12:11:51-07:00
TB 40016 [android]: Don't install WebCompat webext.
Originally, fenix#40016.
- - - - -
3ca04eba by Matthew Finkel at 2025-03-05T12:11:51-07:00
[android] Modify UI/UX
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
- - - - -
2429e3df by Matthew Finkel at 2025-03-05T12:11:51-07:00
TB 40026 [android]: Implement Security Level settings on Android.
Originally, fenix#40026.
- - - - -
cc3c3802 by Dan Ballard at 2025-03-05T12:11:51-07:00
TB 41972: [android] Disable Mozilla onboarding
- - - - -
3b9720db by Dan Ballard at 2025-03-05T12:11:52-07:00
TB 41878: [android] Add standalone Tor Bootstrap
- - - - -
4bac293e by clairehurst at 2025-03-05T12:11:52-07:00
fixup! TB 41878: [android] Add standalone Tor Bootstrap
tor-browser#43408
- - - - -
ea7aa044 by Matthew Finkel at 2025-03-05T12:11:52-07:00
TB 40041 [android]: Implement Tor Network Settings
Originally, fenix#40041.
- - - - -
99bb524a by clairehurst at 2025-03-05T12:11:53-07:00
fixup! TB 40041 [android]: Implement Tor Network Settings
tor-browser#43408
- - - - -
bf6caca8 by clairehurst at 2025-03-05T12:11:53-07:00
[android] Implement Android-native Connection Assist UI
- - - - -
799038ad by clairehurst at 2025-03-05T12:11:53-07:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser#43408
- - - - -
55485e42 by Dan Ballard at 2025-03-05T12:11:54-07:00
fixup! [android] Implement Android-native Connection Assist UI
rename TorIntegrationAndroid.java to TorAndroidIntegration.java
- - - - -
cb67f92d by clairehurst at 2025-03-05T12:11:54-07:00
fixup! [android] Implement Android-native Connection Assist UI
This should have been included with the following.
Bug 43359: Improper handling of TorBootstrapChangeListener with respect to system onDestroy() calls for HomeActivity
- - - - -
1884f28a by clairehurst at 2025-03-05T12:11:54-07:00
TB 42655 [android]: Implement "New circuit for this site" on Android
- - - - -
16c7978d by clairehurst at 2025-03-05T12:11:55-07:00
TB 42089: [android] Remove ability to submit site support requests
- - - - -
190d1587 by clairehurst at 2025-03-05T12:11:55-07:00
[android] Delete unused media
- - - - -
720be58b by clairehurst at 2025-03-05T12:11:55-07:00
[android] Bug_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 tor-browser#43351 and bugzilla bug 1935387.
TODO: Remove once the forced all caps is removed by mozilla.
- - - - -
4c10efb9 by Beatriz Rizental at 2025-03-05T12:11:55-07:00
TB 43243: [android] Implement Android launch test
Also remove exit call from terminate function.
It causes all espresso tests to crash on exit and otherwise doesn't do anything.
- - - - -
2189d18d by Beatriz Rizental at 2025-03-05T12:11:56-07:00
TB 42669: [android] Use custom no-op app-services
Fetch the custom built no-op application services library
from tor-browser-build when building for Android.
- - - - -
36b7c08e by Dan Ballard at 2025-03-05T12:11:56-07:00
fixup! TB 42669: [android] Use custom no-op app-services
Bug 42669: get latest application services by date and put in tools
- - - - -
347af8eb by clairehurst at 2025-03-05T12:11:56-07:00
fixup! TB 42669: [android] Use custom no-op app-services
- - - - -
1947 changed files:
- .eslintignore
- .gitignore
- + .gitlab-ci.yml
- + .gitlab/ci/containers/base/Containerfile
- + .gitlab/ci/jobs/lint/helpers.py
- + .gitlab/ci/jobs/lint/lint.yml
- + .gitlab/ci/jobs/startup-test/startup-test-android.py
- + .gitlab/ci/jobs/startup-test/startup-test.py
- + .gitlab/ci/jobs/startup-test/startup-test.yml
- + .gitlab/ci/jobs/update-containers.yml
- + .gitlab/ci/jobs/update-translations.yml
- + .gitlab/ci/mixins.yml
- + .gitlab/issue_templates/Backport Android Security Fixes.md
- + .gitlab/issue_templates/Backport.md
- + .gitlab/issue_templates/Bugzilla Triage.md
- + .gitlab/issue_templates/Emergency Security Issue.md
- + .gitlab/issue_templates/QA - Android.md
- + .gitlab/issue_templates/QA - Desktop.md
- + .gitlab/issue_templates/Rebase Browser - Alpha.md
- + .gitlab/issue_templates/Rebase Browser - Legacy.md
- + .gitlab/issue_templates/Rebase Browser - Rapid.md
- + .gitlab/issue_templates/Rebase Browser - Stable.md
- + .gitlab/issue_templates/Uplift.md
- + .gitlab/issue_templates/bug.md
- + .gitlab/merge_request_templates/Rebase.md
- + .gitlab/merge_request_templates/default.md
- .prettierignore
- + README.md
- − README.txt
- + browser/actors/CryptoSafetyChild.sys.mjs
- + browser/actors/CryptoSafetyParent.sys.mjs
- − browser/actors/RFPHelperChild.sys.mjs
- − browser/actors/RFPHelperParent.sys.mjs
- browser/actors/moz.build
- browser/app/Makefile.in
- browser/app/macbuild/Contents/Info.plist.in
- browser/app/macbuild/Contents/MacOS-files.in
- browser/app/moz.build
- browser/app/permissions
- + browser/app/profile/000-tor-browser.js
- + browser/app/profile/001-base-profile.js
- browser/app/profile/firefox.js
- browser/base/content/aboutDialog-appUpdater.js
- browser/base/content/aboutDialog.js
- browser/base/content/aboutDialog.xhtml
- + browser/base/content/aboutDialogTor.css
- browser/base/content/appmenu-viewcache.inc.xhtml
- browser/base/content/browser-addons.js
- browser/base/content/browser-context.inc
- browser/base/content/browser-init.js
- browser/base/content/browser-menubar.inc
- browser/base/content/browser-places.js
- browser/base/content/browser-safebrowsing.js
- browser/base/content/browser-sets.inc
- browser/base/content/browser-siteIdentity.js
- browser/base/content/browser.css
- browser/base/content/browser.js
- browser/base/content/browser.js.globals
- browser/base/content/browser.xhtml
- browser/base/content/default-bookmarks.html
- + browser/base/content/languageNotification.js
- browser/base/content/main-popupset.inc.xhtml
- browser/base/content/navigator-toolbox.inc.xhtml
- browser/base/content/pageinfo/pageInfo.xhtml
- browser/base/content/pageinfo/security.js
- browser/base/content/popup-notifications.inc
- browser/base/content/test/general/browser_private_browsing_window.js
- browser/base/content/utilityOverlay.js
- browser/base/jar.mn
- browser/base/moz.build
- browser/branding/branding-common.mozbuild
- + browser/branding/tb-alpha/VisualElements_150.png
- + browser/branding/tb-alpha/VisualElements_70.png
- + browser/branding/tb-alpha/configure.sh
- + browser/branding/tb-alpha/content/about-logo.png
- + browser/branding/tb-alpha/content/about-logo.svg
- + browser/branding/tb-alpha/content/about-logo(a)2x.png
- + browser/branding/tb-alpha/content/about-wordmark.svg
- + browser/branding/tb-alpha/content/about.png
- + browser/branding/tb-alpha/content/aboutDialog.css
- + browser/branding/tb-alpha/content/firefox-wordmark.svg
- + browser/branding/tb-alpha/content/jar.mn
- + browser/branding/tb-alpha/content/moz.build
- + browser/branding/tb-alpha/default128.png
- + browser/branding/tb-alpha/default16.png
- + browser/branding/tb-alpha/default22.png
- + browser/branding/tb-alpha/default24.png
- + browser/branding/tb-alpha/default256.png
- + browser/branding/tb-alpha/default32.png
- + browser/branding/tb-alpha/default48.png
- + browser/branding/tb-alpha/default64.png
- + browser/branding/tb-alpha/document.icns
- + browser/branding/tb-alpha/document.ico
- + browser/branding/tb-alpha/document_pdf.ico
- + browser/branding/tb-alpha/firefox.VisualElementsManifest.xml
- + browser/branding/tb-alpha/firefox.icns
- + browser/branding/tb-alpha/firefox.ico
- + browser/branding/tb-alpha/locales/en-US/brand.ftl
- + browser/branding/tb-alpha/locales/en-US/brand.properties
- + browser/branding/tb-alpha/locales/jar.mn
- + browser/branding/tb-alpha/locales/moz.build
- + browser/branding/tb-alpha/moz.build
- + browser/branding/tb-alpha/newtab.ico
- + browser/branding/tb-alpha/newwindow.ico
- + browser/branding/tb-alpha/pbmode.ico
- + browser/branding/tb-alpha/pref/firefox-branding.js
- + browser/branding/tb-nightly/VisualElements_150.png
- + browser/branding/tb-nightly/VisualElements_70.png
- + browser/branding/tb-nightly/configure.sh
- + browser/branding/tb-nightly/content/about-logo.png
- + browser/branding/tb-nightly/content/about-logo.svg
- + browser/branding/tb-nightly/content/about-logo(a)2x.png
- + browser/branding/tb-nightly/content/about-wordmark.svg
- + browser/branding/tb-nightly/content/about.png
- + browser/branding/tb-nightly/content/aboutDialog.css
- + browser/branding/tb-nightly/content/firefox-wordmark.svg
- + browser/branding/tb-nightly/content/jar.mn
- + browser/branding/tb-nightly/content/moz.build
- + browser/branding/tb-nightly/default128.png
- + browser/branding/tb-nightly/default16.png
- + browser/branding/tb-nightly/default22.png
- + browser/branding/tb-nightly/default24.png
- + browser/branding/tb-nightly/default256.png
- + browser/branding/tb-nightly/default32.png
- + browser/branding/tb-nightly/default48.png
- + browser/branding/tb-nightly/default64.png
- + browser/branding/tb-nightly/document.icns
- + browser/branding/tb-nightly/document.ico
- + browser/branding/tb-nightly/document_pdf.ico
- + browser/branding/tb-nightly/firefox.VisualElementsManifest.xml
- + browser/branding/tb-nightly/firefox.icns
- + browser/branding/tb-nightly/firefox.ico
- + browser/branding/tb-nightly/locales/en-US/brand.ftl
- + browser/branding/tb-nightly/locales/en-US/brand.properties
- + browser/branding/tb-nightly/locales/jar.mn
- + browser/branding/tb-nightly/locales/moz.build
- + browser/branding/tb-nightly/moz.build
- + browser/branding/tb-nightly/newtab.ico
- + browser/branding/tb-nightly/newwindow.ico
- + browser/branding/tb-nightly/pbmode.ico
- + browser/branding/tb-nightly/pref/firefox-branding.js
- + browser/branding/tb-release/VisualElements_150.png
- + browser/branding/tb-release/VisualElements_70.png
- + browser/branding/tb-release/configure.sh
- + browser/branding/tb-release/content/about-logo.png
- + browser/branding/tb-release/content/about-logo.svg
- + browser/branding/tb-release/content/about-logo(a)2x.png
- + browser/branding/tb-release/content/about-wordmark.svg
- + browser/branding/tb-release/content/about.png
- + browser/branding/tb-release/content/aboutDialog.css
- + browser/branding/tb-release/content/firefox-wordmark.svg
- + browser/branding/tb-release/content/jar.mn
- + browser/branding/tb-release/content/moz.build
- + browser/branding/tb-release/default128.png
- + browser/branding/tb-release/default16.png
- + browser/branding/tb-release/default22.png
- + browser/branding/tb-release/default24.png
- + browser/branding/tb-release/default256.png
- + browser/branding/tb-release/default32.png
- + browser/branding/tb-release/default48.png
- + browser/branding/tb-release/default64.png
- + browser/branding/tb-release/document.icns
- + browser/branding/tb-release/document.ico
- + browser/branding/tb-release/document_pdf.ico
- + browser/branding/tb-release/firefox.VisualElementsManifest.xml
- + browser/branding/tb-release/firefox.icns
- + browser/branding/tb-release/firefox.ico
- + browser/branding/tb-release/locales/en-US/brand.ftl
- + browser/branding/tb-release/locales/en-US/brand.properties
- + browser/branding/tb-release/locales/jar.mn
- + browser/branding/tb-release/locales/moz.build
- + browser/branding/tb-release/moz.build
- + browser/branding/tb-release/newtab.ico
- + browser/branding/tb-release/newwindow.ico
- + browser/branding/tb-release/pbmode.ico
- + browser/branding/tb-release/pref/firefox-branding.js
- browser/components/BrowserContentHandler.sys.mjs
- browser/components/BrowserGlue.sys.mjs
- browser/components/about/AboutRedirector.cpp
- browser/components/about/components.conf
- browser/components/aboutlogins/AboutLoginsParent.sys.mjs
- browser/components/aboutlogins/content/aboutLogins.css
- browser/components/aboutlogins/content/aboutLogins.mjs
- browser/components/aboutlogins/content/components/fxaccounts-button.css
- + browser/components/abouttor/AboutTorChild.sys.mjs
- + browser/components/abouttor/AboutTorMessage.sys.mjs
- + browser/components/abouttor/AboutTorParent.sys.mjs
- + browser/components/abouttor/HomepageOverride.sys.mjs
- + browser/components/abouttor/content/1f4e3-megaphone.svg
- + browser/components/abouttor/content/26a1-high-voltage.svg
- + browser/components/abouttor/content/2728-sparkles.svg
- + browser/components/abouttor/content/2764-red-heart.svg
- + browser/components/abouttor/content/aboutTor.css
- + browser/components/abouttor/content/aboutTor.html
- + browser/components/abouttor/content/aboutTor.js
- + browser/components/abouttor/content/dax-logo.svg
- + browser/components/abouttor/jar.mn
- + browser/components/abouttor/moz.build
- browser/components/customizableui/CustomizableUI.sys.mjs
- browser/components/customizableui/content/panelUI.inc.xhtml
- browser/components/downloads/DownloadSpamProtection.sys.mjs
- + browser/components/downloads/DownloadsTorWarning.sys.mjs
- browser/components/downloads/content/contentAreaDownloadsView.js
- browser/components/downloads/content/contentAreaDownloadsView.xhtml
- browser/components/downloads/content/downloads.css
- browser/components/downloads/content/downloads.js
- browser/components/downloads/content/downloadsPanel.inc.xhtml
- browser/components/downloads/moz.build
- browser/components/extensions/parent/ext-browserAction.js
- browser/components/extensions/schemas/chrome_settings_overrides.json
- browser/components/migration/ChromeMigrationUtils.sys.mjs
- browser/components/migration/content/migration-wizard.mjs
- browser/components/moz.build
- + browser/components/newidentity/content/newIdentityDialog.css
- + browser/components/newidentity/content/newIdentityDialog.js
- + browser/components/newidentity/content/newIdentityDialog.xhtml
- + browser/components/newidentity/content/newidentity.js
- + browser/components/newidentity/jar.mn
- + browser/components/newidentity/moz.build
- browser/components/newtab/AboutNewTabService.sys.mjs
- + browser/components/onionservices/OnionAliasStore.sys.mjs
- + browser/components/onionservices/OnionLocationChild.sys.mjs
- + browser/components/onionservices/OnionLocationParent.sys.mjs
- + browser/components/onionservices/TorRequestWatch.sys.mjs
- + browser/components/onionservices/content/authNotificationIcon.inc.xhtml
- + browser/components/onionservices/content/authPopup.inc.xhtml
- + browser/components/onionservices/content/authPreferences.css
- + browser/components/onionservices/content/authPreferences.inc.xhtml
- + browser/components/onionservices/content/authPreferences.js
- + browser/components/onionservices/content/authPrompt.js
- + browser/components/onionservices/content/onionlocation-urlbar.inc.xhtml
- + browser/components/onionservices/content/onionlocation.css
- + browser/components/onionservices/content/onionservices.css
- + browser/components/onionservices/content/savedKeysDialog.js
- + browser/components/onionservices/content/savedKeysDialog.xhtml
- + browser/components/onionservices/jar.mn
- + browser/components/onionservices/moz.build
- browser/components/places/PlacesUIUtils.sys.mjs
- browser/components/places/content/controller.js
- browser/components/places/content/places.css
- browser/components/places/content/places.js
- browser/components/places/content/places.xhtml
- browser/components/places/content/placesContextMenu.inc.xhtml
- browser/components/places/tests/browser/browser_bookmark_context_menu_contents.js
- browser/components/places/tests/browser/head.js
- browser/components/preferences/home.inc.xhtml
- browser/components/preferences/home.js
- browser/components/preferences/jar.mn
- + browser/components/preferences/letterboxing-middle-dark.svg
- + browser/components/preferences/letterboxing-middle-light.svg
- + browser/components/preferences/letterboxing-top-dark.svg
- + browser/components/preferences/letterboxing-top-light.svg
- + browser/components/preferences/letterboxing.css
- + browser/components/preferences/letterboxing.inc.xhtml
- + browser/components/preferences/letterboxing.js
- browser/components/preferences/main.inc.xhtml
- browser/components/preferences/main.js
- browser/components/preferences/preferences.js
- browser/components/preferences/preferences.xhtml
- browser/components/preferences/privacy.inc.xhtml
- browser/components/preferences/privacy.js
- browser/components/resistfingerprinting/test/browser/browser_dynamical_window_rounding.js
- browser/components/resistfingerprinting/test/browser/browser_navigator.js
- browser/components/resistfingerprinting/test/browser/browser_navigator_iframes.js
- browser/components/resistfingerprinting/test/browser/browser_roundedWindow_open_max_inner.js
- browser/components/resistfingerprinting/test/browser/head.js
- + browser/components/rulesets/RulesetsChild.sys.mjs
- + browser/components/rulesets/RulesetsParent.sys.mjs
- + browser/components/rulesets/content/aboutRulesets.css
- + browser/components/rulesets/content/aboutRulesets.html
- + browser/components/rulesets/content/aboutRulesets.js
- + browser/components/rulesets/content/securedrop.svg
- + browser/components/rulesets/jar.mn
- + browser/components/rulesets/moz.build
- browser/components/search/SearchSERPTelemetry.sys.mjs
- + browser/components/search/extensions/ddg-onion/favicon.ico
- + browser/components/search/extensions/ddg-onion/manifest.json
- browser/components/search/extensions/ddg/manifest.json
- + browser/components/search/extensions/startpage-onion/favicon.png
- + browser/components/search/extensions/startpage-onion/manifest.json
- + browser/components/search/extensions/startpage/favicon.png
- + browser/components/search/extensions/startpage/manifest.json
- + browser/components/securitylevel/content/securityLevel.js
- + browser/components/securitylevel/content/securityLevelButton.css
- + browser/components/securitylevel/content/securityLevelButton.inc.xhtml
- + browser/components/securitylevel/content/securityLevelIcon.svg
- + browser/components/securitylevel/content/securityLevelPanel.css
- + browser/components/securitylevel/content/securityLevelPanel.inc.xhtml
- + browser/components/securitylevel/content/securityLevelPreferences.css
- + browser/components/securitylevel/content/securityLevelPreferences.inc.xhtml
- + browser/components/securitylevel/jar.mn
- + browser/components/securitylevel/moz.build
- browser/components/shopping/jar.mn
- browser/components/shopping/moz.build
- browser/components/tabbrowser/content/tabbrowser.js
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f4-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f6-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fc-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fc-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fd-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fe-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fe-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/README.txt
- + browser/components/torcircuit/content/tor-circuit-icon-mask.svg
- + browser/components/torcircuit/content/tor-circuit-node-end.svg
- + browser/components/torcircuit/content/tor-circuit-node-middle.svg
- + browser/components/torcircuit/content/tor-circuit-node-relays.svg
- + browser/components/torcircuit/content/tor-circuit-node-start.svg
- + browser/components/torcircuit/content/tor-circuit-redirect.svg
- + browser/components/torcircuit/content/torCircuitPanel.css
- + browser/components/torcircuit/content/torCircuitPanel.inc.xhtml
- + browser/components/torcircuit/content/torCircuitPanel.js
- + browser/components/torcircuit/jar.mn
- + browser/components/torcircuit/moz.build
- + browser/components/torpreferences/content/bridge-bot.svg
- + browser/components/torpreferences/content/bridge-qr.svg
- + browser/components/torpreferences/content/bridge.svg
- + browser/components/torpreferences/content/bridgeQrDialog.js
- + browser/components/torpreferences/content/bridgeQrDialog.xhtml
- + browser/components/torpreferences/content/bridgemoji/BridgeEmoji.js
- + browser/components/torpreferences/content/bridgemoji/annotations.json
- + browser/components/torpreferences/content/bridgemoji/bridge-emojis.json
- + browser/components/torpreferences/content/bridgemoji/svgs/1f300.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f308.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f30a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f30b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f319.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f31f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f321.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f32d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f32e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f332.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f333.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f334.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f335.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f336.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f337.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f339.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f341.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f344.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f345.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f346.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f347.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f348.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f349.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f350.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f351.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f352.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f353.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f354.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f355.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f368.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f369.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f37f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f380.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f381.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f382.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f383.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f388.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f389.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f38f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f392.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f399.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f39f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ac.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3af.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ba.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3bb.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3be.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3dd.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3e1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ee.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f417.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f418.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f419.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f420.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f422.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f425.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f426.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f428.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f430.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f431.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f432.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f433.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f434.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f435.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f436.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f437.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f441.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f451.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f455.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f457.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f45f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f47d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f484.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f488.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f48d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f48e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f490.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4a1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4a7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4b3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4bf.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4cc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4ce.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4d5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4e1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4e2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4fb.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f50b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f511.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f525.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f526.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f54a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f58c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f58d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f5ff.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f680.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f681.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f686.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f68b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f68d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f695.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f697.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f69a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f69c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6fa.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6fc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f916.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f93f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f941.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f94c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f94f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f950.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f951.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f955.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f956.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f965.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f966.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f968.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f980.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f981.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f984.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f986.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f987.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f988.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f989.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f992.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f993.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f994.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f995.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f998.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f999.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ad.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9d9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9da.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9dc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ea.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ec.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ed.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ee.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa73.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa80.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa81.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa83.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa90.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa91.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa95.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa97.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fab6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/23f0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2600.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2602.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2604.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/260e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2693.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2696.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26bd.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26f2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2708.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/270f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2728.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2744.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/README.txt
- + browser/components/torpreferences/content/builtinBridgeDialog.js
- + browser/components/torpreferences/content/builtinBridgeDialog.xhtml
- + browser/components/torpreferences/content/connectionCategory.inc.xhtml
- + browser/components/torpreferences/content/connectionPane.js
- + browser/components/torpreferences/content/connectionPane.xhtml
- + browser/components/torpreferences/content/connectionSettingsDialog.js
- + browser/components/torpreferences/content/connectionSettingsDialog.xhtml
- + browser/components/torpreferences/content/lox-bridge-icon.svg
- + browser/components/torpreferences/content/lox-bridge-pass.svg
- + browser/components/torpreferences/content/lox-complete-ring.svg
- + browser/components/torpreferences/content/lox-invite-icon.svg
- + browser/components/torpreferences/content/lox-progress-ring.svg
- + browser/components/torpreferences/content/lox-success.svg
- + browser/components/torpreferences/content/loxInviteDialog.js
- + browser/components/torpreferences/content/loxInviteDialog.xhtml
- + browser/components/torpreferences/content/mail.svg
- + browser/components/torpreferences/content/network-broken.svg
- + browser/components/torpreferences/content/network.svg
- + browser/components/torpreferences/content/provideBridgeDialog.js
- + browser/components/torpreferences/content/provideBridgeDialog.xhtml
- + browser/components/torpreferences/content/requestBridgeDialog.js
- + browser/components/torpreferences/content/requestBridgeDialog.xhtml
- + browser/components/torpreferences/content/telegram-logo.svg
- + browser/components/torpreferences/content/torLogDialog.js
- + browser/components/torpreferences/content/torLogDialog.xhtml
- + browser/components/torpreferences/content/torPreferences.css
- + browser/components/torpreferences/jar.mn
- + browser/components/torpreferences/moz.build
- browser/components/urlbar/UrlbarInput.sys.mjs
- browser/components/urlbar/UrlbarProvidersManager.sys.mjs
- browser/components/urlbar/UrlbarUtils.sys.mjs
- browser/components/urlbar/moz.build
- + browser/config/mozconfigs/base-browser
- + browser/config/mozconfigs/base-browser-android
- + browser/config/mozconfigs/tor-browser
- + browser/config/mozconfigs/tor-browser-android
- browser/confvars.sh
- browser/extensions/moz.build
- + browser/fonts/fonts.conf
- browser/fonts/moz.build
- browser/installer/Makefile.in
- browser/installer/package-manifest.in
- browser/installer/windows/nsis/shared.nsh
- browser/locales/Makefile.in
- − browser/locales/en-US/chrome/overrides/appstrings.properties
- browser/locales/jar.mn
- browser/modules/BrowserWindowTracker.sys.mjs
- browser/modules/HomePage.sys.mjs
- browser/modules/LaterRun.sys.mjs
- + browser/modules/TorUIUtils.sys.mjs
- browser/modules/URILoadingHelper.sys.mjs
- browser/modules/moz.build
- browser/moz.build
- browser/moz.configure
- browser/themes/shared/addons/unified-extensions.css
- browser/themes/shared/browser-shared.css
- browser/themes/shared/controlcenter/panel.css
- browser/themes/shared/downloads/contentAreaDownloadsView.css
- + browser/themes/shared/icons/new_circuit.svg
- + browser/themes/shared/icons/new_identity.svg
- browser/themes/shared/identity-block/identity-block.css
- browser/themes/shared/jar.inc.mn
- browser/themes/shared/notification-icons.css
- browser/themes/shared/preferences/preferences.css
- browser/themes/shared/tabbrowser/tabs.css
- browser/themes/shared/toolbarbutton-icons.css
- + browser/themes/shared/tor-branding.css
- + browser/themes/shared/tor-urlbar-button.css
- build.gradle
- build/application.ini.in
- build/moz.build
- build/moz.configure/init.configure
- build/moz.configure/rust.configure
- build/moz.configure/update-programs.configure
- build/variables.py
- caps/nsScriptSecurityManager.cpp
- config/createprecomplete.py
- devtools/client/aboutdebugging/src/actions/runtimes.js
- devtools/client/netmonitor/src/components/SecurityState.js
- devtools/client/themes/images/aboutdebugging-firefox-logo.svg
- docshell/base/BrowsingContext.cpp
- docshell/base/BrowsingContext.h
- docshell/base/URIFixup.sys.mjs
- docshell/base/nsAboutRedirector.cpp
- docshell/base/nsDocShell.cpp
- docshell/build/components.conf
- dom/base/ContentAreaDropListener.sys.mjs
- dom/base/Document.cpp
- dom/base/Document.h
- dom/base/Navigator.cpp
- dom/base/ScreenOrientation.cpp
- dom/base/nsContentUtils.cpp
- dom/base/nsContentUtils.h
- dom/base/nsCopySupport.cpp
- dom/base/nsGlobalWindowInner.cpp
- dom/base/nsGlobalWindowOuter.cpp
- dom/base/nsNodeInfoManager.cpp
- dom/base/test/chrome/bug418986-1.js
- dom/canvas/CanvasRenderingContext2D.cpp
- dom/canvas/ClientWebGLContext.cpp
- dom/ipc/BrowserParent.cpp
- dom/ipc/BrowserParent.h
- dom/ipc/PBrowser.ipdl
- dom/ipc/WindowGlobalActor.cpp
- dom/ipc/WindowGlobalChild.cpp
- dom/ipc/WindowGlobalParent.cpp
- dom/locales/moz.build
- dom/media/eme/MediaKeySystemAccess.cpp
- dom/media/mediacapabilities/MediaCapabilities.cpp
- dom/media/mediasource/MediaSource.cpp
- dom/media/mediasource/MediaSource.h
- dom/media/mediasource/SourceBuffer.cpp
- dom/media/systemservices/video_engine/desktop_device_info.cc
- dom/media/webrtc/libwebrtcglue/VideoConduit.cpp
- dom/media/webrtc/sdp/RsdparsaSdpAttributeList.cpp
- dom/media/webrtc/transport/nrinterfaceprioritizer.cpp
- dom/media/webrtc/transport/sigslot.h
- dom/media/webrtc/transport/test/ice_unittest.cpp
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.c
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.h
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-win32.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs.c
- dom/media/webrtc/transport/third_party/nrappkit/src/log/r_log.c
- dom/media/webrtc/transport/third_party/nrappkit/src/registry/registry.c
- dom/security/nsContentSecurityUtils.cpp
- dom/security/nsMixedContentBlocker.cpp
- dom/security/test/https-only/browser.toml
- + dom/security/test/https-only/browser_iframe_buttons.js
- + dom/security/test/https-only/file_iframe_buttons.html
- dom/webidl/Document.webidl
- dom/websocket/WebSocket.cpp
- dom/xslt/xslt/txMozillaXSLTProcessor.cpp
- dom/xslt/xslt/txXSLTMsgsURL.h
- extensions/auth/nsHttpNegotiateAuth.cpp
- gfx/layers/apz/src/APZInputBridge.cpp
- gfx/layers/apz/src/APZPublicUtils.cpp
- gfx/layers/apz/src/GenericScrollAnimation.cpp
- gfx/layers/apz/src/WheelScrollAnimation.cpp
- gfx/thebes/StandardFonts-linux.inc → gfx/thebes/StandardFonts-linux-upstream.inc
- + gfx/thebes/StandardFonts-macos-bb.inc
- gfx/thebes/StandardFonts-macos.inc → gfx/thebes/StandardFonts-macos-upstream.inc
- + gfx/thebes/StandardFonts-win10-bb.inc
- gfx/thebes/StandardFonts-win10.inc → gfx/thebes/StandardFonts-win10-upstream.inc
- gfx/thebes/gfxDWriteFontList.cpp
- gfx/thebes/gfxDWriteFontList.h
- gfx/thebes/gfxFcPlatformFontList.cpp
- gfx/thebes/gfxGDIFontList.cpp
- gfx/thebes/gfxMacPlatformFontList.mm
- gfx/thebes/gfxPlatformFontList.cpp
- hal/android/AndroidHal.cpp
- image/test/browser/browser.toml
- + image/test/browser/browser_bug1899180.js
- + image/test/browser/helper1899180.html
- intl/l10n/Localization.h
- intl/locale/LocaleService.cpp
- intl/strres/nsIStringBundle.idl
- intl/strres/nsStringBundle.cpp
- js/src/gc/Zone.cpp
- + js/src/jit-test/tests/debug/bug-1904011.js
- js/src/old-configure.in
- js/xpconnect/src/xpc.msg
- layout/base/nsLayoutUtils.cpp
- layout/xul/nsSliderFrame.cpp
- mobile/android/android-components/components/browser/engine-gecko/build.gradle
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngine.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/cookiebanners/GeckoCookieBannersStorage.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/cookiebanners/ReportSiteDomainsRepository.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/fetch/GeckoViewFetchClient.kt
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/webextension/GeckoWebExtension.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/cookiebanners/GeckoCookieBannersStorageTest.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/cookiebanners/ReportSiteDomainsRepositoryTest.kt
- mobile/android/android-components/components/browser/icons/src/main/java/mozilla/components/browser/icons/loader/HttpIconLoader.kt
- mobile/android/android-components/components/browser/menu/src/main/java/mozilla/components/browser/menu/WebExtensionBrowserMenuBuilder.kt
- mobile/android/android-components/components/browser/storage-sync/src/main/java/mozilla/components/browser/storage/sync/Types.kt
- mobile/android/android-components/components/browser/thumbnails/src/main/java/mozilla/components/browser/thumbnails/utils/ThumbnailDiskCache.kt
- mobile/android/android-components/components/browser/toolbar/src/main/java/mozilla/components/browser/toolbar/display/DisplayToolbar.kt
- mobile/android/android-components/components/browser/toolbar/src/main/java/mozilla/components/browser/toolbar/display/SiteSecurityIconView.kt
- mobile/android/android-components/components/browser/toolbar/src/main/res/drawable/mozac_ic_site_security.xml
- mobile/android/android-components/components/browser/toolbar/src/main/res/values/attrs_browser_toolbar.xml
- mobile/android/android-components/components/browser/toolbar2/src/main/java/mozilla/components/browser/toolbar2/display/DisplayToolbar.kt
- mobile/android/android-components/components/browser/toolbar2/src/main/java/mozilla/components/browser/toolbar2/display/SiteSecurityIconView.kt
- mobile/android/android-components/components/browser/toolbar2/src/main/res/drawable/mozac_ic_site_security.xml
- mobile/android/android-components/components/browser/toolbar2/src/main/res/values/attrs_browser_toolbar.xml
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/EngineSession.kt
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/Settings.kt
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/cookiehandling/CookieBannersStorage.kt
- mobile/android/android-components/components/concept/engine/src/main/java/mozilla/components/concept/engine/webextension/WebExtension.kt
- mobile/android/android-components/components/concept/engine/src/test/java/mozilla/components/concept/engine/SettingsTest.kt
- mobile/android/android-components/components/concept/fetch/src/main/java/mozilla/components/concept/fetch/Request.kt
- mobile/android/android-components/components/concept/toolbar/src/main/java/mozilla/components/concept/toolbar/Toolbar.kt
- mobile/android/android-components/components/feature/accounts/build.gradle
- mobile/android/android-components/components/feature/addons/src/main/java/mozilla/components/feature/addons/AddonManager.kt
- mobile/android/android-components/components/feature/addons/src/main/java/mozilla/components/feature/addons/amo/AMOAddonsProvider.kt
- mobile/android/android-components/components/feature/addons/src/main/res/layout/mozac_feature_addons_fragment_dialog_addon_installed.xml
- mobile/android/android-components/components/feature/app-links/build.gradle
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksFeature.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/SimpleRedirectDialogFragment.kt
- mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/SimpleRedirectDialogFragmentTest.kt
- mobile/android/android-components/components/feature/awesomebar/src/main/java/mozilla/components/feature/awesomebar/provider/SessionAutocompleteProvider.kt
- mobile/android/android-components/components/feature/awesomebar/src/main/java/mozilla/components/feature/awesomebar/provider/SessionSuggestionProvider.kt
- mobile/android/android-components/components/feature/contextmenu/src/main/java/mozilla/components/feature/contextmenu/ContextMenuCandidate.kt
- mobile/android/android-components/components/feature/downloads/src/main/java/mozilla/components/feature/downloads/AbstractFetchDownloadService.kt
- mobile/android/android-components/components/feature/downloads/src/main/java/mozilla/components/feature/downloads/DownloadsFeature.kt
- mobile/android/android-components/components/feature/downloads/src/test/java/mozilla/components/feature/downloads/DownloadsFeatureTest.kt
- mobile/android/android-components/components/feature/fxsuggest/build.gradle
- mobile/android/android-components/components/feature/privatemode/src/main/java/mozilla/components/feature/privatemode/notification/PrivateNotificationFeature.kt
- mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
- + mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/dialog/FullScreenNotification.kt
- − mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/dialog/FullScreenNotificationDialog.kt
- + mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/dialog/GestureNavUtils.kt
- + mobile/android/android-components/components/feature/prompts/src/test/java/mozilla/components/feature/prompts/dialog/FullScreenNotificationTest.kt
- mobile/android/android-components/components/feature/search/build.gradle
- mobile/android/android-components/components/feature/search/src/main/assets/search/list.json
- + mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/ddg-onion.xml
- mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/ddg.xml
- + mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/startpage-onion.xml
- + mobile/android/android-components/components/feature/search/src/main/assets/searchplugins/startpage.xml
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/SearchUseCases.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/ext/SearchEngine.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/internal/SearchUrlBuilder.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/storage/SearchEngineReader.kt
- mobile/android/android-components/components/feature/search/src/main/java/mozilla/components/feature/search/telemetry/SerpTelemetryRepository.kt
- mobile/android/android-components/components/feature/search/src/test/java/mozilla/components/feature/search/telemetry/BaseSearchTelemetryTest.kt
- mobile/android/android-components/components/feature/search/src/test/java/mozilla/components/feature/search/telemetry/SerpTelemetryRepositoryTest.kt
- mobile/android/android-components/components/feature/session/src/main/java/mozilla/components/feature/session/SessionUseCases.kt
- mobile/android/android-components/components/feature/session/src/test/java/mozilla/components/feature/session/SessionUseCasesTest.kt
- mobile/android/android-components/components/feature/toolbar/src/main/java/mozilla/components/feature/toolbar/ToolbarPresenter.kt
- mobile/android/android-components/components/service/firefox-accounts/src/main/java/mozilla/components/service/fxa/Types.kt
- mobile/android/android-components/components/service/firefox-accounts/src/main/java/mozilla/components/service/fxa/sync/WorkManagerSyncManager.kt
- mobile/android/android-components/components/service/glean/src/main/java/mozilla/components/service/glean/private/MetricAliases.kt
- mobile/android/android-components/components/service/nimbus/build.gradle
- mobile/android/android-components/components/service/nimbus/src/main/java/mozilla/components/service/nimbus/messaging/NimbusMessagingController.kt
- mobile/android/android-components/components/service/nimbus/src/main/java/mozilla/components/service/nimbus/messaging/NimbusMessagingStorage.kt
- mobile/android/android-components/components/support/ktx/src/main/java/mozilla/components/support/ktx/android/content/Context.kt
- mobile/android/android-components/components/support/ktx/src/main/java/mozilla/components/support/ktx/kotlin/String.kt
- mobile/android/android-components/components/support/ktx/src/test/java/mozilla/components/support/ktx/kotlin/StringTest.kt
- mobile/android/android-components/components/support/remotesettings/src/main/java/mozilla/components/support/remotesettings/RemoteSettingsClient.kt
- mobile/android/android-components/components/support/rustlog/src/main/java/mozilla/components/support/rustlog/RustLog.kt
- + mobile/android/android-components/components/support/utils/src/main/java/mozilla/components/support/utils/TorUtils.kt
- mobile/android/android-components/components/support/webextensions/src/main/java/mozilla/components/support/webextensions/WebExtensionSupport.kt
- + mobile/android/android-components/components/ui/icons/src/main/res/drawable/mozac_ic_onion.xml
- mobile/android/android-components/docs/changelog.md
- mobile/android/android-components/plugins/config/src/main/java/ConfigPlugin.kt
- mobile/android/android-components/plugins/dependencies/src/main/java/ApplicationServices.kt
- mobile/android/android-components/samples/browser/src/main/res/layout/activity_installed_add_on_details.xml
- + mobile/android/app/000-tor-browser-android.js
- mobile/android/app/geckoview-prefs.js
- mobile/android/app/moz.build
- + mobile/android/basebrowser.configure
- mobile/android/branding/beta/locales/jar.mn
- mobile/android/branding/nightly/locales/jar.mn
- mobile/android/branding/official/locales/jar.mn
- mobile/android/branding/unofficial/locales/jar.mn
- mobile/android/confvars.sh
- mobile/android/exoplayer2/src/main/java/org/mozilla/thirdparty/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java
- mobile/android/fenix/.buildconfig.yml
- mobile/android/fenix/app/build.gradle
- mobile/android/fenix/app/lint-baseline.xml
- mobile/android/fenix/app/onboarding.fml.yaml
- mobile/android/fenix/app/proguard-rules.pro
- + mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/AppStartupTest.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/onboarding/view/OnboardingMapperTest.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/CrashReportingTest.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/BrowserRobot.kt
- mobile/android/fenix/app/src/androidTest/java/org/mozilla/fenix/ui/robots/SettingsSubMenuAboutRobot.kt
- + mobile/android/fenix/app/src/beta/ic_launcher-playstore.png
- + mobile/android/fenix/app/src/beta/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/beta/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/beta/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/beta/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/beta/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/beta/res/drawable/ic_launcher_monochrome_foreground.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml → mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/beta/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/beta/res/mipmap-xxxhdpi/ic_launcher_round.webp
- + mobile/android/fenix/app/src/beta/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/beta/res/values/static_strings.xml
- mobile/android/fenix/app/src/beta/res/xml/shortcuts.xml
- − mobile/android/fenix/app/src/debug/ic_launcher-web.webp
- + mobile/android/fenix/app/src/debug/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/debug/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/debug/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/debug/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/debug/res/drawable/ic_launcher_monochrome_foreground.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/debug/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/debug/res/values/colors.xml
- + mobile/android/fenix/app/src/debug/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/debug/res/xml/shortcuts.xml
- mobile/android/fenix/app/src/main/AndroidManifest.xml
- + mobile/android/fenix/app/src/main/assets/common/torrc-defaults
- − mobile/android/fenix/app/src/main/assets/searchplugins/reddit.xml
- − mobile/android/fenix/app/src/main/assets/searchplugins/youtube.xml
- − mobile/android/fenix/app/src/main/ic_launcher-web.webp
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/BrowserDirection.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/FenixApplication.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/IntentReceiverActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/addons/InstalledAddonDetailsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BaseBrowserFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/browser/OpenInAppOnboardingObserver.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Analytics.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/BackgroundServices.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Components.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/Core.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/FenixSnackbar.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NimbusComponents.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/NotificationManager.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/TorBrowserFeatures.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/UseCases.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/middleware/MenuNavigationMiddleware.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/AdjustMetricsService.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/GleanMetricsService.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/MetricController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/metrics/MetricsUtils.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserMenuSignIn.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarCFRPresenter.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/toolbar/ToolbarMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/CustomTabToolbarMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/PoweredByNotification.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/downloads/DynamicDownloadDialog.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/experiments/view/ResearchSurfaceSurvey.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/ext/Activity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/gecko/GeckoProvider.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/HomeMenuView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/intent/HomeDeepLinkIntentProcessor.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/pocket/PocketStoriesComposables.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/recentsyncedtabs/view/RecentSyncedTab.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/PrivateBrowsingDescriptionViewHolder.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/PagerIndicator.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/TopSiteItemViewHolder.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/home/topsites/TopSites.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/library/bookmarks/BookmarkItemMenu.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicroSurveyHeader.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyCompleted.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/microsurvey/ui/MicrosurveyRequestPrompt.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/FenixOnboarding.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/ReEngagementNotificationWorker.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/OnboardingPage.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/OnboardingScreen.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/onboarding/view/UpgradeOnboarding.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/SearchDialogFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/search/awesomebar/AwesomeBarView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/HttpsOnlyFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/PhoneFeature.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SettingsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SupportUtils.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/TabsSettingsFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/TorBridgeConfigFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/TorSecurityLevelFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/about/AboutFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/account/AccountUiView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/advanced/DefaultLocaleSettingsController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/advanced/LocaleSettingsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/logins/view/SavedLoginsListView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/QuickSettingsSheetDialogFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/ProtectionsView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerDetailsController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerDetailsInteractor.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerHandlingDetailsView.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannersStorageExt.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/search/SearchEngineFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/sitepermissions/SitePermissionsFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/sitepermissions/SitePermissionsManagePhoneFeatureFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/SaveToPDFMiddleware.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareController.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/share/ShareFragment.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/NoAnalysis.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shopping/ui/ReviewQualityCheckContextualOnboarding.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/shortcut/PwaOnboardingObserver.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabLayoutMediator.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/TabsTrayBanner.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tabstray/syncedtabs/SyncedTabsList.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/ConnectAssistUiState.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/QuickstartViewModel.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/SecurityLevel.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBootstrapStatus.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorBridgeTransports.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistViewModel.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorController.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorControllerGV.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorLog.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorLogsComposeFragment.kt
- + mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorLogsViewModel.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/trackingprotection/ProtectionsStore.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/NotificationBase.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/gecko/search/SearchWidgetProvider.kt
- + mobile/android/fenix/app/src/main/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-hdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-mdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-hdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-hdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-mdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-mdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-night-xxxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-night/onboarding_ctd_default_browser.xml
- mobile/android/fenix/app/src/main/res/drawable-v23/splash_screen.xml
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-xhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/shopping_no_analysis.webp
- − mobile/android/fenix/app/src/main/res/drawable-xxxhdpi/shopping_onboarding.webp
- − mobile/android/fenix/app/src/main/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/main/res/drawable/browser_location.xml
- + mobile/android/fenix/app/src/main/res/drawable/connect.xml
- + mobile/android/fenix/app/src/main/res/drawable/connect_broken.xml
- + mobile/android/fenix/app/src/main/res/drawable/globe_broken.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_account.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_account_warning.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_favorite.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_firefox.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_fx_accounts_avatar.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_launcher_foreground.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_launcher_monochrome.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_notification_permission.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_key_features.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_key_features_icons_only.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_search_widget.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_sync.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_onboarding_welcome.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_onion_pattern.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_pocket.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_scan.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_screenshot.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_sign_in.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_signed_out.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_status_logo.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_sync_disconnected.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_synced_tabs.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_tor_config_bridge.xml
- + mobile/android/fenix/app/src/main/res/drawable/ic_tor_network_settings.xml
- − mobile/android/fenix/app/src/main/res/drawable/ic_wordmark_logo.webp
- − mobile/android/fenix/app/src/main/res/drawable/ic_wordmark_text_normal.webp
- − mobile/android/fenix/app/src/main/res/drawable/ic_wordmark_text_private.webp
- − mobile/android/fenix/app/src/main/res/drawable/microsurvey_success.xml
- + mobile/android/fenix/app/src/main/res/drawable/new_circuit.xml
- − mobile/android/fenix/app/src/main/res/drawable/onboarding_ctd_default_browser.xml
- − mobile/android/fenix/app/src/main/res/drawable/onboarding_ctd_notification.xml
- − mobile/android/fenix/app/src/main/res/drawable/onboarding_ctd_sync.xml
- − mobile/android/fenix/app/src/main/res/drawable/pocket_vector.xml
- mobile/android/fenix/app/src/main/res/drawable/progress_gradient.xml
- mobile/android/fenix/app/src/main/res/drawable/pager_dot.xml → mobile/android/fenix/app/src/main/res/drawable/rounded_corners.xml
- mobile/android/fenix/app/src/main/res/drawable-night/ic_logo_wordmark_normal.xml → mobile/android/fenix/app/src/main/res/drawable/tor_bootstrap_background_gradient.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml → mobile/android/fenix/app/src/main/res/drawable/tor_onboarding_donate_gradient.xml
- mobile/android/fenix/app/src/main/res/drawable/onboarding_popup_shape.xml → mobile/android/fenix/app/src/main/res/drawable/tor_onboarding_donate_rounded_corners.xml
- mobile/android/fenix/app/src/main/res/layout/component_cookie_banner_details_panel.xml
- mobile/android/fenix/app/src/main/res/layout/component_tabstray2.xml
- mobile/android/fenix/app/src/main/res/layout/fenix_snackbar.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_about.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_create_shortcut.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_home.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_locale_settings.xml
- + mobile/android/fenix/app/src/main/res/layout/fragment_tor_connection_assist.xml
- mobile/android/fenix/app/src/main/res/layout/fragment_turn_on_sync.xml
- − mobile/android/fenix/app/src/main/res/layout/full_screen_notification_dialog.xml
- mobile/android/fenix/app/src/main/res/layout/onboarding_inactive_tabs_cfr.xml
- mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_private.xml → mobile/android/fenix/app/src/main/res/layout/preference_quick_start.xml
- mobile/android/fenix/app/src/main/res/layout/quicksettings_permissions.xml
- mobile/android/fenix/app/src/main/res/layout/quicksettings_protections_panel.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_extra_small_v1.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_extra_small_v2.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_large.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_medium.xml
- mobile/android/fenix/app/src/main/res/layout/search_widget_small.xml
- mobile/android/fenix/app/src/main/res/layout/sign_in_preference.xml
- − mobile/android/fenix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_private_round.xml
- − mobile/android/fenix/app/src/main/res/mipmap-hdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-mdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xhdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp
- − mobile/android/fenix/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/main/res/navigation/nav_graph.xml
- mobile/android/fenix/app/src/main/res/values-be/strings.xml
- mobile/android/fenix/app/src/main/res/values-bg/strings.xml
- mobile/android/fenix/app/src/main/res/values-bs/strings.xml
- mobile/android/fenix/app/src/main/res/values-ca/strings.xml
- mobile/android/fenix/app/src/main/res/values-co/strings.xml
- mobile/android/fenix/app/src/main/res/values-cs/strings.xml
- mobile/android/fenix/app/src/main/res/values-cy/strings.xml
- mobile/android/fenix/app/src/main/res/values-da/strings.xml
- mobile/android/fenix/app/src/main/res/values-de/strings.xml
- mobile/android/fenix/app/src/main/res/values-dsb/strings.xml
- mobile/android/fenix/app/src/main/res/values-el/strings.xml
- mobile/android/fenix/app/src/main/res/values-en-rCA/strings.xml
- mobile/android/fenix/app/src/main/res/values-en-rGB/strings.xml
- mobile/android/fenix/app/src/main/res/values-es-rAR/strings.xml
- mobile/android/fenix/app/src/main/res/values-es-rCL/strings.xml
- mobile/android/fenix/app/src/main/res/values-es-rMX/strings.xml
- mobile/android/fenix/app/src/main/res/values-eu/strings.xml
- mobile/android/fenix/app/src/main/res/values-fi/strings.xml
- mobile/android/fenix/app/src/main/res/values-fr/strings.xml
- mobile/android/fenix/app/src/main/res/values-fur/strings.xml
- mobile/android/fenix/app/src/main/res/values-fy-rNL/strings.xml
- mobile/android/fenix/app/src/main/res/values-gl/strings.xml
- mobile/android/fenix/app/src/main/res/values-hsb/strings.xml
- mobile/android/fenix/app/src/main/res/values-hy-rAM/strings.xml
- mobile/android/fenix/app/src/main/res/values-ia/strings.xml
- mobile/android/fenix/app/src/main/res/values-is/strings.xml
- mobile/android/fenix/app/src/main/res/values-it/strings.xml
- mobile/android/fenix/app/src/main/res/values-iw/strings.xml
- mobile/android/fenix/app/src/main/res/values-ja/strings.xml
- mobile/android/fenix/app/src/main/res/values-kab/strings.xml
- mobile/android/fenix/app/src/main/res/values-kk/strings.xml
- mobile/android/fenix/app/src/main/res/values-ko/strings.xml
- mobile/android/fenix/app/src/main/res/values-nb-rNO/strings.xml
- mobile/android/fenix/app/src/main/res/values-night-v27/styles.xml
- mobile/android/fenix/app/src/main/res/values-night/styles.xml
- mobile/android/fenix/app/src/main/res/values-nl/strings.xml
- mobile/android/fenix/app/src/main/res/values-nn-rNO/strings.xml
- mobile/android/fenix/app/src/main/res/values-oc/strings.xml
- mobile/android/fenix/app/src/main/res/values-pa-rIN/strings.xml
- mobile/android/fenix/app/src/main/res/values-pl/strings.xml
- mobile/android/fenix/app/src/main/res/values-pt-rBR/strings.xml
- mobile/android/fenix/app/src/main/res/values-pt-rPT/strings.xml
- mobile/android/fenix/app/src/main/res/values-rm/strings.xml
- mobile/android/fenix/app/src/main/res/values-ru/strings.xml
- mobile/android/fenix/app/src/main/res/values-sat/strings.xml
- mobile/android/fenix/app/src/main/res/values-si/strings.xml
- mobile/android/fenix/app/src/main/res/values-sk/strings.xml
- mobile/android/fenix/app/src/main/res/values-sl/strings.xml
- mobile/android/fenix/app/src/main/res/values-sq/strings.xml
- mobile/android/fenix/app/src/main/res/values-sv-rSE/strings.xml
- mobile/android/fenix/app/src/main/res/values-tg/strings.xml
- mobile/android/fenix/app/src/main/res/values-th/strings.xml
- mobile/android/fenix/app/src/main/res/values-tr/strings.xml
- mobile/android/fenix/app/src/main/res/values-ug/strings.xml
- mobile/android/fenix/app/src/main/res/values-v24/styles.xml
- mobile/android/fenix/app/src/main/res/values-v27/styles.xml
- mobile/android/fenix/app/src/main/res/values-vi/strings.xml
- mobile/android/fenix/app/src/main/res/values-zh-rCN/strings.xml
- mobile/android/fenix/app/src/main/res/values-zh-rTW/strings.xml
- mobile/android/fenix/app/src/main/res/values/attrs.xml
- mobile/android/fenix/app/src/main/res/values/colors.xml
- + mobile/android/fenix/app/src/main/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/main/res/values/preference_keys.xml
- mobile/android/fenix/app/src/main/res/values/static_strings.xml
- mobile/android/fenix/app/src/main/res/values/strings.xml
- mobile/android/fenix/app/src/main/res/values/styles.xml
- + mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
- mobile/android/fenix/app/src/main/res/xml/logins_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/preferences.xml
- mobile/android/fenix/app/src/main/res/xml/private_browsing_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/search_settings_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/shortcuts.xml
- mobile/android/fenix/app/src/main/res/xml/site_permissions_details_exceptions_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/site_permissions_preferences.xml
- mobile/android/fenix/app/src/main/res/xml/sync_problem.xml
- + mobile/android/fenix/app/src/main/res/xml/tor_bridge_config_preferences.xml
- + mobile/android/fenix/app/src/main/res/xml/tor_security_level_preferences.xml
- + mobile/android/fenix/app/src/nightly/ic_launcher-playstore.png
- + mobile/android/fenix/app/src/nightly/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/nightly/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-hdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-hdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-mdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-mdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxxhdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable-xxxhdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/nightly/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/nightly/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/nightly/res/drawable/ic_launcher_monochrome_foreground.xml
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_wordmark_logo.webp
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_wordmark_text_normal.webp
- − mobile/android/fenix/app/src/nightly/res/drawable/ic_wordmark_text_private.webp
- − mobile/android/fenix/app/src/nightly/res/ic_launcher-web.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/nightly/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/nightly/res/mipmap-xxxhdpi/ic_launcher_round.webp
- + mobile/android/fenix/app/src/nightly/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/nightly/res/values/static_strings.xml
- mobile/android/fenix/app/src/nightly/res/xml/shortcuts.xml
- + mobile/android/fenix/app/src/release/ic_launcher-playstore.png
- + mobile/android/fenix/app/src/release/res/drawable-hdpi/fenix_search_widget.png
- − mobile/android/fenix/app/src/release/res/drawable-hdpi/fenix_search_widget.webp
- − mobile/android/fenix/app/src/release/res/drawable-hdpi/ic_logo_wordmark_normal.webp
- − mobile/android/fenix/app/src/release/res/drawable-hdpi/ic_logo_wordmark_private.webp
- − mobile/android/fenix/app/src/release/res/drawable/animated_splash_screen.xml
- + mobile/android/fenix/app/src/release/res/drawable/ic_launcher_background.xml
- − mobile/android/fenix/app/src/release/res/drawable/ic_launcher_foreground.xml
- + mobile/android/fenix/app/src/release/res/drawable/ic_launcher_monochrome_foreground.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher_monochrome.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher_monochrome_round.xml
- + mobile/android/fenix/app/src/release/res/mipmap-anydpi-v26/ic_launcher_round.xml
- mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-hdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-mdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxhdpi/ic_launcher_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_foreground.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_monochrome.webp
- + mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_monochrome_round.webp
- mobile/android/fenix/app/src/release/res/mipmap-xxxhdpi/ic_launcher_round.webp
- + mobile/android/fenix/app/src/release/res/values/ic_launcher_monochrome_background.xml
- mobile/android/fenix/app/src/release/res/values/static_strings.xml
- mobile/android/fenix/app/src/release/res/xml/shortcuts.xml
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/menu/MenuNavigationMiddlewareTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/components/metrics/MetricsUtilsTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/ext/ContextTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/home/HomeMenuViewTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/onboarding/view/OnboardingMapperTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/onboarding/view/OnboardingPageUiDataTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/SupportUtilsTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/ProtectionsViewTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/QuickSettingsSheetDialogFragmentTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/CookieBannerHandlingDetailsViewTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/settings/quicksettings/protections/cookiebanners/DefaultCookieBannerDetailsControllerTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/share/viewholders/AppViewHolderTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/trackingprotection/ProtectionsStoreTest.kt
- mobile/android/fenix/app/src/test/java/org/mozilla/fenix/utils/SettingsTest.kt
- mobile/android/fenix/build.gradle
- mobile/android/fenix/plugins/fenixdependencies/src/main/java/FenixDependenciesPlugin.kt
- + mobile/android/fenix/tools/tba-fetch-deps.sh
- + mobile/android/fenix/tools/tba-sign-devbuilds.sh
- mobile/android/focus-android/app/src/main/java/org/mozilla/focus/browser/integration/FullScreenIntegration.kt
- mobile/android/focus-android/app/src/main/java/org/mozilla/focus/fragment/BrowserFragment.kt
- − mobile/android/focus-android/app/src/main/res/layout/dialog_full_screen_notification.xml
- mobile/android/focus-android/app/src/main/res/values/strings.xml
- mobile/android/focus-android/app/src/test/java/org/mozilla/focus/browser/integration/FullScreenIntegrationTest.kt
- mobile/android/geckoview/api.txt
- mobile/android/geckoview/build.gradle
- − mobile/android/geckoview/src/androidTest/java/org/mozilla/geckoview/test/VideoCaptureTest.kt
- mobile/android/geckoview/src/main/AndroidManifest.xml
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/Clipboard.java
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV21.java
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/ProxySelector.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/CrashReporter.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoInputConnection.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntime.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntimeSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorAndroidIntegration.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebExtensionController.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebRequest.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/androidlegacysettings/Prefs.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/androidlegacysettings/TorLegacyAndroidSettings.java
- mobile/android/gradle/with_gecko_binaries.gradle
- mobile/android/installer/package-manifest.in
- mobile/android/moz.configure
- mobile/android/shared-settings.gradle
- mobile/shared/chrome/geckoview/geckoview.js
- mobile/shared/components/geckoview/GeckoViewStartup.sys.mjs
- mobile/shared/modules/geckoview/GeckoViewContent.sys.mjs
- mobile/shared/modules/geckoview/GeckoViewProgress.sys.mjs
- mobile/shared/modules/geckoview/GeckoViewWebExtension.sys.mjs
- modules/libpref/Preferences.cpp
- modules/libpref/init/StaticPrefList.yaml
- modules/libpref/init/all.js
- moz.configure
- + mozconfig-android-aarch64
- + mozconfig-android-all
- + mozconfig-android-armv7
- + mozconfig-android-x86
- + mozconfig-android-x86_64
- + mozconfig-linux-aarch64
- + mozconfig-linux-aarch64-dev
- + mozconfig-linux-arm
- + mozconfig-linux-i686
- + mozconfig-linux-x86_64
- + mozconfig-linux-x86_64-asan
- + mozconfig-linux-x86_64-dev
- + mozconfig-macos
- + mozconfig-macos-dev
- + mozconfig-windows-i686
- + mozconfig-windows-x86_64
- netwerk/base/nsNetUtil.cpp
- netwerk/base/nsSocketTransport2.cpp
- netwerk/build/components.conf
- netwerk/build/nsNetCID.h
- + netwerk/dns/IOnionAliasService.idl
- + netwerk/dns/OnionAliasService.cpp
- + netwerk/dns/OnionAliasService.h
- netwerk/dns/effective_tld_names.dat
- netwerk/dns/moz.build
- netwerk/protocol/http/HttpBaseChannel.cpp
- netwerk/protocol/http/nsHttpHandler.cpp
- netwerk/protocol/http/nsHttpNTLMAuth.cpp
- netwerk/sctp/src/moz.build
- netwerk/sctp/src/netinet/sctp_cc_functions.c
- netwerk/sctp/src/netinet/sctp_indata.c
- netwerk/sctp/src/netinet/sctp_input.c
- netwerk/sctp/src/netinet/sctp_output.c
- netwerk/sctp/src/netinet/sctp_usrreq.c
- netwerk/sctp/src/netinet/sctputil.c
- netwerk/sctp/src/user_mbuf.c
- netwerk/sctp/src/user_socket.c
- netwerk/socket/nsSOCKSIOLayer.cpp
- netwerk/system/android/nsAndroidNetworkLinkService.cpp
- netwerk/system/linux/nsNetworkLinkService.cpp
- netwerk/system/mac/nsNetworkLinkService.mm
- netwerk/system/netlink/NetlinkService.cpp
- netwerk/system/win32/nsNotifyAddrListener.cpp
- netwerk/url-classifier/UrlClassifierFeatureBase.cpp
- netwerk/url-classifier/components.conf
- old-configure.in
- python/mozbuild/mozbuild/artifacts.py
- python/mozbuild/mozbuild/mach_commands.py
- python/mozlint/mozlint/cli.py
- security/certverifier/CertVerifier.cpp
- security/manager/ssl/NSSSocketControl.cpp
- security/manager/ssl/RemoteSecuritySettings.sys.mjs
- security/manager/ssl/SSLServerCertVerification.cpp
- security/manager/ssl/SSLServerCertVerification.h
- security/manager/ssl/StaticHPKPins.h
- security/manager/ssl/nsSecureBrowserUI.cpp
- security/moz.build
- security/nss/lib/certhigh/ocsp.c
- security/nss/lib/libpkix/pkix_pl_nss/module/pkix_pl_socket.c
- security/nss/lib/mozpkix/include/pkix/Result.h
- security/nss/lib/mozpkix/include/pkix/pkixnss.h
- security/nss/lib/ssl/Makefile
- security/sandbox/common/SandboxUtils.sys.mjs
- services/settings/Attachments.sys.mjs
- services/settings/IDBHelpers.sys.mjs
- services/settings/RemoteSettingsClient.sys.mjs
- services/settings/dumps/gen_last_modified.py
- services/settings/dumps/main/moz.build
- services/settings/remote-settings.sys.mjs
- services/settings/servicesSettings.manifest
- services/settings/static-dumps/main/moz.build
- + services/settings/static-dumps/main/query-stripping.json
- services/sync/components.conf
- servo/components/style/properties/cascade.rs
- servo/components/style/properties/properties.mako.rs
- servo/components/style/values/computed/box.rs
- servo/components/style/values/specified/length.rs
- servo/ports/geckolib/glue.rs
- testing/mozbase/mozinstall/mozinstall/mozinstall.py
- testing/mozbase/setup_development.py
- testing/mozharness/scripts/does_it_crash.py
- + testing/web-platform/tests/css/css-viewport/zoom/canvas-ref.html
- + testing/web-platform/tests/css/css-viewport/zoom/canvas.html
- + testing/web-platform/tests/css/css-viewport/zoom/textarea-very-small-zoom-crash.html
- third_party/libwebrtc/modules/audio_coding/codecs/isac/main/source/os_specific_inline.h
- third_party/libwebrtc/modules/desktop_capture/desktop_capture_types.h
- third_party/libwebrtc/modules/desktop_capture/win/desktop_capture_utils.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capture_session.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capturer_win.cc
- third_party/libwebrtc/modules/desktop_capture/win/wgc_capturer_win.h
- third_party/libwebrtc/modules/video_capture/windows/device_info_ds.h
- third_party/libwebrtc/rtc_base/platform_thread_types.cc
- third_party/libwebrtc/rtc_base/socket.h
- third_party/libwebrtc/rtc_base/system/file_wrapper.cc
- third_party/libwebrtc/rtc_base/win/create_direct3d_device.h
- third_party/sipcc/cpr_win_types.h
- third_party/sipcc/sdp_token.c
- toolkit/.eslintrc.js
- toolkit/actors/AboutHttpsOnlyErrorParent.sys.mjs
- + toolkit/actors/FilesFilterChild.sys.mjs
- + toolkit/actors/FilesFilterParent.sys.mjs
- toolkit/actors/NetErrorChild.sys.mjs
- toolkit/actors/NetErrorParent.sys.mjs
- toolkit/actors/moz.build
- toolkit/components/antitracking/StoragePrincipalHelper.cpp
- toolkit/components/antitracking/antitracking.manifest
- toolkit/components/antitracking/components.conf
- toolkit/components/downloads/DownloadCore.sys.mjs
- toolkit/components/downloads/DownloadIntegration.sys.mjs
- toolkit/components/extensions/Extension.sys.mjs
- toolkit/components/extensions/ExtensionParent.sys.mjs
- toolkit/components/httpsonlyerror/content/errorpage.html
- toolkit/components/httpsonlyerror/content/errorpage.js
- + toolkit/components/lox/Lox.sys.mjs
- + toolkit/components/lox/content/lox_wasm_bg.wasm
- + toolkit/components/lox/jar.mn
- + toolkit/components/lox/lox_wasm.jsm
- + toolkit/components/lox/moz.build
- toolkit/components/moz.build
- toolkit/components/places/PlacesUtils.sys.mjs
- toolkit/components/remotebrowserutils/RemoteWebNavigation.sys.mjs
- toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
- toolkit/components/resistfingerprinting/nsRFPService.cpp
- toolkit/components/resistfingerprinting/nsRFPService.h
- toolkit/components/search/AppProvidedSearchEngine.sys.mjs
- toolkit/components/search/SearchEngine.sys.mjs
- toolkit/components/search/SearchService.sys.mjs
- + toolkit/components/search/content/duckduckgo.ico
- + toolkit/components/search/content/startpage.png
- + toolkit/components/search/content/torBrowserSearchEngineIcons.json
- + toolkit/components/search/content/torBrowserSearchEngines.json
- + toolkit/components/search/content/wikipedia.ico
- + toolkit/components/search/jar.mn
- toolkit/components/search/moz.build
- + toolkit/components/securitylevel/SecurityLevel.manifest
- + toolkit/components/securitylevel/SecurityLevel.sys.mjs
- + toolkit/components/securitylevel/components.conf
- + toolkit/components/securitylevel/moz.build
- toolkit/components/shopping/jar.mn
- toolkit/components/telemetry/app/TelemetrySend.sys.mjs
- toolkit/components/telemetry/moz.build
- + toolkit/components/tor-launcher/TorBootstrapRequest.sys.mjs
- + toolkit/components/tor-launcher/TorControlPort.sys.mjs
- + toolkit/components/tor-launcher/TorDomainIsolator.sys.mjs
- + toolkit/components/tor-launcher/TorLauncherUtil.sys.mjs
- + toolkit/components/tor-launcher/TorParsers.sys.mjs
- + toolkit/components/tor-launcher/TorProcess.sys.mjs
- + toolkit/components/tor-launcher/TorProcessAndroid.sys.mjs
- + toolkit/components/tor-launcher/TorProvider.sys.mjs
- + toolkit/components/tor-launcher/TorProviderBuilder.sys.mjs
- + toolkit/components/tor-launcher/TorStartupService.sys.mjs
- + toolkit/components/tor-launcher/components.conf
- + toolkit/components/tor-launcher/moz.build
- + toolkit/components/tor-launcher/tor-launcher.manifest
- + toolkit/components/torconnect/TorConnectChild.sys.mjs
- + toolkit/components/torconnect/TorConnectParent.sys.mjs
- + toolkit/components/torconnect/content/aboutTorConnect.css
- + toolkit/components/torconnect/content/aboutTorConnect.html
- + toolkit/components/torconnect/content/aboutTorConnect.js
- + toolkit/components/torconnect/content/arrow-right.svg
- + toolkit/components/torconnect/content/bridge.svg
- + toolkit/components/torconnect/content/connection-failure.svg
- + toolkit/components/torconnect/content/connection-location.svg
- + toolkit/components/torconnect/content/tor-connect-broken.svg
- + toolkit/components/torconnect/content/tor-connect.svg
- + toolkit/components/torconnect/content/tor-not-connected-to-connected-animated.svg
- + toolkit/components/torconnect/content/torConnectTitlebarStatus.css
- + toolkit/components/torconnect/content/torConnectTitlebarStatus.js
- + toolkit/components/torconnect/content/torConnectUrlbarButton.js
- + toolkit/components/torconnect/jar.mn
- + toolkit/components/torconnect/moz.build
- toolkit/components/windowwatcher/nsWindowWatcher.cpp
- toolkit/content/.eslintrc.js
- toolkit/content/aboutNetError.html
- toolkit/content/aboutNetError.mjs
- toolkit/content/jar.mn
- toolkit/content/license.html
- + toolkit/content/pt_config.json
- toolkit/content/widgets/infobar.css
- toolkit/content/widgets/moz-message-bar/moz-message-bar.mjs
- toolkit/content/widgets/moz-support-link/moz-support-link.mjs
- toolkit/content/widgets/moz-toggle/moz-toggle.mjs
- toolkit/content/widgets/notificationbox.js
- toolkit/library/moz.build
- + toolkit/locales-preview/base-browser-no-translate.ftl
- + toolkit/locales-preview/tor-browser-no-translate.ftl
- toolkit/locales/en-US/toolkit/about/aboutHttpsOnlyError.ftl
- + toolkit/locales/en-US/toolkit/global/base-browser.ftl
- + toolkit/locales/en-US/toolkit/global/tor-browser.ftl
- toolkit/locales/jar.mn
- toolkit/modules/ActorManagerParent.sys.mjs
- toolkit/modules/AppConstants.sys.mjs
- + toolkit/modules/Bech32Decode.sys.mjs
- + toolkit/modules/BridgeDB.sys.mjs
- + toolkit/modules/DomainFrontedRequests.sys.mjs
- + toolkit/modules/DragDropFilter.sys.mjs
- toolkit/modules/FinderParent.sys.mjs
- toolkit/modules/LogManager.sys.mjs
- + toolkit/modules/Moat.sys.mjs
- toolkit/modules/PopupNotifications.sys.mjs
- + toolkit/modules/QRCode.sys.mjs
- toolkit/modules/RemotePageAccessManager.sys.mjs
- + toolkit/modules/TorAndroidIntegration.sys.mjs
- + toolkit/modules/TorConnect.sys.mjs
- + toolkit/modules/TorSettings.sys.mjs
- + toolkit/modules/TorStrings.sys.mjs
- toolkit/modules/UpdateUtils.sys.mjs
- toolkit/modules/moz.build
- toolkit/moz.build
- toolkit/mozapps/extensions/AddonManager.sys.mjs
- toolkit/mozapps/extensions/components.conf
- toolkit/mozapps/extensions/content/aboutaddons.html
- toolkit/mozapps/extensions/content/aboutaddons.js
- toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
- toolkit/mozapps/extensions/internal/XPIInstall.sys.mjs
- toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs
- toolkit/mozapps/extensions/test/browser/head.js
- toolkit/mozapps/extensions/test/xpcshell/head_addons.js
- toolkit/mozapps/update/UpdateService.sys.mjs
- toolkit/mozapps/update/UpdateServiceStub.sys.mjs
- toolkit/mozapps/update/common/updatehelper.cpp
- toolkit/mozapps/update/tests/data/sharedUpdateXML.js
- + toolkit/mozapps/update/tests/unit_aus_update/mixedUnsupported.js
- toolkit/mozapps/update/tests/unit_aus_update/xpcshell.toml
- toolkit/mozapps/update/updater/launchchild_osx.mm
- toolkit/mozapps/update/updater/moz.build
- toolkit/mozapps/update/updater/nightly_aurora_level3_primary.der
- toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der
- toolkit/mozapps/update/updater/release_primary.der
- toolkit/mozapps/update/updater/release_secondary.der
- toolkit/mozapps/update/updater/updater.cpp
- toolkit/themes/shared/aboutNetError.css
- toolkit/themes/shared/desktop-jar.inc.mn
- toolkit/themes/shared/findbar.css
- + toolkit/themes/shared/icons/onion-site.svg
- + toolkit/themes/shared/icons/onion-slash.svg
- + toolkit/themes/shared/icons/onion-warning.svg
- + toolkit/themes/shared/icons/tor-dark-loading.png
- + toolkit/themes/shared/icons/tor-dark-loading(a)2x.png
- + toolkit/themes/shared/icons/tor-light-loading.png
- + toolkit/themes/shared/icons/tor-light-loading(a)2x.png
- + toolkit/themes/shared/icons/torbrowser.png
- toolkit/themes/shared/minimal-toolkit.jar.inc.mn
- + toolkit/themes/shared/onion-pattern.css
- + toolkit/themes/shared/onion-pattern.svg
- + toolkit/themes/shared/tor-colors.css
- + toolkit/torbutton/chrome/locale/en-US/onionLocation.properties
- + toolkit/torbutton/chrome/locale/en-US/settings.properties
- + toolkit/torbutton/chrome/locale/en-US/torConnect.properties
- + toolkit/torbutton/chrome/locale/en-US/torlauncher.properties
- + toolkit/torbutton/jar.mn
- + toolkit/torbutton/moz.build
- toolkit/xre/LauncherRegistryInfo.cpp
- toolkit/xre/MacLaunchHelper.h
- toolkit/xre/MacLaunchHelper.mm
- toolkit/xre/MacRunFromDmgUtils.mm
- toolkit/xre/ProfileReset.cpp
- toolkit/xre/dllservices/mozglue/WindowsDllBlocklist.cpp
- toolkit/xre/nsAppRunner.cpp
- toolkit/xre/nsIXREDirProvider.idl
- toolkit/xre/nsUpdateDriver.cpp
- toolkit/xre/nsXREDirProvider.cpp
- toolkit/xre/nsXREDirProvider.h
- + tools/base-browser/git-rebase-fixup-preprocessor
- + tools/base-browser/l10n/combine-translation-versions.py
- + tools/base-browser/l10n/combine/__init__.py
- + tools/base-browser/l10n/combine/combine.py
- + tools/base-browser/l10n/combine/tests/README
- + tools/base-browser/l10n/combine/tests/__init__.py
- + tools/base-browser/l10n/combine/tests/test_android.py
- + tools/base-browser/l10n/combine/tests/test_dtd.py
- + tools/base-browser/l10n/combine/tests/test_fluent.py
- + tools/base-browser/l10n/combine/tests/test_properties.py
- + tools/base-browser/tb-dev
- + tools/geckoview/.gitignore
- + tools/geckoview/Makefile
- + tools/geckoview/android-env-linux-template.sh
- + tools/geckoview/android-env-macos-template.sh
- + tools/geckoview/build-fenix.sh
- + tools/geckoview/build-geckoview.sh
- + tools/geckoview/clobber.sh
- + tools/geckoview/config.sh
- + tools/geckoview/jslint.sh
- tools/lint/fluent-lint/exclusions.yml
- + tools/torbrowser/Makefile
- + tools/torbrowser/browser-self-sign-macos.sh
- + tools/torbrowser/build.sh
- + tools/torbrowser/clobber.sh
- + tools/torbrowser/config.sh
- + tools/torbrowser/deploy.sh
- + tools/torbrowser/fetch.sh
- + tools/torbrowser/generate-bugzilla-triage-csv.sh
- + tools/torbrowser/generate_tor_loading_png.py
- + tools/torbrowser/ide.sh
- + tools/torbrowser/jslint.sh
- + tools/torbrowser/l10n/migrate.py
- + tools/torbrowser/l10n/migrations/__init__.py
- + tools/torbrowser/l10n/migrations/bug-41333-new-about-tor.py
- + tools/torbrowser/l10n/migrations/bug-41622-neterror.py
- + tools/torbrowser/l10n/migrations/bug-41820-moz-message-bar-download-warning.py
- + tools/torbrowser/l10n/migrations/bug-42202-crypto-safety.py
- + tools/torbrowser/l10n/migrations/bug-42203-about-dialog.py
- + tools/torbrowser/l10n/migrations/bug-42206-rulesets.py
- + tools/torbrowser/l10n/migrations/bug-42207-settings.py
- + tools/torbrowser/l10n/migrations/bug-42209-tor-circuit.py
- + tools/torbrowser/l10n/migrations/bug-42210-download-warning.py
- + tools/torbrowser/l10n/migrations/bug-42211-new-identity.py
- + tools/torbrowser/l10n/migrations/bug-42212-onion-services.py
- + tools/torbrowser/l10n/migrations/bug-42214-security-level.py
- + tools/torbrowser/update_emojis.py
- tools/update-packaging/common.sh
- tools/update-packaging/make_full_update.sh
- tools/update-packaging/make_incremental_update.sh
- uriloader/base/nsDocLoader.cpp
- uriloader/base/nsURILoader.cpp
- uriloader/exthandler/nsExternalHelperAppService.cpp
- widget/ScrollbarDrawingWin.cpp
- widget/ScrollbarDrawingWin11.cpp
- widget/android/WebExecutorSupport.cpp
- widget/android/nsClipboard.cpp
- widget/cocoa/nsChildView.mm
- widget/gtk/MPRISServiceHandler.cpp
- widget/gtk/WidgetUtilsGtk.cpp
- widget/gtk/nsWindow.cpp
- widget/windows/WinTaskbar.cpp
- widget/windows/nsDataObj.cpp
- xpcom/base/ErrorList.py
- xpcom/ds/StaticAtoms.py
- xpcom/io/CocoaFileUtils.mm
- xpcom/io/nsAppFileLocationProvider.cpp
- xpfe/appshell/AppWindow.cpp
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/0ab79d…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/0ab79d…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Bug 41121: Use the official Go binaries for bootstrapping.
by Pier Angelo Vendrame (@pierov) 05 Mar '25
by Pier Angelo Vendrame (@pierov) 05 Mar '25
05 Mar '25
Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
7b12e72e by Pier Angelo Vendrame at 2025-03-05T14:48:49+01:00
Bug 41121: Use the official Go binaries for bootstrapping.
The Go toolchain is reproducible, and we checked that we obtain the
same exact Go 1.23.6 binaries when building at the previous commit.
Therefore, we can simplify our bootstrap process and just use the
official binaries.
- - - - -
3 changed files:
- projects/go-bootstrap/README.md
- projects/go-bootstrap/build
- projects/go-bootstrap/config
Changes:
=====================================
projects/go-bootstrap/README.md
=====================================
@@ -1,16 +1,23 @@
-Go 1.4 was the last version written in C.
-All the later versions need a Go compiler, that we provide with this project.
+This project downloads the official Go binaries to use them for bootstrapping
+purposes.
-Also, starting from Go 1.20.x, Go introduced a new policy: Go 1.y.z needs at
-least Go 1.(y - 3) to build. E.g., Go 1.19 can build Go 1.20, 1.21 and 1.22, but
-no Go 1.23, which will need Go 1.20 or later.
+We used to start with Go 1.4 (the last version written in C) and build all the
+versions needed to then build the most recent Go toolchain.
-So, right now we build Go 1.4 with Debian's GCC, then we use it to build Go
-1.19.9, but at a certain point we will have to add another Go compiler.
+However, starting with Go 1.21,
+[the official binaries are reproducible](https://go.dev/blog/rebuild).
-Other alternatives are:
-- use Debian's Go compiler (but we use a very old version of Debian for wider
- binary compatibility, so it's likely not to ship a recent enough compiler for
- bootstrapping purposes)
-- use the [official binaries](https://go.dev/dl/) to bootstrap, like we do for
- Rust
+So, we checked that the Go 1.23.6 binaries we produced with our old procedure
+at 80f16f97e7c2973e9aa4458606c9afd2c63c2d60 matched the official binaries.
+
+## How to update
+
+1. In `projects/go/config`, update version to the version we want to be the new
+ go-bootstrap version
+2. Build `go` with
+ `./rbm/rbm build --target torbrowser-linux-x86_64 --target alpha go` and
+ compare the result with the official build
+3. If it is matching or if we can explain the differences, update the
+ `go-bootstrap` version of the bin that we download.
+4. Build the same version of go again with the command from above and check the
+ two archives have the same exact hash.
=====================================
projects/go-bootstrap/build
=====================================
@@ -1,45 +1,15 @@
#!/bin/bash
[% c("var/set_default_env") -%]
-# This project is expected to be built only on Linux.
-# Then the actual Go compiler will be built for each platform.
+tar -xf $rootdir/[% c('input_files_by_name/go') %]
-distdir=/var/tmp/dist/[% project %]
-mkdir -p /var/tmp/build /var/tmp/dist
+pushd go
+# Disable go autoupdates (tor-browser-build#41345)
+# See https://go.dev/doc/toolchain
+sed -i -e 's/^GOTOOLCHAIN=.*/GOTOOLCHAIN=local/' go.env
+popd
+mv go [% project %]
-# Building go 1.4.x
-# This is needed to bootstrap the go that we actually use
-# https://golang.org/doc/install/source#go14
-tar -C /var/tmp/build --transform='s,^go\>,go1.4,' -xf $rootdir/[% c('input_files_by_name/go14') %]
-cd /var/tmp/build/go1.4/src
-# Disable cgo to avoid conflicts with newer GCC. cgo is not needed for the bootstrap go.
-# https://github.com/golang/go/issues/13114#issuecomment-186922245
-# Disable CC etc. that are set up for cross builds.
-CGO_ENABLED=0 CC= CFLAGS= LDFLAGS= ./make.bash
-export GOROOT_BOOTSTRAP="/var/tmp/build/go1.4"
-
-# Building go 1.19.X
-cd $rootdir
-tar -C /var/tmp/build --transform='s,^go\>,go1.19,' -xf $rootdir/[% c('input_files_by_name/go119') %]
-cd /var/tmp/build/go1.19/src
-
-./make.bash
-export GOROOT_BOOTSTRAP="/var/tmp/build/go1.19"
-
-# Building go 1.21.X
-cd $rootdir
-tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/go') %]
-export GOROOT="$distdir"
-mv /var/tmp/dist/go $distdir
-cd $distdir/src
-
-./make.bash
-
-# This directory is non-reproducible and doesn't exist in official Go releases,
-# so remove it to preserve reproducibility of the output.
-rm -rf $distdir/pkg/obj/go-build/
-
-cd /var/tmp/dist
[% c('tar', {
tar_src => [ project ],
tar_args => '-caf ' _ dest_dir _ '/' _ c('filename'),
=====================================
projects/go-bootstrap/config
=====================================
@@ -1,20 +1,14 @@
# vim: filetype=yaml sw=2
-version: 1.21.12
+# Make sure we can reproduce the official binaries before updating.
+# Check README.md for more information before updating this version.
+version: 1.23.6
filename: '[% project %]-[% c("version") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
- use_container: 1
-
-var:
- no_crosscompile: 1
+ use_container: 0
input_files:
- - project: container-image
- - URL: 'https://go.dev/dl/go[% c("version") %].src.tar.gz'
+ - URL: 'https://go.dev/dl/go[% c("version") %].linux-amd64.tar.gz'
name: go
- sha256sum: 30e68af27bc1f1df231e3ab74f3d17d3b8d52a089c79bcaab573b4f1b807ed4f
- - URL: https://go.dev/dl/go1.19.13.src.tar.gz
- sha256sum: ccf36b53fb0024a017353c3ddb22c1f00bc7a8073c6aac79042da24ee34434d3
- name: go119
- - URL: https://dl.google.com/go/go1.4-bootstrap-20171003.tar.gz
- name: go14
- sha256sum: f4ff5b5eb3a3cae1c993723f3eab519c5bae18866b5e5f96fe1102f0cb5c3e52
+ # Make sure we can reproduce the official binaries before updating.
+ # Check README.md for more information before updating this hash.
+ sha256sum: 9379441ea310de000f33a4dc767bd966e72ab2826270e038e78b2c53c2e7802d
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/7…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/7…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Update rbm for rbm#40082 (Fix `fetch: if_needed` to avoid fetching when using a fixed commit)
by boklm (@boklm) 04 Mar '25
by boklm (@boklm) 04 Mar '25
04 Mar '25
boklm pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
a8ef5508 by Nicolas Vigier at 2025-03-04T17:02:15+01:00
Update rbm for rbm#40082 (Fix `fetch: if_needed` to avoid fetching when using a fixed commit)
- - - - -
1 changed file:
- rbm
Changes:
=====================================
rbm
=====================================
@@ -1 +1 @@
-Subproject commit 8c773150bc10133f3903841c233458dc07456d2e
+Subproject commit 9dedbe520adc16f53935cebc98c85022d410249d
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/a…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Bug 41386: Upgrade Go to 1.23.x (except on macOS).
by Pier Angelo Vendrame (@pierov) 04 Mar '25
by Pier Angelo Vendrame (@pierov) 04 Mar '25
04 Mar '25
Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
80f16f97 by Pier Angelo Vendrame at 2025-03-04T15:44:22+01:00
Bug 41386: Upgrade Go to 1.23.x (except on macOS).
We have been using Go 1.22.x for a while, since 1.23 raised the minimum
required version of macOS to 11, and we still support macOS 10.15.
However, 1.22.x is now EOL, so we need to update to a supported series.
1.24.0 would require an additional version on our go bootstrapping
toolchain, so I decided to stick to 1.23.x for now.
This commit also updates the relprep.py script to update only the hash
of the main version (which is referred to indirectly with variables).
- - - - -
2 changed files:
- projects/go/config
- tools/relprep.py
Changes:
=====================================
projects/go/config
=====================================
@@ -1,10 +1,11 @@
# vim: filetype=yaml sw=2
-version: '1.22.12'
+version: '1.23.6'
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
use_container: 1
var:
+ source_sha256: 039c5b04e65279daceee8a6f71e70bd05cf5b801782b6f77c6e19e2ed0511222
no_crosscompile: 1
setup: |
mkdir -p /var/tmp/dist
@@ -86,7 +87,9 @@ targets:
var:
GOARCH: arm64
macos:
+ version: 1.22.12
var:
+ source_sha256: 012a7e1f37f362c0918c1dfa3334458ac2da1628c4b9cf4d9ca02db986e17d71
GOOS: darwin
linux:
var:
@@ -126,7 +129,7 @@ input_files:
enable: '[% ! c("var/linux") %]'
- URL: 'https://go.dev/dl/go[% c("version") %].src.tar.gz'
name: go
- sha256sum: 012a7e1f37f362c0918c1dfa3334458ac2da1628c4b9cf4d9ca02db986e17d71
+ sha256sum: '[% c("var/source_sha256") %]'
- project: go-bootstrap
name: go-bootstrap
target_replace:
=====================================
tools/relprep.py
=====================================
@@ -459,7 +459,7 @@ class ReleasePreparation:
break
if not sha256sum:
raise KeyError("Go source package not found.")
- self.find_input(config, "go")["sha256sum"] = sha256sum
+ config["var"]["source_sha256"] = sha256sum
self.save_config("go", config)
def update_manual(self):
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/8…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/8…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-update-responses][main] release: new version, 14.0.7
by ma1 (@ma1) 04 Mar '25
by ma1 (@ma1) 04 Mar '25
04 Mar '25
ma1 pushed to branch main at The Tor Project / Applications / Tor Browser update responses
Commits:
5c3013d4 by hackademix at 2025-03-04T14:55:28+01:00
release: new version, 14.0.7
- - - - -
81 changed files:
- update_3/release/.htaccess
- − update_3/release/13.5.10-14.0.6+13.5.12-linux-i686-ALL.xml
- − update_3/release/13.5.10-14.0.6+13.5.12-linux-x86_64-ALL.xml
- − update_3/release/13.5.10-14.0.6+13.5.12-macos-ALL.xml
- − update_3/release/13.5.10-14.0.6+13.5.12-windows-i686-ALL.xml
- − update_3/release/13.5.10-14.0.6+13.5.12-windows-x86_64-ALL.xml
- + update_3/release/13.5.10-14.0.7+13.5.13-linux-i686-ALL.xml
- + update_3/release/13.5.10-14.0.7+13.5.13-linux-x86_64-ALL.xml
- + update_3/release/13.5.10-14.0.7+13.5.13-macos-ALL.xml
- + update_3/release/13.5.10-14.0.7+13.5.13-windows-i686-ALL.xml
- + update_3/release/13.5.10-14.0.7+13.5.13-windows-x86_64-ALL.xml
- − update_3/release/13.5.11-14.0.6+13.5.12-linux-i686-ALL.xml
- − update_3/release/13.5.11-14.0.6+13.5.12-linux-x86_64-ALL.xml
- − update_3/release/13.5.11-14.0.6+13.5.12-macos-ALL.xml
- − update_3/release/13.5.11-14.0.6+13.5.12-windows-i686-ALL.xml
- − update_3/release/13.5.11-14.0.6+13.5.12-windows-x86_64-ALL.xml
- + update_3/release/13.5.11-14.0.7+13.5.13-linux-i686-ALL.xml
- + update_3/release/13.5.11-14.0.7+13.5.13-linux-x86_64-ALL.xml
- + update_3/release/13.5.11-14.0.7+13.5.13-macos-ALL.xml
- + update_3/release/13.5.11-14.0.7+13.5.13-windows-i686-ALL.xml
- + update_3/release/13.5.11-14.0.7+13.5.13-windows-x86_64-ALL.xml
- + update_3/release/13.5.12-14.0.7+13.5.13-linux-i686-ALL.xml
- + update_3/release/13.5.12-14.0.7+13.5.13-linux-x86_64-ALL.xml
- + update_3/release/13.5.12-14.0.7+13.5.13-macos-ALL.xml
- + update_3/release/13.5.12-14.0.7+13.5.13-windows-i686-ALL.xml
- + update_3/release/13.5.12-14.0.7+13.5.13-windows-x86_64-ALL.xml
- − update_3/release/13.5.9-14.0.6+13.5.12-linux-i686-ALL.xml
- − update_3/release/13.5.9-14.0.6+13.5.12-linux-x86_64-ALL.xml
- − update_3/release/13.5.9-14.0.6+13.5.12-macos-ALL.xml
- − update_3/release/13.5.9-14.0.6+13.5.12-windows-i686-ALL.xml
- − update_3/release/13.5.9-14.0.6+13.5.12-windows-x86_64-ALL.xml
- − update_3/release/14.0.3-14.0.6+13.5.12-linux-i686-ALL.xml
- − update_3/release/14.0.3-14.0.6+13.5.12-linux-x86_64-ALL.xml
- − update_3/release/14.0.3-14.0.6+13.5.12-macos-ALL.xml
- − update_3/release/14.0.3-14.0.6+13.5.12-windows-i686-ALL.xml
- − update_3/release/14.0.3-14.0.6+13.5.12-windows-x86_64-ALL.xml
- − update_3/release/14.0.4-14.0.6+13.5.12-linux-i686-ALL.xml
- − update_3/release/14.0.4-14.0.6+13.5.12-linux-x86_64-ALL.xml
- − update_3/release/14.0.4-14.0.6+13.5.12-macos-ALL.xml
- − update_3/release/14.0.4-14.0.6+13.5.12-windows-i686-ALL.xml
- − update_3/release/14.0.4-14.0.6+13.5.12-windows-x86_64-ALL.xml
- + update_3/release/14.0.4-14.0.7+13.5.13-linux-i686-ALL.xml
- + update_3/release/14.0.4-14.0.7+13.5.13-linux-x86_64-ALL.xml
- + update_3/release/14.0.4-14.0.7+13.5.13-macos-ALL.xml
- + update_3/release/14.0.4-14.0.7+13.5.13-windows-i686-ALL.xml
- + update_3/release/14.0.4-14.0.7+13.5.13-windows-x86_64-ALL.xml
- − update_3/release/14.0.5-14.0.6+13.5.12-linux-i686-ALL.xml
- − update_3/release/14.0.5-14.0.6+13.5.12-linux-x86_64-ALL.xml
- − update_3/release/14.0.5-14.0.6+13.5.12-macos-ALL.xml
- − update_3/release/14.0.5-14.0.6+13.5.12-windows-i686-ALL.xml
- − update_3/release/14.0.5-14.0.6+13.5.12-windows-x86_64-ALL.xml
- + update_3/release/14.0.5-14.0.7+13.5.13-linux-i686-ALL.xml
- + update_3/release/14.0.5-14.0.7+13.5.13-linux-x86_64-ALL.xml
- + update_3/release/14.0.5-14.0.7+13.5.13-macos-ALL.xml
- + update_3/release/14.0.5-14.0.7+13.5.13-windows-i686-ALL.xml
- + update_3/release/14.0.5-14.0.7+13.5.13-windows-x86_64-ALL.xml
- − update_3/release/14.0.6+13.5.12-linux-i686-ALL.xml
- − update_3/release/14.0.6+13.5.12-linux-x86_64-ALL.xml
- − update_3/release/14.0.6+13.5.12-macos-ALL.xml
- − update_3/release/14.0.6+13.5.12-windows-i686-ALL.xml
- − update_3/release/14.0.6+13.5.12-windows-x86_64-ALL.xml
- + update_3/release/14.0.6-14.0.7+13.5.13-linux-i686-ALL.xml
- + update_3/release/14.0.6-14.0.7+13.5.13-linux-x86_64-ALL.xml
- + update_3/release/14.0.6-14.0.7+13.5.13-macos-ALL.xml
- + update_3/release/14.0.6-14.0.7+13.5.13-windows-i686-ALL.xml
- + update_3/release/14.0.6-14.0.7+13.5.13-windows-x86_64-ALL.xml
- + update_3/release/14.0.7+13.5.13-linux-i686-ALL.xml
- + update_3/release/14.0.7+13.5.13-linux-x86_64-ALL.xml
- + update_3/release/14.0.7+13.5.13-macos-ALL.xml
- + update_3/release/14.0.7+13.5.13-windows-i686-ALL.xml
- + update_3/release/14.0.7+13.5.13-windows-x86_64-ALL.xml
- update_3/release/download-android-aarch64.json
- update_3/release/download-android-armv7.json
- update_3/release/download-android-x86.json
- update_3/release/download-android-x86_64.json
- update_3/release/download-linux-i686.json
- update_3/release/download-linux-x86_64.json
- update_3/release/download-macos.json
- update_3/release/download-windows-i686.json
- update_3/release/download-windows-x86_64.json
- update_3/release/downloads.json
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-update-responses…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-update-responses…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser-update-responses][main] release: new version, 14.0.7
by ma1 (@ma1) 04 Mar '25
by ma1 (@ma1) 04 Mar '25
04 Mar '25
ma1 pushed to branch main at The Tor Project / Applications / mullvad-browser-update-responses
Commits:
a9fc7ac5 by hackademix at 2025-03-04T09:30:05+01:00
release: new version, 14.0.7
- - - - -
29 changed files:
- update_1/release/.htaccess
- − update_1/release/14.0-14.0.5-linux-x86_64-ALL.xml
- − update_1/release/14.0-14.0.5-macos-ALL.xml
- − update_1/release/14.0-14.0.5-windows-x86_64-ALL.xml
- − update_1/release/14.0.3-14.0.5-linux-x86_64-ALL.xml
- − update_1/release/14.0.3-14.0.5-macos-ALL.xml
- − update_1/release/14.0.3-14.0.5-windows-x86_64-ALL.xml
- + update_1/release/14.0.3-14.0.7-linux-x86_64-ALL.xml
- + update_1/release/14.0.3-14.0.7-macos-ALL.xml
- + update_1/release/14.0.3-14.0.7-windows-x86_64-ALL.xml
- − update_1/release/14.0.4-14.0.5-linux-x86_64-ALL.xml
- − update_1/release/14.0.4-14.0.5-macos-ALL.xml
- − update_1/release/14.0.4-14.0.5-windows-x86_64-ALL.xml
- + update_1/release/14.0.4-14.0.7-linux-x86_64-ALL.xml
- + update_1/release/14.0.4-14.0.7-macos-ALL.xml
- + update_1/release/14.0.4-14.0.7-windows-x86_64-ALL.xml
- + update_1/release/14.0.5-14.0.7-linux-x86_64-ALL.xml
- + update_1/release/14.0.5-14.0.7-macos-ALL.xml
- + update_1/release/14.0.5-14.0.7-windows-x86_64-ALL.xml
- − update_1/release/14.0.5-linux-x86_64-ALL.xml
- − update_1/release/14.0.5-macos-ALL.xml
- − update_1/release/14.0.5-windows-x86_64-ALL.xml
- + update_1/release/14.0.7-linux-x86_64-ALL.xml
- + update_1/release/14.0.7-macos-ALL.xml
- + update_1/release/14.0.7-windows-x86_64-ALL.xml
- update_1/release/download-linux-x86_64.json
- update_1/release/download-macos.json
- update_1/release/download-windows-x86_64.json
- update_1/release/downloads.json
Changes:
=====================================
update_1/release/.htaccess
=====================================
@@ -1,22 +1,22 @@
RewriteEngine On
-RewriteRule ^[^/]+/14.0.5/ no-update.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/14.0/ALL 14.0-14.0.5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/14.0.3/ALL 14.0.3-14.0.5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/14.0.4/ALL 14.0.4-14.0.5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/[^/]+/ALL 14.0.5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Linux_x86_64-gcc3/ 14.0.5-linux-x86_64-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/14.0/ALL 14.0-14.0.5-macos-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/14.0.3/ALL 14.0.3-14.0.5-macos-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/14.0.4/ALL 14.0.4-14.0.5-macos-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/[^/]+/ALL 14.0.5-macos-ALL.xml [last]
-RewriteRule ^Darwin_x86_64-gcc3/ 14.0.5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/14.0/ALL 14.0-14.0.5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/14.0.3/ALL 14.0.3-14.0.5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/14.0.4/ALL 14.0.4-14.0.5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/[^/]+/ALL 14.0.5-macos-ALL.xml [last]
-RewriteRule ^Darwin_aarch64-gcc3/ 14.0.5-macos-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/14.0/ALL 14.0-14.0.5-windows-x86_64-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/14.0.3/ALL 14.0.3-14.0.5-windows-x86_64-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/14.0.4/ALL 14.0.4-14.0.5-windows-x86_64-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/[^/]+/ALL 14.0.5-windows-x86_64-ALL.xml [last]
-RewriteRule ^WINNT_x86_64-gcc3-x64/ 14.0.5-windows-x86_64-ALL.xml [last]
+RewriteRule ^[^/]+/14.0.7/ no-update.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/14.0.3/ALL 14.0.3-14.0.7-linux-x86_64-ALL.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/14.0.4/ALL 14.0.4-14.0.7-linux-x86_64-ALL.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/14.0.5/ALL 14.0.5-14.0.7-linux-x86_64-ALL.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/[^/]+/ALL 14.0.7-linux-x86_64-ALL.xml [last]
+RewriteRule ^Linux_x86_64-gcc3/ 14.0.7-linux-x86_64-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/14.0.3/ALL 14.0.3-14.0.7-macos-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/14.0.4/ALL 14.0.4-14.0.7-macos-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/14.0.5/ALL 14.0.5-14.0.7-macos-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/[^/]+/ALL 14.0.7-macos-ALL.xml [last]
+RewriteRule ^Darwin_x86_64-gcc3/ 14.0.7-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/14.0.3/ALL 14.0.3-14.0.7-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/14.0.4/ALL 14.0.4-14.0.7-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/14.0.5/ALL 14.0.5-14.0.7-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/[^/]+/ALL 14.0.7-macos-ALL.xml [last]
+RewriteRule ^Darwin_aarch64-gcc3/ 14.0.7-macos-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/14.0.3/ALL 14.0.3-14.0.7-windows-x86_64-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/14.0.4/ALL 14.0.4-14.0.7-windows-x86_64-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/14.0.5/ALL 14.0.5-14.0.7-windows-x86_64-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/[^/]+/ALL 14.0.7-windows-x86_64-ALL.xml [last]
+RewriteRule ^WINNT_x86_64-gcc3-x64/ 14.0.7-windows-x86_64-ALL.xml [last]
=====================================
update_1/release/14.0-14.0.5-linux-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64-14.0.5_…" size="114339861" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64--14.0-1…" size="11635275" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0-14.0.5-macos-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos-14.0.5_ALL.mar" size="129434736" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos--14.0-14.0.5_A…" size="16862631" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0-14.0.5-windows-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64-14.0.…" size="97771772" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64--14.0…" size="12155284" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.3-14.0.5-linux-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64-14.0.5_…" size="114339861" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64--14.0.3…" size="9309067" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.3-14.0.5-macos-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos-14.0.5_ALL.mar" size="129434736" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos--14.0.3-14.0.5…" size="81031997" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.3-14.0.5-windows-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64-14.0.…" size="97771772" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64--14.0…" size="9890912" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.3-14.0.7-linux-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64-14.0.7_…" size="108078626" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64--14.0.3…" size="14381250" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.3-14.0.7-macos-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos-14.0.7_ALL.mar" size="129574292" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos--14.0.3-14.0.7…" size="19808919" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.3-14.0.7-windows-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64-14.0.…" size="97894488" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64--14.0…" size="14968204" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.4-14.0.5-linux-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64-14.0.5_…" size="114339861" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64--14.0.4…" size="7962710" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.4-14.0.5-macos-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos-14.0.5_ALL.mar" size="129434736" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos--14.0.4-14.0.5…" size="79845313" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.4-14.0.5-windows-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64-14.0.…" size="97771772" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64--14.0…" size="8344967" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.4-14.0.7-linux-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64-14.0.7_…" size="108078626" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64--14.0.4…" size="14040321" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.4-14.0.7-macos-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos-14.0.7_ALL.mar" size="129574292" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos--14.0.4-14.0.7…" size="19338391" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.4-14.0.7-windows-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64-14.0.…" size="97894488" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64--14.0…" size="14563327" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.5-14.0.7-linux-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64-14.0.7_…" size="108078626" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64--14.0.5…" size="11255298" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.5-14.0.7-macos-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos-14.0.7_ALL.mar" size="129574292" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos--14.0.5-14.0.7…" size="16014998" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.5-14.0.7-windows-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64-14.0.…" size="97894488" type="complete"></patch><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64--14.0…" size="11785652" type="partial"></patch></update></updates>
=====================================
update_1/release/14.0.5-linux-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64-14.0.5_…" size="114339861" type="complete"></patch></update></updates>
=====================================
update_1/release/14.0.5-macos-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos-14.0.5_ALL.mar" size="129434736" type="complete"></patch></update></updates>
=====================================
update_1/release/14.0.5-windows-x86_64-ALL.xml deleted
=====================================
@@ -1,2 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<updates><update type="minor" displayVersion="14.0.5" appVersion="14.0.5" platformVersion="128.7.0" buildID="20250203100000" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.5" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64-14.0.…" size="97771772" type="complete"></patch></update></updates>
=====================================
update_1/release/14.0.7-linux-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedInstructionSet="SSE2"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64-14.0.7_…" size="108078626" type="complete"></patch></update></updates>
=====================================
update_1/release/14.0.7-macos-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedOSVersion="19.0.0"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos-14.0.7_ALL.mar" size="129574292" type="complete"></patch></update></updates>
=====================================
update_1/release/14.0.7-windows-x86_64-ALL.xml
=====================================
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<updates><update type="minor" displayVersion="14.0.7" appVersion="14.0.7" platformVersion="128.8.0" buildID="20250303093702" detailsURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" actions="showURL" openURL="https://github.com/mullvad/mullvad-browser/releases/14.0.7" minSupportedOSVersion="10.0"><patch URL="https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64-14.0.…" size="97894488" type="complete"></patch></update></updates>
=====================================
update_1/release/download-linux-x86_64.json
=====================================
@@ -1 +1 @@
-{"binary":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64-14.0.5.…","git_tag":"mb-14.0.5-build1","sig":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64-14.0.5.…","version":"14.0.5"}
\ No newline at end of file
+{"binary":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64-14.0.7.…","git_tag":"mb-14.0.7-build2","sig":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64-14.0.7.…","version":"14.0.7"}
\ No newline at end of file
=====================================
update_1/release/download-macos.json
=====================================
@@ -1 +1 @@
-{"binary":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos-14.0.5.dmg","git_tag":"mb-14.0.5-build1","sig":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos-14.0.5.dmg.asc","version":"14.0.5"}
\ No newline at end of file
+{"binary":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos-14.0.7.dmg","git_tag":"mb-14.0.7-build2","sig":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos-14.0.7.dmg.asc","version":"14.0.7"}
\ No newline at end of file
=====================================
update_1/release/download-windows-x86_64.json
=====================================
@@ -1 +1 @@
-{"binary":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64-14.0.…","git_tag":"mb-14.0.5-build1","sig":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64-14.0.…","version":"14.0.5"}
\ No newline at end of file
+{"binary":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64-14.0.…","git_tag":"mb-14.0.7-build2","sig":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64-14.0.…","version":"14.0.7"}
\ No newline at end of file
=====================================
update_1/release/downloads.json
=====================================
@@ -1 +1 @@
-{"downloads":{"linux-x86_64":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64-14.0.5.…","sig":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-linux-x86_64-14.0.5.…"}},"macos":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos-14.0.5.dmg","sig":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-macos-14.0.5.dmg.asc"}},"win64":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64-14.0.…","sig":"https://cdn.mullvad.net/browser/14.0.5/mullvad-browser-windows-x86_64-14.0.…"}}},"tag":"mb-14.0.5-build1","version":"14.0.5"}
\ No newline at end of file
+{"downloads":{"linux-x86_64":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64-14.0.7.…","sig":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-linux-x86_64-14.0.7.…"}},"macos":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos-14.0.7.dmg","sig":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-macos-14.0.7.dmg.asc"}},"win64":{"ALL":{"binary":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64-14.0.…","sig":"https://cdn.mullvad.net/browser/14.0.7/mullvad-browser-windows-x86_64-14.0.…"}}},"tag":"mb-14.0.7-build2","version":"14.0.7"}
\ No newline at end of file
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser-update-respo…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser-update-respo…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

04 Mar '25
ma1 pushed new tag mb-14.0.7-build2 at The Tor Project / Applications / tor-browser-build
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/tree/mb-…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build] Pushed new tag tbb-13.5.13-build1
by Pier Angelo Vendrame (@pierov) 03 Mar '25
by Pier Angelo Vendrame (@pierov) 03 Mar '25
03 Mar '25
Pier Angelo Vendrame pushed new tag tbb-13.5.13-build1 at The Tor Project / Applications / tor-browser-build
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/tree/tbb…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-13.5] Bug 41366: Prepare Tor Browser Legacy 13.5.13
by Pier Angelo Vendrame (@pierov) 03 Mar '25
by Pier Angelo Vendrame (@pierov) 03 Mar '25
03 Mar '25
Pier Angelo Vendrame pushed to branch maint-13.5 at The Tor Project / Applications / tor-browser-build
Commits:
a92d6071 by Pier Angelo Vendrame at 2025-03-03T18:33:56+01:00
Bug 41366: Prepare Tor Browser Legacy 13.5.13
- - - - -
6 changed files:
- projects/browser/Bundle-Data/Docs-TBB/ChangeLog.txt
- projects/firefox/config
- projects/openssl/config
- projects/tor/config
- projects/translation/config
- rbm.conf
Changes:
=====================================
projects/browser/Bundle-Data/Docs-TBB/ChangeLog.txt
=====================================
@@ -1,3 +1,18 @@
+Tor Browser 13.5.13 - March 04 2025
+ * All Platforms
+ * Updated Firefox to 115.21.0esr
+ * Updated Tor to 0.4.8.14
+ * Updated OpenSSL to 3.0.16
+ * Bug 43168: Review ESR 115 expiry date for legacy OS message [tor-browser]
+ * Bug 43530: Rebase Tor Browser legacy onto 115.21.0esr [tor-browser]
+ * Bug 41362: Remove meek azure from the builtin bridges [tor-browser-build]
+ * Build System
+ * All Platforms
+ * Bug 41380: Update kick-devmole script to use Mullvad's new GitHub action [tor-browser-build]
+ * Bug 41384: OpenSSL hash files have changed format [tor-browser-build]
+ * macOS
+ * Bug 41367: Backport to legacy: Bug 41314: Add tools/setup-martools and use it in dmg2mar and update_response scripts [tor-browser-build]
+
Tor Browser 13.5.12 - February 04 2025
* All Platforms
* Updated Firefox to 115.20.0esr
@@ -14,7 +29,6 @@ Tor Browser 13.5.11 - July 01 2025
* All Platforms
* Updated Firefox to 115.19.0esr
* Updated NoScript to 12.1.1
- * Updated GeckoView to 115.19.0esr
* Bug 43176: noscript-marker CSP warnings in the console [tor-browser]
* Bug 43269: NoScript localization issue [tor-browser]
* Bug 43282: Unable to click/tap/select anything adjacent the WebGL placeholders [tor-browser]
=====================================
projects/firefox/config
=====================================
@@ -14,12 +14,12 @@ container:
use_container: 1
var:
- firefox_platform_version: 115.20.0
+ firefox_platform_version: 115.21.0
firefox_version: '[% c("var/firefox_platform_version") %]esr'
browser_series: '13.5'
browser_rebase: 1
browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]'
- browser_build: 3
+ browser_build: 2
branding_directory_prefix: 'tb'
copyright_year: '[% exec("git show -s --format=%ci").remove("-.*") %]'
nightly_updates_publish_dir: '[% c("var/nightly_updates_publish_dir_prefix") %]nightly-[% c("var/osname") %]'
=====================================
projects/openssl/config
=====================================
@@ -1,5 +1,5 @@
# vim: filetype=yaml sw=2
-version: 3.0.15
+version: 3.0.16
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
use_container: 1
@@ -36,5 +36,5 @@ input_files:
- name: '[% c("var/compiler") %]'
project: '[% c("var/compiler") %]'
- URL: 'https://github.com/openssl/openssl/releases/download/openssl-[% c("version") %]/openssl-[% c("version") %].tar.gz'
- sha256sum: 23c666d0edf20f14249b3d8f0368acaee9ab585b09e1de82107c66e1f3ec9533
+ sha256sum: 57e03c50feab5d31b152af2b764f10379aecd8ee92f16c985983ce4a99f7ef86
name: openssl
=====================================
projects/tor/config
=====================================
@@ -1,6 +1,6 @@
# vim: filetype=yaml sw=2
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
-version: 0.4.8.13
+version: 0.4.8.14
git_hash: 'tor-[% c("version") %]'
git_url: https://gitlab.torproject.org/tpo/core/tor.git
git_submodule: 1
=====================================
projects/translation/config
=====================================
@@ -12,13 +12,13 @@ compress_tar: 'gz'
steps:
base-browser:
base-browser: '[% INCLUDE build %]'
- git_hash: 93eddbd3888852c09e130d536fb3c9bd7e4e6f57
+ git_hash: 21fed48fc58df9e6c4d9f67b048fcae831df50c9
targets:
nightly:
git_hash: 'base-browser'
tor-browser:
tor-browser: '[% INCLUDE build %]'
- git_hash: dd30508387040bf0a1217a1eb9edb80ac21926f2
+ git_hash: 100908b702f92bc001b69cdd70f96a6e63134516
targets:
nightly:
git_hash: 'tor-browser'
=====================================
rbm.conf
=====================================
@@ -73,18 +73,18 @@ buildconf:
git_signtag_opt: '-s'
var:
- torbrowser_version: '13.5.12'
+ torbrowser_version: '13.5.13'
torbrowser_build: 'build1'
# This should be the date of when the build is started. For the build
# to be reproducible, browser_release_date should always be in the past.
- browser_release_date: '2025/02/03 10:30:01'
+ browser_release_date: '2025/03/03 17:00:00'
browser_release_date_timestamp: '[% USE date; date.format(c("var/browser_release_date"), "%s") %]'
updater_enabled: 1
build_mar: 1
torbrowser_incremental_from:
+ - 13.5.12
- 13.5.11
- 13.5.10
- - 13.5.9
mar_channel_id: '[% c("var/projectname") %]-torproject-[% c("var/channel") %]'
# By default, we sort the list of installed packages. This allows sharing
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/a…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-13.5] Bug 41384: Fix the way we fetch OpenSSL sha256.
by Pier Angelo Vendrame (@pierov) 03 Mar '25
by Pier Angelo Vendrame (@pierov) 03 Mar '25
03 Mar '25
Pier Angelo Vendrame pushed to branch maint-13.5 at The Tor Project / Applications / tor-browser-build
Commits:
6ea176f3 by Pier Angelo Vendrame at 2025-03-03T18:33:04+01:00
Bug 41384: Fix the way we fetch OpenSSL sha256.
OpenSSL used to have only the hash of the source archive in their
.sha256 file, without the archive name.
At a certain point, they moved to the format generated by sha256sum, so
we need to update relprep.py to take that into account.
- - - - -
1 changed file:
- tools/relprep.py
Changes:
=====================================
tools/relprep.py
=====================================
@@ -413,7 +413,7 @@ class ReleasePreparation:
hash_url = f"https://github.com/openssl/openssl/releases/download/openssl-{version}/open…"
r = requests.get(hash_url)
r.raise_for_status()
- source["sha256sum"] = r.text.strip()
+ source["sha256sum"] = r.text.strip()[:64]
self.save_config("openssl", config)
logger.debug("Updated OpenSSL to %s and config saved.", version)
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/6…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/6…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-14.0] Bug 41384: Fix the way we fetch OpenSSL sha256.
by Pier Angelo Vendrame (@pierov) 03 Mar '25
by Pier Angelo Vendrame (@pierov) 03 Mar '25
03 Mar '25
Pier Angelo Vendrame pushed to branch maint-14.0 at The Tor Project / Applications / tor-browser-build
Commits:
7fa2c5e4 by Pier Angelo Vendrame at 2025-03-03T18:31:34+01:00
Bug 41384: Fix the way we fetch OpenSSL sha256.
OpenSSL used to have only the hash of the source archive in their
.sha256 file, without the archive name.
At a certain point, they moved to the format generated by sha256sum, so
we need to update relprep.py to take that into account.
- - - - -
1 changed file:
- tools/relprep.py
Changes:
=====================================
tools/relprep.py
=====================================
@@ -392,7 +392,7 @@ class ReleasePreparation:
hash_url = f"https://github.com/openssl/openssl/releases/download/openssl-{version}/open…"
r = requests.get(hash_url)
r.raise_for_status()
- source["sha256sum"] = r.text.strip()
+ source["sha256sum"] = r.text.strip()[:64]
self.save_config("openssl", config)
logger.debug("Updated OpenSSL to %s and config saved.", version)
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/7…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/7…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][main] Bug 41384: Fix the way we fetch OpenSSL sha256.
by Pier Angelo Vendrame (@pierov) 03 Mar '25
by Pier Angelo Vendrame (@pierov) 03 Mar '25
03 Mar '25
Pier Angelo Vendrame pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
06902e0b by Pier Angelo Vendrame at 2025-03-03T17:53:17+01:00
Bug 41384: Fix the way we fetch OpenSSL sha256.
OpenSSL used to have only the hash of the source archive in their
.sha256 file, without the archive name.
At a certain point, they moved to the format generated by sha256sum, so
we need to update relprep.py to take that into account.
- - - - -
1 changed file:
- tools/relprep.py
Changes:
=====================================
tools/relprep.py
=====================================
@@ -392,7 +392,7 @@ class ReleasePreparation:
hash_url = f"https://github.com/openssl/openssl/releases/download/openssl-{version}/open…"
r = requests.get(hash_url)
r.raise_for_status()
- source["sha256sum"] = r.text.strip()
+ source["sha256sum"] = r.text.strip()[:64]
self.save_config("openssl", config)
logger.debug("Updated OpenSSL to %s and config saved.", version)
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/0…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/0…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

03 Mar '25
ma1 pushed new tag tbb-14.0.7-build2 at The Tor Project / Applications / tor-browser-build
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/tree/tbb…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-14.0] Bug 41360,41361 (build2): Prepare Tor,Mullvad Browsers 14.0.7
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed to branch maint-14.0 at The Tor Project / Applications / tor-browser-build
Commits:
5a3864d5 by hackademix at 2025-03-03T16:46:45+01:00
Bug 41360,41361 (build2): Prepare Tor,Mullvad Browsers 14.0.7
- - - - -
2 changed files:
- projects/browser/Bundle-Data/Docs-MB/ChangeLog.txt
- rbm.conf
Changes:
=====================================
projects/browser/Bundle-Data/Docs-MB/ChangeLog.txt
=====================================
@@ -12,6 +12,8 @@ Mullvad Browser 14.0.7 - March 04 2025
* Build System
* All Platforms
* Bug 41380: Update kick-devmole script to use Mullvad's new GitHub action [tor-browser-build]
+ * Linux
+ * Bug 41385: Copy only libstdc++.so.6 on Linux [tor-browser-build]
Mullvad Browser 14.0.5 - February 04 2025
* All Platforms
=====================================
rbm.conf
=====================================
@@ -74,7 +74,7 @@ buildconf:
var:
torbrowser_version: '14.0.7'
- torbrowser_build: 'build1'
+ torbrowser_build: 'build2'
# This should be the date of when the build is started. For the build
# to be reproducible, browser_release_date should always be in the past.
browser_release_date: '2025/03/03 09:37:02'
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/5…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/5…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-14.0] Bug 41385: Copy libstdc++.so.6 only.
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed to branch maint-14.0 at The Tor Project / Applications / tor-browser-build
Commits:
023c79bb by hackademix at 2025-03-03T16:21:10+01:00
Bug 41385: Copy libstdc++.so.6 only.
- - - - -
1 changed file:
- projects/firefox/build
Changes:
=====================================
projects/firefox/build
=====================================
@@ -333,7 +333,7 @@ END;
mkdir -p "$libdest"
# Not copying libstdc++.so.* as that dups with the full libstdc++.so.6.0.xx the .6 links to
# and libstdc++.so.6.0.28-gdb.py which is also not needed
- cp /var/tmp/dist/gcc/[% c("var/libdir") %]/libstdc++.so.* "$libdest"
+ cp /var/tmp/dist/gcc/[% c("var/libdir") %]/libstdc++.so.6 "$libdest"
[% IF c("var/asan") -%]
cp /var/tmp/dist/gcc/[% c("var/libdir") %]/libasan.so.* "$libdest"
cp /var/tmp/dist/gcc/[% c("var/libdir") %]/libubsan.so.* "$libdest"
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/0…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/0…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-14.0] Bug 41360 (fix): Update legacy version numbers.
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed to branch maint-14.0 at The Tor Project / Applications / tor-browser-build
Commits:
f86855dd by hackademix at 2025-03-03T14:18:24+01:00
Bug 41360 (fix): Update legacy version numbers.
- - - - -
1 changed file:
- rbm.conf
Changes:
=====================================
rbm.conf
=====================================
@@ -88,8 +88,8 @@ var:
- '[% IF c("var/mullvad-browser") %]14.0.3[% END %]'
mar_channel_id: '[% c("var/projectname") %]-torproject-[% c("var/channel") %]'
- torbrowser_legacy_version: 13.5.12
- torbrowser_legacy_platform_version: 115.20.0
+ torbrowser_legacy_version: 13.5.13
+ torbrowser_legacy_platform_version: 115.21.0
# By default, we sort the list of installed packages. This allows sharing
# containers with identical list of packages, even if they are not listed
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/f…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/commit/f…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

03 Mar '25
ma1 pushed new tag tbb-14.0.7-build1 at The Tor Project / Applications / tor-browser-build
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/tree/tbb…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser-build][maint-14.0] 3 commits: Disable Go updating to stay on 1.22 for macOS 10.15 compat.
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed to branch maint-14.0 at The Tor Project / Applications / tor-browser-build
Commits:
81c8abba by hackademix at 2025-03-03T10:34:30+01:00
Disable Go updating to stay on 1.22 for macOS 10.15 compat.
- - - - -
7de2da28 by hackademix at 2025-03-03T11:35:27+01:00
Bug 41337 (fix) Use strip instead of $STRIP (undefined).
- - - - -
3d341fde by hackademix at 2025-03-03T11:35:27+01:00
Bug 41360,41361: Prepare Tor,Mullvad Browsers 14.0.7
- - - - -
10 changed files:
- projects/browser/Bundle-Data/Docs-MB/ChangeLog.txt
- projects/browser/Bundle-Data/Docs-TBB/ChangeLog.txt
- projects/firefox/build
- projects/firefox/config
- projects/geckoview/config
- projects/openssl/config
- projects/translation/config
- projects/zstd/config
- rbm.conf
- tools/relprep.py
Changes:
=====================================
projects/browser/Bundle-Data/Docs-MB/ChangeLog.txt
=====================================
@@ -1,3 +1,18 @@
+Mullvad Browser 14.0.7 - March 04 2025
+ * All Platforms
+ * Updated Firefox to 128.8.0esr
+ * Bug 395: Set Mullvad Leta as default search engine [mullvad-browser]
+ * Bug 398: Rebase Mullvad Browser release onto Firefox 128.8.0esr [mullvad-browser]
+ * Bug 403: Backport Bugzilla 1915093: Don't prefetch HTTPS RR if proxyDNS is enabled [mullvad-browser]
+ * Bug 43536: Backport security fixes from Firefox 136 [tor-browser]
+ * macOS
+ * Bug 43468: ScreenCaptureKit framework should be a weak link [tor-browser]
+ * Linux
+ * Bug 394: Missing package when try to install Mullvad Browser in Debian Trixie [mullvad-browser]
+ * Build System
+ * All Platforms
+ * Bug 41380: Update kick-devmole script to use Mullvad's new GitHub action [tor-browser-build]
+
Mullvad Browser 14.0.5 - February 04 2025
* All Platforms
* Updated Firefox to 128.7.0esr
=====================================
projects/browser/Bundle-Data/Docs-TBB/ChangeLog.txt
=====================================
@@ -1,3 +1,17 @@
+Tor Browser 14.0.7 - March 04 2025
+ * All Platforms
+ * Updated OpenSSL to 3.0.16
+ * Bug 43522: Rebase Tor Browser release onto 128.0.8esr [tor-browser]
+ * Bug 43536: Backport security fixes from Firefox 136 [tor-browser]
+ * Windows + macOS + Linux
+ * Updated Firefox to 128.8.0esr
+ * Android
+ * Updated GeckoView to 128.8.0esr
+ * Updated Zstandard to 1.5.7
+ * Build System
+ * All Platforms
+ * Bug 41380: Update kick-devmole script to use Mullvad's new GitHub action [tor-browser-build]
+
Tor Browser 14.0.6 - February 07 2025
* All Platforms
* Updated Tor to 0.4.8.14
=====================================
projects/firefox/build
=====================================
@@ -341,7 +341,7 @@ END;
# Strip and generate debuginfo for libs
for LIB in "$libdest"/*so*
do
- "$STRIP" "$LIB"
+ strip "$LIB"
done
[% END -%]
=====================================
projects/firefox/config
=====================================
@@ -14,12 +14,12 @@ container:
use_container: 1
var:
- firefox_platform_version: '128.7.0'
+ firefox_platform_version: '128.8.0'
firefox_version: '[% c("var/firefox_platform_version") %]esr'
browser_series: '14.0'
browser_rebase: 1
browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]'
- browser_build: 3
+ browser_build: 2
branding_directory_prefix: 'tb'
copyright_year: '[% exec("git show -s --format=%ci").remove("-.*") %]'
nightly_updates_publish_dir: '[% c("var/nightly_updates_publish_dir_prefix") %]nightly-[% c("var/osname") %]'
=====================================
projects/geckoview/config
=====================================
@@ -16,12 +16,12 @@ container:
build_apk: 1
var:
- firefox_platform_version: '128.7.0'
+ firefox_platform_version: '128.8.0'
geckoview_version: '[% c("var/firefox_platform_version") %]esr'
browser_series: '14.0'
browser_rebase: 1
browser_branch: '[% c("var/browser_series") %]-[% c("var/browser_rebase") %]'
- browser_build: 3
+ browser_build: 2
copyright_year: '[% exec("git show -s --format=%ci").remove("-.*") %]'
gitlab_project: https://gitlab.torproject.org/tpo/applications/tor-browser
git_commit: '[% exec("git rev-parse HEAD") %]'
=====================================
projects/openssl/config
=====================================
@@ -1,5 +1,5 @@
# vim: filetype=yaml sw=2
-version: 3.0.15
+version: 3.0.16
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
use_container: 1
@@ -36,5 +36,5 @@ input_files:
- name: '[% c("var/compiler") %]'
project: '[% c("var/compiler") %]'
- URL: 'https://github.com/openssl/openssl/releases/download/openssl-[% c("version") %]/openssl-[% c("version") %].tar.gz'
- sha256sum: 23c666d0edf20f14249b3d8f0368acaee9ab585b09e1de82107c66e1f3ec9533
+ sha256sum: 57e03c50feab5d31b152af2b764f10379aecd8ee92f16c985983ce4a99f7ef86
name: openssl
=====================================
projects/translation/config
=====================================
@@ -12,19 +12,19 @@ compress_tar: 'gz'
steps:
base-browser:
base-browser: '[% INCLUDE build %]'
- git_hash: 93eddbd3888852c09e130d536fb3c9bd7e4e6f57
+ git_hash: 21fed48fc58df9e6c4d9f67b048fcae831df50c9
targets:
nightly:
git_hash: 'base-browser'
tor-browser:
tor-browser: '[% INCLUDE build %]'
- git_hash: dd30508387040bf0a1217a1eb9edb80ac21926f2
+ git_hash: 100908b702f92bc001b69cdd70f96a6e63134516
targets:
nightly:
git_hash: 'tor-browser'
mullvad-browser:
mullvad-browser: '[% INCLUDE build %]'
- git_hash: 6a1ef41c664a5185e25ca2c4bbf5d7447bd888a7
+ git_hash: d279ce2add9a5bb3fc71f24b55679e3e0706f0eb
targets:
nightly:
git_hash: 'mullvad-browser'
@@ -32,7 +32,7 @@ steps:
fenix: '[% INCLUDE build %]'
# We need to bump the commit before releasing but just pointing to a branch
# might cause too much rebuidling of the Firefox part.
- git_hash: e4f5825b1125e2c8c2aa8d4fdaa7e002d8f2934a
+ git_hash: 75d7b65ebdcde2bb5b8788d13a33373fc4084965
compress_tar: 'zst'
targets:
nightly:
=====================================
projects/zstd/config
=====================================
@@ -1,7 +1,7 @@
# vim: filetype=yaml sw=2
-version: 1.5.6
+version: 1.5.7
git_url: https://github.com/facebook/zstd.git
-git_hash: 794ea1b0afca0f020f4e57b6732332231fb23c70
+git_hash: f8745da6ff1ad1e7bab384bd1f9d742439278e99
filename: '[% project %]-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].tar.[% c("compress_tar") %]'
container:
=====================================
rbm.conf
=====================================
@@ -73,18 +73,19 @@ buildconf:
git_signtag_opt: '-s'
var:
- torbrowser_version: '14.0.6'
+ torbrowser_version: '14.0.7'
torbrowser_build: 'build1'
# This should be the date of when the build is started. For the build
# to be reproducible, browser_release_date should always be in the past.
- browser_release_date: '2025/02/06 18:43:58'
+ browser_release_date: '2025/03/03 09:37:02'
browser_release_date_timestamp: '[% USE date; date.format(c("var/browser_release_date"), "%s") %]'
updater_enabled: 1
build_mar: 1
torbrowser_incremental_from:
+ - '[% IF c("var/tor-browser") %]14.0.6[% END %]'
- 14.0.5
- 14.0.4
- - 14.0.3
+ - '[% IF c("var/mullvad-browser") %]14.0.3[% END %]'
mar_channel_id: '[% c("var/projectname") %]-torproject-[% c("var/channel") %]'
torbrowser_legacy_version: 13.5.12
=====================================
tools/relprep.py
=====================================
@@ -135,7 +135,7 @@ class ReleasePreparation:
self.update_zlib()
if self.android:
self.update_zstd()
- self.update_go()
+ # self.update_go()
self.update_manual()
self.update_changelogs()
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser] Pushed new tag mullvad-browser-128.8.0esr-14.0-1-build2
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed new tag mullvad-browser-128.8.0esr-14.0-1-build2 at The Tor Project / Applications / Mullvad Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/tree/mullv…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser][mullvad-browser-128.8.0esr-14.0-1] 5 commits: Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed to branch mullvad-browser-128.8.0esr-14.0-1 at The Tor Project / Applications / Mullvad Browser
Commits:
955c81f6 by Tara at 2025-03-03T10:15:09+01:00
Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
Differential Revision: https://phabricator.services.mozilla.com/D236606
- - - - -
7377c502 by John Schanck at 2025-03-03T10:15:10+01:00
Bug 1922357 - disallow the fido: URI scheme. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D237313
Differential Revision: https://phabricator.services.mozilla.com/D238681
- - - - -
bddb7190 by Jeff Boek at 2025-03-03T10:15:11+01:00
Bug 1928334 - Handles animating activities a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D238342
Differential Revision: https://phabricator.services.mozilla.com/D238845
- - - - -
43064cfd by Tom Schuster at 2025-03-03T10:15:12+01:00
Bug 1942022 - Improve the about:protections CSP. r=firefox-desktop-core-reviewers ,mossop
Differential Revision: https://phabricator.services.mozilla.com/D234507
- - - - -
64d9c395 by Tom Schuster at 2025-03-03T10:15:13+01:00
Bug 1942025 - Improve the about:privatebrowsing CSP. r=firefox-desktop-core-reviewers ,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D234508
- - - - -
11 changed files:
- browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
- browser/components/protections/content/protections.html
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
- mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
- mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
- mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
Changes:
=====================================
browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
=====================================
@@ -10,7 +10,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; img-src chrome: blob:; object-src 'none';"
/>
<meta name="color-scheme" content="light dark" />
<link rel="icon" href="chrome://browser/skin/privatebrowsing/favicon.svg" />
=====================================
browser/components/protections/content/protections.html
=====================================
@@ -8,7 +8,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; object-src 'none'"
/>
<meta name="color-scheme" content="light dark" />
<link rel="localization" href="branding/brand.ftl" />
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
=====================================
@@ -1818,7 +1818,7 @@ class GeckoEngineSession(
internal const val ABOUT_BLANK = "about:blank"
internal const val JS_SCHEME = "javascript"
internal val BLOCKED_SCHEMES =
- listOf("file", "resource", JS_SCHEME) // See 1684761 and 1684947
+ listOf("file", "resource", "fido", JS_SCHEME) // See 1684761 and 1684947
/**
* Provides an ErrorType corresponding to the error code provided.
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
=====================================
@@ -631,6 +631,11 @@ class GeckoEngineSessionTest {
engineSession.loadUrl("RESOURCE://package/test.text")
verify(geckoSession, never()).load(GeckoSession.Loader().uri("resource://package/test.text"))
verify(geckoSession, never()).load(GeckoSession.Loader().uri("RESOURCE://package/test.text"))
+
+ engineSession.loadUrl("fido:/12345678")
+ engineSession.loadUrl("FIDO:/12345678")
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("fido:/12345678"))
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("FIDO:/12345678"))
}
@Test
=====================================
mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
=====================================
@@ -313,6 +313,7 @@ class AppLinksUseCases(
"https", "moz-extension", "moz-safe-about", "resource", "view-source", "ws", "wss", "blob",
)
- internal val ALWAYS_DENY_SCHEMES: Set<String> = setOf("jar", "file", "javascript", "data", "about", "content")
+ internal val ALWAYS_DENY_SCHEMES: Set<String> =
+ setOf("jar", "file", "javascript", "data", "about", "content", "fido")
}
}
=====================================
mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
=====================================
@@ -47,6 +47,7 @@ class AppLinksUseCasesTest {
private val javascriptUrl = "javascript:'hello, world'"
private val jarUrl = "jar:file://some/path/test.html"
private val contentUrl = "content://media/external_primary/downloads/12345"
+ private val fidoPath = "fido:12345678"
private val fileType = "audio/mpeg"
private val layerUrl = "https://example.com"
private val layerPackage = "com.example.app"
@@ -215,6 +216,15 @@ class AppLinksUseCasesTest {
assertFalse(redirect.isRedirect())
}
+ @Test
+ fun `A fido url is not an app link`() {
+ val context = createContext(Triple(fidoPath, appPackage, ""))
+ val subject = AppLinksUseCases(context, { true })
+
+ val redirect = subject.interceptedAppLinkRedirect(fidoPath)
+ assertFalse(redirect.isRedirect())
+ }
+
@Test
fun `Will not redirect app link if browser option set to false and scheme is supported`() {
val context = createContext(Triple(appUrl, appPackage, ""))
=====================================
mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
=====================================
@@ -9,6 +9,7 @@ import android.content.Intent
import androidx.annotation.VisibleForTesting
import androidx.annotation.VisibleForTesting.Companion.PRIVATE
import androidx.core.view.isVisible
+import androidx.fragment.app.DialogFragment
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import kotlinx.coroutines.CoroutineScope
@@ -1094,7 +1095,15 @@ class PromptFeature private constructor(
emitPromptDismissedFact(promptName = promptRequest::class.simpleName.ifNullOrEmpty { "" })
}
+ @VisibleForTesting
+ internal fun redirectDialogFragmentIsActive() =
+ (fragmentManager.findFragmentByTag("SHOULD_OPEN_APP_LINK_PROMPT_DIALOG") as? DialogFragment) != null
+
private fun canShowThisPrompt(promptRequest: PromptRequest): Boolean {
+ if (redirectDialogFragmentIsActive()) {
+ return false
+ }
+
return when (promptRequest) {
is SingleChoice,
is MultipleChoice,
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
=====================================
@@ -798,7 +798,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity {
return false
}
- final override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
ProfilerMarkers.addForDispatchTouchEvent(components.core.engine.profiler, ev)
return super.dispatchTouchEvent(ev)
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
=====================================
@@ -7,6 +7,7 @@ package org.mozilla.fenix.customtabs
import android.app.assist.AssistContent
import android.net.Uri
import android.os.Build
+import android.view.MotionEvent
import androidx.annotation.RequiresApi
import androidx.annotation.VisibleForTesting
import mozilla.components.browser.state.selector.findCustomTab
@@ -24,6 +25,8 @@ const val EXTRA_IS_SANDBOX_CUSTOM_TAB = "org.mozilla.fenix.customtabs.EXTRA_IS_S
*/
@Suppress("TooManyFunctions")
open class ExternalAppBrowserActivity : HomeActivity() {
+ var isFinishedAnimating = false
+
override fun onResume() {
super.onResume()
@@ -74,4 +77,17 @@ open class ExternalAppBrowserActivity : HomeActivity() {
val currentTabUrl = getExternalTab()?.content?.url
outContent?.webUri = currentTabUrl?.let { Uri.parse(it) }
}
+
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ if (!isFinishedAnimating) {
+ return true
+ }
+
+ return super.dispatchTouchEvent(ev)
+ }
+
+ override fun onEnterAnimationComplete() {
+ super.onEnterAnimationComplete()
+ isFinishedAnimating = true
+ }
}
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
=====================================
@@ -76,6 +76,10 @@ public class IntentUtils {
return getSafeIntent(aUri) != null;
}
+ if ("fido".equals(scheme)) {
+ return false;
+ }
+
return true;
}
=====================================
mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
=====================================
@@ -63,4 +63,10 @@ public class IntentUtilsTest {
final String uri = "intent:non_scheme_intent#Intent;end";
assertTrue(IntentUtils.isUriSafeForScheme(uri));
}
+
+ @Test
+ public void unsafeFidoUri() {
+ final String uri = "fido:/12345678";
+ assertFalse(IntentUtils.isUriSafeForScheme(uri));
+ }
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/cd…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/cd…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag base-browser-128.8.0esr-14.0-1-build2
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed new tag base-browser-128.8.0esr-14.0-1-build2 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/base-brow…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-128.8.0esr-14.0-1] 5 commits: Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed to branch base-browser-128.8.0esr-14.0-1 at The Tor Project / Applications / Tor Browser
Commits:
8ada94b2 by Tara at 2025-03-03T10:09:21+01:00
Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
Differential Revision: https://phabricator.services.mozilla.com/D236606
- - - - -
ed4eb7c6 by John Schanck at 2025-03-03T10:09:22+01:00
Bug 1922357 - disallow the fido: URI scheme. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D237313
Differential Revision: https://phabricator.services.mozilla.com/D238681
- - - - -
f53d7d49 by Jeff Boek at 2025-03-03T10:09:23+01:00
Bug 1928334 - Handles animating activities a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D238342
Differential Revision: https://phabricator.services.mozilla.com/D238845
- - - - -
bc8d56ec by Tom Schuster at 2025-03-03T10:09:24+01:00
Bug 1942022 - Improve the about:protections CSP. r=firefox-desktop-core-reviewers ,mossop
Differential Revision: https://phabricator.services.mozilla.com/D234507
- - - - -
276610d2 by Tom Schuster at 2025-03-03T10:09:25+01:00
Bug 1942025 - Improve the about:privatebrowsing CSP. r=firefox-desktop-core-reviewers ,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D234508
- - - - -
11 changed files:
- browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
- browser/components/protections/content/protections.html
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
- mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
- mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
- mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
Changes:
=====================================
browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
=====================================
@@ -10,7 +10,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; img-src chrome: blob:; object-src 'none';"
/>
<meta name="color-scheme" content="light dark" />
<link rel="icon" href="chrome://browser/skin/privatebrowsing/favicon.svg" />
=====================================
browser/components/protections/content/protections.html
=====================================
@@ -8,7 +8,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; object-src 'none'"
/>
<meta name="color-scheme" content="light dark" />
<link rel="localization" href="branding/brand.ftl" />
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
=====================================
@@ -1818,7 +1818,7 @@ class GeckoEngineSession(
internal const val ABOUT_BLANK = "about:blank"
internal const val JS_SCHEME = "javascript"
internal val BLOCKED_SCHEMES =
- listOf("file", "resource", JS_SCHEME) // See 1684761 and 1684947
+ listOf("file", "resource", "fido", JS_SCHEME) // See 1684761 and 1684947
/**
* Provides an ErrorType corresponding to the error code provided.
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
=====================================
@@ -631,6 +631,11 @@ class GeckoEngineSessionTest {
engineSession.loadUrl("RESOURCE://package/test.text")
verify(geckoSession, never()).load(GeckoSession.Loader().uri("resource://package/test.text"))
verify(geckoSession, never()).load(GeckoSession.Loader().uri("RESOURCE://package/test.text"))
+
+ engineSession.loadUrl("fido:/12345678")
+ engineSession.loadUrl("FIDO:/12345678")
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("fido:/12345678"))
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("FIDO:/12345678"))
}
@Test
=====================================
mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
=====================================
@@ -313,6 +313,7 @@ class AppLinksUseCases(
"https", "moz-extension", "moz-safe-about", "resource", "view-source", "ws", "wss", "blob",
)
- internal val ALWAYS_DENY_SCHEMES: Set<String> = setOf("jar", "file", "javascript", "data", "about", "content")
+ internal val ALWAYS_DENY_SCHEMES: Set<String> =
+ setOf("jar", "file", "javascript", "data", "about", "content", "fido")
}
}
=====================================
mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
=====================================
@@ -47,6 +47,7 @@ class AppLinksUseCasesTest {
private val javascriptUrl = "javascript:'hello, world'"
private val jarUrl = "jar:file://some/path/test.html"
private val contentUrl = "content://media/external_primary/downloads/12345"
+ private val fidoPath = "fido:12345678"
private val fileType = "audio/mpeg"
private val layerUrl = "https://example.com"
private val layerPackage = "com.example.app"
@@ -215,6 +216,15 @@ class AppLinksUseCasesTest {
assertFalse(redirect.isRedirect())
}
+ @Test
+ fun `A fido url is not an app link`() {
+ val context = createContext(Triple(fidoPath, appPackage, ""))
+ val subject = AppLinksUseCases(context, { true })
+
+ val redirect = subject.interceptedAppLinkRedirect(fidoPath)
+ assertFalse(redirect.isRedirect())
+ }
+
@Test
fun `Will not redirect app link if browser option set to false and scheme is supported`() {
val context = createContext(Triple(appUrl, appPackage, ""))
=====================================
mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
=====================================
@@ -9,6 +9,7 @@ import android.content.Intent
import androidx.annotation.VisibleForTesting
import androidx.annotation.VisibleForTesting.Companion.PRIVATE
import androidx.core.view.isVisible
+import androidx.fragment.app.DialogFragment
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import kotlinx.coroutines.CoroutineScope
@@ -1094,7 +1095,15 @@ class PromptFeature private constructor(
emitPromptDismissedFact(promptName = promptRequest::class.simpleName.ifNullOrEmpty { "" })
}
+ @VisibleForTesting
+ internal fun redirectDialogFragmentIsActive() =
+ (fragmentManager.findFragmentByTag("SHOULD_OPEN_APP_LINK_PROMPT_DIALOG") as? DialogFragment) != null
+
private fun canShowThisPrompt(promptRequest: PromptRequest): Boolean {
+ if (redirectDialogFragmentIsActive()) {
+ return false
+ }
+
return when (promptRequest) {
is SingleChoice,
is MultipleChoice,
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
=====================================
@@ -798,7 +798,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity {
return false
}
- final override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
ProfilerMarkers.addForDispatchTouchEvent(components.core.engine.profiler, ev)
return super.dispatchTouchEvent(ev)
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
=====================================
@@ -7,6 +7,7 @@ package org.mozilla.fenix.customtabs
import android.app.assist.AssistContent
import android.net.Uri
import android.os.Build
+import android.view.MotionEvent
import androidx.annotation.RequiresApi
import androidx.annotation.VisibleForTesting
import mozilla.components.browser.state.selector.findCustomTab
@@ -24,6 +25,8 @@ const val EXTRA_IS_SANDBOX_CUSTOM_TAB = "org.mozilla.fenix.customtabs.EXTRA_IS_S
*/
@Suppress("TooManyFunctions")
open class ExternalAppBrowserActivity : HomeActivity() {
+ var isFinishedAnimating = false
+
override fun onResume() {
super.onResume()
@@ -74,4 +77,17 @@ open class ExternalAppBrowserActivity : HomeActivity() {
val currentTabUrl = getExternalTab()?.content?.url
outContent?.webUri = currentTabUrl?.let { Uri.parse(it) }
}
+
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ if (!isFinishedAnimating) {
+ return true
+ }
+
+ return super.dispatchTouchEvent(ev)
+ }
+
+ override fun onEnterAnimationComplete() {
+ super.onEnterAnimationComplete()
+ isFinishedAnimating = true
+ }
}
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
=====================================
@@ -76,6 +76,10 @@ public class IntentUtils {
return getSafeIntent(aUri) != null;
}
+ if ("fido".equals(scheme)) {
+ return false;
+ }
+
return true;
}
=====================================
mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
=====================================
@@ -63,4 +63,10 @@ public class IntentUtilsTest {
final String uri = "intent:non_scheme_intent#Intent;end";
assertTrue(IntentUtils.isUriSafeForScheme(uri));
}
+
+ @Test
+ public void unsafeFidoUri() {
+ final String uri = "fido:/12345678";
+ assertFalse(IntentUtils.isUriSafeForScheme(uri));
+ }
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/10ea66…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/10ea66…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag tor-browser-115.21.0esr-13.5-1-build2
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed new tag tor-browser-115.21.0esr-13.5-1-build2 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-115.21.0esr-13.5-1] 5 commits: Bug 1866661 - Tests, a=dmeehan
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed to branch tor-browser-115.21.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
Commits:
dc7ca927 by Emma Zuehlcke at 2025-03-02T22:59:10+01:00
Bug 1866661 - Tests, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237737
- - - - -
5f732399 by Rob Wu at 2025-03-02T23:50:30+01:00
Bug 1939087 - Truncate long name and log warning a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D233025
Differential Revision: https://phabricator.services.mozilla.com/D236900
- - - - -
4642da84 by Tom Schuster at 2025-03-02T23:55:34+01:00
Bug 1942022 - Improve the about:protections CSP. r=firefox-desktop-core-reviewers ,mossop
Differential Revision: https://phabricator.services.mozilla.com/D234507
- - - - -
5d037355 by Tom Schuster at 2025-03-03T00:00:34+01:00
Bug 1942025 - Improve the about:privatebrowsing CSP. r=firefox-desktop-core-reviewers ,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D234508
- - - - -
6b0945a7 by Nazım Can Altınova at 2025-03-03T00:11:34+01:00
Bug 1943912 - Do not reset the chunk manager while shutdown a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D235642
Differential Revision: https://phabricator.services.mozilla.com/D237219
- - - - -
10 changed files:
- browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
- browser/components/protections/content/protections.html
- browser/components/protocolhandler/test/browser/browser_registerProtocolHandler_notification.js
- toolkit/components/extensions/Extension.sys.mjs
- toolkit/components/extensions/schemas/manifest.json
- toolkit/components/extensions/test/xpcshell/test_ext_manifest.js
- toolkit/mozapps/extensions/internal/XPIInstall.jsm
- toolkit/mozapps/extensions/test/xpcshell/test_locale.js
- tools/profiler/gecko/ProfilerChild.cpp
- tools/profiler/public/ProfilerChild.h
Changes:
=====================================
browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
=====================================
@@ -10,7 +10,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; img-src chrome: blob:; object-src 'none';"
/>
<meta name="color-scheme" content="light dark" />
<link rel="icon" href="chrome://browser/skin/privatebrowsing/favicon.svg" />
=====================================
browser/components/protections/content/protections.html
=====================================
@@ -8,7 +8,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; object-src 'none'"
/>
<meta name="color-scheme" content="light dark" />
<link rel="localization" href="branding/brand.ftl" />
=====================================
browser/components/protocolhandler/test/browser/browser_registerProtocolHandler_notification.js
=====================================
@@ -6,7 +6,16 @@ const TEST_PATH = getRootDirectory(gTestPath).replace(
"chrome://mochitests/content",
"https://example.com"
);
+
+const SECURITY_DELAY = 3000;
+
add_task(async function () {
+ // Set a custom, higher security delay for the test to avoid races on slow
+ // builds.
+ await SpecialPowers.pushPrefEnv({
+ set: [["security.notification_enable_delay", SECURITY_DELAY]],
+ });
+
let notificationValue = "Protocol Registration: web+testprotocol";
let testURI = TEST_PATH + "browser_registerProtocolHandler_notification.html";
@@ -58,4 +67,16 @@ add_task(async function () {
let button = buttons[0];
isnot(button.label, null, "We expect the add button to have a label.");
todo(button.accesskey, "We expect the add button to have a accesskey.");
+
+ ok(button.disabled, "We expect the button to be disabled initially.");
+
+ let timeoutMS = SECURITY_DELAY + 100;
+ info(`Wait ${timeoutMS}ms for the button to enable.`);
+ // eslint-disable-next-line mozilla/no-arbitrary-setTimeout
+ await new Promise(resolve => setTimeout(resolve, SECURITY_DELAY + 100));
+
+ ok(
+ !button.disabled,
+ "We expect the button to be enabled after the security delay."
+ );
});
=====================================
toolkit/components/extensions/Extension.sys.mjs
=====================================
@@ -1367,6 +1367,17 @@ export class ExtensionData {
);
}
+ // AMO enforces a maximum length of 45 on the name since at least 2017, via
+ // https://github.com/mozilla/addons-linter/blame/c4507688899aaafe29c522f1b1ae…
+ // added in https://github.com/mozilla/addons-linter/pull/1169
+ // To avoid breaking add-ons that do not go through AMO (e.g. temporarily
+ // loaded extensions), we enforce the limit by truncating and warning if
+ // needed, instead enforcing a maxLength on "name" in schemas/manifest.json.
+ //
+ // We set the limit to 75, which is a safe limit that matches the CWS,
+ // see https://bugzilla.mozilla.org/show_bug.cgi?id=1939087#c5
+ static EXT_NAME_MAX_LEN = 75;
+
async initializeAddonTypeAndID() {
if (this.type) {
// Already initialized.
@@ -1486,6 +1497,14 @@ export class ExtensionData {
}
}
+ if (manifest.name.length > ExtensionData.EXT_NAME_MAX_LEN) {
+ // Truncate and warn - see comment in EXT_NAME_MAX_LEN.
+ manifest.name = manifest.name.slice(0, ExtensionData.EXT_NAME_MAX_LEN);
+ this.manifestWarning(
+ `Warning processing "name": must be shorter than ${ExtensionData.EXT_NAME_MAX_LEN}`
+ );
+ }
+
if (
this.manifestVersion < 3 &&
manifest.background &&
=====================================
toolkit/components/extensions/schemas/manifest.json
=====================================
@@ -29,6 +29,7 @@
"name": {
"type": "string",
+ "description": "Name must be at least 2, at should be at most 75 characters",
"optional": false,
"preprocess": "localize"
},
=====================================
toolkit/components/extensions/test/xpcshell/test_ext_manifest.js
=====================================
@@ -156,6 +156,28 @@ add_task(
}
);
+add_task(async function test_name_too_long() {
+ let extension = ExtensionTestUtils.loadExtension({
+ manifest: {
+ // This length is 80, which exceeds ExtensionData.EXT_NAME_MAX_LEN:
+ name: "123456789_".repeat(8),
+ },
+ });
+ await extension.startup();
+ equal(
+ extension.extension.name,
+ "123456789_123456789_123456789_123456789_123456789_123456789_123456789_12345",
+ "Name should be truncated"
+ );
+ Assert.deepEqual(
+ extension.extension.warnings,
+ ['Reading manifest: Warning processing "name": must be shorter than 75'],
+ "Expected error message when the name is too long"
+ );
+
+ await extension.unload();
+});
+
add_task(async function test_simpler_version_format() {
const TEST_CASES = [
// Valid cases
=====================================
toolkit/mozapps/extensions/internal/XPIInstall.jsm
=====================================
@@ -560,6 +560,11 @@ async function loadManifestFromWebManifest(aPackage, aLocation) {
contributors: null,
locales: [aLocale],
};
+ if (result.name.length > lazy.ExtensionData.EXT_NAME_MAX_LEN) {
+ // See comment at EXT_NAME_MAX_LEN in Extension.sys.mjs.
+ logger.warn(`Truncating add-on name ${addon.id} for locale ${aLocale}`);
+ result.name = result.name.slice(0, lazy.ExtensionData.EXT_NAME_MAX_LEN);
+ }
return result;
}
=====================================
toolkit/mozapps/extensions/test/xpcshell/test_locale.js
=====================================
@@ -51,6 +51,13 @@ add_task(async function test_1() {
description: "name",
},
},
+ "_locales/es-ES/messages.json": {
+ name: {
+ // This length is 80, which exceeds ExtensionData.EXT_NAME_MAX_LEN:
+ message: "123456789_".repeat(8),
+ description: "name with 80 chars, should truncate to 75",
+ },
+ },
},
});
@@ -101,3 +108,18 @@ add_task(async function test_6() {
await addon.enable();
});
+
+add_task(async function test_name_too_long() {
+ await restartWithLocales(["es-ES"]);
+
+ let addon = await AddonManager.getAddonByID("addon1(a)tests.mozilla.org");
+ Assert.notEqual(addon, null);
+
+ Assert.equal(
+ addon.name,
+ "123456789_123456789_123456789_123456789_123456789_123456789_123456789_12345",
+ "Name should be truncated"
+ );
+
+ await addon.enable();
+});
=====================================
tools/profiler/gecko/ProfilerChild.cpp
=====================================
@@ -139,6 +139,12 @@ void ProfilerChild::SetupChunkManager() {
});
}
+/* static */ void ProfilerChild::ClearPendingUpdate() {
+ auto lockedUpdate = sPendingChunkManagerUpdate.Lock();
+ lockedUpdate->mProfilerChild = nullptr;
+ lockedUpdate->mUpdate.Clear();
+}
+
void ProfilerChild::ResetChunkManager() {
if (!mChunkManager) {
return;
@@ -149,9 +155,7 @@ void ProfilerChild::ResetChunkManager() {
mChunkManager->SetUpdateCallback({});
// Clear the pending update.
- auto lockedUpdate = sPendingChunkManagerUpdate.Lock();
- lockedUpdate->mProfilerChild = nullptr;
- lockedUpdate->mUpdate.Clear();
+ ClearPendingUpdate();
// And process a final update right now.
ProcessChunkManagerUpdate(
ProfileBufferControlledChunkManager::Update(nullptr));
@@ -483,7 +487,7 @@ void ProfilerChild::ActorDestroy(ActorDestroyReason aActorDestroyReason) {
}
void ProfilerChild::Destroy() {
- ResetChunkManager();
+ ClearPendingUpdate();
if (!mDestroyed) {
Close();
}
=====================================
tools/profiler/public/ProfilerChild.h
=====================================
@@ -81,6 +81,8 @@ class ProfilerChild final : public PProfilerChild,
void ProcessChunkManagerUpdate(
ProfileBufferControlledChunkManager::Update&& aUpdate);
+ static void ClearPendingUpdate();
+
static void GatherProfileThreadFunction(void* already_AddRefedParameters);
nsCOMPtr<nsIThread> mThread;
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/48d984…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/48d984…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Deleted branch sec/tor-browser-115.21.0esr-13.5-1
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 deleted branch sec/tor-browser-115.21.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
--
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new branch sec/tor-browser-115.21.0esr-13.5-1
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed new branch sec/tor-browser-115.21.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/sec/tor-b…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag tor-browser-128.8.0esr-14.0-1-build2
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed new tag tor-browser-128.8.0esr-14.0-1-build2 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.8.0esr-14.0-1] 5 commits: Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
by ma1 (@ma1) 03 Mar '25
by ma1 (@ma1) 03 Mar '25
03 Mar '25
ma1 pushed to branch tor-browser-128.8.0esr-14.0-1 at The Tor Project / Applications / Tor Browser
Commits:
eb2f9e50 by Tara at 2025-03-02T23:38:07+01:00
Bug 1908488 - Improve dialogs. r=android-reviewers,gmalekpour, a=dmeehan [bp]
Differential Revision: https://phabricator.services.mozilla.com/D236606
- - - - -
913be926 by John Schanck at 2025-03-02T23:42:15+01:00
Bug 1922357 - disallow the fido: URI scheme. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D237313
Differential Revision: https://phabricator.services.mozilla.com/D238681
- - - - -
6eb75b58 by Jeff Boek at 2025-03-02T23:44:03+01:00
Bug 1928334 - Handles animating activities a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D238342
Differential Revision: https://phabricator.services.mozilla.com/D238845
- - - - -
d7bd10bb by Tom Schuster at 2025-03-02T23:54:33+01:00
Bug 1942022 - Improve the about:protections CSP. r=firefox-desktop-core-reviewers ,mossop
Differential Revision: https://phabricator.services.mozilla.com/D234507
- - - - -
fada429d by Tom Schuster at 2025-03-02T23:59:43+01:00
Bug 1942025 - Improve the about:privatebrowsing CSP. r=firefox-desktop-core-reviewers ,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D234508
- - - - -
11 changed files:
- browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
- browser/components/protections/content/protections.html
- mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
- mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
- mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
- mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
- mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
- mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
Changes:
=====================================
browser/components/privatebrowsing/content/aboutPrivateBrowsing.html
=====================================
@@ -10,7 +10,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; img-src chrome: blob:; object-src 'none';"
/>
<meta name="color-scheme" content="light dark" />
<link rel="icon" href="chrome://browser/skin/privatebrowsing/favicon.svg" />
=====================================
browser/components/protections/content/protections.html
=====================================
@@ -8,7 +8,7 @@
<meta charset="utf-8" />
<meta
http-equiv="Content-Security-Policy"
- content="default-src chrome: blob:; object-src 'none'"
+ content="default-src chrome:; object-src 'none'"
/>
<meta name="color-scheme" content="light dark" />
<link rel="localization" href="branding/brand.ftl" />
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/main/java/mozilla/components/browser/engine/gecko/GeckoEngineSession.kt
=====================================
@@ -1822,7 +1822,7 @@ class GeckoEngineSession(
internal const val ABOUT_BLANK = "about:blank"
internal const val JS_SCHEME = "javascript"
internal val BLOCKED_SCHEMES =
- listOf("file", "resource", JS_SCHEME) // See 1684761 and 1684947
+ listOf("file", "resource", "fido", JS_SCHEME) // See 1684761 and 1684947
/**
* Provides an ErrorType corresponding to the error code provided.
=====================================
mobile/android/android-components/components/browser/engine-gecko/src/test/java/mozilla/components/browser/engine/gecko/GeckoEngineSessionTest.kt
=====================================
@@ -631,6 +631,11 @@ class GeckoEngineSessionTest {
engineSession.loadUrl("RESOURCE://package/test.text")
verify(geckoSession, never()).load(GeckoSession.Loader().uri("resource://package/test.text"))
verify(geckoSession, never()).load(GeckoSession.Loader().uri("RESOURCE://package/test.text"))
+
+ engineSession.loadUrl("fido:/12345678")
+ engineSession.loadUrl("FIDO:/12345678")
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("fido:/12345678"))
+ verify(geckoSession, never()).load(GeckoSession.Loader().uri("FIDO:/12345678"))
}
@Test
=====================================
mobile/android/android-components/components/feature/app-links/src/main/java/mozilla/components/feature/app/links/AppLinksUseCases.kt
=====================================
@@ -314,6 +314,7 @@ class AppLinksUseCases(
"https", "moz-extension", "moz-safe-about", "resource", "view-source", "ws", "wss", "blob",
)
- internal val ALWAYS_DENY_SCHEMES: Set<String> = setOf("jar", "file", "javascript", "data", "about", "content")
+ internal val ALWAYS_DENY_SCHEMES: Set<String> =
+ setOf("jar", "file", "javascript", "data", "about", "content", "fido")
}
}
=====================================
mobile/android/android-components/components/feature/app-links/src/test/java/mozilla/components/feature/app/links/AppLinksUseCasesTest.kt
=====================================
@@ -47,6 +47,7 @@ class AppLinksUseCasesTest {
private val javascriptUrl = "javascript:'hello, world'"
private val jarUrl = "jar:file://some/path/test.html"
private val contentUrl = "content://media/external_primary/downloads/12345"
+ private val fidoPath = "fido:12345678"
private val fileType = "audio/mpeg"
private val layerUrl = "https://example.com"
private val layerPackage = "com.example.app"
@@ -215,6 +216,15 @@ class AppLinksUseCasesTest {
assertFalse(redirect.isRedirect())
}
+ @Test
+ fun `A fido url is not an app link`() {
+ val context = createContext(Triple(fidoPath, appPackage, ""))
+ val subject = AppLinksUseCases(context, { true })
+
+ val redirect = subject.interceptedAppLinkRedirect(fidoPath)
+ assertFalse(redirect.isRedirect())
+ }
+
@Test
fun `Will not redirect app link if browser option set to false and scheme is supported`() {
val context = createContext(Triple(appUrl, appPackage, ""))
=====================================
mobile/android/android-components/components/feature/prompts/src/main/java/mozilla/components/feature/prompts/PromptFeature.kt
=====================================
@@ -9,6 +9,7 @@ import android.content.Intent
import androidx.annotation.VisibleForTesting
import androidx.annotation.VisibleForTesting.Companion.PRIVATE
import androidx.core.view.isVisible
+import androidx.fragment.app.DialogFragment
import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentManager
import kotlinx.coroutines.CoroutineScope
@@ -1094,7 +1095,15 @@ class PromptFeature private constructor(
emitPromptDismissedFact(promptName = promptRequest::class.simpleName.ifNullOrEmpty { "" })
}
+ @VisibleForTesting
+ internal fun redirectDialogFragmentIsActive() =
+ (fragmentManager.findFragmentByTag("SHOULD_OPEN_APP_LINK_PROMPT_DIALOG") as? DialogFragment) != null
+
private fun canShowThisPrompt(promptRequest: PromptRequest): Boolean {
+ if (redirectDialogFragmentIsActive()) {
+ return false
+ }
+
return when (promptRequest) {
is SingleChoice,
is MultipleChoice,
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt
=====================================
@@ -903,7 +903,7 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity, TorIn
return false
}
- final override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
ProfilerMarkers.addForDispatchTouchEvent(components.core.engine.profiler, ev)
return super.dispatchTouchEvent(ev)
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/customtabs/ExternalAppBrowserActivity.kt
=====================================
@@ -7,6 +7,7 @@ package org.mozilla.fenix.customtabs
import android.app.assist.AssistContent
import android.net.Uri
import android.os.Build
+import android.view.MotionEvent
import androidx.annotation.RequiresApi
import androidx.annotation.VisibleForTesting
import mozilla.components.browser.state.selector.findCustomTab
@@ -24,6 +25,8 @@ const val EXTRA_IS_SANDBOX_CUSTOM_TAB = "org.mozilla.fenix.customtabs.EXTRA_IS_S
*/
@Suppress("TooManyFunctions")
open class ExternalAppBrowserActivity : HomeActivity() {
+ var isFinishedAnimating = false
+
override fun onResume() {
super.onResume()
@@ -74,4 +77,17 @@ open class ExternalAppBrowserActivity : HomeActivity() {
val currentTabUrl = getExternalTab()?.content?.url
outContent?.webUri = currentTabUrl?.let { Uri.parse(it) }
}
+
+ override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
+ if (!isFinishedAnimating) {
+ return true
+ }
+
+ return super.dispatchTouchEvent(ev)
+ }
+
+ override fun onEnterAnimationComplete() {
+ super.onEnterAnimationComplete()
+ isFinishedAnimating = true
+ }
}
=====================================
mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/IntentUtils.java
=====================================
@@ -76,6 +76,10 @@ public class IntentUtils {
return getSafeIntent(aUri) != null;
}
+ if ("fido".equals(scheme)) {
+ return false;
+ }
+
return true;
}
=====================================
mobile/android/geckoview/src/test/java/org/mozilla/gecko/util/IntentUtilsTest.java
=====================================
@@ -63,4 +63,10 @@ public class IntentUtilsTest {
final String uri = "intent:non_scheme_intent#Intent;end";
assertTrue(IntentUtils.isUriSafeForScheme(uri));
}
+
+ @Test
+ public void unsafeFidoUri() {
+ final String uri = "fido:/12345678";
+ assertFalse(IntentUtils.isUriSafeForScheme(uri));
+ }
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/62d35a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/62d35a…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new tag tor-browser-115.21.0esr-13.5-1-build1
by ma1 (@ma1) 27 Feb '25
by ma1 (@ma1) 27 Feb '25
27 Feb '25
ma1 pushed new tag tor-browser-115.21.0esr-13.5-1-build1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new branch tor-browser-128.8.0esr-14.5-1
by clairehurst (@clairehurst) 27 Feb '25
by clairehurst (@clairehurst) 27 Feb '25
27 Feb '25
clairehurst pushed new branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/tor-brows…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-128.8.0esr-14.5-1] 49 commits: No bug - Tagging f3783ad20bf40a11fb4b7ed088236c1a9f7be362 with...
by clairehurst (@clairehurst) 27 Feb '25
by clairehurst (@clairehurst) 27 Feb '25
27 Feb '25
clairehurst pushed to branch base-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
1e0489eb by Mozilla Releng Treescript at 2025-01-27T19:42:42+00:00
No bug - Tagging f3783ad20bf40a11fb4b7ed088236c1a9f7be362 with FIREFOX_128_7_0esr_BUILD1 a=release CLOSED TREE DONTBUILD
- - - - -
7a2dc51e by Mozilla Releng Treescript at 2025-02-03T16:18:10+00:00
Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release
- - - - -
f89561a1 by Mozilla Releng Treescript at 2025-02-04T13:18:39+00:00
No bug - Tagging f3783ad20bf40a11fb4b7ed088236c1a9f7be362 with FIREFOX_128_7_0esr_RELEASE a=release CLOSED TREE DONTBUILD
- - - - -
a8cf861b by Francesco Lodolo (:flod) at 2025-02-05T18:09:44+00:00
Bug 1944233 - Update localization shipping in ESR128, r=bolsson a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D235741
- - - - -
4f80e557 by ffxbld at 2025-02-06T13:04:48+00:00
No Bug, mozilla-esr128 repo-update HSTS HPKP remote-settings tld-suffixes - a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237018
- - - - -
09639b06 by Rob Wu at 2025-02-06T14:16:44+00:00
Bug 1939087 - Truncate long name and log warning a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D233025
Differential Revision: https://phabricator.services.mozilla.com/D236900
- - - - -
0d315ac6 by Matthew Gregan at 2025-02-06T14:23:42+00:00
Bug 1944150 - Remove WASAPI stream shutdown timeout. r=cubeb-reviewers,padenot a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D236070
- - - - -
879ae06a by Gabriele Svelto at 2025-02-03T15:31:33+00:00
Bug 1944784 - Fix collecting the errors encountered when generating minidumps r=cmartin, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D236202
- - - - -
836cb2bb by Randell Jesup at 2025-02-03T18:40:56+00:00
Bug 1944126: Update WebTransportChild r=saschanaz, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D236002
- - - - -
9ca51377 by alwu at 2025-02-03T18:22:27+00:00
Bug 1922889 - add mutex. r=media-playback-reviewers,aosmond, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D226398
- - - - -
c3b0d15c by Nicolas B. Pierron at 2025-02-07T14:16:53+00:00
Bug 1940716 - convertDoubleToInt32: Clobber destination register when zero. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D234893
Differential Revision: https://phabricator.services.mozilla.com/D236700
- - - - -
a03dc5f4 by Rob Wu at 2025-02-07T18:08:44+00:00
Bug 1942259 - Move telnetlib import to BaseEmulator a=dmeehan
emulator.py currently has an unconditional telnetlib import, but the
file can also be imported when the functionality is not needed.
Because telnetlib was removed from Python 3.13, this unconditional
import breaks use cases that do not even care about telnet. As a stopgap
measure until a better fix is available, move the import to the function
that relies on telnet.
Original Revision: https://phabricator.services.mozilla.com/D227995
Differential Revision: https://phabricator.services.mozilla.com/D236164
- - - - -
b6a806fd by Rob Wu at 2025-02-07T18:08:44+00:00
Bug 1942259 - Replace pipes imports a=dmeehan
pipes does not exist in Python 3.11 any more
Original Revision: https://phabricator.services.mozilla.com/D227964
Differential Revision: https://phabricator.services.mozilla.com/D236165
- - - - -
97dfb547 by Bob Owen at 2025-02-07T20:23:56+00:00
Bug 1943586: Don't collect information in profiler_shutdown when we won't use it. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D236346
Differential Revision: https://phabricator.services.mozilla.com/D237235
- - - - -
ade99491 by Nazım Can Altınova at 2025-02-07T20:25:55+00:00
Bug 1943912 - Do not reset the chunk manager while shutdown a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D235642
Differential Revision: https://phabricator.services.mozilla.com/D237219
- - - - -
811f17ca by André Bargull at 2025-02-08T13:30:24+00:00
Bug 1945535: Update to tzdata 2025a (ESR128). r=spidermonkey-reviewers,dminor a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D236566
- - - - -
8b6f2a74 by Rob Wu at 2025-02-08T13:31:59+00:00
Bug 1826867 - Use NS_GetFinalChannelURI instead of GetURI in SessionHistoryEntry a=dmeehan
When redirects are involved, `DocumentLoadListener::DoOnStartRequest`
may call `ReplaceLoadingSessionHistoryEntryForLoad`, which updates the
history entry with the destination of a redirect. But if the redirection
target is a `moz-extension:`-URL, the URL becomes a jar:file:/file: URL.
This is because SessionHistoryInfo (in SessionHistoryEntry.cpp) looks up
the URL with `nsIChannel::GetURI`. For `moz-extension:`-URLs, the
underlying channel has a `jar:file:` or `file:` URL, as provided by
ExtensionProtocolHandler (via SubstitutingProtocolHandler::NewChannel).
For details, see https://bugzilla.mozilla.org/show_bug.cgi?id=1826867#c7
To fix this, this patch switches to `NS_GetFinalChannelURI` instead. For
more history on this type of bug and SessionHistoryInfo, see
https://bugzilla.mozilla.org/show_bug.cgi?id=1826867#c9
Original Revision: https://phabricator.services.mozilla.com/D234333
Differential Revision: https://phabricator.services.mozilla.com/D236901
- - - - -
f05fe128 by smayya at 2025-02-04T15:48:43+00:00
Bug 1938471 - Backed out changeset dcfa4149aaf3. r=necko-reviewers,kershaw, a=dmeehan
Please see the explaination for the fix in the bug [[ https://bugzilla.mozilla.org/show_bug.cgi?id=1938471#c16 | comment ]]
Differential Revision: https://phabricator.services.mozilla.com/D235761
- - - - -
90e6ebd6 by smayya at 2025-02-04T15:48:43+00:00
Bug 1938471 - synchronize access to FetchDriver::mObserver. r=necko-reviewers,kershaw, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D235762
- - - - -
26960c9b by Peter Van der Beken at 2025-02-04T17:28:39+00:00
Bug 1944313 - Propagate XSLT expression failure correctly. r=farre, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D235895
- - - - -
1594f8f8 by Iain Ireland at 2025-02-03T21:49:54+00:00
Bug 1942881: Remove RRegExpMatcher r=jandem, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D236071
- - - - -
1efaf9ba by Lee Salzman at 2025-02-10T14:49:37+00:00
Bug 1945624. r=aosmond a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D236664
- - - - -
16e879ac by ffxbld at 2025-02-10T14:52:32+00:00
No Bug, mozilla-esr128 repo-update HSTS HPKP remote-settings tld-suffixes - a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237538
- - - - -
f44b9c99 by Kershaw Chang at 2025-02-10T18:02:23+00:00
Bug 1935004 - Remove res_ninit, a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D236345
Differential Revision: https://phabricator.services.mozilla.com/D237572
- - - - -
79e4b8e5 by Thomas Wisniewski at 2025-02-11T14:44:28+00:00
Bug 697151 - distinguish between SYNC and ASYNC XMLHttpRequests in nsIContentPolicy types, and have ChannelEventQueue::MaybeSuspendIfEventsAreSuppressed only suspend async ones; a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D213516
Differential Revision: https://phabricator.services.mozilla.com/D237613
- - - - -
9e1c0c56 by Francesco Lodolo (:flod) at 2025-02-12T01:15:35+00:00
Bug 1946647 - Fix icons in Panic button for history and new window, a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D237177
Differential Revision: https://phabricator.services.mozilla.com/D237320
- - - - -
7ab72cf9 by Valentin Gosu at 2025-02-12T14:38:27+00:00
Bug 1940027 - Use nsACString in jar code a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237704
- - - - -
44335e4a by Emma Zuehlcke at 2025-02-12T15:30:13+00:00
Bug 1866661, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237567
- - - - -
a4f13ef0 by Emma Zuehlcke at 2025-02-12T15:30:13+00:00
Bug 1866661 - Tests, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237737
- - - - -
6591785c by Emma Zuehlcke at 2025-02-12T15:30:14+00:00
Bug 1946105, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237570
- - - - -
4e2c99bb by Emma Zuehlcke at 2025-02-12T15:30:14+00:00
Bug 1946105 - Test, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237571
- - - - -
b2095689 by Sean at 2025-02-13T00:23:02+00:00
Bug 1930742 - Add a glean probe for SSO cookie parsing success/failure a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D228715
Differential Revision: https://phabricator.services.mozilla.com/D237074
- - - - -
941b037a by Sean at 2025-02-13T00:23:02+00:00
Bug 1934271 - Remove GetQuery check in Entra SSO for SAML use cases a=dmeehan
The [initial motivation](https://phabricator.services.mozilla.com/D216560#inline-1215772) behind checking whether the query is empty or not is to ensure that we don't perform SSO for URIs like `https://login.microsoft.com/`.
However, we observed that Entra SSO can operate via SAML using the URI `https://login.microsoftonline.com/XXXXXX/saml2`.
To address this, we decided to remove the check like in Windows
Original Revision: https://phabricator.services.mozilla.com/D230714
Differential Revision: https://phabricator.services.mozilla.com/D237075
- - - - -
3c844788 by Sean at 2025-02-13T00:23:03+00:00
Bug 1944119 - Refactor MicrosoftEntraSSOUtils.mm a=dmeehan
Currently, the delegate uses nested if statements. The patch simplifies this by replacing them with return/continues.
Original Revision: https://phabricator.services.mozilla.com/D235688
Differential Revision: https://phabricator.services.mozilla.com/D237076
- - - - -
6d62493b by Sean at 2025-02-13T00:23:03+00:00
Bug 1945596 - Firefox should be still sending headers even if there are missing ones a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D236568
Differential Revision: https://phabricator.services.mozilla.com/D237077
- - - - -
55f838ff by Julian Descottes at 2025-01-31T11:01:49+00:00
Bug 1830888 - [devtools] Skip frequent macos intermittent browser_dbg-event-breakpoints.js r=devtools-reviewers,nchevobbe a=test-only DONTBUILD
This test only seems to fail on macos, and is high frequency on this platform.
- - - - -
29dc8d27 by ffxbld at 2025-02-13T13:01:10+00:00
No Bug, mozilla-esr128 repo-update HSTS HPKP remote-settings tld-suffixes - a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D238022
- - - - -
a8224879 by Yannis Juglaret at 2025-02-14T14:36:16+00:00
Bug 1936749 - Disable ACG if we detect MpDetours.dll injection. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D236890
Differential Revision: https://phabricator.services.mozilla.com/D238183
- - - - -
6d4b3a2d by ffxbld at 2025-02-17T12:06:42+00:00
No Bug, mozilla-esr128 repo-update HSTS HPKP remote-settings - a=pascalc
Differential Revision: https://phabricator.services.mozilla.com/D238436
- - - - -
18e5ad73 by Iain Ireland at 2025-02-11T19:54:15+00:00
Bug 1947140: Compare against correct length in visitCompareSSingle r=jandem, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237658
- - - - -
2292a1e8 by Jan de Mooij at 2025-02-13T12:21:29+00:00
Bug 1946004 - Widen i32 return values in GenerateJitEntry. r=rhunt, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D237530
- - - - -
3823e702 by Ben Hearsum at 2025-02-06T01:35:07+00:00
Bug 1940974: update verify should fail when the updater fails to download r=releng-reviewers,gabriel, a=dmeehan DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D236885
- - - - -
61730456 by ffxbld at 2025-02-20T12:54:56+00:00
No Bug, mozilla-esr128 repo-update HSTS HPKP remote-settings tld-suffixes - a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D238938
- - - - -
e942f3ef by Andrew McCreight at 2025-02-20T12:59:23+00:00
Bug 1937634 - Make txMozillaXSLTProcessor::mStylesheetDocument strong. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D232262
Differential Revision: https://phabricator.services.mozilla.com/D238777
- - - - -
37a3ea49 by Mike Kaply at 2025-02-20T13:16:27+00:00
Bug 1640931 - Allow policy to force addons in private browsing. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D228607
Differential Revision: https://phabricator.services.mozilla.com/D238839
- - - - -
144f5c31 by Sandor Molnar at 2025-02-20T16:27:07+02:00
Bug 1640931 - Fix lint failures. a=lint-fix
- - - - -
558ef1b0 by Jan Varga at 2025-02-20T08:35:22+00:00
Bug 1948111 - Don't re-initialize IndexedDatabaseManager::mLocale; r=dom-storage-reviewers,asuth, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D238593
- - - - -
6d97cb78 by ffxbld at 2025-02-24T12:57:24+00:00
No Bug, mozilla-esr128 repo-update HSTS HPKP remote-settings tld-suffixes - a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D239319
- - - - -
0ab79d6e by Mozilla Releng Treescript at 2025-02-24T17:01:40+00:00
No bug - Tagging c685d5844a0e4f99ac535b6ffc641fbd07696c68 with FIREFOX_128_8_0esr_BUILD1 a=release CLOSED TREE DONTBUILD
- - - - -
134 changed files:
- .hgtags
- CLOBBER
- browser/base/content/browser.js
- browser/components/enterprisepolicies/schemas/policies-schema.json
- browser/components/enterprisepolicies/tests/browser/browser_policy_extensionsettings2.js
- + browser/components/enterprisepolicies/tests/xpcshell/.eslintrc.js
- browser/components/enterprisepolicies/tests/xpcshell/test_extensionsettings.js
- browser/components/protocolhandler/test/browser/browser_registerProtocolHandler_notification.js
- browser/components/tabbrowser/content/tabbrowser.js
- browser/config/version.txt
- browser/config/version_display.txt
- browser/locales/l10n-changesets.json
- browser/themes/shared/customizableui/panelUI-shared.css
- config/external/icu/data/icudt73l.dat
- config/milestone.txt
- devtools/client/debugger/test/mochitest/browser_aj.toml
- docshell/shistory/SessionHistoryEntry.cpp
- dom/base/nsContentPolicyUtils.h
- dom/base/nsContentUtils.h
- dom/base/nsIContentPolicy.idl
- dom/cache/DBSchema.cpp
- dom/fetch/FetchDriver.cpp
- dom/fetch/FetchDriver.h
- dom/fetch/InternalRequest.cpp
- dom/indexedDB/IndexedDatabaseManager.cpp
- dom/indexedDB/IndexedDatabaseManager.h
- dom/media/ipc/MFCDMChild.cpp
- dom/media/ipc/MFCDMChild.h
- dom/security/SecFetch.cpp
- dom/security/nsCSPUtils.cpp
- dom/webtransport/child/WebTransportChild.cpp
- dom/xhr/XMLHttpRequestMainThread.cpp
- dom/xslt/xml/txXMLParser.cpp
- dom/xslt/xslt/txMozillaXSLTProcessor.cpp
- dom/xslt/xslt/txMozillaXSLTProcessor.h
- dom/xslt/xslt/txNodeSorter.cpp
- dom/xslt/xslt/txNodeSorter.h
- dom/xslt/xslt/txXPathResultComparator.cpp
- dom/xslt/xslt/txXPathResultComparator.h
- gfx/skia/skia/src/core/SkRegion.cpp
- gfx/thebes/gfxFT2FontList.cpp
- intl/hyphenation/glue/nsHyphenator.cpp
- intl/locale/LocaleService.cpp
- intl/tzdata/GIT-INFO
- intl/tzdata/VERSION
- intl/tzdata/source/be/metaZones.res
- intl/tzdata/source/be/timezoneTypes.res
- intl/tzdata/source/be/windowsZones.res
- intl/tzdata/source/be/zoneinfo64.res
- intl/tzdata/source/ee/metaZones.res
- intl/tzdata/source/ee/timezoneTypes.res
- intl/tzdata/source/ee/windowsZones.res
- intl/tzdata/source/ee/zoneinfo64.res
- intl/tzdata/source/le/metaZones.res
- intl/tzdata/source/le/timezoneTypes.res
- intl/tzdata/source/le/windowsZones.res
- intl/tzdata/source/le/zoneinfo64.res
- intl/tzdata/source/metaZones.txt
- intl/tzdata/source/timezoneTypes.txt
- intl/tzdata/source/windowsZones.txt
- intl/tzdata/source/zoneinfo64.txt
- js/src/builtin/intl/TimeZoneDataGenerated.h
- + js/src/jit-test/tests/ion/bug1947140.js
- js/src/jit/CodeGenerator.cpp
- js/src/jit/MIROps.yaml
- js/src/jit/Recover.cpp
- js/src/jit/Recover.h
- js/src/jit/arm/MacroAssembler-arm.cpp
- js/src/jit/arm64/MacroAssembler-arm64.h
- js/src/tests/lib/results.py
- js/src/tests/non262/Intl/DateTimeFormat/timeZone_backward_links.js
- js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone.js
- js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone_links.js
- js/src/tests/non262/Intl/DateTimeFormat/timeZone_notbackward_links.js
- js/src/tests/non262/Intl/DateTimeFormat/timeZone_version.js
- js/src/tests/non262/Intl/supportedValuesOf-timeZones-canonical.js
- js/src/wasm/WasmStubs.cpp
- js/xpconnect/loader/URLPreloader.cpp
- + media/libcubeb/0005-remove-wasapi-timeout.patch
- media/libcubeb/moz.yaml
- media/libcubeb/src/cubeb_wasapi.cpp
- modules/libjar/nsJAR.cpp
- modules/libjar/nsJARInputStream.cpp
- modules/libjar/nsZipArchive.cpp
- modules/libjar/nsZipArchive.h
- netwerk/dns/effective_tld_names.dat
- netwerk/dns/nsHostResolver.cpp
- netwerk/ipc/ChannelEventQueue.cpp
- netwerk/ipc/ChannelEventQueue.h
- netwerk/metrics.yaml
- netwerk/protocol/http/MicrosoftEntraSSOUtils.mm
- netwerk/protocol/http/nsHttpChannel.cpp
- netwerk/test/fuzz/TestHttpFuzzing.cpp
- security/manager/ssl/StaticHPKPins.h
- security/manager/ssl/nsSTSPreloadList.inc
- security/sandbox/win/src/sandboxbroker/sandboxBroker.cpp
- services/settings/dumps/blocklists/addons-bloomfilters.json
- services/settings/dumps/blocklists/addons-bloomfilters/addons-mlbf.bin
- services/settings/dumps/blocklists/addons-bloomfilters/addons-mlbf.bin.meta.json
- services/settings/dumps/main/devtools-compatibility-browsers.json
- services/settings/dumps/main/password-rules.json
- services/settings/dumps/main/search-config-v2.json
- services/settings/dumps/main/search-telemetry-v2.json
- services/settings/dumps/main/translations-models.json
- services/settings/dumps/main/url-classifier-skip-urls.json
- services/settings/dumps/main/websites-with-shared-credential-backends.json
- services/settings/dumps/security-state/intermediates.json
- testing/mozbase/mozdevice/mozdevice/adb.py
- testing/mozbase/mozrunner/mozrunner/devices/emulator.py
- testing/web-platform/meta/xhr/send-sync-blocks-async.htm.ini
- testing/web-platform/tests/tools/pytest.ini
- testing/xpcshell/runxpcshelltests.py
- toolkit/components/extensions/Extension.sys.mjs
- toolkit/components/extensions/schemas/manifest.json
- + toolkit/components/extensions/test/xpcshell/test_ext_dnr_redirect_main_frame.js
- toolkit/components/extensions/test/xpcshell/test_ext_manifest.js
- toolkit/components/extensions/test/xpcshell/xpcshell-common.toml
- toolkit/content/widgets/notificationbox.js
- toolkit/crashreporter/nsExceptionHandler.cpp
- toolkit/mozapps/extensions/AddonManagerStartup.cpp
- toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
- toolkit/mozapps/extensions/internal/XPIInstall.sys.mjs
- toolkit/mozapps/extensions/test/xpcshell/test_builtin_location.js
- toolkit/mozapps/extensions/test/xpcshell/test_locale.js
- toolkit/mozapps/extensions/test/xpcshell/test_system_profile_location.js
- tools/(a)types/lib.gecko.xpcom.d.ts
- tools/profiler/core/platform.cpp
- tools/profiler/gecko/ProfilerChild.cpp
- tools/profiler/public/ProfilerChild.h
- tools/update-verify/release/updates/verify.sh
- xpcom/build/FileLocation.cpp
- xpcom/build/FileLocation.h
- xpcom/build/Omnijar.cpp
- xpcom/components/nsComponentManager.cpp
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/2d8989…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/2d8989…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser] Pushed new branch base-browser-128.8.0esr-14.5-1
by clairehurst (@clairehurst) 27 Feb '25
by clairehurst (@clairehurst) 27 Feb '25
27 Feb '25
clairehurst pushed new branch base-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/tree/base-brow…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-115.21.0esr-13.5-1] 221 commits: Bug 1644383 - add mutexs to avoid data race. r=media-playback-reviewers,padenot
by ma1 (@ma1) 27 Feb '25
by ma1 (@ma1) 27 Feb '25
27 Feb '25
ma1 pushed to branch tor-browser-115.21.0esr-13.5-1 at The Tor Project / Applications / Tor Browser
Commits:
db3112bd by alwu at 2025-02-27T13:06:47+01:00
Bug 1644383 - add mutexs to avoid data race. r=media-playback-reviewers,padenot
Differential Revision: https://phabricator.services.mozilla.com/D206943
- - - - -
68f1b26e by Edgar Chen at 2025-02-27T13:06:53+01:00
Bug 1743329 - Handle ESC key to release pointer lock in parent process; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D211621
- - - - -
f879bc80 by Edgar Chen at 2025-02-27T13:06:54+01:00
Bug 1743329 - Release pointer lock when xul popup is open; r=smaug,pbz
Differential Revision: https://phabricator.services.mozilla.com/D211620
- - - - -
2719204a by Edgar Chen at 2025-02-27T13:06:55+01:00
Bug 1743329 - Use nsMenuPopupFrame in GetVisiblePopups(); r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D211619
A further change was needed in nsCaret.cpp, see
https://gitlab.torproject.org/tpo/applications/tor-browser/-/merge_requests…
- - - - -
3789c84a by Otto Länd at 2025-02-27T13:06:57+01:00
Bug 1743329: apply code formatting via Lando
# ignore-this-changeset
- - - - -
4ac0184d by Anna Weine at 2025-02-27T13:06:58+01:00
Bug 1760806 - WebCrypto: ECDH and ECDSA JWK import to check that the crv in params and crv in alg are the same r=keeler
https://treeherder.mozilla.org/jobs?repo=try&revision=ed7936b105dea8e588650…
Differential Revision: https://phabricator.services.mozilla.com/D217273
- - - - -
8a10c3bf by Pier Angelo Vendrame at 2025-02-27T13:06:59+01:00
Bug 1787790: Normalize system fonts with RFP on. r=emilio
System fonts can leak any user customization of system fonts, or user's
locale (e.g., en-US and ja Windows have different system fonts).
Also, Linux distributions/desktop environments set default fonts in
different ways.
Customization can be detected either with font metrics, the font allowed
list is not enabled or the font is included in it, or with
getComputedStyle, that leaks the name of the font that Firefox tries to
apply.
This patch try to prevent these leaks by using a generic "sans-serif"
for all system fonts, except on macOS, where it uses "-apple-system",
and on Android, where these fonts always use Roboto.
Differential Revision: https://phabricator.services.mozilla.com/D163576
- - - - -
0a4dd9ec by Eitan Isaacson at 2025-02-27T13:07:00+01:00
Bug 1819160 - Map Android ids to doc/accessible id pairs. r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D179737
- - - - -
3496ed27 by Fatih at 2025-02-27T13:07:02+01:00
Bug 1830629: Remove unnecessary checks for pdf.js for RFP. r=tjr
resource:// is exempt from RFP, so we no longer need to check pdf.js specifically.
Differential Revision: https://phabricator.services.mozilla.com/D209359
- - - - -
4cd6f3df by Pier Angelo Vendrame at 2025-02-27T13:07:03+01:00
Bug 1832523 - Allow using NSS to sign and verify MAR signatures. r=application-update-reviewers,glandium,bytesized
Allow using NSS for checking MAR signatures also in platforms where
OS-native APIs are used by default, i.e., macOS and Windows.
Differential Revision: https://phabricator.services.mozilla.com/D177743
- - - - -
00af8d8c by Pier Angelo Vendrame at 2025-02-27T13:07:04+01:00
Bug 1849129: Prevent exceptions caused by extensions from interrupting the SearchService initialization. r=search-reviewers,Standard8
Differential Revision: https://phabricator.services.mozilla.com/D186456
- - - - -
221892d4 by Emilio Cobos Álvarez at 2025-02-27T13:07:05+01:00
Bug 1853731 - Use html:img for message-bar-icon. r=Gijs,dao,settings-reviewers,desktop-theme-reviewers,sfoster
Differential Revision: https://phabricator.services.mozilla.com/D188521
- - - - -
ddef036b by Pier Angelo Vendrame at 2025-02-27T13:07:07+01:00
Bug 1854117 - Sort the DLL blocklist flags. r=mossop,win-reviewers,gstoll
Differential Revision: https://phabricator.services.mozilla.com/D188716
- - - - -
62a857ca by Eden Chuang at 2025-02-27T13:07:08+01:00
Bug 1738426 - Ignoring status 206 and vary header checking for opaque response in Cache API. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D186431
- - - - -
3a8efa86 by edgul at 2025-02-27T13:07:10+01:00
Bug 1802057 - Block the following characters from use in the cookie name in the cookie string: 0x3B (semi-colon), 0x3D (equals), and 0x7F (del) r=dveditz,cookie-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D182373
- - - - -
6ea9b41b by Kelsey Gilbert at 2025-02-27T13:07:11+01:00
Bug 1819497 - Don't race on static bool for initialization. r=gfx-reviewers,aosmond
We could do non-racy static init here (e.g. with a static initializer
self-calling-closure), but there doesn't seem to be a strong reason for
this. Let's just use a switch and get robustness from -Werror=switch.
Differential Revision: https://phabricator.services.mozilla.com/D188054
- - - - -
3be494ea by Edgar Chen at 2025-02-27T13:07:12+01:00
Bug 1828259 - Close XUL popup when entering/exiting fullscreen; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D209355
- - - - -
fd8ff60c by hackademix at 2025-02-27T13:07:14+01:00
Bug 1835987 - Change RFP-spoofed TZ to Atlantic/Reykjavik. r=tjr
Atlantic/Reykjavik stays on UTC during all the year, but it is less
likely to be blocked than plan UTC.
Differential Revision: https://phabricator.services.mozilla.com/D212131
- - - - -
f7f42ab2 by edgul at 2025-02-27T13:07:15+01:00
Bug 1879952 - Fix test expectations with samesite=lax turned on r=tschuster
Differential Revision: https://phabricator.services.mozilla.com/D201639
- - - - -
7d3ec3e2 by Gijs Kruitbosch at 2025-02-27T13:07:16+01:00
Bug 1842187 a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D223948
Differential Revision: https://phabricator.services.mozilla.com/D228631
- - - - -
bbb34de8 by edgul at 2025-02-27T13:07:18+01:00
Bug 1844827 - Added checks for sub-document navigations from cross-site to same-site in third-party checks when setting a cookie. r=cookie-reviewers,valentin,bvandersloot a=RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D204074
- - - - -
d4fda17b by Ed at 2025-02-27T13:07:19+01:00
Bug 1844827 - Update the cookie test expectations for iframe samesite r=cookie-reviewers,valentin a=RyanVM
Depends on D199770
Differential Revision: https://phabricator.services.mozilla.com/D199772
- - - - -
acc70e08 by Mark Banner at 2025-02-27T13:07:20+01:00
Bug 1845752. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D186676
- - - - -
597af7e9 by Pier Angelo Vendrame at 2025-02-27T13:07:22+01:00
Bug 1849186 - Add a preference not to expose the content title in the window title. r=Gijs,tabbrowser-reviewers,dao
Differential Revision: https://phabricator.services.mozilla.com/D190496
- - - - -
dc1d8afd by Bob Owen at 2025-02-27T13:07:23+01:00
Bug 1850072: Initialize RecordedDrawTargetCreation::mHasExistingData. r=jrmuizel
This also specializes ElementStreamFormat for bool.
Differential Revision: https://phabricator.services.mozilla.com/D187794
- - - - -
78643eda by Malte Juergens at 2025-02-27T13:07:24+01:00
Bug 1850200 - Add delay to HTTPS-Only "Continue to HTTPS Site" button r=freddyb
Differential Revision: https://phabricator.services.mozilla.com/D187887
- - - - -
ff429d08 by Henry Wilkes at 2025-02-27T13:07:25+01:00
Bug 1851618 - Allow removing packaged locales from requestedLocales. r=settings-reviewers,eemeli,Gijs
We open up the UI to allow the user to remove locales from their
requestedLocales list, except for the default locale.
Differential Revision: https://phabricator.services.mozilla.com/D209930
- - - - -
b2524985 by Andreas Pehrson at 2025-02-27T13:07:26+01:00
Bug 1851803 - Introduce SourceMediaTrack::mDirectDisabledMode. r=karlt
Similar to MediaTrack::mDisabledMode, but this is for uses on the
SourceMediaTrack producer thread. It is still signaled via a control message
from the control thread to maintain order of operations, and is protected by the
SourceMediaTrack mutex.
Differential Revision: https://phabricator.services.mozilla.com/D187554
- - - - -
9426b38b by Pier Angelo Vendrame at 2025-02-27T13:07:28+01:00
Bug 1860020 - Remove the assertion on the value of toolkit.telemetry.enabled. r=KrisWright,chutten
Bug 1444275 introduced an assertion on the parent process to check that
the value of toolkit.telemetry.enabled is the expected one.
However, this expected value could be different from the one set and
locked e.g. in some forks. Therefore, the assertion prevented debug
builds from working in these cases.
Differential Revision: https://phabricator.services.mozilla.com/D195080
- - - - -
49b1bbf3 by Kagami Sascha Rosylight at 2025-02-27T13:07:29+01:00
Bug 1865238 - Use One UI Sans KR VF for Korean sans-serif font on Android r=jfkthame
Per /etc/fonts.xml, there are now only two `<family lang="ko">` nodes there:
* OneUISansKRVF series
* SECCJK series (but no KR postfix anymore?)
This patch uses One UI Sans KR VF as the replacement as this is newer and is a variable font (tested with https://codepen.io/SaschaNaz/pen/ExrdYXJ)
Differential Revision: https://phabricator.services.mozilla.com/D195078
- - - - -
cd79822a by Nuohan Li at 2025-02-27T13:07:30+01:00
Bug 1871109 - generateHash in Manifest.sys.mjs should use sha256 r=peterv, a=dmeehan
Differential Revision: https://phabricator.services.mozilla.com/D204928
- - - - -
9609e871 by Tom Ritter at 2025-02-27T13:07:32+01:00
Bug 1873526: Refactor the restriction override list from a big if statement to a list r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D198081
- - - - -
85b6bd32 by Nika Layzell at 2025-02-27T13:07:33+01:00
Bug 1875248 - Check for network error preventing ExternalHelperAppService before DONT_RETARGET, r=smaug
This reverts the change from 30cde47f9364e5c7da78fd08fa8ab21737d22399,
and instead re-orders the NS_ERROR_FILE_NOT_FOUND check before
DONT_RETARGET.
Testing suggests that a-download-click-404.html behaviour isn't
impacted, and this improves the handling of this edge-case when doing
process switching.
Differential Revision: https://phabricator.services.mozilla.com/D202007
- - - - -
6174403b by Pier Angelo Vendrame at 2025-02-27T13:07:34+01:00
Bug 1875306 - Localize numbers in the underflow and overflow error messages. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D198965
- - - - -
54d78c49 by Pier Angelo Vendrame at 2025-02-27T13:07:35+01:00
Bug 1875313 - Use en-US as a fallback when spoof English is enabled in ICUUtils. r=timhuang,tjr
Differential Revision: https://phabricator.services.mozilla.com/D198967
- - - - -
f358dad9 by Julian Descottes at 2025-02-27T13:07:37+01:00
Bug 1880374 - Disable DNS prefetching if document nodePrincipal is systemPrincipal r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D210830
- - - - -
b95bd202 by Pier Angelo Vendrame at 2025-02-27T13:07:38+01:00
Bug 1880988 - Apply spoof English to the default detail summary. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D202203
- - - - -
fc1451d2 by Nika Layzell at 2025-02-27T13:07:39+01:00
Bug 1881037 - Part 1: Stop showing unknown protocol error pages for web-triggered loads, r=smaug,necko-reviewers,kershaw, a=dsmith
Differential Revision: https://phabricator.services.mozilla.com/D217495
- - - - -
33e5142b by Edgar Chen at 2025-02-27T13:07:40+01:00
Bug 1883396 - Exit fullscreen when two Escape keyup events occur in a short time; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D209667
- - - - -
f0f1f30c by Fatih at 2025-02-27T13:07:42+01:00
Bug 1885101: Match screen and window properties with top window for ScreenRect, ScreenAvailRect and WindowOuterSize. r=timhuang,emilio
This patch removes test_iframe.html. We remove it because the newly introduced test covers the tests done in that test. The reason for removing it in the first place is now that screen properties are inherited/spoofed xorigin, we get a 4px difference. The reasosn for 4px difference is the test runner runs tests in an iframe with a 2px border on each side.
Differential Revision: https://phabricator.services.mozilla.com/D215509
- - - - -
dab3093f by Tom Ritter at 2025-02-27T13:07:43+01:00
Bug 1885258: Hidden fonts should obey the allow list r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D204571
- - - - -
fcb89c7a by Andreas Farre at 2025-02-27T13:07:44+01:00
Bug 1886222 - Start reload by calling reload in the parent. r=Gijs,canadahonk,smaug, a=dsmith (esr128->esr115 backport)
Differential Revision: https://phabricator.services.mozilla.com/D211519
- - - - -
5bc35af5 by Jonathan Kew at 2025-02-27T13:07:46+01:00
Bug 1886598 - Struct with Pointer member may not be memmove-able. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D206633
- - - - -
f70f009c by Jonathan Kew at 2025-02-27T13:07:47+01:00
Bug 1890204 - Ensure font entry's unitsPerEm and font extents are initialized when gfxFont is created. r=gfx-reviewers,lsalzman
This means that by the time we potentially call GetFontExtents() when drawing,
the extents fields are guaranteed to have been been initialized, and there's no
risk of the (read-only) access here racing with setting them in UnitsPerEm().
Differential Revision: https://phabricator.services.mozilla.com/D206920
- - - - -
8d00d1d6 by Kershaw Chang at 2025-02-27T13:07:51+01:00
Bug 1892449 - Set network.http.digest_auth_cnonce_length to 16, a=dmeehan
Apparently, setting this value to 64 breaks some sites. We should use the same length as Chrome.
Original Revision: https://phabricator.services.mozilla.com/D208103
Differential Revision: https://phabricator.services.mozilla.com/D208119
- - - - -
490b30d0 by cypherpunks1 at 2025-02-27T13:07:53+01:00
Bug 1892052 - Do not persist custom network requests on PBM. r=devtools-reviewers,bomsy,nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D207762
- - - - -
b4aa28b7 by Jonathan Kew at 2025-02-27T13:07:54+01:00
Bug 1893891 - Clear mSharedBlobData if blob creation failed. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D208983
Differential Revision: https://phabricator.services.mozilla.com/D209209
- - - - -
856105e8 by cypherpunks1 at 2025-02-27T13:07:55+01:00
Bug 1892046 - Add origin attributes to about:reader requests. r=reader-mode-reviewers,cmkm
Differential Revision: https://phabricator.services.mozilla.com/D207759
- - - - -
1012fb82 by Timothy Nikkel at 2025-02-27T13:07:56+01:00
Bug 1899180. If a channel is not nsIPrivateBrowsingChannel and has no load context, use the private browsing field from it's origin attributes. r=necko-reviewers,anti-tracking-reviewers,valentin
If the channel is not a nsIPrivateBrowsingChannel, and it also has no load context (eg inside svg images) then we will over write a non-zero mPrivateBrowsingId on the OriginAttributes of the channel with 0, making NS_UsePrivateBrowsing return false for the channel.
Differential Revision: https://phabricator.services.mozilla.com/D212083
- - - - -
7eb5d489 by Jan de Mooij at 2025-02-27T13:07:58+01:00
Bug 1900523 - Don't use bailout data for JSJitToWasm frames. r=iain
Differential Revision: https://phabricator.services.mozilla.com/D212554
- - - - -
6834971b by Jan de Mooij at 2025-02-27T13:07:59+01:00
Bug 1902983 - Don't use bailout data after iterating Wasm frames. a=RyanVM
This is similar to bug 1900523, but the fix there was incomplete because the
`JSJitToWasm` frame type is only used when we go through the Wasm JIT entry
trampoline. Ion can also call Wasm functions directly and in that case the type
will be `FrameType::Exit`.
Original Revision: https://phabricator.services.mozilla.com/D214098
Differential Revision: https://phabricator.services.mozilla.com/D214375
- - - - -
7c8e72be by Jon Coppeard at 2025-02-27T13:08:00+01:00
Bug 1904011 - Ignore finalized scripts when iterating code covarage tables r=iain
Differential Revision: https://phabricator.services.mozilla.com/D214799
- - - - -
7955cb12 by Kershaw Chang at 2025-02-27T13:08:02+01:00
Bug 1907726 - Make sure WebTransportSessionProxy::NotifyDatagramReceived is called after OnStopRequest, a=RyanVM
The crash occurs because WebTransportSessionProxy::OnDatagramReceivedInternal is called before WebTransportSessionProxy::OnStopRequest.
When this happens, WebTransportSessionProxy::mTarget is the main thread, so a task is dispatched to the main thread. This causes WebTransportSessionProxy::NotifyDatagramReceived to be called on the main thread.
If WebTransportSessionProxy::NotifyDatagramReceived is invoked while WebTransportSessionProxy::mStopRequestCalled is true, it can lead to OnDatagramReceived being called on the main thread (instead of the socket thread), resulting in a crash.
Original Revision: https://phabricator.services.mozilla.com/D220013
Differential Revision: https://phabricator.services.mozilla.com/D221661
- - - - -
c1455530 by Sam Foster at 2025-02-27T13:08:03+01:00
Bug 1909099 - Always clean up old session restore and sync log files. r=markh,sessionstore-reviewers,dao
Differential Revision: https://phabricator.services.mozilla.com/D217520
- - - - -
d5412080 by Edgar Chen at 2025-02-27T13:08:04+01:00
Bug 1909535 - Don't show select dropdown in background tabs; a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D225706
Differential Revision: https://phabricator.services.mozilla.com/D227607
- - - - -
16c2a33e by Nika Layzell at 2025-02-27T13:08:06+01:00
Bug 1911745 - Unify BrowsingContext flag coherency checks, r=mccr8
Previously these checks were largely diagnostic tools for finding bugs
in other code as it evolves. This unifies the checks a bit more and
makes them stronger for BrowsingContexts created over IPC, providing a
place for more coherency checks to be added in the future.
Differential Revision: https://phabricator.services.mozilla.com/D218860
- - - - -
efdf2b74 by Steve Fink at 2025-02-27T13:08:07+01:00
Bug 1912471 - Disallow deserializing structured clone buffers with transferables more than once r=iain, a=dsmith
Differential Revision: https://phabricator.services.mozilla.com/D220644
- - - - -
295809d5 by Emilio Cobos Álvarez at 2025-02-27T13:08:08+01:00
Bug 1914106 - Deal with insertRule edge-case. r=jwatt a=RyanVM
When there's trailing garbage after an @import rule we throw, but we
still trigger the load (that's not great but not trivial to change).
Deal with that case before calling ImportRuleLoaded().
Differential Revision: https://phabricator.services.mozilla.com/D219783
- - - - -
0c1d062b by André Bargull at 2025-02-27T13:08:10+01:00
Bug 1915249: Add more nodiscard. a=RyanVM
Original Revision: https://phabricator.services.mozilla.com/D220311
Differential Revision: https://phabricator.services.mozilla.com/D221663
- - - - -
48703948 by Paul Zuehlcke at 2025-02-27T13:08:11+01:00
Bug 1916659, a=diannaS
Original Revision: https://phabricator.services.mozilla.com/D222629
Differential Revision: https://phabricator.services.mozilla.com/D222934
- - - - -
e1784bef by Randell Jesup at 2025-02-27T13:08:12+01:00
Bug 1829029: clean up memory reporting for CacheFileIOManager r=necko-reviewers,valentin, a=RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D221350
- - - - -
1f91f7be by Valentin Gosu at 2025-02-27T13:08:14+01:00
Bug 1914521 - Make nsPartChannel inherit the content disposition of the multipart response a=RyanVM
Original Revision: https://phabricator.services.mozilla.com/D223728
Differential Revision: https://phabricator.services.mozilla.com/D224288
- - - - -
47001887 by Andrew McCreight at 2025-02-27T13:08:15+01:00
Bug 1919809 - Always clear mArgumentStorage in Console's Unlink. a=RyanVM
Original Revision: https://phabricator.services.mozilla.com/D222803
Differential Revision: https://phabricator.services.mozilla.com/D224384
- - - - -
ad0f9a8e by Paul Zuehlcke at 2025-02-27T13:08:16+01:00
Bug 1920423, a=RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D224349
- - - - -
9d0d482b by Marco Bonardo at 2025-02-27T13:08:17+01:00
Bug 1921458. a=dmeehan
Original Revision: https://phabricator.services.mozilla.com/D226775
Differential Revision: https://phabricator.services.mozilla.com/D227221
- - - - -
1f9549c4 by Andrew McCreight at 2025-02-27T13:08:19+01:00
Bug 1923706 - Pass by value, not reference in CamerasChild::AllocateCapture. a=RyanVM
Original Revision: https://phabricator.services.mozilla.com/D225121
Differential Revision: https://phabricator.services.mozilla.com/D225363
- - - - -
1cdf6879 by Kagami Sascha Rosylight at 2025-02-27T13:08:20+01:00
Bug 1924154 - Disallow too small record a=RyanVM
Original Revision: https://phabricator.services.mozilla.com/D225687
Differential Revision: https://phabricator.services.mozilla.com/D226147
- - - - -
9d2f69b7 by Kershaw Chang at 2025-02-27T16:28:08+01:00
Bug 1932783 - Make nsHostKey::flags Atomic, a=RyanVM
- - - - -
2c379c04 by Dana Keeler at 2025-02-27T16:28:09+01:00
Bug 1940804 - avoid some "as" casts in cert_storage a=RyanVM
Original Revision: https://phabricator.services.mozilla.com/D233775
Differential Revision: https://phabricator.services.mozilla.com/D233880
- - - - -
aa4ad07d by Henry Wilkes at 2025-02-27T16:28:11+01:00
Bug 41454: Move focus after calling openPreferences for a sub-category.
Temporary fix until mozilla bug 1799153 gets a patch upstream.
- - - - -
4ee79cc0 by hackademix at 2025-02-27T16:28:11+01:00
Bug 42194: Fix blank net error page on failed DNS resolution with active proxy.
- - - - -
c1351b00 by Henry Wilkes at 2025-02-27T16:28:13+01:00
Bug 41483: Remove the firefox override for appstrings.properties
Remove this patch after upstream bugzilla bug 1790187
- - - - -
92e1c4b7 by Marco Simonelli at 2025-02-27T16:28:14+01:00
Bug 41459: WebRTC fails to build under mingw (Part 1)
- properly define NOMINMAX for just MSVC builds
- - - - -
faf1cf9a by Marco Simonelli at 2025-02-27T16:28:15+01:00
Bug 41459: WebRTC fails to build under mingw (Part 2)
- fixes required to build third_party/libwebrtc
- - - - -
75ac574d by Marco Simonelli at 2025-02-27T16:28:16+01:00
Bug 41459: WebRTC fails to build under mingw (Part 3)
- fixes required to build third_party/sipcc
- - - - -
abb3fb91 by Marco Simonelli at 2025-02-27T16:28:17+01:00
Bug 41459: WebRTC fails to build under mingw (Part 4)
- fixes requried to build netwerk/sctp
- - - - -
f4e1e9cd by Marco Simonelli at 2025-02-27T16:28:18+01:00
Bug 41459: WebRTC fails to build under mingw (Part 5)
- fixes required to build dom/media/webrtc
- - - - -
cd1bee2a by Marco Simonelli at 2025-02-27T16:28:19+01:00
Bug 41459: WebRTC fails to build under mingw (Part 6)
- fixes required to build dom/media/systemservices
- - - - -
2794afd0 by hackademix at 2025-02-27T16:28:20+01:00
Bug 41854: Allow overriding download spam protection.
- - - - -
aa2cc87a by hackademix at 2025-02-27T16:28:20+01:00
Bug 42835: Create an actor to filter file data transfers
- - - - -
e11ace79 by Gaba at 2025-02-27T16:28:21+01:00
Adding issue and merge request templates
- - - - -
e92f4e26 by Pier Angelo Vendrame at 2025-02-27T16:28:22+01:00
Base Browser's .mozconfigs.
Bug 17858: Cannot create incremental MARs for hardened builds.
Define HOST_CFLAGS, etc. to avoid compiling programs such as mbsdiff
(which is part of mar-tools and is not distributed to end-users) with
ASan.
Bug 21849: Don't allow SSL key logging.
Bug 25741 - TBA: Disable features at compile-time
Define MOZ_ANDROID_NETWORK_STATE and MOZ_ANDROID_LOCATION
Bug 27623 - Export MOZILLA_OFFICIAL during desktop builds
This fixes a problem where some preferences had the wrong default value.
Also see bug 27472 where we made a similar fix for Android.
Bug 29859: Disable HLS support for now
Bug 30463: Explicitly disable MOZ_TELEMETRY_REPORTING
Bug 32493: Disable MOZ_SERVICES_HEALTHREPORT
Bug 33734: Set MOZ_NORMANDY to False
Bug 33851: Omit Parental Controls.
Bug 40252: Add --enable-rust-simd to our tor-browser mozconfig files
Bug 41584: Move some configuration options to base-browser level
- - - - -
1307c6e4 by Pier Angelo Vendrame at 2025-02-27T16:28:23+01:00
Tweaks to the build system
Bug 40857: Modified the fat .aar creation file
This is a workaround to build fat .aars with the compiling enviornment
disabled.
Mozilla does not use a similar configuration, but either runs a Firefox
build and discards its output, or uses artifacts build.
We might switch to artifact builds too, and drop this patch, or write a
better one to upstream. But until then we need this patch.
See also https://bugzilla.mozilla.org/show_bug.cgi?id=1763770.
Bug 41458: Prevent `mach package-multi-locale` from actually creating a package
macOS builds need some files to be moved around with
./mach package-multi-locale to create multi-locale packages.
The required command isn't exposed through any other mach command.
So, we patch package-multi-locale both to prevent it from failing when
doing official builds and to detect any future changes on it.
- - - - -
5aa2e2ac by Pier Angelo Vendrame at 2025-02-27T16:28:24+01:00
Bug 41108: Remove privileged macOS installation from 102
- - - - -
d4a7ee1a by Dan Ballard at 2025-02-27T16:28:26+01:00
Bug 41149: Re-enable DLL injection protection in all builds not just nightlies
- - - - -
88726044 by Matthew Finkel at 2025-02-27T16:28:27+01:00
Bug 24796: Comment out excess permissions from GeckoView
The GeckoView AndroidManifest.xml is not preprocessed unlike Fennec's
manifest, so we can't use the ifdef preprocessor guards around the
permissions we do not want. Commenting the permissions is the
next-best-thing.
- - - - -
62c81339 by Matthew Finkel at 2025-02-27T16:28:28+01:00
Bug 28125: Prevent non-Necko network connections
- - - - -
5f5e4e76 by Mike Perry at 2025-02-27T16:28:29+01:00
Bug 12974: Disable NTLM and Negotiate HTTP Auth
The Mozilla bugs: https://bugzilla.mozilla.org/show_bug.cgi?id=1046421,
https://bugzilla.mozilla.org/show_bug.cgi?id=1261591, tor-browser#27602
- - - - -
e67599bd by Alex Catarineu at 2025-02-27T16:28:30+01:00
Bug 40166: Disable security.certerrors.mitm.auto_enable_enterprise_roots
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1768899
- - - - -
bcf26380 by Georg Koppen at 2025-02-27T16:28:31+01:00
Bug 16285: Exclude ClearKey system for now
In the past the ClearKey system had not been compiled when specifying
--disable-eme. But that changed and it is even bundled nowadays (see:
Mozilla's bug 1300654). We don't want to ship it right now as the use
case for it is not really visible while the code had security
vulnerabilities in the past.
- - - - -
fbb2609d by Kathy Brade at 2025-02-27T16:28:32+01:00
Bug 21431: Clean-up system extensions shipped in Firefox
Only ship the pdfjs extension.
- - - - -
0a069b36 by Kathy Brade at 2025-02-27T16:28:33+01:00
Bug 33852: Clean up about:logins (LockWise) to avoid mentioning sync, etc.
Hide elements on about:logins that mention sync, "Firefox LockWise", and
Mozilla's LockWise mobile apps.
Disable the "Create New Login" button when security.nocertdb is true.
- - - - -
b57a9208 by Alex Catarineu at 2025-02-27T16:28:34+01:00
Bug 41457: Remove Mozilla permissions
Bug 40025: Remove Mozilla add-on install permissions
- - - - -
71bca3e5 by Kathy Brade at 2025-02-27T16:28:35+01:00
Bug 40002: Remove about:ion
Firefox Ion (previously Firefox Pioneer) is an opt-in program in which people
volunteer to participate in studies that collect detailed, sensitive data about
how they use their browser.
Bug 41662: Disable about:sync-logs
Even though we disable sync by default with
`identity.fxaccounts.enabled`, this about: page is still avilable.
We could throw an exception on the constructor of the related
component, but it would result only in an error in the console, without
a visible "this address does not look right" error page.
If we fix the issues with MOZ_SERVICES_SYNC, we can restore the
component.
- - - - -
f0490a84 by Arthur Edelstein at 2025-02-27T16:28:36+01:00
Bug 26353: Prevent speculative connect that violated FPI.
Connections were observed in the catch-all circuit when
the user entered an https or http URL in the URL bar, or
typed a search term.
- - - - -
0b0a24d0 by Alex Catarineu at 2025-02-27T16:28:37+01:00
Bug 31740: Remove some unnecessary RemoteSettings instances
More concretely, SearchService.jsm 'hijack-blocklists' and
url-classifier-skip-urls.
Avoid creating instance for 'anti-tracking-url-decoration'.
If prefs are disabling their usage, avoid creating instances for
'cert-revocations' and 'intermediates'.
Do not ship JSON dumps for collections we do not expect to need. For
the ones in the 'main' bucket, this prevents them from being synced
unnecessarily (the code in remote-settings does so for collections
in the main bucket for which a dump or local data exists). For the
collections in the other buckets, we just save some size by not
shipping their dumps.
We also clear the collections database on the v2 -> v3 migration.
- - - - -
6a268eb6 by cypherpunks1 at 2025-02-27T16:28:38+01:00
Bug 41092: Add a RemoteSettings JSON dump for query-stripping
- - - - -
89e47836 by Pier Angelo Vendrame at 2025-02-27T16:28:39+01:00
Bug 41635: Disable the Normandy component
Do not include Normandy at all whenever MOZ_NORMANDY is False.
- - - - -
2cccc69d by Georg Koppen at 2025-02-27T16:28:40+01:00
Bug 30541: Disable WebGL readPixel() for web content
Related Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1428034
- - - - -
69ba2406 by Alex Catarineu at 2025-02-27T16:28:41+01:00
Bug 28369: Stop shipping pingsender executable
- - - - -
a51101f1 by cypherpunks1 at 2025-02-27T16:28:42+01:00
Bug 41568: Disable LaterRun
- - - - -
82f4046d by cypherpunks1 at 2025-02-27T16:28:43+01:00
Bug 40717: Hide Windows SSO in settings
- - - - -
74bc45af by Pier Angelo Vendrame at 2025-02-27T16:28:44+01:00
Bug 41599: Always return an empty string as network ID
Firefox computes an internal network ID used to detect network changes
and act consequently (e.g., to improve WebSocket UX).
However, there are a few ways to get this internal network ID, so we
patch them out, to be sure any new code will not be able to use them and
possibly link users.
We also sent a patch to Mozilla to seed the internal network ID, to
prevent any accidental leak in the future.
Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=1817756
- - - - -
21b9c0fa by Richard Pospesel at 2025-02-27T16:28:45+01:00
Bug 41327: Disable UrlbarProviderInterventions
- - - - -
bf631d49 by Richard Pospesel at 2025-02-27T16:28:46+01:00
Bug 42037: Disable about:firefoxview page
- - - - -
c8eb0a87 by Mike Perry at 2025-02-27T16:28:47+01:00
Firefox preference overrides.
This hack directly includes our preference changes in omni.ja.
Bug 18292: Staged updates fail on Windows
Temporarily disable staged updates on Windows.
Bug 18297: Use separate Noto JP,KR,SC,TC fonts
Bug 23404: Add Noto Sans Buginese to the macOS whitelist
Bug 23745: Set dom.indexedDB.enabled = true
Bug 13575: Disable randomised Firefox HTTP cache decay user tests.
(Fernando Fernandez Mancera <ffmancera(a)riseup.net>)
Bug 17252: Enable session identifiers with FPI
Session tickets and session identifiers were isolated
by OriginAttributes, so we can re-enable them by
allowing the default value (true) of
"security.ssl.disable_session_identifiers".
The pref "security.enable_tls_session_tickets" is obsolete
(removed in https://bugzilla.mozilla.org/917049)
Bug 14952: Enable http/2 and AltSvc
In Firefox, SPDY/HTTP2 now uses Origin Attributes for
isolation of connections, push streams, origin frames, etc.
That means we get first-party isolation provided
"privacy.firstparty.isolate" is true. So in this patch, we
stop overriding "network.http.spdy.enabled" and
"network.http.spdy.enabled.http2".
Alternate Services also use Origin Attributes for isolation.
So we stop overriding
"network.http.altsvc.enabled" and "network.http.altsvc.oe"
as well.
(All 4 of the abovementioned "network.http.*" prefs adopt
Firefox 60ESR's default value of true.)
However, we want to disable HTTP/2 push for now, so we
set "network.http.spdy.allow-push" to false.
"network.http.spdy.enabled.http2draft" was removed in Bug 1132357.
"network.http.sped.enabled.v2" was removed in Bug 912550.
"network.http.sped.enabled.v3" was removed in Bug 1097944.
"network.http.sped.enabled.v3-1" was removed in Bug 1248197.
Bug 26114: addons.mozilla.org is not special
* Don't expose navigator.mozAddonManager on any site
* Don't block NoScript from modifying addons.mozilla.org or other sites
Enable ReaderView mode again (#27281).
Bug 29916: Make sure enterprise policies are disabled
Bug 2874: Block Components.interfaces from content
Bug 26146: Spoof HTTP User-Agent header for desktop platforms
In Tor Browser 8.0, the OS was revealed in both the HTTP User-Agent
header and to JavaScript code via navigator.userAgent. To avoid
leaking the OS inside each HTTP request (which many web servers
log), always use the Windows 7 OS value in the desktop User-Agent
header. We continue to allow access to the actual OS via JavaScript,
since doing so improves compatibility with web applications such
as GitHub and Google Docs.
Bug 12885: Windows Jump Lists fail for Tor Browser
Jumplist entries are stored in a binary file in:
%APPDATA%\\Microsoft\Windows\Recent\CustomDestinations\
and has a name in the form
[a-f0-9]+.customDestinations-ms
The hex at the front is unique per app, and is ultimately derived from
something called the 'App User Model ID' (AUMID) via some unknown
hashing method. The AUMID is provided as a key when programmatically
creating, updating, and deleting a jumplist. The default behaviour in
firefox is for the installer to define an AUMID for an app, and save it
in the registry so that the jumplist data can be removed by the
uninstaller.
However, the Tor Browser does not set this (or any other) regkey during
installation, so this codepath fails and the app's AUMID is left
undefined. As a result the app's AUMID ends up being defined by
windows, but unknowable by Tor Browser. This unknown AUMID is used to
create and modify the jumplist, but the delete API requires that we
provide the app's AUMID explicitly. Since we don't know what the AUMID
is (since the expected regkey where it is normally stored does not
exist) jumplist deletion will fail and we will leave behind a mostly
empty customDestinations-ms file. The name of the file is derived from
the binary path, so an enterprising person could reverse engineer how
that hex name is calculated, and generate the name for Tor Browser's
default Desktop installation path to determine whether a person had
used Tor Browser in the past.
The 'taskbar.grouping.useprofile' option that is enabled by this patch
works around this AUMID problem by having firefox.exe create it's own
AUMID based on the profile path (rather than looking for a regkey). This
way, if a user goes in and enables and disables jumplist entries, the
backing store is properly deleted.
Unfortunately, all windows users currently have this file lurking in
the above mentioned directory and this patch will not remove it since it
was created with an unknown AUMID. However, another patch could be
written which goes to that directory and deletes any item containing the
'Tor Browser' string. See bug 28996.
Bug 30845: Make sure default themes and other internal extensions are enabled
Bug 28896: Enable extensions in private browsing by default
Bug 31065: Explicitly allow proxying localhost
Bug 31598: Enable letterboxing
Disable Presentation API everywhere
Bug 21549 - Use Firefox's WASM default pref. It is disabled at safer
security levels.
Bug 32321: Disable Mozilla's MitM pings
Bug 19890: Disable installation of system addons
By setting the URL to "" we make sure that already installed system
addons get deleted as well.
Bug 22548: Firefox downgrades VP9 videos to VP8.
On systems where H.264 is not available or no HWA, VP9 is preferred. But in Tor
Browser 7.0 all youtube videos are degraded to VP8.
This behaviour can be turned off by setting media.benchmark.vp9.threshold to 0.
All clients will get better experience and lower traffic, beause TBB doesn't
use "Use hardware acceleration when available".
Bug 25741 - TBA: Add mobile-override of 000-tor-browser prefs
Bug 16441: Suppress "Reset Tor Browser" prompt.
Bug 29120: Use the in-memory media cache and increase its maximum size.
Bug 33697: use old search config based on list.json
Bug 33855: Ensure that site-specific browser mode is disabled.
Bug 30682: Disable Intermediate CA Preloading.
Bug 40061: Omit the Windows default browser agent from the build
Bug 40322: Consider disabling network.connectivity-service.enabled
Bug 40408: Disallow SVG Context Paint in all web content
Bug 40308: Disable network partitioning until we evaluate dFPI
Bug 40322: Consider disabling network.connectivity-service.enabled
Bug 40383: Disable dom.enable_event_timing
Bug 40423: Disable http/3
Bug 40177: Update prefs for Fx91esr
Bug 40700: Disable addons and features recommendations
Bug 40682: Disable network.proxy.allow_bypass
Bug 40736: Disable third-party cookies in PBM
Bug 19850: Enabled HTTPS-Only by default
Bug 40912: Hide the screenshot menu
Bug 41292: Disable moreFromMozilla in preferences page
Bug 40057: Ensure the CSS4 system colors are not a fingerprinting vector
Bug 24686: Set network.http.tailing.enabled to true
Bug 40183: Disable TLS ciphersuites using SHA-1
Bug 40783: Review 000-tor-browser.js and 001-base-profile.js for 102
We reviewed all the preferences we set for 102, and remove a few old
ones. See the description of that issue to see all the preferences we
believed were still valid for 102, and some brief description for the
reasons to keep them.
- - - - -
7521dfd7 by Pier Angelo Vendrame at 2025-02-27T16:28:48+01:00
Bug 41043: Hardcode the UI font on Linux
The mechanism to choose the UI font does not play well with our
fontconfig configuration. As a result, the final criterion to choose
the font for the UI was its version.
Since we hardcode Arimo as a default sans-serif on preferences, we use
it also for the UI. FontConfig will fall back to some other font for
scripts Arimo does not cover as expected (we tested with Japanese).
- - - - -
29ea4461 by Pier Angelo Vendrame at 2025-02-27T16:28:49+01:00
Bug 41901: Hardcode normalized FontSubstitutes.
Windows has a system to set font aliases through the registry.
This allows some customization that could be used as a fingerprinting
vector.
Moreover, this mechanism is used by Windows itself, and different SKUs
might have different default FontSubstitutes.
- - - - -
3e88701c by Alex Catarineu at 2025-02-27T16:28:50+01:00
Bug 30605: Honor privacy.spoof_english in Android
This checks `privacy.spoof_english` whenever `setLocales` is
called from Fenix side and sets `intl.accept_languages`
accordingly.
Bug 40198: Expose privacy.spoof_english pref in GeckoView
- - - - -
44dfa70a by Pier Angelo Vendrame at 2025-02-27T16:28:50+01:00
Bug 42562: Normalized the Accepted Languages on Android.
The OS language might be outside the list of actually supported
languages and it might leak the user's region.
Therefore, we force the locale reported in Accept-Language to match one
we support with translations, even when it means using a not exact
region tag.
- - - - -
91a57f39 by Alex Catarineu at 2025-02-27T16:28:51+01:00
Bug 40171: Make WebRequest and GeckoWebExecutor First-Party aware
- - - - -
ff3c12f0 by Alex Catarineu at 2025-02-27T16:28:52+01:00
Bug 26345: Hide tracking protection UI
- - - - -
55188eb4 by Pier Angelo Vendrame at 2025-02-27T16:28:54+01:00
Bug 9173: Change the default Firefox profile directory to be relative.
This commit makes Firefox look for the default profile directory in a
directory relative to the binary path.
The directory can be specified through the --with-relative-data-dir.
This is relative to the same directory as the firefox main binary for
Linux and Windows.
On macOS, we remove Contents/MacOS from it.
Or, in other words, the directory is relative to the application
bundle.
This behavior can be overriden at runtime, by placing a file called
system-install adjacent to the firefox main binary (also on macOS).
- - - - -
3a5d5657 by Alex Catarineu at 2025-02-27T16:28:55+01:00
Bug 27604: Fix addon issues when moving the profile directory
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1429838
- - - - -
9418df26 by Mike Perry at 2025-02-27T16:28:56+01:00
Bug 13028: Prevent potential proxy bypass cases.
It looks like these cases should only be invoked in the NSS command line
tools, and not the browser, but I decided to patch them anyway because there
literally is a maze of network function pointers being passed around, and it's
very hard to tell if some random code might not pass in the proper proxied
versions of the networking code here by accident.
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1433509
- - - - -
d2692ed7 by Pier Angelo Vendrame at 2025-02-27T16:28:57+01:00
Bug 40309: Avoid using regional OS locales
Avoid regional OS locales if the pref
`intl.regional_prefs.use_os_locales` is false but RFP is enabled.
- - - - -
f8dc5d65 by Matthew Finkel at 2025-02-27T16:28:58+01:00
Bug 40432: Prevent probing installed applications
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1711084
- - - - -
79493a80 by cypherpunks1 at 2025-02-27T16:28:58+01:00
Bug 33955: When copying an image only copy the image contents to the clipboard
- - - - -
c279f40f by cypherpunks1 at 2025-02-27T16:28:59+01:00
Bug 41791: Omit the source URL when copying page contents to the clipboard
- - - - -
e5b765ab by hackademix at 2025-02-27T16:29:00+01:00
Bug 42288: Allow language spoofing in status messages.
- - - - -
708b7494 by Richard Pospesel at 2025-02-27T16:29:01+01:00
Bug 41659: Add canonical color definitions to base-browser
- - - - -
1e383c98 by Pier Angelo Vendrame at 2025-02-27T16:29:03+01:00
Base Browser strings
This commit adds all the strings needed by following Base Browser
patches.
- - - - -
ccd13250 by Pier Angelo Vendrame at 2025-02-27T16:29:04+01:00
Bug 41369: Improve Firefox language settings for multi-lingual packages
Change the language selector to be sorted by language code, rather than
name, and to display the language code to the user.
Bug 41372: Handle Japanese as a special case in preferences on macOS
Japanese is treated in a special way on macOS. However, seeing the
Japanese language tag could be confusing for users, and moreover the
language name is not localized correctly like other langs.
Bug 41378: Tell users that they can change their language at the first start
With multi-lingual builds, Tor Browser matches the user's system
language, but some users might want to change it.
So, we tell them that it is possible, but only once.
- - - - -
a2dca7f1 by p13dz at 2025-02-27T16:29:05+01:00
Bug 40283: Workaround for the file upload bug
- - - - -
56283d94 by Arthur Edelstein at 2025-02-27T16:29:06+01:00
Bug 18905: Hide unwanted items from help menu
Bug 25660: Remove the "New Private Window" option
- - - - -
f0151fb7 by Pier Angelo Vendrame at 2025-02-27T16:29:07+01:00
Bug 41739: Remove "Website appearance" from about:preferences.
It is ignored because of RFP and it is confusing for users.
- - - - -
47da1ddf by hackademix at 2025-02-27T16:29:08+01:00
Bug 42019: Empty browser's clipboard on browser shutdown
- - - - -
e7bebce3 by hackademix at 2025-02-27T16:29:09+01:00
Bug 42084: Ensure English spoofing works even if preferences are set out of order.
- - - - -
a7f4ea88 by Pier Angelo Vendrame at 2025-02-27T16:29:10+01:00
Bug 41930: Remove the UI to customize accept_languages.
- - - - -
7a1fb1be by Pier Angelo Vendrame at 2025-02-27T16:29:11+01:00
Bug 42376: Pass the locale list when constructing l10n in datetimebox
The datetime input is inconsistent with other inputs when using spoof
English: its placeholder is not translated, unlike the default values
and texts of all the other inputs.
- - - - -
49d6e87b by Pier Angelo Vendrame at 2025-02-27T16:29:12+01:00
Bug 42428: Make RFP spoof the timezone of document.lastModified.
- - - - -
3b20811b by Pier Angelo Vendrame at 2025-02-27T16:29:13+01:00
Bug 42472: Spoof timezone in XSLT.
- - - - -
7856428f by hackademix at 2025-02-27T16:29:14+01:00
Bug 41434: Letterboxing, preemptively apply margins in a global CSS rule to mitigate race conditions on newly created windows and tabs.
- - - - -
30062684 by hackademix at 2025-02-27T16:29:15+01:00
Bug 41434: Letterboxing, improve logging.
- - - - -
17f31c20 by hackademix at 2025-02-27T16:29:16+01:00
Bug 31064: Letterboxing, exempt browser extensions.
- - - - -
e2134bc0 by hackademix at 2025-02-27T16:29:17+01:00
Bug 32411: Letterboxing, exempt view-source: URIs.
- - - - -
7d9c2048 by hackademix at 2025-02-27T16:29:18+01:00
Bug 42574: Letterboxing, exempt pdf.js.
- - - - -
f5f158a4 by hackademix at 2025-02-27T16:29:19+01:00
Bug 32308: Use direct browser sizing for letterboxing.
Bug 30556: align letterboxing with 200x100 new win width stepping
- - - - -
208de869 by hackademix at 2025-02-27T16:29:20+01:00
Bug 41631: Prevent weird initial window dimensions caused by subpixel computations
- - - - -
5bfec167 by hackademix at 2025-02-27T16:29:21+01:00
Bug 41918: Option to reuse last window size when letterboxing is enabled.
- - - - -
6a47010c by hackademix at 2025-02-27T16:29:22+01:00
Bug 41916: Letterboxing preferences UI
- - - - -
18cd6bec by hackademix at 2025-02-27T16:29:23+01:00
Bug 41695: Warn on window maximization without letterboxing in RFPHelper module
- - - - -
f35948f4 by hackademix at 2025-02-27T16:29:24+01:00
Bug 42443: Shrink window to match letterboxing size when the emtpy area is clicked.
- - - - -
b642d946 by Henry Wilkes at 2025-02-27T16:29:25+01:00
Bug 42528: Don't leak system scrollbar size on windows.
- - - - -
e42e4cda by Henry Wilkes at 2025-02-27T16:29:26+01:00
Bug 31575: Disable Firefox Home (Activity Stream)
Treat about:blank as the default home page and new tab page.
Avoid loading AboutNewTab in BrowserGlue.sys.mjs in order
to avoid several network requests that we do not need.
Bug 41624: Disable about:pocket-* pages.
Bug 40144: Redirect about:privatebrowsing to the user's home
- - - - -
5fccc0c1 by Kathy Brade at 2025-02-27T16:29:27+01:00
Bug 4234: Use the Firefox Update Process for Base Browser.
Windows: disable "runas" code path in updater (15201).
Windows: avoid writing to the registry (16236).
Also includes fixes for tickets 13047, 13301, 13356, 13594, 15406,
16014, 16909, 24476, and 25909.
Also fix bug 27221: purge the startup cache if the Base Browser
version changed (even if the Firefox version and build ID did
not change), e.g., after a minor Base Browser update.
Also fix 32616: Disable GetSecureOutputDirectoryPath() functionality.
Bug 26048: potentially confusing "restart to update" message
Within the update doorhanger, remove the misleading message that mentions
that windows will be restored after an update is applied, and replace the
"Restart and Restore" button label with an existing
"Restart to update Tor Browser" string.
Bug 28885: notify users that update is downloading
Add a "Downloading Base Browser update" item which appears in the
hamburger (app) menu while the update service is downloading a MAR
file. Before this change, the browser did not indicate to the user
that an update was in progress, which is especially confusing in
Tor Browser because downloads often take some time. If the user
clicks on the new menu item, the about dialog is opened to allow
the user to see download progress.
As part of this fix, the update service was changed to always show
update-related messages in the hamburger menu, even if the update
was started in the foreground via the about dialog or via the
"Check for Tor Browser Update" toolbar menu item. This change is
consistent with the Tor Browser goal of making sure users are
informed about the update process.
Removed #28885 parts of this patch which have been uplifted to Firefox.
- - - - -
dfbf6005 by Pier Angelo Vendrame at 2025-02-27T16:29:28+01:00
Bug 42061: Create an alpha update channel.
- - - - -
f4339eda by Nicolas Vigier at 2025-02-27T16:29:29+01:00
Bug 41682: Add base-browser nightly mar signing key
- - - - -
099e02de by Pier Angelo Vendrame at 2025-02-27T16:29:30+01:00
Bug 41603: Customize the creation of MOZ_SOURCE_URL
MOZ_SOURCE_URL is created by combining MOZ_SOURCE_REPO and
MOZ_SOURCE_CHANGESET.
But the code takes for granted that it refers to a Hg instance, so it
combines them as `$MOZ_SOURCE_REPO/rev/$MOZ_SOURCE_CHANGESET`.
With this commit, we change this logic to combine them to create a URL
that is valid for GitLab.
$MOZ_SOURCE_CHANGESET needs to be a commit hash, not a branch or a tag.
If that is needed, we could use /-/tree/, instead of /-/commit/.
- - - - -
13ba284f by Pier Angelo Vendrame at 2025-02-27T16:29:31+01:00
Bug 41698: Reword the recommendation badges in about:addons
Firefox strings use { -brand-product-name }.
As a result, it seems that the fork is recommending extensions, whereas
AMO curators are doing that.
So, we replace the strings with custom ones that clarify that Mozilla is
recommending them.
We assign the strings with JS because our translation backend does not
support Fluent attributes, yet, but once it does, we should switch to
them, instead.
Upstream bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1825033
- - - - -
2093d5bd by Pier Angelo Vendrame at 2025-02-27T16:29:32+01:00
Bug 42438: Tweaks to the migration wizard.
Remove the items not compatible with our features (such as history) from
the migration wizard.
On Linux, allow to specify an alternative home directory, since we
usually change $HOME in our startup script.
- - - - -
4bc5824c by Alex Catarineu at 2025-02-27T16:29:33+01:00
Bug 40069: Add helpers for message passing with extensions
- - - - -
8fa4db3b by Matthew Finkel at 2025-02-27T16:29:34+01:00
Bug 41598: Prevent NoScript from being removed/disabled.
Bug 40253: Explicitly allow NoScript in Private Browsing mode.
- - - - -
80a59a8a by Henry Wilkes at 2025-02-27T16:29:35+01:00
Bug 41736: Hide NoScript extension's toolbar button by default.
This hides it from both the toolbar and the unified extensions panel.
We also hide the unified-extension-button if the panel would be empty:
not including the NoScript button when it is hidden. As a result, this
will be hidden by default until a user installs another extension (or
shows the NoScript button and unpins it).
- - - - -
9bfd1f16 by hackademix at 2025-02-27T16:29:36+01:00
Bug 41834: Hide "Can't Be Removed - learn more" menu line for uninstallable add-ons
- - - - -
e025411e by Pier Angelo Vendrame at 2025-02-27T16:29:37+01:00
Bug 40925: Implemented the Security Level component
This component adds a new Security Level toolbar button which visually
indicates the current global security level via icon (as defined by the
extensions.torbutton.security_slider pref), a drop-down hanger with a
short description of the current security level, and a new section in
the about:preferences#privacy page where users can change their current
security level. In addition, the hanger and the preferences page will
show a visual warning when the user has modified prefs associated with
the security level and provide a one-click 'Restore Defaults' button to
get the user back on recommended settings.
Bug 40125: Expose Security Level pref in GeckoView
- - - - -
00d2df48 by Pier Angelo Vendrame at 2025-02-27T16:29:38+01:00
Bug 40926: Implemented the New Identity feature
- - - - -
5a166e41 by Henry Wilkes at 2025-02-27T16:29:39+01:00
Bug 41736: Customize toolbar for base-browser.
- - - - -
21d1b9d0 by Pier Angelo Vendrame at 2025-02-27T16:29:40+01:00
Bug 42027: Base Browser migration procedures.
This commit implmenents the the Base Browser's version of _migrateUI.
- - - - -
cae92a71 by Henry Wilkes at 2025-02-27T16:29:41+01:00
Bug 42583: Modify moz-support-link for Base Browser.
- - - - -
99b1579f by Henry Wilkes at 2025-02-27T16:29:42+01:00
Bug 42347: Add a notification for dropped OS version support.
- - - - -
7def011a by hackademix at 2025-02-27T16:29:43+01:00
Bug 42832: Download spam prevention exemption for browser extensions.
- - - - -
79450e0a by Pier Angelo Vendrame at 2025-02-27T16:29:44+01:00
Bug 42467: Make OS HTTP User-Agent OS spoofing configurable by pref
This commits makes it possible to disable OS spoofing in the HTTP
User-Agent header, to see if matching header and JS property improve
usability.
- - - - -
0fb9c0e2 by Henry Wilkes at 2025-02-27T16:29:45+01:00
Bug 42308: Create README for tor-browser.
We drop the README.txt that comes from Mozilla Firefox and add README.md
for tor-browser.
- - - - -
62e26919 by Richard Pospesel at 2025-02-27T16:29:46+01:00
Bug 41649: Create rebase and security backport gitlab issue templates
- - - - -
00af4130 by Beatriz Rizental at 2025-02-27T16:29:47+01:00
Add CI for Tor Browser
- - - - -
2cb07b00 by Richard Pospesel at 2025-02-27T16:29:48+01:00
Bug 41089: Add tor-browser build scripts + Makefile to tor-browser
- - - - -
6c0e0519 by Henry Wilkes at 2025-02-27T16:29:49+01:00
Bug 41803: Add some developer tools for working on tor-browser.
- - - - -
a6eaf5f9 by Kathy Brade at 2025-02-27T16:29:50+01:00
Bug 11641: Disable remoting by default.
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.
- - - - -
6e119e51 by Alex Catarineu at 2025-02-27T16:29:51+01:00
Add TorStrings module for localization
- - - - -
beb89015 by Henry Wilkes at 2025-02-27T16:29:52+01:00
Tor Browser strings
This commit adds all the strings needed for Tor Browser patches.
- - - - -
c7007111 by Henry Wilkes at 2025-02-27T16:29:53+01:00
Tor Browser localization migration scripts.
- - - - -
2a4e2db3 by Henry Wilkes at 2025-02-27T16:29:55+01:00
Bug 42305: Add script to combine translation files across versions.
- - - - -
5da40302 by Mike Perry at 2025-02-27T16:29:56+01:00
Bug 2176: Rebrand Firefox to TorBrowser
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).
- - - - -
e5cf8177 by Henry Wilkes at 2025-02-27T16:29:57+01:00
Bug 42583: Modify moz-support-link for Tor Browser.
- - - - -
a911e0bc by hackademix at 2025-02-27T16:29:58+01:00
Bug 41917: Tor brand-specific styles.
- - - - -
30e16a46 by Henry Wilkes at 2025-02-27T16:29:58+01:00
Add purple tor version of the loading APNG.
- - - - -
7130f976 by sanketh at 2025-02-27T16:29:59+01:00
Bug 40209: Implement Basic Crypto Safety
Adds a CryptoSafety actor which detects when you've copied a crypto
address from a HTTP webpage and shows a warning.
Closes #40209.
Bug 40428: Fix string attribute names
- - - - -
c5c6b7e7 by Mike Perry at 2025-02-27T16:30:00+01:00
TB3: Tor Browser's official .mozconfigs.
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
- - - - -
351b1d4c by Henry Wilkes at 2025-02-27T16:30:01+01:00
Bug 41340: Enable TOR_BROWSER_NIGHTLY_BUILD features for dev and nightly builds
tor-browser#41285: Enable fluent warnings.
- - - - -
2a422f03 by Pier Angelo Vendrame at 2025-02-27T16:30:02+01:00
Bug 40562: Added Tor Browser preferences to 000-tor-browser.js
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.
- - - - -
13088d2f by Pier Angelo Vendrame at 2025-02-27T16:30:03+01:00
Bug 13252: Customize profile management on macOS
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.
- - - - -
b269763d by Pier Angelo Vendrame at 2025-02-27T16:30:04+01:00
Bug 40933: Add tor-launcher functionality
Bug 41926: Reimplement the control port
- - - - -
b1032d59 by Cecylia Bocovich at 2025-02-27T16:30:05+01:00
Lox integration
- - - - -
118d5c5d by Richard Pospesel at 2025-02-27T16:30:06+01:00
Bug 40597: Implement TorSettings module
- 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
- - - - -
6599be31 by Arthur Edelstein at 2025-02-27T16:30:08+01:00
Bug 3455: Add DomainIsolator, for isolating circuit by domain.
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
- - - - -
67a59457 by Henry Wilkes at 2025-02-27T16:30:08+01:00
Bug 41600: Add a tor circuit display panel.
- - - - -
cb4d36c8 by Pier Angelo Vendrame at 2025-02-27T16:30:09+01:00
Bug 42247: Android helpers for the TorProvider
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.
- - - - -
1e819847 by hackademix at 2025-02-27T16:30:11+01:00
Bug 8324: Prevent DNS proxy bypasses caused by Drag&Drop
Bug 41613: Skip Drang & Drop filtering for DNS-safe URLs
- - - - -
8943c057 by Amogh Pradeep at 2025-02-27T16:30:11+01:00
Orfox: Centralized proxy applied to AbstractCommunicator and BaseResources.
See Bug 1357997 for partial uplift.
Also:
Bug 28051 - Use our Orbot for proxying our connections
Bug 31144 - ESR68 Network Code Review
- - - - -
6c578ecc by Matthew Finkel at 2025-02-27T16:30:12+01:00
Bug 25741: TBA: Disable GeckoNetworkManager
The browser should not need information related to the network
interface or network state, tor should take care of that.
- - - - -
91746ee8 by Kathy Brade at 2025-02-27T16:30:13+01:00
Bug 14631: Improve profile access error messages.
Instead of always reporting that the profile is locked, display specific
messages for "access denied" and "read-only file system".
To allow for localization, get profile-related error strings from Torbutton.
Use app display name ("Tor Browser") in profile-related error alerts.
- - - - -
280154ee by Pier Angelo Vendrame at 2025-02-27T16:30:14+01:00
Bug 40807: Added QRCode.js to toolkit/modules
- - - - -
1b29384d by Richard Pospesel at 2025-02-27T16:30:15+01:00
Bug 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
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
- - - - -
0c91644f by Richard Pospesel at 2025-02-27T16:30:16+01:00
Bug 27476: Implement about:torconnect captive portal within Tor Browser
- 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.
- - - - -
60b84762 by Pier Angelo Vendrame at 2025-02-27T16:30:17+01:00
Temporary changes to about:torconnect for Android.
We are planning of tempoorarily using about:torconnect on Android, until
the native UX is ready.
- - - - -
6ea1f206 by Henry Wilkes at 2025-02-27T16:30:18+01:00
Bug 7494: Create local home page for TBB.
Bug 41333: Update about:tor to new design. Including:
+ make the favicon match the branding icon.
+ make the location bar show a search icon.
- - - - -
14fff7a6 by Arthur Edelstein at 2025-02-27T16:30:19+01:00
Bug 12620: TorBrowser regression tests
Regression tests for Bug #2950: Make Permissions Manager memory-only
Regression tests for TB4: Tor Browser's Firefox preference overrides.
Note: many more functional tests could be made here
Regression tests for #2874: Block Components.interfaces from content
Bug 18923: Add a script to run all Tor Browser specific tests
Regression tests for Bug #16441: Suppress "Reset Tor Browser" prompt.
- - - - -
eda1b20e by Pier Angelo Vendrame at 2025-02-27T16:30:20+01:00
Bug 41668: Tweaks to the Base Browser updater for Tor Browser
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.
- - - - -
9a0d33de by Kathy Brade at 2025-02-27T16:30:21+01:00
Bug 12647: Support symlinks in the updater.
- - - - -
75ab94e0 by Kathy Brade at 2025-02-27T16:30:22+01:00
Bug 16940: After update, load local change notes.
Add an about:tbupdate page that displays the first section from
TorBrowser/Docs/ChangeLog.txt and includes a link to the remote
post-update page (typically our blog entry for the release).
Always load about:tbupdate in a content process, but implement the
code that reads the file system (changelog) in the chrome process
for compatibility with future sandboxing efforts.
Also fix bug 29440. Now about:tbupdate is styled as a fairly simple
changelog page that is designed to be displayed via a link that is on
about:tor.
- - - - -
7381dd3b by Georg Koppen at 2025-02-27T16:30:23+01:00
Bug 32658: Create a new MAR signing key
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
- - - - -
d2c7837e by Mike Perry at 2025-02-27T16:30:24+01:00
Omnibox: Add DDG, Startpage, Disconnect, Youtube, Twitter; remove Amazon, eBay, bing
eBay and Amazon don't treat Tor users very well. Accounts often get locked and
payments reversed.
Also:
Bug 16322: Update DuckDuckGo search engine
We are replacing the clearnet URL with an onion service one (thanks to a
patch by a cypherpunk) and are removing the duplicated DDG search
engine. Duplicating DDG happend due to bug 1061736 where Mozilla
included DDG itself into Firefox. Interestingly, this caused breaking
the DDG search if JavaScript is disabled as the Mozilla engine, which
gets loaded earlier, does not use the html version of the search page.
Moreover, the Mozilla engine tracked where the users were searching from
by adding a respective parameter to the search query. We got rid of that
feature as well.
Also:
This fixes bug 20809: the DuckDuckGo team has changed its server-side
code in a way that lets users with JavaScript enabled use the default
landing page while those without JavaScript available get redirected
directly to the non-JS page. We adapt the search engine URLs
accordingly.
Also fixes bug 29798 by making sure we only specify the Google search
engine we actually ship an .xml file for.
Also regression tests.
squash! Omnibox: Add DDG, Startpage, Disconnect, Youtube, Twitter; remove Amazon, eBay, bing
Bug 40494: Update Startpage search provider
squash! Omnibox: Add DDG, Startpage, Disconnect, Youtube, Twitter; remove Amazon, eBay, bing
Bug 40438: Add Blockchair as a search engine
Bug 33342: Avoid disconnect search addon error after removal.
We removed the addon in #32767, but it was still being loaded
from addonStartup.json.lz4 and throwing an error on startup
because its resource: location is not available anymore.
- - - - -
7d454e47 by Alex Catarineu at 2025-02-27T16:30:25+01:00
Bug 40073: Disable remote Public Suffix List fetching
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.
- - - - -
77bd872b by Henry Wilkes at 2025-02-27T16:30:26+01:00
Bug 41906: Hide DNS over HTTPS preferences.
- - - - -
f1d06e68 by Richard Pospesel at 2025-02-27T16:30:27+01:00
Bug 23247: Communicating security expectations for .onion
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.
- - - - -
a198792f by Kathy Brade at 2025-02-27T16:30:28+01:00
Bug 30237: Add v3 onion services client authentication prompt
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.
- - - - -
7d8b47fb by Alex Catarineu at 2025-02-27T16:30:29+01:00
Bug 21952: Implement Onion-Location
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.
- - - - -
99dff767 by Pier Angelo Vendrame at 2025-02-27T16:30:30+01:00
Bug 40458: Implement .tor.onion aliases
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.
- - - - -
c3009f33 by Pier Angelo Vendrame at 2025-02-27T16:30:31+01:00
Bug 11698: Incorporate Tor Browser Manual pages into Tor Browser
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.
- - - - -
98cb4e5c by Pier Angelo Vendrame at 2025-02-27T16:30:32+01:00
Bug 41435: Add a Tor Browser migration function
For now this function only deletes old language packs for which we are
already packaging the strings with the application.
- - - - -
95330b54 by Henry Wilkes at 2025-02-27T16:30:33+01:00
Bug 42110: Add TorUIUtils module for common tor component methods.
- - - - -
2677bf97 by Dan Ballard at 2025-02-27T16:30:34+01:00
Bug 40701: Add security warning when downloading a file
Shown in the downloads panel, about:downloads and places.xhtml.
- - - - -
20729098 by Henry Wilkes at 2025-02-27T16:30:35+01:00
Bug 41736: Customize toolbar for tor-browser.
- - - - -
260e8498 by hackademix at 2025-02-27T16:30:36+01:00
Bug 41728: Pin bridges.torproject.org domains to Let's Encrypt's root cert public key
- - - - -
ffc7d932 by Henry Wilkes at 2025-02-27T16:30:37+01:00
Customize moz-toggle for tor-browser.
- - - - -
258919f1 by Richard Pospesel at 2025-02-27T16:30:38+01:00
Bug 41822: Unconditionally disable default browser UX in about:preferences
- - - - -
dd151c8f by Cecylia Bocovich at 2025-02-27T16:30:39+01:00
Temporary commit: manually place generated wasm files
These files are built reproducibly using tor-browser-build: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/merge_re…
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.
- - - - -
085147ec by Henry Wilkes at 2025-02-27T16:30:40+01:00
TEMPORARY: Copy torbrowser_strings.xml to the 13.5 branch.
NOTE: Only needed for the `tor-browser` `13.5` branches.
Bug 42480: Make sure the torbrowser_strings.xml file is in the 13.5
branch for the tor-browser `update-translations` CI.
The file should otherwise remain unused for the 13.5 branch.
File was copied from https://gitlab.torproject.org/tpo/translation/-/blob/f27eda6d10a4585a8402c5…
- - - - -
0a5bbb6f by Henry Wilkes at 2025-02-27T16:30:41+01:00
Bug 43125: Extend the 13.5 EOL expiry date for tor-browser.
- - - - -
48d984fc by Henry Wilkes at 2025-02-27T16:30:42+01:00
fixup! Bug 43125: Extend the 13.5 EOL expiry date for tor-browser.
TB 43168: Extend the 13.5 EOL to 16th September 2025.
- - - - -
1539 changed files:
- .eslintignore
- .gitignore
- + .gitlab-ci.yml
- + .gitlab/ci/update-translations.yml
- + .gitlab/issue_templates/Backport Android Security Fixes.md
- + .gitlab/issue_templates/Emergency Security Issue.md
- + .gitlab/issue_templates/Rebase Browser - Alpha.md
- + .gitlab/issue_templates/Rebase Browser - Stable.md
- + .gitlab/issue_templates/bug.md
- + .gitlab/merge_request_templates/default.md
- + README.md
- − README.txt
- accessible/android/SessionAccessibility.cpp
- accessible/android/SessionAccessibility.h
- accessible/ipc/DocAccessibleParent.cpp
- accessible/ipc/DocAccessibleParent.h
- accessible/ipc/moz.build
- + browser/actors/AboutTBUpdateChild.jsm
- + browser/actors/AboutTBUpdateParent.jsm
- browser/actors/BrowserTabChild.sys.mjs
- + browser/actors/CryptoSafetyChild.jsm
- + browser/actors/CryptoSafetyParent.jsm
- − browser/actors/RFPHelperChild.sys.mjs
- − browser/actors/RFPHelperParent.sys.mjs
- browser/actors/moz.build
- browser/app/Makefile.in
- browser/app/macbuild/Contents/Info.plist.in
- browser/app/macbuild/Contents/MacOS-files.in
- browser/app/moz.build
- browser/app/permissions
- + browser/app/profile/000-tor-browser.js
- + browser/app/profile/001-base-profile.js
- browser/app/profile/firefox.js
- browser/base/content/aboutDialog-appUpdater.js
- browser/base/content/aboutDialog.js
- browser/base/content/aboutDialog.xhtml
- + browser/base/content/aboutDialogTor.css
- + browser/base/content/abouttbupdate/aboutTBUpdate.css
- + browser/base/content/abouttbupdate/aboutTBUpdate.js
- + browser/base/content/abouttbupdate/aboutTBUpdate.xhtml
- browser/base/content/appmenu-viewcache.inc.xhtml
- browser/base/content/browser-addons.js
- browser/base/content/browser-context.inc
- browser/base/content/browser-menubar.inc
- browser/base/content/browser-places.js
- browser/base/content/browser-safebrowsing.js
- browser/base/content/browser-sets.inc
- browser/base/content/browser-siteIdentity.js
- browser/base/content/browser.css
- browser/base/content/browser.js
- browser/base/content/browser.xhtml
- browser/base/content/default-bookmarks.html
- + browser/base/content/droppedSupportNotification.js
- + browser/base/content/languageNotification.js
- browser/base/content/main-popupset.inc.xhtml
- browser/base/content/navigator-toolbox.inc.xhtml
- browser/base/content/pageinfo/security.js
- browser/base/content/popup-notifications.inc
- browser/base/content/tabbrowser.js
- browser/base/content/test/popupNotifications/browser_popupNotification_security_delay.js
- browser/base/content/test/tabPrompts/browser_confirmFolderUpload.js
- browser/base/content/utilityOverlay.js
- browser/base/jar.mn
- browser/base/moz.build
- browser/branding/branding-common.mozbuild
- + browser/branding/tb-alpha/VisualElements_150.png
- + browser/branding/tb-alpha/VisualElements_70.png
- + browser/branding/tb-alpha/configure.sh
- + browser/branding/tb-alpha/content/about-logo.png
- + browser/branding/tb-alpha/content/about-logo.svg
- + browser/branding/tb-alpha/content/about-logo(a)2x.png
- + browser/branding/tb-alpha/content/about-wordmark.svg
- + browser/branding/tb-alpha/content/about.png
- + browser/branding/tb-alpha/content/aboutDialog.css
- + browser/branding/tb-alpha/content/firefox-wordmark.svg
- + browser/branding/tb-alpha/content/jar.mn
- + browser/branding/tb-alpha/content/moz.build
- + browser/branding/tb-alpha/default128.png
- + browser/branding/tb-alpha/default16.png
- + browser/branding/tb-alpha/default22.png
- + browser/branding/tb-alpha/default24.png
- + browser/branding/tb-alpha/default256.png
- + browser/branding/tb-alpha/default32.png
- + browser/branding/tb-alpha/default48.png
- + browser/branding/tb-alpha/default64.png
- + browser/branding/tb-alpha/document.icns
- + browser/branding/tb-alpha/document.ico
- + browser/branding/tb-alpha/document_pdf.ico
- + browser/branding/tb-alpha/firefox.VisualElementsManifest.xml
- + browser/branding/tb-alpha/firefox.icns
- + browser/branding/tb-alpha/firefox.ico
- + browser/branding/tb-alpha/locales/jar.mn
- + browser/branding/tb-alpha/locales/moz.build
- + browser/branding/tb-alpha/moz.build
- + browser/branding/tb-alpha/newtab.ico
- + browser/branding/tb-alpha/newwindow.ico
- + browser/branding/tb-alpha/pbmode.ico
- + browser/branding/tb-alpha/pref/firefox-branding.js
- + browser/branding/tb-nightly/VisualElements_150.png
- + browser/branding/tb-nightly/VisualElements_70.png
- + browser/branding/tb-nightly/configure.sh
- + browser/branding/tb-nightly/content/about-logo.png
- + browser/branding/tb-nightly/content/about-logo.svg
- + browser/branding/tb-nightly/content/about-logo(a)2x.png
- + browser/branding/tb-nightly/content/about-wordmark.svg
- + browser/branding/tb-nightly/content/about.png
- + browser/branding/tb-nightly/content/aboutDialog.css
- + browser/branding/tb-nightly/content/firefox-wordmark.svg
- + browser/branding/tb-nightly/content/jar.mn
- + browser/branding/tb-nightly/content/moz.build
- + browser/branding/tb-nightly/default128.png
- + browser/branding/tb-nightly/default16.png
- + browser/branding/tb-nightly/default22.png
- + browser/branding/tb-nightly/default24.png
- + browser/branding/tb-nightly/default256.png
- + browser/branding/tb-nightly/default32.png
- + browser/branding/tb-nightly/default48.png
- + browser/branding/tb-nightly/default64.png
- + browser/branding/tb-nightly/document.icns
- + browser/branding/tb-nightly/document.ico
- + browser/branding/tb-nightly/document_pdf.ico
- + browser/branding/tb-nightly/firefox.VisualElementsManifest.xml
- + browser/branding/tb-nightly/firefox.icns
- + browser/branding/tb-nightly/firefox.ico
- + browser/branding/tb-nightly/locales/jar.mn
- + browser/branding/tb-nightly/locales/moz.build
- + browser/branding/tb-nightly/moz.build
- + browser/branding/tb-nightly/newtab.ico
- + browser/branding/tb-nightly/newwindow.ico
- + browser/branding/tb-nightly/pbmode.ico
- + browser/branding/tb-nightly/pref/firefox-branding.js
- + browser/branding/tb-release/VisualElements_150.png
- + browser/branding/tb-release/VisualElements_70.png
- + browser/branding/tb-release/configure.sh
- + browser/branding/tb-release/content/about-logo.png
- + browser/branding/tb-release/content/about-logo.svg
- + browser/branding/tb-release/content/about-logo(a)2x.png
- + browser/branding/tb-release/content/about-wordmark.svg
- + browser/branding/tb-release/content/about.png
- + browser/branding/tb-release/content/aboutDialog.css
- + browser/branding/tb-release/content/firefox-wordmark.svg
- + browser/branding/tb-release/content/jar.mn
- + browser/branding/tb-release/content/moz.build
- + browser/branding/tb-release/default128.png
- + browser/branding/tb-release/default16.png
- + browser/branding/tb-release/default22.png
- + browser/branding/tb-release/default24.png
- + browser/branding/tb-release/default256.png
- + browser/branding/tb-release/default32.png
- + browser/branding/tb-release/default48.png
- + browser/branding/tb-release/default64.png
- + browser/branding/tb-release/document.icns
- + browser/branding/tb-release/document.ico
- + browser/branding/tb-release/document_pdf.ico
- + browser/branding/tb-release/firefox.VisualElementsManifest.xml
- + browser/branding/tb-release/firefox.icns
- + browser/branding/tb-release/firefox.ico
- + browser/branding/tb-release/locales/jar.mn
- + browser/branding/tb-release/locales/moz.build
- + browser/branding/tb-release/moz.build
- + browser/branding/tb-release/newtab.ico
- + browser/branding/tb-release/newwindow.ico
- + browser/branding/tb-release/pbmode.ico
- + browser/branding/tb-release/pref/firefox-branding.js
- browser/components/BrowserContentHandler.sys.mjs
- browser/components/BrowserGlue.sys.mjs
- browser/components/about/AboutRedirector.cpp
- browser/components/about/components.conf
- browser/components/aboutlogins/AboutLoginsParent.sys.mjs
- browser/components/aboutlogins/content/aboutLogins.css
- browser/components/aboutlogins/content/aboutLogins.mjs
- browser/components/aboutlogins/content/components/fxaccounts-button.css
- + browser/components/abouttor/AboutTorChild.sys.mjs
- + browser/components/abouttor/AboutTorMessage.sys.mjs
- + browser/components/abouttor/AboutTorParent.sys.mjs
- + browser/components/abouttor/HomepageOverride.sys.mjs
- + browser/components/abouttor/content/1f4e3-megaphone.svg
- + browser/components/abouttor/content/26a1-high-voltage.svg
- + browser/components/abouttor/content/2728-sparkles.svg
- + browser/components/abouttor/content/2764-red-heart.svg
- + browser/components/abouttor/content/aboutTor.css
- + browser/components/abouttor/content/aboutTor.html
- + browser/components/abouttor/content/aboutTor.js
- + browser/components/abouttor/content/dax-logo.svg
- + browser/components/abouttor/content/onion-pattern.svg
- + browser/components/abouttor/jar.mn
- + browser/components/abouttor/moz.build
- browser/components/customizableui/CustomizableUI.sys.mjs
- browser/components/customizableui/content/panelUI.inc.xhtml
- browser/components/downloads/DownloadSpamProtection.sys.mjs
- browser/components/downloads/content/allDownloadsView.js
- browser/components/downloads/content/contentAreaDownloadsView.js
- browser/components/downloads/content/contentAreaDownloadsView.xhtml
- browser/components/downloads/content/downloads.css
- browser/components/downloads/content/downloads.js
- browser/components/downloads/content/downloadsPanel.inc.xhtml
- browser/components/extensions/parent/ext-browserAction.js
- browser/components/extensions/schemas/chrome_settings_overrides.json
- browser/components/migration/ChromeMigrationUtils.sys.mjs
- browser/components/migration/content/migration-wizard.mjs
- browser/components/moz.build
- + browser/components/newidentity/content/newIdentityDialog.css
- + browser/components/newidentity/content/newIdentityDialog.js
- + browser/components/newidentity/content/newIdentityDialog.xhtml
- + browser/components/newidentity/content/newidentity.js
- + browser/components/newidentity/jar.mn
- + browser/components/newidentity/moz.build
- browser/components/newtab/AboutNewTabService.jsm
- + browser/components/onionservices/OnionAliasStore.sys.mjs
- + browser/components/onionservices/OnionLocationChild.sys.mjs
- + browser/components/onionservices/OnionLocationParent.sys.mjs
- + browser/components/onionservices/TorRequestWatch.sys.mjs
- + browser/components/onionservices/content/authNotificationIcon.inc.xhtml
- + browser/components/onionservices/content/authPopup.inc.xhtml
- + browser/components/onionservices/content/authPreferences.css
- + browser/components/onionservices/content/authPreferences.inc.xhtml
- + browser/components/onionservices/content/authPreferences.js
- + browser/components/onionservices/content/authPrompt.js
- + browser/components/onionservices/content/onionlocation-urlbar.inc.xhtml
- + browser/components/onionservices/content/onionlocation.css
- + browser/components/onionservices/content/onionservices.css
- + browser/components/onionservices/content/savedKeysDialog.js
- + browser/components/onionservices/content/savedKeysDialog.xhtml
- + browser/components/onionservices/jar.mn
- + browser/components/onionservices/moz.build
- browser/components/places/PlacesUIUtils.sys.mjs
- browser/components/places/content/controller.js
- browser/components/places/content/places.css
- browser/components/places/content/places.js
- browser/components/places/content/places.xhtml
- browser/components/places/metadataViewer/interactionsViewer.html
- browser/components/preferences/dialogs/browserLanguages.js
- browser/components/preferences/dialogs/browserLanguages.xhtml
- browser/components/preferences/home.inc.xhtml
- browser/components/preferences/home.js
- browser/components/preferences/jar.mn
- + browser/components/preferences/letterboxing-middle-dark.svg
- + browser/components/preferences/letterboxing-middle-light.svg
- + browser/components/preferences/letterboxing-top-dark.svg
- + browser/components/preferences/letterboxing-top-light.svg
- + browser/components/preferences/letterboxing.css
- + browser/components/preferences/letterboxing.inc.xhtml
- + browser/components/preferences/letterboxing.js
- browser/components/preferences/main.inc.xhtml
- browser/components/preferences/main.js
- browser/components/preferences/preferences.js
- browser/components/preferences/preferences.xhtml
- browser/components/preferences/privacy.inc.xhtml
- browser/components/preferences/privacy.js
- browser/components/preferences/tests/browser_browser_languages_subdialog.js
- browser/components/privatebrowsing/test/browser/browser_privatebrowsing_windowtitle.js
- browser/components/prompts/PromptCollection.sys.mjs
- browser/components/resistfingerprinting/test/browser/browser_dynamical_window_rounding.js
- browser/components/resistfingerprinting/test/browser/browser_timezone.js
- + browser/components/rulesets/RulesetsChild.sys.mjs
- + browser/components/rulesets/RulesetsParent.sys.mjs
- + browser/components/rulesets/content/aboutRulesets.css
- + browser/components/rulesets/content/aboutRulesets.html
- + browser/components/rulesets/content/aboutRulesets.js
- + browser/components/rulesets/content/securedrop.svg
- + browser/components/rulesets/jar.mn
- + browser/components/rulesets/moz.build
- browser/components/search/SearchSERPTelemetry.sys.mjs
- − browser/components/search/extensions/amazon/_locales/au/messages.json
- − browser/components/search/extensions/amazon/_locales/ca/messages.json
- − browser/components/search/extensions/amazon/_locales/de/messages.json
- − browser/components/search/extensions/amazon/_locales/en-GB/messages.json
- − browser/components/search/extensions/amazon/_locales/france/messages.json
- − browser/components/search/extensions/amazon/_locales/in/messages.json
- − browser/components/search/extensions/amazon/_locales/it/messages.json
- − browser/components/search/extensions/amazon/_locales/jp/messages.json
- − browser/components/search/extensions/amazon/_locales/nl/messages.json
- − browser/components/search/extensions/amazon/_locales/spain/messages.json
- − browser/components/search/extensions/amazon/_locales/sweden/messages.json
- − browser/components/search/extensions/amazondotcn/_locales/default/messages.json
- − browser/components/search/extensions/amazondotcn/_locales/mozillaonline/messages.json
- − browser/components/search/extensions/amazondotcom/_locales/en/messages.json
- − browser/components/search/extensions/amazondotcom/_locales/us/messages.json
- + browser/components/search/extensions/ddg-onion/favicon.ico
- + browser/components/search/extensions/ddg-onion/manifest.json
- browser/components/search/extensions/ddg/manifest.json
- − browser/components/search/extensions/ebay/_locales/at/messages.json
- − browser/components/search/extensions/ebay/_locales/au/messages.json
- − browser/components/search/extensions/ebay/_locales/be/messages.json
- − browser/components/search/extensions/ebay/_locales/ca/messages.json
- − browser/components/search/extensions/ebay/_locales/ch/messages.json
- − browser/components/search/extensions/ebay/_locales/de/messages.json
- − browser/components/search/extensions/ebay/_locales/en/messages.json
- − browser/components/search/extensions/ebay/_locales/es/messages.json
- − browser/components/search/extensions/ebay/_locales/fr/messages.json
- − browser/components/search/extensions/ebay/_locales/ie/messages.json
- − browser/components/search/extensions/ebay/_locales/it/messages.json
- − browser/components/search/extensions/ebay/_locales/nl/messages.json
- − browser/components/search/extensions/ebay/_locales/uk/messages.json
- − browser/components/search/extensions/gmx/_locales/de/messages.json
- − browser/components/search/extensions/gmx/_locales/en-GB/messages.json
- − browser/components/search/extensions/gmx/_locales/es/messages.json
- − browser/components/search/extensions/gmx/_locales/fr/messages.json
- − browser/components/search/extensions/gmx/_locales/shopping/messages.json
- − browser/components/search/extensions/google/_locales/en/messages.json
- − browser/components/search/extensions/google/_locales/region-by/messages.json
- − browser/components/search/extensions/google/_locales/region-kz/messages.json
- − browser/components/search/extensions/google/_locales/region-ru/messages.json
- − browser/components/search/extensions/google/_locales/region-tr/messages.json
- browser/components/search/extensions/google/manifest.json
- − browser/components/search/extensions/mailru/_locales/default/messages.json
- − browser/components/search/extensions/mailru/_locales/mailru001/messages.json
- − browser/components/search/extensions/mailru/_locales/okru-az/messages.json
- − browser/components/search/extensions/mailru/_locales/okru-en-US/messages.json
- − browser/components/search/extensions/mailru/_locales/okru-hy-AM/messages.json
- − browser/components/search/extensions/mailru/_locales/okru-kk/messages.json
- − browser/components/search/extensions/mailru/_locales/okru-ro/messages.json
- − browser/components/search/extensions/mailru/_locales/okru-ru/messages.json
- − browser/components/search/extensions/mailru/_locales/okru-tr/messages.json
- − browser/components/search/extensions/mailru/_locales/okru-uk/messages.json
- − browser/components/search/extensions/mailru/_locales/okru-uz/messages.json
- − browser/components/search/extensions/mercadolibre/_locales/ar/messages.json
- − browser/components/search/extensions/mercadolibre/_locales/cl/messages.json
- − browser/components/search/extensions/mercadolibre/_locales/mx/messages.json
- + browser/components/search/extensions/startpage-onion/favicon.png
- + browser/components/search/extensions/startpage-onion/manifest.json
- + browser/components/search/extensions/startpage/favicon.png
- + browser/components/search/extensions/startpage/manifest.json
- − browser/components/search/extensions/wikipedia/_locales/NN/messages.json
- − browser/components/search/extensions/wikipedia/_locales/NO/messages.json
- − browser/components/search/extensions/wikipedia/_locales/af/messages.json
- − browser/components/search/extensions/wikipedia/_locales/an/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ar/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ast/messages.json
- − browser/components/search/extensions/wikipedia/_locales/az/messages.json
- − browser/components/search/extensions/wikipedia/_locales/be-tarask/messages.json
- − browser/components/search/extensions/wikipedia/_locales/be/messages.json
- − browser/components/search/extensions/wikipedia/_locales/bg/messages.json
- − browser/components/search/extensions/wikipedia/_locales/bn/messages.json
- − browser/components/search/extensions/wikipedia/_locales/br/messages.json
- − browser/components/search/extensions/wikipedia/_locales/bs/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ca/messages.json
- − browser/components/search/extensions/wikipedia/_locales/cy/messages.json
- − browser/components/search/extensions/wikipedia/_locales/cz/messages.json
- − browser/components/search/extensions/wikipedia/_locales/da/messages.json
- − browser/components/search/extensions/wikipedia/_locales/de/messages.json
- − browser/components/search/extensions/wikipedia/_locales/dsb/messages.json
- − browser/components/search/extensions/wikipedia/_locales/el/messages.json
- − browser/components/search/extensions/wikipedia/_locales/en/messages.json
- − browser/components/search/extensions/wikipedia/_locales/eo/messages.json
- − browser/components/search/extensions/wikipedia/_locales/es/messages.json
- − browser/components/search/extensions/wikipedia/_locales/et/messages.json
- − browser/components/search/extensions/wikipedia/_locales/eu/messages.json
- − browser/components/search/extensions/wikipedia/_locales/fa/messages.json
- − browser/components/search/extensions/wikipedia/_locales/fi/messages.json
- − browser/components/search/extensions/wikipedia/_locales/fr/messages.json
- − browser/components/search/extensions/wikipedia/_locales/fy-NL/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ga-IE/messages.json
- − browser/components/search/extensions/wikipedia/_locales/gd/messages.json
- − browser/components/search/extensions/wikipedia/_locales/gl/messages.json
- − browser/components/search/extensions/wikipedia/_locales/gn/messages.json
- − browser/components/search/extensions/wikipedia/_locales/gu/messages.json
- − browser/components/search/extensions/wikipedia/_locales/he/messages.json
- − browser/components/search/extensions/wikipedia/_locales/hi/messages.json
- − browser/components/search/extensions/wikipedia/_locales/hr/messages.json
- − browser/components/search/extensions/wikipedia/_locales/hsb/messages.json
- − browser/components/search/extensions/wikipedia/_locales/hu/messages.json
- − browser/components/search/extensions/wikipedia/_locales/hy/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ia/messages.json
- − browser/components/search/extensions/wikipedia/_locales/id/messages.json
- − browser/components/search/extensions/wikipedia/_locales/is/messages.json
- − browser/components/search/extensions/wikipedia/_locales/it/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ja/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ka/messages.json
- − browser/components/search/extensions/wikipedia/_locales/kab/messages.json
- − browser/components/search/extensions/wikipedia/_locales/kk/messages.json
- − browser/components/search/extensions/wikipedia/_locales/km/messages.json
- − browser/components/search/extensions/wikipedia/_locales/kn/messages.json
- − browser/components/search/extensions/wikipedia/_locales/kr/messages.json
- − browser/components/search/extensions/wikipedia/_locales/lij/messages.json
- − browser/components/search/extensions/wikipedia/_locales/lo/messages.json
- − browser/components/search/extensions/wikipedia/_locales/lt/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ltg/messages.json
- − browser/components/search/extensions/wikipedia/_locales/lv/messages.json
- − browser/components/search/extensions/wikipedia/_locales/mk/messages.json
- − browser/components/search/extensions/wikipedia/_locales/mr/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ms/messages.json
- − browser/components/search/extensions/wikipedia/_locales/my/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ne/messages.json
- − browser/components/search/extensions/wikipedia/_locales/nl/messages.json
- − browser/components/search/extensions/wikipedia/_locales/oc/messages.json
- − browser/components/search/extensions/wikipedia/_locales/pa/messages.json
- − browser/components/search/extensions/wikipedia/_locales/pl/messages.json
- − browser/components/search/extensions/wikipedia/_locales/pt/messages.json
- − browser/components/search/extensions/wikipedia/_locales/rm/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ro/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ru/messages.json
- − browser/components/search/extensions/wikipedia/_locales/si/messages.json
- − browser/components/search/extensions/wikipedia/_locales/sk/messages.json
- − browser/components/search/extensions/wikipedia/_locales/sl/messages.json
- − browser/components/search/extensions/wikipedia/_locales/sq/messages.json
- − browser/components/search/extensions/wikipedia/_locales/sr/messages.json
- − browser/components/search/extensions/wikipedia/_locales/sv-SE/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ta/messages.json
- − browser/components/search/extensions/wikipedia/_locales/te/messages.json
- − browser/components/search/extensions/wikipedia/_locales/th/messages.json
- − browser/components/search/extensions/wikipedia/_locales/tl/messages.json
- − browser/components/search/extensions/wikipedia/_locales/tr/messages.json
- − browser/components/search/extensions/wikipedia/_locales/uk/messages.json
- − browser/components/search/extensions/wikipedia/_locales/ur/messages.json
- − browser/components/search/extensions/wikipedia/_locales/uz/messages.json
- − browser/components/search/extensions/wikipedia/_locales/vi/messages.json
- − browser/components/search/extensions/wikipedia/_locales/wo/messages.json
- − browser/components/search/extensions/wikipedia/_locales/zh-CN/messages.json
- − browser/components/search/extensions/wikipedia/_locales/zh-TW/messages.json
- browser/components/search/extensions/wikipedia/manifest.json
- − browser/components/search/extensions/wiktionary/_locales/oc/messages.json
- − browser/components/search/extensions/wiktionary/_locales/te/messages.json
- − browser/components/search/extensions/yandex/_locales/az/messages.json
- − browser/components/search/extensions/yandex/_locales/by/messages.json
- − browser/components/search/extensions/yandex/_locales/en/messages.json
- − browser/components/search/extensions/yandex/_locales/kk/messages.json
- − browser/components/search/extensions/yandex/_locales/ru/messages.json
- − browser/components/search/extensions/yandex/_locales/tr/messages.json
- − browser/components/search/extensions/yandex/_locales/ua/messages.json
- + browser/components/securitylevel/content/securityLevel.js
- + browser/components/securitylevel/content/securityLevelButton.css
- + browser/components/securitylevel/content/securityLevelButton.inc.xhtml
- + browser/components/securitylevel/content/securityLevelIcon.svg
- + browser/components/securitylevel/content/securityLevelPanel.css
- + browser/components/securitylevel/content/securityLevelPanel.inc.xhtml
- + browser/components/securitylevel/content/securityLevelPreferences.css
- + browser/components/securitylevel/content/securityLevelPreferences.inc.xhtml
- + browser/components/securitylevel/jar.mn
- + browser/components/securitylevel/moz.build
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e6-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e7-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e8-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1e9-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ea-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1eb-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ec-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ed-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ee-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ef-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f0-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f1-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f2-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f5.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f3-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f4-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f5-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f6-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f7-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fd.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f8-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1e9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ed.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ef.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f1.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f4.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f7.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1fb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1f9-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1fe.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fa-1f1ff.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1e8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ec.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1ee.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1f3.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fb-1f1fa.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fc-1f1eb.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fc-1f1f8.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fd-1f1f0.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fe-1f1ea.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1fe-1f1f9.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1e6.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1f2.svg
- + browser/components/torcircuit/content/tor-circuit-flags/1f1ff-1f1fc.svg
- + browser/components/torcircuit/content/tor-circuit-flags/README.txt
- + browser/components/torcircuit/content/tor-circuit-icon-mask.svg
- + browser/components/torcircuit/content/tor-circuit-node-end.svg
- + browser/components/torcircuit/content/tor-circuit-node-middle.svg
- + browser/components/torcircuit/content/tor-circuit-node-relays.svg
- + browser/components/torcircuit/content/tor-circuit-node-start.svg
- + browser/components/torcircuit/content/tor-circuit-redirect.svg
- + browser/components/torcircuit/content/torCircuitPanel.css
- + browser/components/torcircuit/content/torCircuitPanel.inc.xhtml
- + browser/components/torcircuit/content/torCircuitPanel.js
- + browser/components/torcircuit/jar.mn
- + browser/components/torcircuit/moz.build
- + browser/components/torpreferences/content/bridge-bot.svg
- + browser/components/torpreferences/content/bridge-qr.svg
- + browser/components/torpreferences/content/bridge.svg
- + browser/components/torpreferences/content/bridgeQrDialog.js
- + browser/components/torpreferences/content/bridgeQrDialog.xhtml
- + browser/components/torpreferences/content/bridgemoji/BridgeEmoji.js
- + browser/components/torpreferences/content/bridgemoji/annotations.json
- + browser/components/torpreferences/content/bridgemoji/bridge-emojis.json
- + browser/components/torpreferences/content/bridgemoji/svgs/1f300.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f308.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f30a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f30b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f319.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f31f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f321.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f32d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f32e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f332.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f333.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f334.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f335.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f336.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f337.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f339.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f33f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f341.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f344.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f345.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f346.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f347.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f348.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f349.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f34f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f350.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f351.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f352.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f353.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f354.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f355.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f368.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f369.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f36d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f37f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f380.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f381.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f382.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f383.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f388.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f389.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f38f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f392.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f399.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f39f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3a8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ac.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3af.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3b8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ba.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3bb.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3be.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3c8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3d5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3dd.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3e1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3ee.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f3f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f40d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f417.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f418.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f419.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f41f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f420.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f422.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f425.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f426.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f428.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f42f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f430.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f431.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f432.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f433.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f434.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f435.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f436.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f437.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f43f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f441.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f451.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f455.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f457.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f45f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f47d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f484.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f488.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f48d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f48e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f490.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4a1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4a7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4b3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4bf.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4cc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4ce.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4d5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4e1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4e2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f4fb.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f50b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f511.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f525.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f526.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f52e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f54a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f58c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f58d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f5ff.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f680.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f681.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f686.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f68b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f68d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f695.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f697.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f69a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f69c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6a4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f8.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6fa.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f6fc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f916.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f93f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f941.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f94c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f94f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f950.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f951.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f955.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f956.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f95e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f965.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f966.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f968.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f96f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f980.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f981.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f984.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f986.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f987.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f988.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f989.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98b.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f98f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f992.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f993.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f994.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f995.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f998.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f999.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99a.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99c.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99d.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f99e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a4.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9a9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ad.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c1.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c3.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c7.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9c9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9d9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9da.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9dc.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9e9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ea.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ec.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ed.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9ee.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1f9f9.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa73.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa80.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa81.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa83.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa90.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa91.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa95.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fa97.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fab6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/1fad6.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/23f0.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2600.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2602.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2604.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/260e.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2693.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2696.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26bd.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26f2.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/26f5.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2708.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/270f.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2728.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/2744.svg
- + browser/components/torpreferences/content/bridgemoji/svgs/README.txt
- + browser/components/torpreferences/content/builtinBridgeDialog.js
- + browser/components/torpreferences/content/builtinBridgeDialog.xhtml
- + browser/components/torpreferences/content/connectionCategory.inc.xhtml
- + browser/components/torpreferences/content/connectionPane.js
- + browser/components/torpreferences/content/connectionPane.xhtml
- + browser/components/torpreferences/content/connectionSettingsDialog.js
- + browser/components/torpreferences/content/connectionSettingsDialog.xhtml
- + browser/components/torpreferences/content/lox-bridge-icon.svg
- + browser/components/torpreferences/content/lox-bridge-pass.svg
- + browser/components/torpreferences/content/lox-complete-ring.svg
- + browser/components/torpreferences/content/lox-invite-icon.svg
- + browser/components/torpreferences/content/lox-progress-ring.svg
- + browser/components/torpreferences/content/lox-success.svg
- + browser/components/torpreferences/content/loxInviteDialog.js
- + browser/components/torpreferences/content/loxInviteDialog.xhtml
- + browser/components/torpreferences/content/mail.svg
- + browser/components/torpreferences/content/network-broken.svg
- + browser/components/torpreferences/content/network.svg
- + browser/components/torpreferences/content/provideBridgeDialog.js
- + browser/components/torpreferences/content/provideBridgeDialog.xhtml
- + browser/components/torpreferences/content/requestBridgeDialog.js
- + browser/components/torpreferences/content/requestBridgeDialog.xhtml
- + browser/components/torpreferences/content/telegram-logo.svg
- + browser/components/torpreferences/content/torLogDialog.js
- + browser/components/torpreferences/content/torLogDialog.xhtml
- + browser/components/torpreferences/content/torPreferences.css
- + browser/components/torpreferences/jar.mn
- + browser/components/torpreferences/moz.build
- browser/components/urlbar/UrlbarInput.sys.mjs
- browser/components/urlbar/UrlbarProvidersManager.sys.mjs
- browser/components/urlbar/UrlbarUtils.sys.mjs
- browser/components/urlbar/moz.build
- + browser/config/mozconfigs/base-browser
- + browser/config/mozconfigs/base-browser-android
- + browser/config/mozconfigs/tor-browser
- + browser/config/mozconfigs/tor-browser-android
- browser/confvars.sh
- browser/extensions/moz.build
- browser/installer/Makefile.in
- browser/installer/package-manifest.in
- browser/installer/windows/nsis/shared.nsh
- browser/locales/Makefile.in
- − browser/locales/en-US/chrome/overrides/appstrings.properties
- browser/locales/jar.mn
- browser/modules/HomePage.jsm
- + browser/modules/TorUIUtils.sys.mjs
- browser/modules/URILoadingHelper.sys.mjs
- browser/modules/moz.build
- browser/moz.build
- browser/moz.configure
- browser/themes/shared/addons/unified-extensions.css
- browser/themes/shared/browser-shared.css
- browser/themes/shared/controlcenter/panel.css
- browser/themes/shared/customizableui/panelUI-shared.css
- browser/themes/shared/downloads/contentAreaDownloadsView.css
- browser/themes/shared/downloads/downloads.inc.css
- + browser/themes/shared/icons/new_circuit.svg
- + browser/themes/shared/icons/new_identity.svg
- browser/themes/shared/identity-block/identity-block.css
- browser/themes/shared/jar.inc.mn
- browser/themes/shared/notification-icons.css
- browser/themes/shared/preferences/preferences.css
- browser/themes/shared/preferences/privacy.css
- browser/themes/shared/toolbarbutton-icons.css
- + browser/themes/shared/tor-branding.css
- + browser/themes/shared/tor-urlbar-button.css
- build/application.ini.in
- build/moz.build
- build/moz.configure/init.configure
- build/moz.configure/update-programs.configure
- build/variables.py
- config/createprecomplete.py
- devtools/client/aboutdebugging/src/actions/runtimes.js
- devtools/client/netmonitor/src/components/SecurityState.js
- devtools/client/netmonitor/src/components/new-request/HTTPCustomRequestPanel.js
- devtools/client/netmonitor/test/browser_net_new_request_panel_persisted_content.js
- devtools/client/netmonitor/test/head.js
- devtools/client/themes/images/aboutdebugging-firefox-logo.svg
- docshell/base/BrowsingContext.cpp
- docshell/base/BrowsingContext.h
- docshell/base/CanonicalBrowsingContext.cpp
- docshell/base/nsAboutRedirector.cpp
- docshell/base/nsDocShell.cpp
- docshell/base/nsDocShell.h
- docshell/build/components.conf
- docshell/shistory/nsISHistory.idl
- dom/base/ContentAreaDropListener.sys.mjs
- dom/base/Document.cpp
- dom/base/Document.h
- dom/base/PointerLockManager.cpp
- dom/base/PointerLockManager.h
- dom/base/ShadowRoot.cpp
- dom/base/ShadowRoot.h
- dom/base/nsContentUtils.cpp
- dom/base/nsContentUtils.h
- dom/base/nsCopySupport.cpp
- dom/base/nsGlobalWindowInner.cpp
- dom/base/nsGlobalWindowOuter.cpp
- dom/base/nsScreen.cpp
- dom/base/nsScreen.h
- dom/cache/TypeUtils.cpp
- dom/canvas/ClientWebGLContext.cpp
- dom/canvas/WebGLContextExtensions.cpp
- dom/console/Console.cpp
- dom/crypto/WebCryptoTask.cpp
- dom/crypto/test/test-vectors.js
- dom/crypto/test/test_WebCrypto_ECDH.html
- dom/crypto/test/test_WebCrypto_ECDSA.html
- dom/filesystem/tests/script_promptHandler.js
- dom/html/HTMLDNSPrefetch.cpp
- dom/html/HTMLDetailsElement.cpp
- dom/html/HTMLFormElement.cpp
- dom/html/input/NumericInputTypes.cpp
- dom/ipc/BrowserChild.cpp
- dom/ipc/BrowserChild.h
- dom/ipc/BrowserParent.cpp
- dom/ipc/BrowserParent.h
- dom/ipc/PBrowser.ipdl
- dom/ipc/WindowGlobalActor.cpp
- dom/ipc/WindowGlobalChild.cpp
- dom/locales/moz.build
- dom/manifest/Manifest.sys.mjs
- dom/manifest/test/browser_Manifest_install.js
- dom/media/MediaTrackGraph.cpp
- dom/media/MediaTrackGraph.h
- dom/media/ipc/RemoteMediaDataDecoder.cpp
- dom/media/ipc/RemoteMediaDataDecoder.h
- dom/media/platforms/wrappers/MediaChangeMonitor.cpp
- dom/media/platforms/wrappers/MediaChangeMonitor.h
- dom/media/systemservices/CamerasChild.cpp
- dom/media/systemservices/video_engine/desktop_device_info.cc
- dom/media/webrtc/libwebrtcglue/VideoConduit.cpp
- dom/media/webrtc/sdp/RsdparsaSdpAttributeList.cpp
- dom/media/webrtc/transport/nrinterfaceprioritizer.cpp
- dom/media/webrtc/transport/sigslot.h
- dom/media/webrtc/transport/test/ice_unittest.cpp
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.c
- dom/media/webrtc/transport/third_party/nICEr/src/net/local_addr.h
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-netlink.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs-win32.c
- dom/media/webrtc/transport/third_party/nICEr/src/stun/addrs.c
- dom/media/webrtc/transport/third_party/nrappkit/src/log/r_log.c
- dom/media/webrtc/transport/third_party/nrappkit/src/registry/registry.c
- dom/push/PushCrypto.sys.mjs
- dom/security/nsContentSecurityUtils.cpp
- dom/security/nsMixedContentBlocker.cpp
- dom/webidl/Document.webidl
- dom/websocket/WebSocket.cpp
- dom/xslt/xslt/txEXSLTFunctions.cpp
- dom/xslt/xslt/txMozillaXSLTProcessor.cpp
- dom/xslt/xslt/txXSLTMsgsURL.h
- extensions/auth/nsHttpNegotiateAuth.cpp
- gfx/2d/RecordedEventImpl.h
- gfx/2d/RecordingTypes.h
- gfx/thebes/StandardFonts-win10.inc
- gfx/thebes/gfxDWriteFontList.cpp
- gfx/thebes/gfxDWriteFontList.h
- gfx/thebes/gfxFcPlatformFontList.cpp
- gfx/thebes/gfxFont.cpp
- gfx/thebes/gfxFontEntry.cpp
- gfx/thebes/gfxFontEntry.h
- gfx/thebes/gfxGDIFontList.cpp
- gfx/thebes/gfxPlatformFontList.cpp
- gfx/thebes/gfxPlatformFontList.h
- intl/l10n/Localization.h
- intl/locale/LocaleService.cpp
- intl/strres/nsIStringBundle.idl
- intl/strres/nsStringBundle.cpp
- intl/unicharutil/util/ICUUtils.cpp
- js/public/StructuredClone.h
- js/public/friend/ErrorNumbers.msg
- js/src/gc/Zone.cpp
- + js/src/jit-test/tests/debug/bug-1904011.js
- + js/src/jit-test/tests/ion/bug1900523.js
- + js/src/jit-test/tests/ion/bug1902983.js
- js/src/jit-test/tests/resist-fingerprinting/timezone.js
- js/src/jit-test/tests/structured-clone/transferable-cleanup.js
- js/src/jit/IonAnalysis.cpp
- js/src/jit/JSJitFrameIter.cpp
- js/src/jit/JSJitFrameIter.h
- js/src/old-configure.in
- js/src/vm/DateTime.cpp
- js/src/vm/StructuredClone.cpp
- js/xpconnect/src/xpc.msg
- layout/base/PresShell.cpp
- layout/base/PresShell.h
- layout/base/nsCaret.cpp
- layout/base/nsLayoutUtils.cpp
- layout/base/nsPresContext.cpp
- layout/base/nsPresContext.h
- layout/reftests/font-matching/reftest.list
- + layout/reftests/font-matching/system-font-rfp-ref.html
- + layout/reftests/font-matching/system-font-rfp.html
- layout/style/ServoStyleSet.cpp
- layout/style/ServoStyleSet.h
- layout/style/StyleSheet.cpp
- layout/xul/nsXULPopupManager.cpp
- layout/xul/nsXULPopupManager.h
- + mobile/android/app/000-tor-browser-android.js
- mobile/android/app/geckoview-prefs.js
- mobile/android/app/mobile.js
- mobile/android/app/moz.build
- + mobile/android/basebrowser.configure
- mobile/android/branding/beta/locales/jar.mn
- mobile/android/branding/nightly/locales/jar.mn
- mobile/android/branding/official/locales/jar.mn
- mobile/android/branding/unofficial/locales/jar.mn
- mobile/android/components/geckoview/GeckoViewStartup.jsm
- mobile/android/confvars.sh
- mobile/android/exoplayer2/src/main/java/org/mozilla/thirdparty/com/google/android/exoplayer2/upstream/DefaultHttpDataSource.java
- + mobile/android/fenix/app/src/main/res/values/torbrowser_strings.xml
- mobile/android/geckoview/api.txt
- mobile/android/geckoview/build.gradle
- mobile/android/geckoview/src/main/AndroidManifest.xml
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/media/GeckoMediaDrmBridgeV21.java
- mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/ProxySelector.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntime.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoRuntimeSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorIntegrationAndroid.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/TorSettings.java
- mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebRequest.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/androidlegacysettings/Prefs.java
- + mobile/android/geckoview/src/main/java/org/mozilla/geckoview/androidlegacysettings/TorLegacyAndroidSettings.java
- mobile/android/gradle/with_gecko_binaries.gradle
- mobile/android/installer/package-manifest.in
- mobile/android/modules/geckoview/GeckoViewContent.sys.mjs
- mobile/android/modules/geckoview/GeckoViewProgress.sys.mjs
- mobile/android/moz.configure
- modules/libmar/tool/mar.c
- modules/libmar/tool/moz.build
- modules/libmar/verify/moz.build
- modules/libpref/Preferences.cpp
- modules/libpref/init/StaticPrefList.yaml
- modules/libpref/init/all.js
- moz.configure
- + mozconfig-android-aarch64
- + mozconfig-android-all
- + mozconfig-android-armv7
- + mozconfig-android-x86
- + mozconfig-android-x86_64
- + mozconfig-linux-aarch64
- + mozconfig-linux-arm
- + mozconfig-linux-i686
- + mozconfig-linux-x86_64
- + mozconfig-linux-x86_64-asan
- + mozconfig-linux-x86_64-dev
- + mozconfig-macos
- + mozconfig-macos-dev
- + mozconfig-windows-i686
- + mozconfig-windows-x86_64
- netwerk/base/nsSocketTransport2.cpp
- netwerk/build/components.conf
- netwerk/build/nsNetCID.h
- netwerk/cache2/CacheFileIOManager.cpp
- netwerk/cookie/CookieCommons.cpp
- netwerk/cookie/CookieService.cpp
- netwerk/cookie/CookieServiceChild.cpp
- + netwerk/dns/IOnionAliasService.idl
- + netwerk/dns/OnionAliasService.cpp
- + netwerk/dns/OnionAliasService.h
- netwerk/dns/effective_tld_names.dat
- netwerk/dns/moz.build
- netwerk/dns/nsHostRecord.cpp
- netwerk/dns/nsHostRecord.h
- netwerk/dns/nsHostResolver.cpp
- netwerk/ipc/DocumentLoadListener.cpp
- netwerk/protocol/http/HttpBaseChannel.cpp
- netwerk/protocol/http/nsHttpHandler.cpp
- netwerk/protocol/http/nsHttpNTLMAuth.cpp
- netwerk/protocol/webtransport/WebTransportSessionProxy.cpp
- netwerk/sctp/src/moz.build
- netwerk/sctp/src/netinet/sctp_cc_functions.c
- netwerk/sctp/src/netinet/sctp_indata.c
- netwerk/sctp/src/netinet/sctp_input.c
- netwerk/sctp/src/netinet/sctp_output.c
- netwerk/sctp/src/netinet/sctp_usrreq.c
- netwerk/sctp/src/netinet/sctputil.c
- netwerk/sctp/src/user_mbuf.c
- netwerk/sctp/src/user_socket.c
- netwerk/socket/nsSOCKSIOLayer.cpp
- netwerk/streamconv/converters/nsMultiMixedConv.cpp
- netwerk/streamconv/converters/nsMultiMixedConv.h
- netwerk/system/android/nsAndroidNetworkLinkService.cpp
- netwerk/system/linux/nsNetworkLinkService.cpp
- netwerk/system/mac/nsNetworkLinkService.mm
- netwerk/system/netlink/NetlinkService.cpp
- netwerk/system/win32/nsNotifyAddrListener.cpp
- netwerk/url-classifier/UrlClassifierFeatureBase.cpp
- netwerk/url-classifier/components.conf
- old-configure.in
- python/mozbuild/mozbuild/artifacts.py
- python/mozbuild/mozbuild/mach_commands.py
- + run-tbb-tests
- security/certverifier/CertVerifier.cpp
- security/manager/ssl/NSSSocketControl.cpp
- security/manager/ssl/RemoteSecuritySettings.sys.mjs
- security/manager/ssl/SSLServerCertVerification.cpp
- security/manager/ssl/SSLServerCertVerification.h
- security/manager/ssl/StaticHPKPins.h
- security/manager/ssl/cert_storage/src/lib.rs
- security/manager/ssl/nsSecureBrowserUI.cpp
- security/moz.build
- security/nss/lib/certhigh/ocsp.c
- security/nss/lib/libpkix/pkix_pl_nss/module/pkix_pl_socket.c
- security/nss/lib/mozpkix/include/pkix/Result.h
- security/nss/lib/mozpkix/include/pkix/pkixnss.h
- security/nss/lib/ssl/Makefile
- services/common/logmanager.sys.mjs
- services/settings/IDBHelpers.jsm
- services/settings/dumps/main/moz.build
- services/settings/dumps/security-state/moz.build
- services/settings/remote-settings.sys.mjs
- services/settings/servicesSettings.manifest
- services/settings/static-dumps/main/moz.build
- + services/settings/static-dumps/main/query-stripping.json
- services/sync/components.conf
- taskcluster/ci/source-test/mozlint.yml
- + tbb-tests-ignore.txt
- + tbb-tests/browser.ini
- + tbb-tests/browser_tor_TB4.js
- + tbb-tests/browser_tor_bug2950.js
- + tbb-tests/browser_tor_omnibox.js
- + tbb-tests/mochitest.ini
- + tbb-tests/moz.build
- + tbb-tests/test_tor_bug2874.html
- testing/web-platform/meta/cookies/name/name-ctl.html.ini
- testing/web-platform/meta/cookies/samesite/setcookie-navigation.https.html.ini
- − testing/web-platform/meta/service-workers/cache-storage/cache-put.https.any.js.ini
- + testing/web-platform/tests/css/cssom/insertRule-import-trailing-garbage-crash.html
- third_party/libwebrtc/modules/audio_coding/codecs/isac/main/source/os_specific_inline.h
- third_party/libwebrtc/modules/desktop_capture/desktop_capture_types.h
- third_party/libwebrtc/modules/desktop_capture/win/desktop_capture_utils.cc
- third_party/libwebrtc/modules/video_capture/windows/device_info_ds.h
- third_party/libwebrtc/rtc_base/platform_thread_types.cc
- third_party/libwebrtc/rtc_base/socket.h
- third_party/libwebrtc/rtc_base/system/file_wrapper.cc
- third_party/libwebrtc/rtc_base/win/create_direct3d_device.h
- third_party/sipcc/cpr_win_types.h
- third_party/sipcc/sdp_token.c
- toolkit/actors/AboutHttpsOnlyErrorParent.sys.mjs
- + toolkit/actors/FilesFilterChild.sys.mjs
- + toolkit/actors/FilesFilterParent.sys.mjs
- toolkit/actors/NetErrorChild.sys.mjs
- toolkit/actors/NetErrorParent.sys.mjs
- toolkit/actors/SelectParent.sys.mjs
- toolkit/actors/moz.build
- toolkit/components/antitracking/StoragePrincipalHelper.cpp
- toolkit/components/antitracking/antitracking.manifest
- toolkit/components/antitracking/components.conf
- toolkit/components/downloads/DownloadCore.sys.mjs
- toolkit/components/downloads/DownloadIntegration.sys.mjs
- toolkit/components/downloads/DownloadUIHelper.sys.mjs
- toolkit/components/extensions/Extension.sys.mjs
- toolkit/components/extensions/ExtensionParent.sys.mjs
- toolkit/components/httpsonlyerror/content/errorpage.html
- toolkit/components/httpsonlyerror/content/errorpage.js
- + toolkit/components/lox/Lox.sys.mjs
- + toolkit/components/lox/content/lox_wasm_bg.wasm
- + toolkit/components/lox/jar.mn
- + toolkit/components/lox/lox_wasm.jsm
- + toolkit/components/lox/moz.build
- toolkit/components/moz.build
- toolkit/components/places/PlacesUtils.sys.mjs
- toolkit/components/reader/AboutReader.sys.mjs
- toolkit/components/reader/ReaderMode.sys.mjs
- toolkit/components/remotebrowserutils/RemoteWebNavigation.sys.mjs
- toolkit/components/reputationservice/ApplicationReputation.cpp
- toolkit/components/reputationservice/test/gtest/TestExecutableLists.cpp
- toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
- toolkit/components/resistfingerprinting/nsRFPService.cpp
- toolkit/components/search/OpenSearchEngine.sys.mjs
- toolkit/components/search/SearchEngine.sys.mjs
- toolkit/components/search/SearchService.sys.mjs
- toolkit/components/search/SearchUtils.sys.mjs
- toolkit/components/search/tests/xpcshell/data/iconsRedirect.sjs
- toolkit/components/search/tests/xpcshell/test_opensearch_icons_invalid.js
- toolkit/components/search/tests/xpcshell/test_webextensions_install.js
- + toolkit/components/search/tests/xpcshell/test_webextensions_startup_duplicate.js
- toolkit/components/search/tests/xpcshell/xpcshell.ini
- + toolkit/components/securitylevel/SecurityLevel.manifest
- + toolkit/components/securitylevel/SecurityLevel.sys.mjs
- + toolkit/components/securitylevel/components.conf
- + toolkit/components/securitylevel/moz.build
- toolkit/components/telemetry/app/TelemetrySend.sys.mjs
- toolkit/components/telemetry/moz.build
- + toolkit/components/tor-launcher/TorBootstrapRequest.sys.mjs
- + toolkit/components/tor-launcher/TorControlPort.sys.mjs
- + toolkit/components/tor-launcher/TorDomainIsolator.sys.mjs
- + toolkit/components/tor-launcher/TorLauncherUtil.sys.mjs
- + toolkit/components/tor-launcher/TorParsers.sys.mjs
- + toolkit/components/tor-launcher/TorProcess.sys.mjs
- + toolkit/components/tor-launcher/TorProcessAndroid.sys.mjs
- + toolkit/components/tor-launcher/TorProvider.sys.mjs
- + toolkit/components/tor-launcher/TorProviderBuilder.sys.mjs
- + toolkit/components/tor-launcher/TorStartupService.sys.mjs
- + toolkit/components/tor-launcher/components.conf
- + toolkit/components/tor-launcher/moz.build
- + toolkit/components/tor-launcher/tor-launcher.manifest
- + toolkit/components/torconnect/TorConnectChild.sys.mjs
- + toolkit/components/torconnect/TorConnectParent.sys.mjs
- + toolkit/components/torconnect/content/aboutTorConnect.css
- + toolkit/components/torconnect/content/aboutTorConnect.html
- + toolkit/components/torconnect/content/aboutTorConnect.js
- + toolkit/components/torconnect/content/arrow-right.svg
- + toolkit/components/torconnect/content/bridge.svg
- + toolkit/components/torconnect/content/connection-failure.svg
- + toolkit/components/torconnect/content/connection-location.svg
- + toolkit/components/torconnect/content/onion-pattern.svg
- + toolkit/components/torconnect/content/tor-connect-broken.svg
- + toolkit/components/torconnect/content/tor-connect.svg
- + toolkit/components/torconnect/content/tor-not-connected-to-connected-animated.svg
- + toolkit/components/torconnect/content/torConnectTitlebarStatus.css
- + toolkit/components/torconnect/content/torConnectTitlebarStatus.js
- + toolkit/components/torconnect/content/torConnectUrlbarButton.js
- + toolkit/components/torconnect/jar.mn
- + toolkit/components/torconnect/moz.build
- toolkit/components/windowwatcher/nsWindowWatcher.cpp
- toolkit/content/aboutNetError.mjs
- toolkit/content/aboutNetError.xhtml
- toolkit/content/jar.mn
- toolkit/content/license.html
- + toolkit/content/pt_config.json
- toolkit/content/widgets/datetimebox.js
- toolkit/content/widgets/message-bar.css
- toolkit/content/widgets/moz-support-link/moz-support-link.mjs
- toolkit/content/widgets/moz-toggle/moz-toggle.mjs
- toolkit/content/widgets/popupnotification.js
- + toolkit/locales-preview/base-browser-no-translate.ftl
- + toolkit/locales-preview/tor-browser-no-translate.ftl
- toolkit/locales/en-US/chrome/mozapps/profile/profileSelection.properties
- + toolkit/locales/en-US/toolkit/global/base-browser.ftl
- + toolkit/locales/en-US/toolkit/global/tor-browser.ftl
- toolkit/locales/jar.mn
- toolkit/modules/ActorManagerParent.sys.mjs
- toolkit/modules/AppConstants.sys.mjs
- + toolkit/modules/Bech32Decode.jsm
- + toolkit/modules/BridgeDB.sys.mjs
- + toolkit/modules/DomainFrontedRequests.sys.mjs
- + toolkit/modules/DragDropFilter.sys.mjs
- toolkit/modules/FinderParent.sys.mjs
- toolkit/modules/IgnoreLists.sys.mjs
- + toolkit/modules/Moat.sys.mjs
- toolkit/modules/PopupNotifications.sys.mjs
- + toolkit/modules/QRCode.sys.mjs
- toolkit/modules/RemotePageAccessManager.sys.mjs
- + toolkit/modules/TorAndroidIntegration.sys.mjs
- + toolkit/modules/TorConnect.sys.mjs
- + toolkit/modules/TorSettings.sys.mjs
- + toolkit/modules/TorStrings.sys.mjs
- toolkit/modules/UpdateUtils.sys.mjs
- toolkit/modules/moz.build
- toolkit/moz.build
- toolkit/mozapps/extensions/AddonManager.sys.mjs
- toolkit/mozapps/extensions/content/aboutaddons.html
- toolkit/mozapps/extensions/content/aboutaddons.js
- toolkit/mozapps/extensions/internal/XPIDatabase.jsm
- toolkit/mozapps/extensions/internal/XPIProvider.jsm
- toolkit/mozapps/extensions/test/browser/head.js
- toolkit/mozapps/extensions/test/xpcshell/head_addons.js
- toolkit/mozapps/update/UpdateService.sys.mjs
- toolkit/mozapps/update/UpdateServiceStub.sys.mjs
- toolkit/mozapps/update/common/updatehelper.cpp
- toolkit/mozapps/update/updater/launchchild_osx.mm
- toolkit/mozapps/update/updater/moz.build
- toolkit/mozapps/update/updater/nightly_aurora_level3_primary.der
- toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der
- toolkit/mozapps/update/updater/release_primary.der
- toolkit/mozapps/update/updater/release_secondary.der
- toolkit/mozapps/update/updater/updater-common.build
- toolkit/mozapps/update/updater/updater.cpp
- toolkit/profile/nsToolkitProfileService.cpp
- toolkit/profile/nsToolkitProfileService.h
- toolkit/themes/shared/aboutNetError.css
- + toolkit/themes/shared/browser-colors.css
- toolkit/themes/shared/desktop-jar.inc.mn
- + toolkit/themes/shared/icons/onion-site.svg
- + toolkit/themes/shared/icons/onion-slash.svg
- + toolkit/themes/shared/icons/onion-warning.svg
- + toolkit/themes/shared/icons/tor-dark-loading.png
- + toolkit/themes/shared/icons/tor-dark-loading(a)2x.png
- + toolkit/themes/shared/icons/tor-light-loading.png
- + toolkit/themes/shared/icons/tor-light-loading(a)2x.png
- toolkit/themes/shared/in-content/common-shared.css
- toolkit/themes/shared/minimal-toolkit.jar.inc.mn
- toolkit/themes/shared/popupnotification.css
- toolkit/toolkit.mozbuild
- + toolkit/torbutton/chrome/locale/en-US/aboutTBUpdate.dtd
- + toolkit/torbutton/chrome/locale/en-US/brand.properties
- + toolkit/torbutton/chrome/locale/en-US/branding/brand.ftl
- + toolkit/torbutton/chrome/locale/en-US/onionLocation.properties
- + toolkit/torbutton/chrome/locale/en-US/settings.properties
- + toolkit/torbutton/chrome/locale/en-US/torConnect.properties
- + toolkit/torbutton/chrome/locale/en-US/torbutton.dtd
- + toolkit/torbutton/chrome/locale/en-US/torbutton.properties
- + toolkit/torbutton/chrome/locale/en-US/torlauncher.properties
- + toolkit/torbutton/jar.mn
- + toolkit/torbutton/moz.build
- toolkit/xre/LauncherRegistryInfo.cpp
- toolkit/xre/MacLaunchHelper.h
- toolkit/xre/MacLaunchHelper.mm
- toolkit/xre/MacRunFromDmgUtils.mm
- toolkit/xre/dllservices/mozglue/WindowsDllBlocklist.cpp
- toolkit/xre/dllservices/mozglue/gen_dll_blocklist_defs.py
- toolkit/xre/moz.build
- toolkit/xre/nsAppRunner.cpp
- toolkit/xre/nsIXREDirProvider.idl
- toolkit/xre/nsUpdateDriver.cpp
- toolkit/xre/nsXREDirProvider.cpp
- toolkit/xre/nsXREDirProvider.h
- + tools/geckoview/.gitignore
- + tools/geckoview/Makefile
- + tools/geckoview/android-env-linux-template.sh
- + tools/geckoview/android-env-macos-template.sh
- + tools/geckoview/build.sh
- + tools/geckoview/clobber.sh
- + tools/geckoview/config.sh
- + tools/geckoview/fataar.py
- + tools/geckoview/jslint.sh
- + tools/geckoview/package-gradle.sh
- tools/lint/eslint/eslint-plugin-mozilla/lib/environments/browser-window.js
- + tools/torbrowser/Makefile
- + tools/torbrowser/browser-self-sign-macos.sh
- + tools/torbrowser/build.sh
- + tools/torbrowser/clobber.sh
- + tools/torbrowser/config.sh
- + tools/torbrowser/deploy.sh
- + tools/torbrowser/fetch.sh
- + tools/torbrowser/generate_tor_loading_png.py
- + tools/torbrowser/git-rebase-fixup-preprocessor
- + tools/torbrowser/ide.sh
- + tools/torbrowser/jslint.sh
- + tools/torbrowser/l10n/combine-translation-versions.py
- + tools/torbrowser/l10n/combine/__init__.py
- + tools/torbrowser/l10n/combine/combine.py
- + tools/torbrowser/l10n/combine/tests/README
- + tools/torbrowser/l10n/combine/tests/__init__.py
- + tools/torbrowser/l10n/combine/tests/test_android.py
- + tools/torbrowser/l10n/combine/tests/test_dtd.py
- + tools/torbrowser/l10n/combine/tests/test_fluent.py
- + tools/torbrowser/l10n/combine/tests/test_properties.py
- + tools/torbrowser/l10n/migrate.py
- + tools/torbrowser/l10n/migrations/__init__.py
- + tools/torbrowser/l10n/migrations/bug-41333-new-about-tor.py
- + tools/torbrowser/l10n/migrations/bug-41622-neterror.py
- + tools/torbrowser/l10n/migrations/bug-42202-crypto-safety.py
- + tools/torbrowser/l10n/migrations/bug-42203-about-dialog.py
- + tools/torbrowser/l10n/migrations/bug-42206-rulesets.py
- + tools/torbrowser/l10n/migrations/bug-42207-settings.py
- + tools/torbrowser/l10n/migrations/bug-42209-tor-circuit.py
- + tools/torbrowser/l10n/migrations/bug-42210-download-warning.py
- + tools/torbrowser/l10n/migrations/bug-42211-new-identity.py
- + tools/torbrowser/l10n/migrations/bug-42214-security-level.py
- + tools/torbrowser/tb-dev
- + tools/torbrowser/update_emojis.py
- tools/update-packaging/common.sh
- tools/update-packaging/make_full_update.sh
- tools/update-packaging/make_incremental_update.sh
- uriloader/base/nsDocLoader.cpp
- uriloader/base/nsURILoader.cpp
- uriloader/exthandler/nsExternalHelperAppService.cpp
- widget/ScrollbarDrawingWin.cpp
- widget/ScrollbarDrawingWin11.cpp
- widget/android/WebExecutorSupport.cpp
- widget/gtk/WidgetUtilsGtk.cpp
- widget/windows/WinTaskbar.cpp
- widget/windows/nsDataObj.cpp
- xpcom/base/ErrorList.py
- xpcom/ds/StaticAtoms.py
- xpcom/io/CocoaFileUtils.mm
- xpcom/io/nsAppFileLocationProvider.cpp
- xpcom/io/nsLocalFileCommon.cpp
- xpcom/io/nsLocalFileCommon.h
- xpfe/appshell/AppWindow.cpp
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/a94795…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/a94795…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser][mullvad-browser-128.8.0esr-14.0-1] Bug 1910593 - Don't prefetch HTTPS RR if proxyDNS is enabled, r=necko-reviewers,valentin
by Pier Angelo Vendrame (@pierov) 27 Feb '25
by Pier Angelo Vendrame (@pierov) 27 Feb '25
27 Feb '25
Pier Angelo Vendrame pushed to branch mullvad-browser-128.8.0esr-14.0-1 at The Tor Project / Applications / Mullvad Browser
Commits:
cd9cd4ed by Kershaw Chang at 2025-02-27T16:08:04+01:00
Bug 1910593 - Don't prefetch HTTPS RR if proxyDNS is enabled, r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D219528
- - - - -
15 changed files:
- dom/chrome-webidl/NetDashboard.webidl
- netwerk/base/Dashboard.cpp
- netwerk/base/DashboardTypes.h
- netwerk/dns/nsHostResolver.cpp
- netwerk/protocol/http/nsHttp.cpp
- netwerk/protocol/http/nsHttp.h
- netwerk/protocol/http/nsHttpChannel.cpp
- netwerk/protocol/http/nsHttpChannel.h
- netwerk/protocol/http/nsHttpConnectionInfo.h
- netwerk/protocol/http/nsHttpConnectionMgr.cpp
- netwerk/protocol/http/nsHttpHandler.cpp
- netwerk/protocol/http/nsHttpHandler.h
- + netwerk/test/unit/test_proxyDNS_leak.js
- netwerk/test/unit/xpcshell.toml
- toolkit/content/aboutNetworking.js
Changes:
=====================================
dom/chrome-webidl/NetDashboard.webidl
=====================================
@@ -68,6 +68,7 @@ dictionary DnsCacheEntry {
boolean trr = false;
DOMString originAttributesSuffix = "";
DOMString flags = "";
+ unsigned short type = 0;
};
[GenerateConversionToJS]
=====================================
netwerk/base/Dashboard.cpp
=====================================
@@ -906,10 +906,13 @@ nsresult Dashboard::GetDNSCacheEntries(DnsData* dnsData) {
CopyASCIItoUTF16(dnsData->mData[i].hostaddr[j], *addr);
}
- if (dnsData->mData[i].family == PR_AF_INET6) {
- entry.mFamily.AssignLiteral(u"ipv6");
- } else {
- entry.mFamily.AssignLiteral(u"ipv4");
+ entry.mType = dnsData->mData[i].resolveType;
+ if (entry.mType == nsIDNSService::RESOLVE_TYPE_DEFAULT) {
+ if (dnsData->mData[i].family == PR_AF_INET6) {
+ entry.mFamily.AssignLiteral(u"ipv6");
+ } else {
+ entry.mFamily.AssignLiteral(u"ipv4");
+ }
}
entry.mOriginAttributesSuffix =
=====================================
netwerk/base/DashboardTypes.h
=====================================
@@ -35,12 +35,12 @@ struct DnsAndConnectSockets {
struct DNSCacheEntries {
nsCString hostname;
nsTArray<nsCString> hostaddr;
- uint16_t family;
- int64_t expiration;
- nsCString netInterface;
- bool TRR;
+ uint16_t family{0};
+ int64_t expiration{0};
+ bool TRR{false};
nsCString originAttributesSuffix;
nsCString flags;
+ uint16_t resolveType{0};
};
struct HttpConnInfo {
@@ -99,8 +99,10 @@ struct ParamTraits<mozilla::net::DNSCacheEntries> {
WriteParam(aWriter, aParam.hostaddr);
WriteParam(aWriter, aParam.family);
WriteParam(aWriter, aParam.expiration);
- WriteParam(aWriter, aParam.netInterface);
WriteParam(aWriter, aParam.TRR);
+ WriteParam(aWriter, aParam.originAttributesSuffix);
+ WriteParam(aWriter, aParam.flags);
+ WriteParam(aWriter, aParam.resolveType);
}
static bool Read(MessageReader* aReader, paramType* aResult) {
@@ -108,8 +110,10 @@ struct ParamTraits<mozilla::net::DNSCacheEntries> {
ReadParam(aReader, &aResult->hostaddr) &&
ReadParam(aReader, &aResult->family) &&
ReadParam(aReader, &aResult->expiration) &&
- ReadParam(aReader, &aResult->netInterface) &&
- ReadParam(aReader, &aResult->TRR);
+ ReadParam(aReader, &aResult->TRR) &&
+ ReadParam(aReader, &aResult->originAttributesSuffix) &&
+ ReadParam(aReader, &aResult->flags) &&
+ ReadParam(aReader, &aResult->resolveType);
}
};
=====================================
netwerk/dns/nsHostResolver.cpp
=====================================
@@ -1986,20 +1986,13 @@ void nsHostResolver::GetDNSCacheEntries(nsTArray<DNSCacheEntries>* args) {
continue;
}
- // For now we only show A/AAAA records.
- if (!rec->IsAddrRecord()) {
- continue;
- }
-
- RefPtr<AddrHostRecord> addrRec = do_QueryObject(rec);
- MOZ_ASSERT(addrRec);
- if (!addrRec || !addrRec->addr_info) {
- continue;
- }
-
DNSCacheEntries info;
+ info.resolveType = rec->type;
info.hostname = rec->host;
info.family = rec->af;
+ if (rec->mValidEnd.IsNull()) {
+ continue;
+ }
info.expiration =
(int64_t)(rec->mValidEnd - TimeStamp::NowLoRes()).ToSeconds();
if (info.expiration <= 0) {
@@ -2007,7 +2000,13 @@ void nsHostResolver::GetDNSCacheEntries(nsTArray<DNSCacheEntries>* args) {
continue;
}
- {
+ info.originAttributesSuffix = recordEntry.GetKey().originSuffix;
+ info.flags = nsPrintfCString("%u|0x%x|%u|%d|%s", rec->type,
+ static_cast<uint32_t>(rec->flags), rec->af,
+ rec->pb, rec->mTrrServer.get());
+
+ RefPtr<AddrHostRecord> addrRec = do_QueryObject(rec);
+ if (addrRec && addrRec->addr_info) {
MutexAutoLock lock(addrRec->addr_info_lock);
for (const auto& addr : addrRec->addr_info->Addresses()) {
char buf[kIPv6CStrBufSize];
@@ -2018,11 +2017,6 @@ void nsHostResolver::GetDNSCacheEntries(nsTArray<DNSCacheEntries>* args) {
info.TRR = addrRec->addr_info->IsTRR();
}
- info.originAttributesSuffix = recordEntry.GetKey().originSuffix;
- info.flags = nsPrintfCString("%u|0x%x|%u|%d|%s", rec->type,
- static_cast<uint32_t>(rec->flags), rec->af,
- rec->pb, rec->mTrrServer.get());
-
args->AppendElement(std::move(info));
}
}
=====================================
netwerk/protocol/http/nsHttp.cpp
=====================================
@@ -35,6 +35,8 @@
namespace mozilla {
namespace net {
+extern const char kProxyType_SOCKS[];
+
const uint32_t kHttp3VersionCount = 5;
const nsCString kHttp3Versions[] = {"h3-29"_ns, "h3-30"_ns, "h3-31"_ns,
"h3-32"_ns, "h3"_ns};
@@ -1165,5 +1167,19 @@ void DisallowHTTPSRR(uint32_t& aCaps) {
aCaps = (aCaps | NS_HTTP_DISALLOW_HTTPS_RR) & ~NS_HTTP_FORCE_WAIT_HTTP_RR;
}
+ProxyDNSStrategy GetProxyDNSStrategyHelper(const char* aType, uint32_t aFlag) {
+ if (!aType) {
+ return ProxyDNSStrategy::ORIGIN;
+ }
+
+ if (!(aFlag & nsIProxyInfo::TRANSPARENT_PROXY_RESOLVES_HOST)) {
+ if (aType == kProxyType_SOCKS) {
+ return ProxyDNSStrategy::ORIGIN;
+ }
+ }
+
+ return ProxyDNSStrategy::PROXY;
+}
+
} // namespace net
} // namespace mozilla
=====================================
netwerk/protocol/http/nsHttp.h
=====================================
@@ -527,6 +527,16 @@ bool PossibleZeroRTTRetryError(nsresult aReason);
void DisallowHTTPSRR(uint32_t& aCaps);
+enum class ProxyDNSStrategy : uint8_t {
+ // To resolve the origin of the end server we are connecting
+ // to.
+ ORIGIN = 1 << 0,
+ // To resolve the host name of the proxy.
+ PROXY = 1 << 1
+};
+
+ProxyDNSStrategy GetProxyDNSStrategyHelper(const char* aType, uint32_t aFlag);
+
} // namespace net
} // namespace mozilla
=====================================
netwerk/protocol/http/nsHttpChannel.cpp
=====================================
@@ -759,6 +759,10 @@ nsresult nsHttpChannel::MaybeUseHTTPSRRForUpgrade(bool aShouldUpgrade,
}
auto shouldSkipUpgradeWithHTTPSRR = [&]() -> bool {
+ if (mCaps & NS_HTTP_DISALLOW_HTTPS_RR) {
+ return true;
+ }
+
// Skip using HTTPS RR to upgrade when this is not a top-level load and the
// loading principal is http.
if ((mLoadInfo->GetExternalContentPolicyType() !=
@@ -781,6 +785,11 @@ nsresult nsHttpChannel::MaybeUseHTTPSRRForUpgrade(bool aShouldUpgrade,
return true;
}
+ auto dnsStrategy = GetProxyDNSStrategy();
+ if (dnsStrategy != ProxyDNSStrategy::ORIGIN) {
+ return true;
+ }
+
nsAutoCString uriHost;
mURI->GetAsciiHost(uriHost);
@@ -805,11 +814,6 @@ nsresult nsHttpChannel::MaybeUseHTTPSRRForUpgrade(bool aShouldUpgrade,
return ContinueOnBeforeConnect(hasHTTPSRR, aStatus, hasHTTPSRR);
}
- auto dnsStrategy = GetProxyDNSStrategy();
- if (!(dnsStrategy & DNS_PREFETCH_ORIGIN)) {
- return ContinueOnBeforeConnect(aShouldUpgrade, aStatus);
- }
-
LOG(("nsHttpChannel::MaybeUseHTTPSRRForUpgrade [%p] wait for HTTPS RR",
this));
@@ -1215,13 +1219,13 @@ void nsHttpChannel::SpeculativeConnect() {
NS_NewNotificationCallbacksAggregation(mCallbacks, mLoadGroup,
getter_AddRefs(callbacks));
if (!callbacks) return;
-
- Unused << gHttpHandler->SpeculativeConnect(
+ bool httpsRRAllowed = !(mCaps & NS_HTTP_DISALLOW_HTTPS_RR);
+ Unused << gHttpHandler->MaybeSpeculativeConnectWithHTTPSRR(
mConnectionInfo, callbacks,
mCaps & (NS_HTTP_DISALLOW_SPDY | NS_HTTP_TRR_MODE_MASK |
NS_HTTP_DISABLE_IPV4 | NS_HTTP_DISABLE_IPV6 |
NS_HTTP_DISALLOW_HTTP3 | NS_HTTP_REFRESH_DNS),
- gHttpHandler->EchConfigEnabled());
+ gHttpHandler->EchConfigEnabled() && httpsRRAllowed);
}
void nsHttpChannel::DoNotifyListenerCleanup() {
@@ -6537,27 +6541,16 @@ nsHttpChannel::GetOrCreateChannelClassifier() {
return classifier.forget();
}
-uint16_t nsHttpChannel::GetProxyDNSStrategy() {
- // This function currently only supports returning DNS_PREFETCH_ORIGIN.
- // Support for the rest of the DNS_* flags will be added later.
-
- if (!mProxyInfo) {
- return DNS_PREFETCH_ORIGIN;
+ProxyDNSStrategy nsHttpChannel::GetProxyDNSStrategy() {
+ // When network_dns_force_use_https_rr is true, return DNS_PREFETCH_ORIGIN.
+ // This ensures that we always perform HTTPS RR query.
+ nsCOMPtr<nsProxyInfo> proxyInfo(static_cast<nsProxyInfo*>(mProxyInfo.get()));
+ if (!proxyInfo || StaticPrefs::network_dns_force_use_https_rr()) {
+ return ProxyDNSStrategy::ORIGIN;
}
- uint32_t flags = 0;
- nsAutoCString type;
- mProxyInfo->GetFlags(&flags);
- mProxyInfo->GetType(type);
-
// If the proxy is not to perform name resolution itself.
- if (!(flags & nsIProxyInfo::TRANSPARENT_PROXY_RESOLVES_HOST)) {
- if (type.EqualsLiteral("socks")) {
- return DNS_PREFETCH_ORIGIN;
- }
- }
-
- return 0;
+ return GetProxyDNSStrategyHelper(proxyInfo->Type(), proxyInfo->Flags());
}
// BeginConnect() SHOULD NOT call AsyncAbort(). AsyncAbort will be called by
@@ -6743,11 +6736,13 @@ nsresult nsHttpChannel::BeginConnect() {
}
bool trrEnabled = false;
+ auto dnsStrategy = GetProxyDNSStrategy();
bool httpsRRAllowed =
!LoadBeConservative() && !(mCaps & NS_HTTP_BE_CONSERVATIVE) &&
!(mLoadInfo->TriggeringPrincipal()->IsSystemPrincipal() &&
mLoadInfo->GetExternalContentPolicyType() !=
ExtContentPolicy::TYPE_DOCUMENT) &&
+ dnsStrategy == ProxyDNSStrategy::ORIGIN &&
!mConnectionInfo->UsingConnect() && canUseHTTPSRRonNetwork(trrEnabled) &&
StaticPrefs::network_dns_use_https_rr_as_altsvc();
if (!httpsRRAllowed) {
@@ -6858,16 +6853,7 @@ nsresult nsHttpChannel::BeginConnect() {
ReEvaluateReferrerAfterTrackingStatusIsKnown();
}
- rv = MaybeStartDNSPrefetch();
- if (NS_FAILED(rv)) {
- auto dnsStrategy = GetProxyDNSStrategy();
- if (dnsStrategy & DNS_BLOCK_ON_ORIGIN_RESOLVE) {
- // TODO: Should this be fatal?
- return rv;
- }
- // Otherwise this shouldn't be fatal.
- return NS_OK;
- }
+ MaybeStartDNSPrefetch();
rv = CallOrWaitForResume(
[](nsHttpChannel* self) { return self->PrepareToConnect(); });
@@ -6887,7 +6873,7 @@ nsresult nsHttpChannel::BeginConnect() {
return NS_OK;
}
-nsresult nsHttpChannel::MaybeStartDNSPrefetch() {
+void nsHttpChannel::MaybeStartDNSPrefetch() {
// Start a DNS lookup very early in case the real open is queued the DNS can
// happen in parallel. Do not do so in the presence of an HTTP proxy as
// all lookups other than for the proxy itself are done by the proxy.
@@ -6903,7 +6889,7 @@ nsresult nsHttpChannel::MaybeStartDNSPrefetch() {
// timing we used.
if ((mLoadFlags & (LOAD_NO_NETWORK_IO | LOAD_ONLY_FROM_CACHE)) ||
LoadAuthRedirectedChannel()) {
- return NS_OK;
+ return;
}
auto dnsStrategy = GetProxyDNSStrategy();
@@ -6911,10 +6897,10 @@ nsresult nsHttpChannel::MaybeStartDNSPrefetch() {
LOG(
("nsHttpChannel::MaybeStartDNSPrefetch [this=%p, strategy=%u] "
"prefetching%s\n",
- this, dnsStrategy,
+ this, static_cast<uint32_t>(dnsStrategy),
mCaps & NS_HTTP_REFRESH_DNS ? ", refresh requested" : ""));
- if (dnsStrategy & DNS_PREFETCH_ORIGIN) {
+ if (dnsStrategy == ProxyDNSStrategy::ORIGIN) {
OriginAttributes originAttributes;
StoragePrincipalHelper::GetOriginAttributesForNetworkState(
this, originAttributes);
@@ -6926,20 +6912,8 @@ nsresult nsHttpChannel::MaybeStartDNSPrefetch() {
if (mCaps & NS_HTTP_REFRESH_DNS) {
dnsFlags |= nsIDNSService::RESOLVE_BYPASS_CACHE;
}
- nsresult rv = mDNSPrefetch->PrefetchHigh(dnsFlags);
- if (dnsStrategy & DNS_BLOCK_ON_ORIGIN_RESOLVE) {
- LOG((" blocking on prefetching origin"));
-
- if (NS_WARN_IF(NS_FAILED(rv))) {
- LOG((" lookup failed with 0x%08" PRIx32 ", aborting request",
- static_cast<uint32_t>(rv)));
- return rv;
- }
-
- // Resolved in OnLookupComplete.
- mDNSBlockingThenable = mDNSBlockingPromise.Ensure(__func__);
- }
+ Unused << mDNSPrefetch->PrefetchHigh(dnsFlags);
bool unused;
if (StaticPrefs::network_dns_use_https_rr_as_altsvc() && !mHTTPSSVCRecord &&
@@ -6959,8 +6933,6 @@ nsresult nsHttpChannel::MaybeStartDNSPrefetch() {
});
}
}
-
- return NS_OK;
}
NS_IMETHODIMP
=====================================
netwerk/protocol/http/nsHttpChannel.h
=====================================
@@ -303,23 +303,11 @@ class nsHttpChannel final : public HttpBaseChannel,
// Connections will only be established in this function.
// (including DNS prefetch and speculative connection.)
void MaybeResolveProxyAndBeginConnect();
- nsresult MaybeStartDNSPrefetch();
-
- // Tells the channel to resolve the origin of the end server we are connecting
- // to.
- static uint16_t const DNS_PREFETCH_ORIGIN = 1 << 0;
- // Tells the channel to resolve the host name of the proxy.
- static uint16_t const DNS_PREFETCH_PROXY = 1 << 1;
- // Will be set if the current channel uses an HTTP/HTTPS proxy.
- static uint16_t const DNS_PROXY_IS_HTTP = 1 << 2;
- // Tells the channel to wait for the result of the origin server resolution
- // before any connection attempts are made.
- static uint16_t const DNS_BLOCK_ON_ORIGIN_RESOLVE = 1 << 3;
+ void MaybeStartDNSPrefetch();
// Based on the proxy configuration determine the strategy for resolving the
// end server host name.
- // Returns a combination of the above flags.
- uint16_t GetProxyDNSStrategy();
+ ProxyDNSStrategy GetProxyDNSStrategy();
// We might synchronously or asynchronously call BeginConnect,
// which includes DNS prefetch and speculative connection, according to
=====================================
netwerk/protocol/http/nsHttpConnectionInfo.h
=====================================
@@ -127,6 +127,13 @@ class nsHttpConnectionInfo final : public ARefBase {
const char* ProxyPassword() const {
return mProxyInfo ? mProxyInfo->Password().get() : nullptr;
}
+ uint32_t ProxyFlag() const {
+ uint32_t flags = 0;
+ if (mProxyInfo) {
+ mProxyInfo->GetFlags(&flags);
+ }
+ return flags;
+ }
const nsCString& ProxyAuthorizationHeader() const {
return mProxyInfo ? mProxyInfo->ProxyAuthorizationHeader() : EmptyCString();
=====================================
netwerk/protocol/http/nsHttpConnectionMgr.cpp
=====================================
@@ -3573,9 +3573,15 @@ void nsHttpConnectionMgr::DoSpeculativeConnectionInternal(
return;
}
- if (aFetchHTTPSRR && NS_SUCCEEDED(aTrans->FetchHTTPSRR())) {
- // nsHttpConnectionMgr::DoSpeculativeConnection will be called again when
- // HTTPS RR is available.
+ ProxyDNSStrategy strategy = GetProxyDNSStrategyHelper(
+ aEnt->mConnInfo->ProxyType(), aEnt->mConnInfo->ProxyFlag());
+ // Speculative connections can be triggered by non-Necko consumers,
+ // so add an extra check to ensure HTTPS RR isn't fetched when a proxy is
+ // used.
+ if (aFetchHTTPSRR && strategy == ProxyDNSStrategy::ORIGIN &&
+ NS_SUCCEEDED(aTrans->FetchHTTPSRR())) {
+ // nsHttpConnectionMgr::DoSpeculativeConnection will be called again
+ // when HTTPS RR is available.
return;
}
=====================================
netwerk/protocol/http/nsHttpHandler.cpp
=====================================
@@ -2392,7 +2392,9 @@ nsresult nsHttpHandler::SpeculativeConnectInternal(
}
}
- return SpeculativeConnect(ci, aCallbacks);
+ // When ech is enabled, always do speculative connect with HTTPS RR.
+ return MaybeSpeculativeConnectWithHTTPSRR(ci, aCallbacks, 0,
+ EchConfigEnabled());
}
NS_IMETHODIMP
=====================================
netwerk/protocol/http/nsHttpHandler.h
=====================================
@@ -296,14 +296,13 @@ class nsHttpHandler final : public nsIHttpProtocolHandler,
return mConnMgr->GetSocketThreadTarget(target);
}
- [[nodiscard]] nsresult SpeculativeConnect(nsHttpConnectionInfo* ci,
- nsIInterfaceRequestor* callbacks,
- uint32_t caps = 0,
- bool aFetchHTTPSRR = false) {
+ [[nodiscard]] nsresult MaybeSpeculativeConnectWithHTTPSRR(
+ nsHttpConnectionInfo* ci, nsIInterfaceRequestor* callbacks, uint32_t caps,
+ bool aFetchHTTPSRR) {
TickleWifi(callbacks);
RefPtr<nsHttpConnectionInfo> clone = ci->Clone();
return mConnMgr->SpeculativeConnect(clone, callbacks, caps, nullptr,
- aFetchHTTPSRR | EchConfigEnabled());
+ aFetchHTTPSRR);
}
[[nodiscard]] nsresult SpeculativeConnect(nsHttpConnectionInfo* ci,
=====================================
netwerk/test/unit/test_proxyDNS_leak.js
=====================================
@@ -0,0 +1,111 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+// Test when socks proxy is registered, we don't try to resolve HTTPS record.
+// Steps:
+// 1. Use addHTTPSRecordOverride to add an override for service.com.
+// 2. Add a proxy filter to use socks proxy.
+// 3. Create a request to load service.com.
+// 4. See if the HTTPS record is in DNS cache entries.
+
+"use strict";
+
+const gDashboard = Cc["@mozilla.org/network/dashboard;1"].getService(
+ Ci.nsIDashboard
+);
+const pps = Cc["@mozilla.org/network/protocol-proxy-service;1"].getService();
+
+add_task(async function setup() {
+ Services.prefs.setBoolPref("network.dns.native_https_query", true);
+ Services.prefs.setBoolPref("network.dns.native_https_query_win10", true);
+ const override = Cc["@mozilla.org/network/native-dns-override;1"].getService(
+ Ci.nsINativeDNSResolverOverride
+ );
+
+ let rawBuffer = [
+ 0, 0, 128, 0, 0, 0, 0, 1, 0, 0, 0, 0, 7, 115, 101, 114, 118, 105, 99, 101,
+ 3, 99, 111, 109, 0, 0, 65, 0, 1, 0, 0, 0, 55, 0, 13, 0, 1, 0, 0, 1, 0, 6, 2,
+ 104, 50, 2, 104, 51,
+ ];
+ override.addHTTPSRecordOverride("service.com", rawBuffer, rawBuffer.length);
+ override.addIPOverride("service.com", "127.0.0.1");
+ registerCleanupFunction(() => {
+ Services.prefs.clearUserPref("network.dns.native_https_query");
+ Services.prefs.clearUserPref("network.dns.native_https_query_win10");
+ Services.prefs.clearUserPref("network.dns.localDomains");
+ override.clearOverrides();
+ });
+});
+
+function makeChan(uri) {
+ let chan = NetUtil.newChannel({
+ uri,
+ loadUsingSystemPrincipal: true,
+ contentPolicyType: Ci.nsIContentPolicy.TYPE_DOCUMENT,
+ }).QueryInterface(Ci.nsIHttpChannel);
+ chan.loadFlags = Ci.nsIChannel.LOAD_INITIAL_DOCUMENT_URI;
+ return chan;
+}
+
+function channelOpenPromise(chan, flags) {
+ return new Promise(resolve => {
+ function finish(req, buffer) {
+ resolve([req, buffer]);
+ }
+ chan.asyncOpen(new ChannelListener(finish, null, flags));
+ });
+}
+
+async function isRecordFound(hostname) {
+ return new Promise(resolve => {
+ gDashboard.requestDNSInfo(function (data) {
+ let found = false;
+ for (let i = 0; i < data.entries.length; i++) {
+ if (
+ data.entries[i].hostname == hostname &&
+ data.entries[i].type == Ci.nsIDNSService.RESOLVE_TYPE_HTTPSSVC
+ ) {
+ found = true;
+ break;
+ }
+ }
+ resolve(found);
+ });
+ });
+}
+
+async function do_test_with_proxy_filter(filter) {
+ pps.registerFilter(filter, 10);
+
+ let chan = makeChan(`https://service.com/`);
+ await channelOpenPromise(chan, CL_EXPECT_LATE_FAILURE | CL_ALLOW_UNKNOWN_CL);
+
+ let found = await isRecordFound("service.com");
+ pps.unregisterFilter(filter);
+
+ return found;
+}
+
+add_task(async function test_proxyDNS_do_leak() {
+ let filter = new NodeProxyFilter("socks", "localhost", 443, 0);
+
+ let res = await do_test_with_proxy_filter(filter);
+
+ Assert.ok(res, "Should find a DNS entry");
+});
+
+add_task(async function test_proxyDNS_dont_leak() {
+ Services.dns.clearCache(false);
+
+ let filter = new NodeProxyFilter(
+ "socks",
+ "localhost",
+ 443,
+ Ci.nsIProxyInfo.TRANSPARENT_PROXY_RESOLVES_HOST
+ );
+
+ let res = await do_test_with_proxy_filter(filter);
+
+ Assert.ok(!res, "Should not find a DNS entry");
+});
=====================================
netwerk/test/unit/xpcshell.toml
=====================================
@@ -983,6 +983,12 @@ run-sequentially = "node server exceptions dont replay well"
["test_proxy_pac.js"]
+["test_proxyDNS_leak.js"]
+skip-if = [
+ "os == 'android'",
+ "socketprocess_networking",
+]
+
["test_proxyconnect.js"]
skip-if = [
"tsan",
=====================================
toolkit/content/aboutNetworking.js
=====================================
@@ -116,6 +116,11 @@ function displayDns(data) {
new_cont.setAttribute("id", "dns_content");
for (let i = 0; i < data.entries.length; i++) {
+ // TODO: Will be supported in bug 1889387.
+ if (data.entries[i].type != Ci.nsIDNSService.RESOLVE_TYPE_DEFAULT) {
+ continue;
+ }
+
let row = document.createElement("tr");
row.appendChild(col(data.entries[i].hostname));
row.appendChild(col(data.entries[i].family));
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/cd9…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/cd9…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/rbm][main] Bug 40082: Fix `fetch: if_needed` to avoid fetching when using a fixed commit
by morgan (@morgan) 27 Feb '25
by morgan (@morgan) 27 Feb '25
27 Feb '25
morgan pushed to branch main at The Tor Project / Applications / RBM
Commits:
9dedbe52 by Nicolas Vigier at 2025-02-26T13:43:01+01:00
Bug 40082: Fix `fetch: if_needed` to avoid fetching when using a fixed commit
Remove trailing newline from output of `git rev-parse` when comparing
it with `git_hash`.
- - - - -
1 changed file:
- lib/RBM.pm
Changes:
=====================================
lib/RBM.pm
=====================================
@@ -427,6 +427,7 @@ sub git_need_fetch {
my ($stdout, undef, $success) = capture_exec('git', 'rev-parse',
'--verify', "$git_hash^{commit}");
return 1 unless $success;
+ chomp $stdout;
# If rev-parse returns the same as git_hash, then git_hash is
# a hash and there is no need to fetch
return 0 if $stdout eq $git_hash;
View it on GitLab: https://gitlab.torproject.org/tpo/applications/rbm/-/commit/9dedbe520adc16f…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/rbm/-/commit/9dedbe520adc16f…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.7.0esr-14.5-1] 2 commits: fixup! TB 40597: Implement TorSettings module
by morgan (@morgan) 27 Feb '25
by morgan (@morgan) 27 Feb '25
27 Feb '25
morgan pushed to branch tor-browser-128.7.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
d8e17646 by Henry Wilkes at 2025-02-27T12:38:32+00:00
fixup! TB 40597: Implement TorSettings module
TB 43465: Replace TorConnect.canBeginBootstrap with
TorConnect.canBeginNormalBootstrap to distinguish it from
TorConnect.canBeginAutoBootstrap.
- - - - -
481be29c by Henry Wilkes at 2025-02-27T12:38:32+00:00
fixup! TB 27476: Implement about:torconnect captive portal within Tor Browser
TB 43465: Show the urlbar Connect button when the user might want to
return to about:torconnect.
Instead of hiding the button when canBeginNormalBootstrap is false we
show it as a plain button. Instead we hide it only when we are already
bootstrapped.
We also avoid initialising the button when TorConnect is not enabled.
We also update TorConnect.open:
1. Do not re-open about:torconnect if we are already connected. E.g.
when the user selects "Connect" in a bridge dialog but we are
already connected by the time the settings are applied.
2. Do not call TorConnect.startAgain when receiving a "hard" request.
Only the bridge dialogs make this request, and they would have
already triggered startAgain by changing the bridge settings.
- - - - -
3 changed files:
- toolkit/components/torconnect/TorConnectParent.sys.mjs
- toolkit/components/torconnect/content/torConnectUrlbarButton.js
- toolkit/modules/TorConnect.sys.mjs
Changes:
=====================================
toolkit/components/torconnect/TorConnectParent.sys.mjs
=====================================
@@ -152,23 +152,23 @@ export class TorConnectParent extends JSWindowActorParent {
* auto-bootstrapping.
*/
static open(options) {
+ if (!TorConnect.shouldShowTorConnect) {
+ // Already bootstrapped, so don't reopen about:torconnect.
+ return;
+ }
+
const win = lazy.BrowserWindowTracker.getTopWindow();
win.switchToTabHavingURI("about:torconnect", true, {
ignoreQueryString: true,
});
- if (!options?.beginBootstrapping || !TorConnect.canBeginBootstrap) {
- return;
- }
-
- if (options.beginBootstrapping === "hard") {
- if (TorConnect.canBeginAutoBootstrap && !options.regionCode) {
- // Treat as an addition startAgain request to first move back to the
- // "Start" stage before bootstrapping.
- TorConnect.startAgain();
- }
- } else if (TorConnect.potentiallyBlocked) {
- // Do not trigger the bootstrap if we have ever had an error.
+ if (
+ !options?.beginBootstrapping ||
+ (options.beginBootstrapping !== "hard" &&
+ TorConnect.potentiallyBlocked) ||
+ (options.regionCode && !TorConnect.canBeginAutoBootstrap) ||
+ (!options.regionCode && !TorConnect.canBeginNormalBootstrap)
+ ) {
return;
}
=====================================
toolkit/components/torconnect/content/torConnectUrlbarButton.js
=====================================
@@ -33,13 +33,21 @@ var gTorConnectUrlbarButton = {
if (this._isActive) {
return;
}
+
+ this.button = document.getElementById("tor-connect-urlbar-button");
+
+ if (!TorConnect.enabled) {
+ // Don't initialise, just hide.
+ this._updateButtonVisibility();
+ return;
+ }
+
this._isActive = true;
const { TorStrings } = ChromeUtils.importESModule(
"resource://gre/modules/TorStrings.sys.mjs"
);
- this.button = document.getElementById("tor-connect-urlbar-button");
document.getElementById("tor-connect-urlbar-button-label").value =
TorStrings.torConnect.torConnectButton;
this.button.addEventListener("click", event => {
@@ -61,7 +69,7 @@ var gTorConnectUrlbarButton = {
if (topic !== this._observeTopic) {
return;
}
- this._torConnectStageChanged();
+ this._updateButtonVisibility();
},
};
Services.obs.addObserver(this._stateListener, this._observeTopic);
@@ -84,7 +92,7 @@ var gTorConnectUrlbarButton = {
// switching selected browser.
gBrowser.addProgressListener(this._locationListener);
- this._torConnectStageChanged();
+ this._updateButtonVisibility();
},
/**
@@ -108,20 +116,6 @@ var gTorConnectUrlbarButton = {
TorConnectParent.open({ beginBootstrapping: "soft" });
},
- /**
- * Callback for when the TorConnect stage changes.
- */
- _torConnectStageChanged() {
- if (TorConnect.stageName === TorConnectStage.Disabled) {
- // NOTE: We do not uninit early when we reach the
- // TorConnectStage.Bootstrapped stage because we can still leave the
- // Bootstrapped stage if the tor process exists early and needs a restart.
- this.uninit();
- return;
- }
- this._updateButtonVisibility();
- },
-
/**
* Callback when the TorConnect state, current browser location, or activation
* state changes.
@@ -130,25 +124,25 @@ var gTorConnectUrlbarButton = {
if (!this.button) {
return;
}
- // NOTE: We do not manage focus when hiding the button. We only expect to
- // move from "not hidden" to "hidden" when:
- // + switching tabs to "about:torconnect", or
- // + starting bootstrapping.
- //
- // When switching tabs, the normal tab switching logic will eventually move
- // focus to the new tab or url bar, so whilst the focus may be lost
- // temporarily when we hide the button, it will be re-established quickly on
- // tab switch.
- //
- // And we don't expect bootstrapping to start whilst outside of the
- // "about:torconnect", and the automatic bootstrapping should only trigger
- // at the initial start.
- this.button.hidden =
+ const hadFocus = this.button.contains(document.activeElement);
+ const hide =
!this._isActive ||
this._inAboutTorConnectTab ||
- !TorConnect.enabled ||
- !TorConnect.canBeginBootstrap;
- const plainButton = TorConnect.potentiallyBlocked;
+ TorConnect.stageName === TorConnectStage.Bootstrapped;
+ this.button.hidden = hide;
+ if (hide && hadFocus) {
+ // Lost focus. E.g. if the "Connect" button is focused in another window
+ // or tab outside of about:torconnect.
+ // Move focus back to the URL bar.
+ gURLBar.focus();
+ }
+ // We style the button as a tor purple button if clicking the button will
+ // also start a bootstrap. I.e. whether we meet the conditions in
+ // TorConnectParent.open.
+ const plainButton =
+ !this._isActive ||
+ !TorConnect.canBeginNormalBootstrap ||
+ TorConnect.potentiallyBlocked;
this.button.classList.toggle("tor-urlbar-button-plain", plainButton);
this.button.classList.toggle("tor-button", !plainButton);
},
=====================================
toolkit/modules/TorConnect.sys.mjs
=====================================
@@ -1048,20 +1048,17 @@ export const TorConnect = {
},
/**
- * Whether we are in a stage that can lead into the Bootstrapping stage. I.e.
- * whether we can make a "normal" or "auto" bootstrapping request.
+ * Whether we are in a stage that can lead into a "normal" bootstrapping
+ * request.
*
* The value may change with TorConnectTopics.StageChanged.
*
* @param {boolean}
*/
- get canBeginBootstrap() {
+ get canBeginNormalBootstrap() {
return (
this._stageName === TorConnectStage.Start ||
- this._stageName === TorConnectStage.Offline ||
- this._stageName === TorConnectStage.ChooseRegion ||
- this._stageName === TorConnectStage.RegionNotFound ||
- this._stageName === TorConnectStage.ConfirmRegion
+ this._stageName === TorConnectStage.Offline
);
},
@@ -1267,14 +1264,9 @@ export const TorConnect = {
return true;
}
- if (!this.canBeginBootstrap) {
- lazy.logger.warn(`Cannot begin bootstrap in stage ${currentStage}`);
- return false;
- }
- if (this.canBeginAutoBootstrap) {
- // Only expect "auto" bootstraps to be triggered when in an error stage.
+ if (!this.canBeginNormalBootstrap) {
lazy.logger.warn(
- `Expected a regionCode to bootstrap in stage ${currentStage}`
+ `Cannot begin normal bootstrap in stage ${currentStage}`
);
return false;
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/10c931…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/10c931…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][tor-browser-128.7.0esr-14.5-1] 2 commits: fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in...
by morgan (@morgan) 27 Feb '25
by morgan (@morgan) 27 Feb '25
27 Feb '25
morgan pushed to branch tor-browser-128.7.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
e21ae62e by Henry Wilkes at 2025-02-27T12:24:45+00:00
fixup! TB 31286: Implementation of bridge, proxy, and firewall settings in about:preferences#connection
TB 43469: Change the quickstart checkbox to a toggle.
We also update the description text to use "connect automatically"
rather than "Quickstart".
- - - - -
10c9315c by Henry Wilkes at 2025-02-27T12:24:45+00:00
fixup! Tor Browser strings
TB 43469: Use "Connect automatically" instead of "Quickstart" in the UI.
- - - - -
4 changed files:
- browser/components/torpreferences/content/connectionPane.js
- browser/components/torpreferences/content/connectionPane.xhtml
- browser/components/torpreferences/content/torPreferences.css
- toolkit/locales/en-US/toolkit/global/tor-browser.ftl
Changes:
=====================================
browser/components/torpreferences/content/connectionPane.js
=====================================
@@ -2486,18 +2486,18 @@ const gConnectionPane = (function () {
const retval = {
// cached frequently accessed DOM elements
- _enableQuickstartCheckbox: null,
+ _enableQuickstartToggle: null,
// populate xul with strings and cache the relevant elements
_populateXUL() {
// Quickstart
- this._enableQuickstartCheckbox = document.getElementById(
- "torPreferences-quickstart-toggle"
+ this._enableQuickstartToggle = document.getElementById(
+ "tor-connection-quickstart-toggle"
);
- this._enableQuickstartCheckbox.addEventListener("command", () => {
- TorConnect.quickstart = this._enableQuickstartCheckbox.checked;
+ this._enableQuickstartToggle.addEventListener("toggle", () => {
+ TorConnect.quickstart = this._enableQuickstartToggle.pressed;
});
- this._enableQuickstartCheckbox.checked = TorConnect.quickstart;
+ this._enableQuickstartToggle.pressed = TorConnect.quickstart;
Services.obs.addObserver(this, TorConnectTopics.QuickstartChange);
// Location
@@ -2643,7 +2643,7 @@ const gConnectionPane = (function () {
observe(subject, topic) {
switch (topic) {
case TorConnectTopics.QuickstartChange: {
- this._enableQuickstartCheckbox.checked = TorConnect.quickstart;
+ this._enableQuickstartToggle.pressed = TorConnect.quickstart;
break;
}
// triggered when tor connect state changes and we may
=====================================
browser/components/torpreferences/content/connectionPane.xhtml
=====================================
@@ -69,16 +69,19 @@
<!-- Quickstart -->
<groupbox data-category="paneConnection" hidden="true">
<label>
- <html:h2 data-l10n-id="tor-connection-quickstart-heading"></html:h2>
+ <html:h2 data-l10n-id="tor-connection-automatic-heading"></html:h2>
</label>
<description
class="description-deemphasized"
flex="1"
- data-l10n-id="tor-connection-quickstart-description"
+ data-l10n-id="tor-connection-automatic-description"
/>
- <checkbox
- id="torPreferences-quickstart-toggle"
+ <html:moz-toggle
+ id="tor-connection-quickstart-toggle"
+ class="tor-toggle"
+ label-align-after=""
data-l10n-id="tor-connection-quickstart-checkbox"
+ data-l10n-attrs="label"
/>
</groupbox>
@@ -141,6 +144,7 @@
</hbox>
<html:moz-toggle
id="tor-bridges-enabled-toggle"
+ class="tor-toggle"
label-align-after=""
data-l10n-id="tor-bridges-use-bridges"
data-l10n-attrs="label"
=====================================
browser/components/torpreferences/content/torPreferences.css
=====================================
@@ -34,6 +34,11 @@ button.spoof-button-disabled {
}
}
+.tor-toggle {
+ margin-block: 16px;
+ width: max-content;
+}
+
/* Status */
#network-status-internet-area {
@@ -201,11 +206,6 @@ button.spoof-button-disabled {
display: none;
}
-#tor-bridges-enabled-toggle {
- margin-block: 16px;
- width: max-content;
-}
-
#tor-bridges-update-area {
/* Still accessible to screen reader, but not visual. */
position: absolute;
=====================================
toolkit/locales/en-US/toolkit/global/tor-browser.ftl
=====================================
@@ -56,9 +56,8 @@ tor-connection-settings-category =
# -brand-short-name refers to 'Tor Browser', localized.
tor-connection-overview = { -brand-short-name } routes your traffic over the Tor Network, run by thousands of volunteers around the world.
tor-connection-browser-learn-more-link = Learn more
-tor-connection-quickstart-heading = Quickstart
-# -brand-short-name refers to 'Tor Browser', localized.
-tor-connection-quickstart-description = Quickstart connects { -brand-short-name } to the Tor Network automatically when launched, based on your last used connection settings.
+tor-connection-automatic-heading = Connect automatically
+tor-connection-automatic-description = Automatically connect to the Tor network at launch using your current connection settings.
tor-connection-quickstart-checkbox =
.label = Always connect automatically
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/85e00b…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/85e00b…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/tor-browser][base-browser-128.7.0esr-14.5-1] 3 commits: fixup! BB 32308: Use direct browser sizing for letterboxing.
by Pier Angelo Vendrame (@pierov) 27 Feb '25
by Pier Angelo Vendrame (@pierov) 27 Feb '25
27 Feb '25
Pier Angelo Vendrame pushed to branch base-browser-128.7.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
c7cc05f5 by Pier Angelo Vendrame at 2025-02-27T10:35:32+01:00
fixup! BB 32308: Use direct browser sizing for letterboxing.
When the dimension is less than 50px, we need to return dimension
itself, rather than a 0px margin.
- - - - -
7a9352a7 by Pier Angelo Vendrame at 2025-02-27T10:35:35+01:00
fixup! BB 41631: Prevent weird initial window dimensions caused by subpixel computations
BB 43205: Fix newwin rounding.
RFP might produce bad rounding because of platform-specific bugs.
Solving them might involve a refactor that is out of our capacity,
therefore we add a JS patch to fix wrong sizes.
- - - - -
c2980c01 by Pier Angelo Vendrame at 2025-02-27T10:35:35+01:00
fixup! BB 41918: Option to reuse last window size when letterboxing is enabled.
BB 43205: Fix newwin rounding.
Do not fix sizes when remember last size is enabled.
- - - - -
1 changed file:
- toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
Changes:
=====================================
toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
=====================================
@@ -4,6 +4,7 @@
* You can obtain one at https://mozilla.org/MPL/2.0/. */
import { XPCOMUtils } from "resource://gre/modules/XPCOMUtils.sys.mjs";
+import { AppConstants } from "resource://gre/modules/AppConstants.sys.mjs";
import * as constants from "resource://gre/modules/RFPTargetConstants.sys.mjs";
const kPrefResistFingerprinting = "privacy.resistFingerprinting";
@@ -21,6 +22,8 @@ const kPrefLetterboxingGradient =
"privacy.resistFingerprinting.letterboxing.gradient";
const kPrefLetterboxingDidForceSize =
"privacy.resistFingerprinting.letterboxing.didForceSize";
+const kPrefLetterboxingRememberSize =
+ "privacy.resistFingerprinting.letterboxing.rememberSize";
const kTopicDOMWindowOpened = "domwindowopened";
@@ -519,22 +522,23 @@ class _RFPHelper {
}
}
+ stepping(aDimension, aIsWidth) {
+ if (aDimension <= 500) {
+ return 50;
+ } else if (aDimension <= 1600) {
+ return aIsWidth ? 200 : 100;
+ }
+ return 200;
+ }
+
/**
* Given a width or height, rounds it with the proper stepping.
*/
steppedSize(aDimension, aIsWidth = false) {
- let stepping;
if (aDimension <= 50) {
- return 0;
- } else if (aDimension <= 500) {
- stepping = 50;
- } else if (aDimension <= 1600) {
- stepping = aIsWidth ? 200 : 100;
- } else {
- stepping = 200;
+ return aDimension;
}
-
- return aDimension - (aDimension % stepping);
+ return aDimension - (aDimension % this.stepping(aDimension, aIsWidth));
}
/**
@@ -806,6 +810,7 @@ class _RFPHelper {
}
_attachWindow(aWindow) {
+ this._fixRounding(aWindow);
aWindow.addEventListener("sizemodechange", windowResizeHandler);
aWindow.shrinkToLetterbox = this.shrinkToLetterbox;
aWindow.addEventListener("dblclick", this._onWindowDoubleClick);
@@ -865,6 +870,52 @@ class _RFPHelper {
);
}
+ _fixRounding(aWindow) {
+ if (
+ !this.rfpEnabled ||
+ Services.prefs.getBoolPref(kPrefLetterboxingRememberSize, false)
+ ) {
+ return;
+ }
+
+ // tor-browser#43205: in case of subpixels, new windows might have a wrong
+ // size because of platform-specific bugs (e.g., Bug 1947439 on Windows).
+ const contentContainer = aWindow.document.getElementById("browser");
+ const rect = contentContainer.getBoundingClientRect();
+ const steppingWidth = this.stepping(rect.width, true);
+ const steppingHeight = this.stepping(rect.height, false);
+ const deltaWidth =
+ rect.width - steppingWidth * Math.round(rect.width / steppingWidth);
+ const deltaHeight =
+ rect.height - steppingHeight * Math.round(rect.height / steppingHeight);
+
+ // It seems that under X11, a window cannot have all the possible (integer)
+ // sizes (see the videos on tor-browser#43205 and Bug 1947439)...
+ // We observed this behavior with 1.25 scaling, but we could not find
+ // where it happens exactly, so this code might be wrong.
+ // On the same system, this problem does not happen with Wayland.
+ if (AppConstants.platform === "linux") {
+ let targetWidth = aWindow.outerWidth - deltaWidth;
+ let targetHeight = aWindow.outerHeight - deltaHeight;
+ const x11Size = s =>
+ Math.floor(
+ // This first rounding is done by Gecko, rather than X11.
+ Math.round(s * aWindow.devicePixelRatio) / aWindow.devicePixelRatio
+ );
+ const x11Width = x11Size(targetWidth);
+ const x11Height = x11Size(targetHeight);
+ if (x11Width < targetWidth) {
+ targetWidth = x11Width + 2;
+ }
+ if (x11Height < targetHeight) {
+ targetHeight = x11Height + 2;
+ }
+ aWindow.resizeTo(targetWidth, targetHeight);
+ } else {
+ aWindow.resizeBy(deltaWidth, deltaHeight);
+ }
+ }
+
getTargets() {
return constants.Targets;
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/20e649…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/compare/20e649…
You're receiving this email because of your account on gitlab.torproject.org.
1
0

[Git][tpo/applications/mullvad-browser][mullvad-browser-128.7.0esr-14.5-1] 3 commits: fixup! BB 32308: Use direct browser sizing for letterboxing.
by Pier Angelo Vendrame (@pierov) 27 Feb '25
by Pier Angelo Vendrame (@pierov) 27 Feb '25
27 Feb '25
Pier Angelo Vendrame pushed to branch mullvad-browser-128.7.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
Commits:
602d2c43 by Pier Angelo Vendrame at 2025-02-27T10:35:07+01:00
fixup! BB 32308: Use direct browser sizing for letterboxing.
When the dimension is less than 50px, we need to return dimension
itself, rather than a 0px margin.
- - - - -
535e2267 by Pier Angelo Vendrame at 2025-02-27T10:35:09+01:00
fixup! BB 41631: Prevent weird initial window dimensions caused by subpixel computations
BB 43205: Fix newwin rounding.
RFP might produce bad rounding because of platform-specific bugs.
Solving them might involve a refactor that is out of our capacity,
therefore we add a JS patch to fix wrong sizes.
- - - - -
46d99e57 by Pier Angelo Vendrame at 2025-02-27T10:35:09+01:00
fixup! BB 41918: Option to reuse last window size when letterboxing is enabled.
BB 43205: Fix newwin rounding.
Do not fix sizes when remember last size is enabled.
- - - - -
1 changed file:
- toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
Changes:
=====================================
toolkit/components/resistfingerprinting/RFPHelper.sys.mjs
=====================================
@@ -4,6 +4,7 @@
* You can obtain one at https://mozilla.org/MPL/2.0/. */
import { XPCOMUtils } from "resource://gre/modules/XPCOMUtils.sys.mjs";
+import { AppConstants } from "resource://gre/modules/AppConstants.sys.mjs";
import * as constants from "resource://gre/modules/RFPTargetConstants.sys.mjs";
const kPrefResistFingerprinting = "privacy.resistFingerprinting";
@@ -21,6 +22,8 @@ const kPrefLetterboxingGradient =
"privacy.resistFingerprinting.letterboxing.gradient";
const kPrefLetterboxingDidForceSize =
"privacy.resistFingerprinting.letterboxing.didForceSize";
+const kPrefLetterboxingRememberSize =
+ "privacy.resistFingerprinting.letterboxing.rememberSize";
const kTopicDOMWindowOpened = "domwindowopened";
@@ -519,22 +522,23 @@ class _RFPHelper {
}
}
+ stepping(aDimension, aIsWidth) {
+ if (aDimension <= 500) {
+ return 50;
+ } else if (aDimension <= 1600) {
+ return aIsWidth ? 200 : 100;
+ }
+ return 200;
+ }
+
/**
* Given a width or height, rounds it with the proper stepping.
*/
steppedSize(aDimension, aIsWidth = false) {
- let stepping;
if (aDimension <= 50) {
- return 0;
- } else if (aDimension <= 500) {
- stepping = 50;
- } else if (aDimension <= 1600) {
- stepping = aIsWidth ? 200 : 100;
- } else {
- stepping = 200;
+ return aDimension;
}
-
- return aDimension - (aDimension % stepping);
+ return aDimension - (aDimension % this.stepping(aDimension, aIsWidth));
}
/**
@@ -806,6 +810,7 @@ class _RFPHelper {
}
_attachWindow(aWindow) {
+ this._fixRounding(aWindow);
aWindow.addEventListener("sizemodechange", windowResizeHandler);
aWindow.shrinkToLetterbox = this.shrinkToLetterbox;
aWindow.addEventListener("dblclick", this._onWindowDoubleClick);
@@ -865,6 +870,52 @@ class _RFPHelper {
);
}
+ _fixRounding(aWindow) {
+ if (
+ !this.rfpEnabled ||
+ Services.prefs.getBoolPref(kPrefLetterboxingRememberSize, false)
+ ) {
+ return;
+ }
+
+ // tor-browser#43205: in case of subpixels, new windows might have a wrong
+ // size because of platform-specific bugs (e.g., Bug 1947439 on Windows).
+ const contentContainer = aWindow.document.getElementById("browser");
+ const rect = contentContainer.getBoundingClientRect();
+ const steppingWidth = this.stepping(rect.width, true);
+ const steppingHeight = this.stepping(rect.height, false);
+ const deltaWidth =
+ rect.width - steppingWidth * Math.round(rect.width / steppingWidth);
+ const deltaHeight =
+ rect.height - steppingHeight * Math.round(rect.height / steppingHeight);
+
+ // It seems that under X11, a window cannot have all the possible (integer)
+ // sizes (see the videos on tor-browser#43205 and Bug 1947439)...
+ // We observed this behavior with 1.25 scaling, but we could not find
+ // where it happens exactly, so this code might be wrong.
+ // On the same system, this problem does not happen with Wayland.
+ if (AppConstants.platform === "linux") {
+ let targetWidth = aWindow.outerWidth - deltaWidth;
+ let targetHeight = aWindow.outerHeight - deltaHeight;
+ const x11Size = s =>
+ Math.floor(
+ // This first rounding is done by Gecko, rather than X11.
+ Math.round(s * aWindow.devicePixelRatio) / aWindow.devicePixelRatio
+ );
+ const x11Width = x11Size(targetWidth);
+ const x11Height = x11Size(targetHeight);
+ if (x11Width < targetWidth) {
+ targetWidth = x11Width + 2;
+ }
+ if (x11Height < targetHeight) {
+ targetHeight = x11Height + 2;
+ }
+ aWindow.resizeTo(targetWidth, targetHeight);
+ } else {
+ aWindow.resizeBy(deltaWidth, deltaHeight);
+ }
+ }
+
getTargets() {
return constants.Targets;
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/21…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/21…
You're receiving this email because of your account on gitlab.torproject.org.
1
0