commit 19024aa4d11a7e0f8180802db35305ecfff94236
parent 4d59e8eef8866b70c52b78f91b6676fb9070ceaf
Author: clairehurst <clairehurst@torproject.org>
Date: Thu, 4 Dec 2025 17:00:13 -0700
fixup! [android] Modify add-on support
Diffstat:
1 file changed, 13 insertions(+), 0 deletions(-)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/TorBrowserFeatures.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/TorBrowserFeatures.kt
@@ -18,7 +18,9 @@ import mozilla.components.concept.engine.webextension.WebExtension
import mozilla.components.concept.engine.webextension.WebExtensionRuntime
import mozilla.components.support.webextensions.WebExtensionSupport
import mozilla.components.support.base.log.logger.Logger
+import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.settings
+import org.mozilla.fenix.tor.RunOnceBootstrapped
object TorBrowserFeatures {
private val logger = Logger("torbrowser-features")
@@ -134,6 +136,17 @@ object TorBrowserFeatures {
logger.error("Could not install NoScript extension", throwable)
}
)
+ // This covers the edge case of when noscript is installed but a newer version is available
+ // i.e. A user downloads tba, but doesn't run it or update it for a while but in that time
+ // a newer version of noscript is available. It also covers the test case of purposefully
+ // installing an older version to test the update feature.
+ context.components.torController.registerRunOnceBootstrapped(
+ object : RunOnceBootstrapped {
+ override fun onBootstrapped() {
+ context.components.addonUpdater.registerForFutureUpdates(NOSCRIPT_ID)
+ }
+ },
+ )
}
}
}