[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [Git][tpo/applications/tor-browser][tor-browser-152.0a1-16.0-2] 20 commits: fixup! TB 40933: Add tor-launcher functionality



Title: GitLab

Pier Angelo Vendrame pushed to branch tor-browser-152.0a1-16.0-2 at The Tor Project / Applications / Tor Browser

Commits:

  • e7b0489a
    by Pier Angelo Vendrame at 2026-06-01T18:06:43+02:00
    fixup! TB 40933: Add tor-launcher functionality
    
    TB 44991: Improve the no-authentication handling on the control port.
    
  • 7309a181
    by Dan Ballard at 2026-06-01T18:13:33+02:00
    fixup! [android] Disable features and functionality
    
    TB 44323: Audit prefs 128-140 in android
    
  • 14c9fd38
    by Dan Ballard at 2026-06-01T18:13:36+02:00
    fixup! TB 41972: [android] Disable Mozilla onboarding
    
    TB 44323: Audit prefs 128 to 140
    
  • 8a8b65ed
    by Dan Ballard at 2026-06-03T10:18:19+02:00
    fixup! TB 44027: [android] Update PBM lockscreen
    
    TB 44323: Audit prefs 2128 to 140
    
  • b3b67947
    by clairehurst at 2026-06-03T10:18:23+02:00
    fixup! [android] Implement Android-native Connection Assist UI
    
    Fix colors and bold text
    
  • 7f21c905
    by clairehurst at 2026-06-03T10:18:24+02:00
    fixup! TB 40026: [android] Implement Security Level settings on Android.
    
  • 5c3bfce1
    by Beatriz Rizental at 2026-06-03T10:18:29+02:00
    fixup! Add CI for Base Browser
    
    Bug 44990: Fix dubious ownership CI issue
    
  • 23d5b38e
    by Beatriz Rizental at 2026-06-03T10:18:29+02:00
    fixup! Add CI for Tor Browser
    
    Bug 44990: Fix permissions issues in container
    
  • 239f4b05
    by Beatriz Rizental at 2026-06-03T10:18:30+02:00
    fixup! Add CI for Base Browser
    
    No bug: Drop logic that fetches pipelines from forks. That is not
    supported anymore after https://gitlab.torproject.org/tpo/tpa/team/-/work_items/42594#note_3411352
    
  • dc70ecda
    by Beatriz Rizental at 2026-06-03T10:18:30+02:00
    fixup! Add CI for Tor Browser
    
    Update build-image container
    
  • d0e9391d
    by Beatriz Rizental at 2026-06-03T10:18:31+02:00
    fixup! Add CI for Base Browser
    
    This reverts commit 1d1ea9c7bfa8930b5bbc928a70054c4971562347.
    
  • 1f29f770
    by Beatriz Rizental at 2026-06-03T10:18:31+02:00
    fixup! [android] Override settings
    
    Bug 44917: Disable ads client for all channels
    
  • e7971e7d
    by Pier Angelo Vendrame at 2026-06-03T10:18:31+02:00
    fixup! TB 40562: Added Tor Browser preferences to 000-tor-browser.js
    
    TB 42436: Support multi-fronts for Moat.
    
  • 1f0e24f2
    by Pier Angelo Vendrame at 2026-06-03T10:18:32+02:00
    fixup! Lox integration
    
    TB 42436: Support multi-fronts for Moat.
    
  • 612d5910
    by Pier Angelo Vendrame at 2026-06-03T10:18:32+02:00
    fixup! TB 40597: Implement TorSettings module
    
    TB 42436: Support multi-fronts for Moat.
    
  • f3d3808f
    by Henry Wilkes at 2026-06-03T10:18:33+02:00
    fixup! TB 40701: Add security warning when downloading a file
    
    TB 45005: Rename arrowpanel CSS variable.
    
  • b3ce8889
    by Henry Wilkes at 2026-06-03T10:18:33+02:00
    fixup! TB 41600: Add a tor circuit display panel.
    
    TB 45005: Rename arrowpanel CSS variable.
    
  • c5061ebc
    by clairehurst at 2026-06-03T10:18:34+02:00
    fixup! [android] Disable features and functionality
    
    Bug 45031: Disable AI features for android
    
  • 07ea23e2
    by clairehurst at 2026-06-03T10:25:02+02:00
    fixup! [android] Rename as Tor Browser
    
    Bug 45031: Disable AI features on Android
    
  • fcc28e78
    by hackademix at 2026-06-03T10:50:46+02:00
    fixup! BB 41459: WebRTC fails to build under mingw (Part 5)
    
    Fix for 151 bustage from Bug 2023271
    

30 changed files:

Changes:

  • .gitlab/ci/containers/base/Containerfile
    ... ... @@ -22,18 +22,27 @@ RUN cd tor-browser && \
    22 22
         yes | MOZBUILD_STATE_PATH=/var/tmp/mozbuild ./mach bootstrap --application-choice "$APPLICATION_CHOICE" && \
    
    23 23
         cd ..
    
    24 24
     
    
    25
    -ENV PATH="/var/tmp/mozbuild/clang/bin:/root/.cargo/bin:$PATH"
    
    25
    +RUN rm -rf tor-browser && \
    
    26
    +    rm -rf /var/lib/apt/lists/* && \
    
    27
    +    apt-get clean && \
    
    28
    +    rm -rf /var/tmp/mozbuild/toolchains && \
    
    29
    +    rm -rf /var/tmp/mozbuild/indices && \
    
    30
    +    rm -rf /var/tmp/mozbuild/android-device &&  \
    
    31
    +    rm -rf /var/root/.cargo && \
    
    32
    +    rm -rf /var/root/.rustup
    
    33
    +
    
    34
    +RUN adduser --uid 1000 --disabled-password --gecos "" gitlab-runner && \
    
    35
    +    chown -R 1000:1000 /var/tmp/mozbuild/
    
    36
    +
    
    37
    +USER gitlab-runner
    
    38
    +WORKDIR /home/gitlab-runner
    
    26 39
     
    
    40
    +# Install Rust for the gitlab-runner user.
    
    41
    +RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
    
    42
    +ENV PATH="/var/tmp/mozbuild/clang/bin:/home/gitlab-runner/.cargo/bin:$PATH"
    
    27 43
     RUN echo "$APPLICATION_CHOICE" | grep -qi android && \
    
    28 44
         rustup target add armv7-linux-androideabi \
    
    29 45
             aarch64-linux-android \
    
    30 46
             i686-linux-android \
    
    31 47
             x86_64-linux-android \
    
    32 48
         || true
    33
    -
    
    34
    -RUN rm -rf tor-browser && \
    
    35
    -    apt-get clean && \
    
    36
    -    rm -rf /var/lib/apt/lists/* && \
    
    37
    -    rm -rf /var/tmp/mozbuild/toolchains && \
    
    38
    -    rm -rf /var/tmp/mozbuild/indices && \
    
    39
    -    rm -rf /var/tmp/mozbuild/android-device

  • .gitlab/ci/jobs/update-containers.yml
    1 1
     build-image:
    
    2 2
       stage: update-container-images
    
    3 3
       interruptible: true
    
    4
    -  image: containers.torproject.org/tpo/tpa/base-images/podman:bookworm
    
    4
    +  image: containers.torproject.org/tpo/tpa/base-images/podman:trixie
    
    5 5
       parallel:
    
    6 6
         matrix:
    
    7 7
           - PLATFORM: desktop
    

  • .gitlab/ci/mixins.yml
    ... ... @@ -2,7 +2,12 @@
    2 2
       variables:
    
    3 3
           GIT_STRATEGY: "none"
    
    4 4
           FETCH_TIMEOUT: 180 # 3 minutes
    
    5
    +
    
    6
    +      GIT_CONFIG_GLOBAL: "/tmp/gitconfig"
    
    5 7
       before_script:
    
    8
    +    - |
    
    9
    +      echo "[safe]" > "$GIT_CONFIG_GLOBAL"
    
    10
    +      echo "  directory = *" >> "$GIT_CONFIG_GLOBAL"
    
    6 11
         - git init
    
    7 12
         - git remote add local "$LOCAL_REPO_PATH"
    
    8 13
         - |
    

  • browser/app/profile/000-tor-browser.js
    ... ... @@ -126,8 +126,7 @@ pref("extensions.torlauncher.torrc_path", "");
    126 126
     pref("extensions.torlauncher.tordatadir_path", "");
    
    127 127
     
    
    128 128
     // BridgeDB-related preferences (used for Moat).
    
    129
    -pref("extensions.torlauncher.bridgedb_front", "vuejs.org");
    
    130
    -pref("extensions.torlauncher.bridgedb_reflector", "https://bespoke-strudel-c243cc.netlify.app");
    
    129
    +pref("extensions.torlauncher.bridgedb_targets", "https://1723079976.rsc.cdn77.org|cdn.zk.mk+www.cdn77.com");
    
    131 130
     pref("extensions.torlauncher.moat_service", "https://bridges.torproject.org/moat");
    
    132 131
     
    
    133 132
     // Log levels
    

  • browser/components/downloads/content/downloads.css
    ... ... @@ -96,7 +96,7 @@
    96 96
     }
    
    97 97
     
    
    98 98
     #downloadsPanelTorWarning {
    
    99
    -  margin-block-end: var(--arrowpanel-menuitem-padding-block);
    
    99
    +  margin-block-end: var(--panel-menuitem-padding-block);
    
    100 100
     }
    
    101 101
     
    
    102 102
     #downloadsPanelTorWarningWrapper {
    

  • browser/components/torcircuit/content/torCircuitPanel.css
    ... ... @@ -61,7 +61,7 @@
    61 61
     
    
    62 62
     #tor-circuit-alias:not([hidden]) {
    
    63 63
       /* Same as padding for .panel-header */
    
    64
    -  margin-block-start: var(--arrowpanel-menuitem-margin-inline);
    
    64
    +  margin-block-start: var(--panel-menuitem-margin-inline);
    
    65 65
       display: flex;
    
    66 66
       align-items: center;
    
    67 67
     }
    
    ... ... @@ -84,9 +84,9 @@
    84 84
       /* May grow larger than 480px if we have a long domain name or ip address. */
    
    85 85
       min-width: 480px;
    
    86 86
       /* Line up with the button at the bottom of the panel. */
    
    87
    -  margin: var(--arrowpanel-menuitem-margin);
    
    88
    -  padding: var(--arrowpanel-menuitem-padding);
    
    89
    -  gap: var(--arrowpanel-menuitem-padding-block);
    
    87
    +  margin: var(--panel-menuitem-margin);
    
    88
    +  padding: var(--panel-menuitem-padding);
    
    89
    +  gap: var(--panel-menuitem-padding-block);
    
    90 90
     }
    
    91 91
     
    
    92 92
     #tor-circuit-node-list-name,
    
    ... ... @@ -96,7 +96,7 @@
    96 96
     
    
    97 97
     #tor-circuit-node-list {
    
    98 98
       list-style: none;
    
    99
    -  padding-inline-start: var(--arrowpanel-menuitem-margin-inline);
    
    99
    +  padding-inline-start: var(--panel-menuitem-margin-inline);
    
    100 100
       /* Do not allow an item to wrap since this would break the circuit diagram. */
    
    101 101
       white-space: nowrap;
    
    102 102
     }
    

  • dom/media/webrtc/transport/nricestunaddr.cpp
    ... ... @@ -27,8 +27,8 @@ NrIceStunAddr::NrIceStunAddr(const nr_local_addr* addr)
    27 27
           fqdn_(addr->addr.fqdn),
    
    28 28
           is_proxied_(addr->addr.is_proxied),
    
    29 29
           tls_(addr->addr.tls),
    
    30
    -      interface_type_(static_cast<InterfaceType>(addr->interface.type)),
    
    31
    -      estimated_speed_(addr->interface.estimated_speed),
    
    30
    +      interface_type_(static_cast<InterfaceType>(addr->iface.type)),
    
    31
    +      estimated_speed_(addr->iface.estimated_speed),
    
    32 32
           temporary_((addr->flags & NR_ADDR_FLAG_TEMPORARY) != 0) {}
    
    33 33
     
    
    34 34
     NrIceStunAddr::Protocol NrIceStunAddr::protocolFromNrTransportAddr(
    
    ... ... @@ -101,8 +101,8 @@ void NrIceStunAddr::toNrLocalAddr(nr_local_addr& addr) const {
    101 101
       // generate as_string
    
    102 102
       nr_transport_addr_fmt_addr_string(&addr.addr);
    
    103 103
     
    
    104
    -  addr.interface.type = static_cast<int>(interface_type_);
    
    105
    -  addr.interface.estimated_speed = estimated_speed_;
    
    104
    +  addr.iface.type = static_cast<int>(interface_type_);
    
    105
    +  addr.iface.estimated_speed = estimated_speed_;
    
    106 106
     
    
    107 107
       if (temporary_) {
    
    108 108
         addr.flags |= NR_ADDR_FLAG_TEMPORARY;
    

  • mobile/android/android-components/components/browser/state/src/main/java/mozilla/components/browser/state/state/TranslationsBrowserState.kt
    ... ... @@ -25,7 +25,7 @@ import mozilla.components.concept.engine.translate.TranslationSupport
    25 25
      * See [TranslationsState.translationError] for session level errors.
    
    26 26
      */
    
    27 27
     data class TranslationsBrowserState(
    
    28
    -    val isTranslationsEnabled: Boolean = true,
    
    28
    +    val isTranslationsEnabled: Boolean = false,
    
    29 29
         val isEngineSupported: Boolean? = null,
    
    30 30
         val offerTranslation: Boolean? = null,
    
    31 31
         val supportedLanguages: TranslationSupport? = null,
    

  • mobile/android/android-components/components/concept/ai-controls/src/main/java/mozilla/components/concept/ai/controls/AIFeatureBlock.kt
    ... ... @@ -32,7 +32,7 @@ interface AIFeatureBlock {
    32 32
     }
    
    33 33
     
    
    34 34
     private class InMemoryAIFeatureBlock(initialBlocked: Boolean) : AIFeatureBlock {
    
    35
    -    private val _isBlocked = MutableStateFlow(initialBlocked)
    
    35
    +    private val _isBlocked = MutableStateFlow(true)
    
    36 36
         override val isBlocked: Flow<Boolean> = _isBlocked
    
    37 37
     
    
    38 38
         override suspend fun block() {
    
    ... ... @@ -40,6 +40,6 @@ private class InMemoryAIFeatureBlock(initialBlocked: Boolean) : AIFeatureBlock {
    40 40
         }
    
    41 41
     
    
    42 42
         override suspend fun unblock() {
    
    43
    -        _isBlocked.value = false
    
    43
    +        _isBlocked.value = true
    
    44 44
         }
    
    45 45
     }

  • mobile/android/android-components/components/lib/ai-controls/src/main/java/mozilla/components/lib/ai/controls/AIFeatureBlockStorage.kt
    ... ... @@ -28,11 +28,11 @@ internal interface AIFeatureBlockStorage {
    28 28
     }
    
    29 29
     
    
    30 30
     private class InMemoryAiFeatureBlockStorage(initialBlocked: Boolean) : AIFeatureBlockStorage {
    
    31
    -    private val _isBlocked = MutableStateFlow(initialBlocked)
    
    31
    +    private val _isBlocked = MutableStateFlow(true)
    
    32 32
         override val isBlocked: Flow<Boolean> = _isBlocked
    
    33 33
     
    
    34 34
         override suspend fun setBlocked(isBlocked: Boolean) {
    
    35
    -        _isBlocked.value = isBlocked
    
    35
    +        _isBlocked.value = true
    
    36 36
         }
    
    37 37
     }
    
    38 38
     
    
    ... ... @@ -46,13 +46,13 @@ internal class DataStoreBackedAIFeatureBlockStorage(
    46 46
     
    
    47 47
         override val isBlocked: Flow<Boolean>
    
    48 48
             get() = dataStore.data.map { preferences ->
    
    49
    -            preferences[isBlockedKey] ?: false
    
    49
    +            true
    
    50 50
             }
    
    51 51
     
    
    52 52
         override suspend fun setBlocked(isBlocked: Boolean) {
    
    53 53
             dataStore.updateData {
    
    54 54
                 it.toMutablePreferences().also { preferences ->
    
    55
    -                preferences[isBlockedKey] = isBlocked
    
    55
    +                preferences[isBlockedKey] = true
    
    56 56
                 }
    
    57 57
             }
    
    58 58
         }
    

  • mobile/android/fenix/app/nimbus.fml.yaml
    ... ... @@ -43,28 +43,28 @@ features:
    43 43
             type: Map<HomeScreenSection, Boolean>
    
    44 44
             default:
    
    45 45
               {
    
    46
    -            "top-sites": true,
    
    47
    -            "jump-back-in": true,
    
    46
    +            "top-sites": false,
    
    47
    +            "jump-back-in": false,
    
    48 48
                 "bookmarks": true,
    
    49
    -            "recent-explorations": true,
    
    50
    -            "pocket": true,
    
    51
    -            "pocket-sponsored-stories": true,
    
    52
    -            "synced-tabs": true,
    
    53
    -            "collections": true,
    
    54
    -            "privacy-report": true,
    
    49
    +            "recent-explorations": false,
    
    50
    +            "pocket": false,
    
    51
    +            "pocket-sponsored-stories": false,
    
    52
    +            "synced-tabs": false,
    
    53
    +            "collections": false,
    
    54
    +            "privacy-report": false,
    
    55 55
               }
    
    56 56
         defaults:
    
    57 57
           - channel: nightly
    
    58 58
             value: {
    
    59 59
               "sections-enabled": {
    
    60
    -            "top-sites": true,
    
    61
    -            "jump-back-in": true,
    
    60
    +            "top-sites": false,
    
    61
    +            "jump-back-in": false,
    
    62 62
                 "bookmarks": true,
    
    63
    -            "recent-explorations": true,
    
    64
    -            "pocket": true,
    
    65
    -            "synced-tabs": true,
    
    66
    -            "collections": true,
    
    67
    -            "privacy-report": true,
    
    63
    +            "recent-explorations": false,
    
    64
    +            "pocket": false,
    
    65
    +            "synced-tabs": false,
    
    66
    +            "collections": false,
    
    67
    +            "privacy-report": false,
    
    68 68
               }
    
    69 69
             }
    
    70 70
       nimbus-validation:
    
    ... ... @@ -221,7 +221,7 @@ features:
    221 221
     
    
    222 222
       glean:
    
    223 223
         description: "A feature that provides server-side configurations for Glean metrics (aka Server Knobs)."
    
    224
    -    allow-coenrollment: true
    
    224
    +    allow-coenrollment: false
    
    225 225
         variables:
    
    226 226
           gleanMetricConfiguration:
    
    227 227
             description: Configuration for Glean Server Knobs
    
    ... ... @@ -230,7 +230,7 @@ features:
    230 230
           enable-event-timestamps:
    
    231 231
             description: "Enables precise event timestamps for Glean events"
    
    232 232
             type: Boolean
    
    233
    -        default: true
    
    233
    +        default: false
    
    234 234
           delay-ping-lifetime-io:
    
    235 235
             description: "Glean will delay io for ping lifetime metrics"
    
    236 236
             type: Boolean
    
    ... ... @@ -308,7 +308,7 @@ features:
    308 308
         defaults:
    
    309 309
           - channel: developer
    
    310 310
             value:
    
    311
    -          enabled: true
    
    311
    +          enabled: false
    
    312 312
               template-message: sent_from_firefox_template
    
    313 313
               download-link: "[Download Link]"
    
    314 314
               show-snackbar: true
    
    ... ... @@ -323,13 +323,13 @@ features:
    323 323
         defaults:
    
    324 324
           - channel: developer
    
    325 325
             value:
    
    326
    -          enabled: true
    
    326
    +          enabled: false
    
    327 327
           - channel: nightly
    
    328 328
             value:
    
    329
    -          enabled: true
    
    329
    +          enabled: false
    
    330 330
           - channel: beta
    
    331 331
             value:
    
    332
    -          enabled: true
    
    332
    +          enabled: false
    
    333 333
     
    
    334 334
       setup-checklist:
    
    335 335
         description: A feature on the home page that allows the user to track onboarding setup progress.
    
    ... ... @@ -384,11 +384,11 @@ features:
    384 384
         defaults:
    
    385 385
           - channel: developer
    
    386 386
             value:
    
    387
    -          enabled: true
    
    388
    -          boost-amp-wiki: true
    
    387
    +          enabled: false
    
    388
    +          boost-amp-wiki: false
    
    389 389
           - channel: nightly
    
    390 390
             value:
    
    391
    -          enabled: true
    
    391
    +          enabled: false
    
    392 392
     
    
    393 393
       nimbus-is-ready:
    
    394 394
         description: >
    
    ... ... @@ -407,42 +407,42 @@ features:
    407 407
             description: >
    
    408 408
               Show the primary toolbar entry point into the translations feature. (Translations icon on URL toolbar.)
    
    409 409
             type: Boolean
    
    410
    -        default: true
    
    410
    +        default: false
    
    411 411
           main-flow-browser-menu-enabled:
    
    412 412
             description: >
    
    413 413
               Show the browser menu entry point into the translations feature. ('Translate Page' on browser menu.)
    
    414 414
             type: Boolean
    
    415
    -        default: true
    
    415
    +        default: false
    
    416 416
           page-settings-enabled:
    
    417 417
             description: >
    
    418 418
               Show the page settings entry point within the translations feature. (Gear icon on the translations main flow page.)
    
    419 419
               'main-flow-toolbar-enabled' or 'main-flow-browser-menu-enabled' must also be enabled for users to access this feature.
    
    420 420
             type: Boolean
    
    421
    -        default: true
    
    421
    +        default: false
    
    422 422
           global-settings-enabled:
    
    423 423
             description: >
    
    424 424
               Show the global settings entry point within the translations feature. ('Translation Settings' on the page settings view.)
    
    425 425
               'page-settings-enabled' must also be enabled for users to access this feature.
    
    426 426
             type: Boolean
    
    427
    -        default: true
    
    427
    +        default: false
    
    428 428
           global-lang-settings-enabled:
    
    429 429
             description: >
    
    430 430
               Show the global language options entry point for automatically translating. ('Automatic Translation' on the global settings view.)
    
    431 431
               'global-settings-enabled' must also be enabled for users to access this feature.
    
    432 432
             type: Boolean
    
    433
    -        default: true
    
    433
    +        default: false
    
    434 434
           global-site-settings-enabled:
    
    435 435
             description: >
    
    436 436
               Show the global never translate this site options entry point for site management. ('Never translate these sites' on the global settings view.)
    
    437 437
               'global-settings-enabled' must also be enabled for users to access this feature.
    
    438 438
             type: Boolean
    
    439
    -        default: true
    
    439
    +        default: false
    
    440 440
           downloads-enabled:
    
    441 441
             description: >
    
    442 442
               Show the global language model download options entry point for translations. ('Download languages' on the global settings view.)
    
    443 443
               'global-settings-enabled' must also be enabled for users to access this feature.
    
    444 444
             type: Boolean
    
    445
    -        default: true
    
    445
    +        default: false
    
    446 446
     
    
    447 447
       navigation-toolbar:
    
    448 448
         description: Feature for navigation toolbar.
    
    ... ... @@ -455,10 +455,10 @@ features:
    455 455
         defaults:
    
    456 456
           - channel: developer
    
    457 457
             value:
    
    458
    -          enabled: true
    
    458
    +          enabled: false
    
    459 459
           - channel: nightly
    
    460 460
             value:
    
    461
    -          enabled: true
    
    461
    +          enabled: false
    
    462 462
     
    
    463 463
       minimal-addressbar:
    
    464 464
         description: Show a smaller height bottom addressbar with just the URL.
    
    ... ... @@ -510,7 +510,7 @@ features:
    510 510
               show a "close" button for tabs that are currently open on other supported devices
    
    511 511
               in the synced tabs tray.
    
    512 512
             type: Boolean
    
    513
    -        default: true
    
    513
    +        default: false
    
    514 514
     
    
    515 515
       fission:
    
    516 516
         description: The feature that controls whether fission is enabled or not in Gecko.
    
    ... ... @@ -575,7 +575,7 @@ features:
    575 575
             description: >
    
    576 576
               Enables / disables fingerprinting protection in private browsing mode.
    
    577 577
             type: Boolean
    
    578
    -        default: true
    
    578
    +        default: false
    
    579 579
           overrides:
    
    580 580
             description: >
    
    581 581
               The protection overrides to add or remove fingerprinting protection
    
    ... ... @@ -629,7 +629,7 @@ features:
    629 629
             description: >
    
    630 630
               Enables / disables third-party cookie blocking in private browsing mode.
    
    631 631
             type: Boolean
    
    632
    -        default: true
    
    632
    +        default: false
    
    633 633
     
    
    634 634
       safe-browsing-v5:
    
    635 635
         description: Control Safe Browsing V5.
    
    ... ... @@ -903,7 +903,7 @@ features:
    903 903
             description: >
    
    904 904
               Uses search configuration from remote servers .
    
    905 905
             type: Boolean
    
    906
    -        default: true
    
    906
    +        default: false
    
    907 907
       same-document-navigation-overrides-load-type:
    
    908 908
         description: Control whether the same document navigation overrides the load type.
    
    909 909
         variables:
    
    ... ... @@ -924,7 +924,7 @@ features:
    924 924
             description: >
    
    925 925
               When `true`, include DoH settings in the settings UI.
    
    926 926
             type: Boolean
    
    927
    -        default: true
    
    927
    +        default: false
    
    928 928
           autoselect-enabled:
    
    929 929
             description: >
    
    930 930
               Controls the network.android_doh.autoselect_enabled pref and automatically chooses a DoH provider when Default Protection mode is selected.
    
    ... ... @@ -938,7 +938,7 @@ features:
    938 938
             description: >
    
    939 939
               Whether or not to enable private browsing mode lock.
    
    940 940
             type: Boolean
    
    941
    -        default: true
    
    941
    +        default: false
    
    942 942
     
    
    943 943
       app-links:
    
    944 944
         description: Control behavior of app links handling in the browser.
    
    ... ... @@ -1204,10 +1204,10 @@ features:
    1204 1204
         defaults:
    
    1205 1205
           - channel: developer
    
    1206 1206
             value:
    
    1207
    -          enabled: true
    
    1207
    +          enabled: false
    
    1208 1208
           - channel: nightly
    
    1209 1209
             value:
    
    1210
    -          enabled: true
    
    1210
    +          enabled: false
    
    1211 1211
     
    
    1212 1212
       private-mode-and-stories-entry-point:
    
    1213 1213
         description: Feature to enable the Private Mode and Stories Entry Point Experiment.
    
    ... ... @@ -1276,7 +1276,7 @@ features:
    1276 1276
         defaults:
    
    1277 1277
           - channel: developer
    
    1278 1278
             value:
    
    1279
    -          enabled: true
    
    1279
    +          enabled: false
    
    1280 1280
           - channel: nightly
    
    1281 1281
             value:
    
    1282 1282
               enabled: false
    

  • mobile/android/fenix/app/src/beta/res/drawable-hdpi/fenix_search_widget.png
    No preview for this file type
  • mobile/android/fenix/app/src/debug/res/drawable-hdpi/fenix_search_widget.png
    No preview for this file type
  • mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/menu/MenuDialogFragment.kt
    ... ... @@ -390,7 +390,7 @@ class MenuDialogFragment : BottomSheetDialogFragment() {
    390 390
                     }.collectAsState(initial = false)
    
    391 391
     
    
    392 392
                     val isTranslationsEnabled = TranslationsEnabledSettings.dataStore(requireContext())
    
    393
    -                    .isEnabled.collectAsState(true)
    
    393
    +                    .isEnabled.collectAsState(false)
    
    394 394
     
    
    395 395
                     MenuDialogBottomSheet(
    
    396 396
                         modifier = Modifier
    

  • mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorConnectionAssistFragment.kt
    ... ... @@ -6,6 +6,7 @@ package org.mozilla.fenix.tor
    6 6
     
    
    7 7
     import android.content.Intent
    
    8 8
     import android.graphics.Color
    
    9
    +import android.graphics.Typeface
    
    9 10
     import android.os.Build
    
    10 11
     import android.os.Bundle
    
    11 12
     import android.text.SpannableString
    
    ... ... @@ -82,6 +83,9 @@ class TorConnectionAssistFragment : Fragment(), UserInteractionHandler, SystemIn
    82 83
         override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
    
    83 84
             super.onViewCreated(view, savedInstanceState)
    
    84 85
     
    
    86
    +        binding.torBootstrapButton1.setTypeface(null, Typeface.BOLD)
    
    87
    +        binding.torBootstrapButton2.setTypeface(null, Typeface.BOLD)
    
    88
    +
    
    85 89
             viewLifecycleOwner.lifecycleScope.launch {
    
    86 90
                 repeatOnLifecycle(Lifecycle.State.STARTED) {
    
    87 91
                     torConnectionAssistViewModel.torConnectScreen.collect { screen ->
    

  • mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/TorSecurityLevelFragment.kt
    ... ... @@ -5,6 +5,7 @@
    5 5
     package org.mozilla.fenix.tor
    
    6 6
     
    
    7 7
     import android.content.Context
    
    8
    +import android.graphics.Typeface
    
    8 9
     import android.os.Bundle
    
    9 10
     import android.util.Log
    
    10 11
     import android.view.LayoutInflater
    
    ... ... @@ -44,6 +45,9 @@ class TorSecurityLevelFragment : Fragment(), SystemInsetsPaddedFragment {
    44 45
     
    
    45 46
             binding.description.text = getString(R.string.tor_security_level_warning, getString(R.string.app_name))
    
    46 47
     
    
    48
    +        binding.saveAndRestartButton.setTypeface(null, Typeface.BOLD)
    
    49
    +        binding.cancelButton.setTypeface(null, Typeface.BOLD)
    
    50
    +
    
    47 51
             updateSaveAndRestartButtonUI()
    
    48 52
     
    
    49 53
             val currentLevel: Int = requireContext().components.core.engine.settings.torSecurityLevel
    
    ... ... @@ -79,6 +83,11 @@ class TorSecurityLevelFragment : Fragment(), SystemInsetsPaddedFragment {
    79 83
                 updateSaveAndRestartButtonUI()
    
    80 84
             }
    
    81 85
     
    
    86
    +        binding.saveAndRestartButton.backgroundTintList = AppCompatResources.getColorStateList(
    
    87
    +            requireContext(),
    
    88
    +            R.color.disabled_connect_button_purple,
    
    89
    +        )
    
    90
    +
    
    82 91
             binding.saveAndRestartButton.setOnClickListener {
    
    83 92
     
    
    84 93
                 Toast.makeText(
    
    ... ... @@ -111,6 +120,10 @@ class TorSecurityLevelFragment : Fragment(), SystemInsetsPaddedFragment {
    111 120
                 (requireActivity() as HomeActivity).restartApplication()
    
    112 121
             }
    
    113 122
     
    
    123
    +        binding.cancelButton.backgroundTintList = AppCompatResources.getColorStateList(
    
    124
    +            requireContext(),
    
    125
    +            R.color.settings_button_white,
    
    126
    +        )
    
    114 127
             binding.cancelButton.setOnClickListener {
    
    115 128
                 @Suppress("DEPRECATION")
    
    116 129
                 requireActivity().onBackPressed()
    

  • mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsAIControllableFeature.kt
    ... ... @@ -22,8 +22,8 @@ class TranslationsAIControllableFeature(
    22 22
         override val isEnabled: Flow<Boolean> = settings.isEnabled
    
    23 23
     
    
    24 24
         override suspend fun set(enabled: Boolean) {
    
    25
    -        settings.setEnabled(enabled)
    
    26
    -        browserStore.dispatch(TranslationsAction.SetTranslationsEnabledAction(enabled))
    
    25
    +        settings.setEnabled(false)
    
    26
    +        browserStore.dispatch(TranslationsAction.SetTranslationsEnabledAction(false))
    
    27 27
         }
    
    28 28
     
    
    29 29
         companion object : AIFeatureMetadata {
    

  • mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsEnabledSettings.kt
    ... ... @@ -29,10 +29,10 @@ interface TranslationsEnabledSettings {
    29 29
              * An in-memory version for tests, previews, etc.
    
    30 30
              */
    
    31 31
             fun inMemory(isEnabledInitial: Boolean = false) = object : TranslationsEnabledSettings {
    
    32
    -            private val _isEnabled = MutableStateFlow(isEnabledInitial)
    
    32
    +            private val _isEnabled = MutableStateFlow(false)
    
    33 33
                 override val isEnabled: Flow<Boolean> = _isEnabled
    
    34 34
                 override suspend fun setEnabled(isEnabled: Boolean) {
    
    35
    -                _isEnabled.value = isEnabled
    
    35
    +                _isEnabled.value = false
    
    36 36
                 }
    
    37 37
             }
    
    38 38
     
    
    ... ... @@ -50,13 +50,13 @@ internal class DataStoreBackedTranslationsEnabledSettings(
    50 50
         private val isEnabledKey = booleanPreferencesKey("is_enabled_key")
    
    51 51
     
    
    52 52
         override val isEnabled: Flow<Boolean> = dataStore.data.map { preferences ->
    
    53
    -        preferences[isEnabledKey] ?: true
    
    53
    +        false
    
    54 54
         }
    
    55 55
     
    
    56 56
         override suspend fun setEnabled(isEnabled: Boolean) {
    
    57 57
             dataStore.updateData {
    
    58 58
                 it.toMutablePreferences().also { preferences ->
    
    59
    -                preferences[isEnabledKey] = isEnabled
    
    59
    +                preferences[isEnabledKey] = false
    
    60 60
                 }
    
    61 61
             }
    
    62 62
         }
    

  • mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/settings/TranslationsSettingsState.kt
    ... ... @@ -21,6 +21,6 @@ data class TranslationsSettingsState(
    21 21
         val showAutomaticTranslations: Boolean,
    
    22 22
         val showNeverTranslate: Boolean,
    
    23 23
         val showDownloads: Boolean,
    
    24
    -    val translationsEnabled: Boolean,
    
    24
    +    val translationsEnabled: Boolean = false,
    
    25 25
         val switchItems: List<TranslationSwitchItem>,
    
    26 26
     )

  • mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
    ... ... @@ -545,7 +545,7 @@ class Settings(
    545 545
     
    
    546 546
         var privateBrowsingLockedFeatureEnabled by booleanPreference(
    
    547 547
             key = appContext.getPreferenceKey(R.string.pref_key_private_browsing_locked_enabled),
    
    548
    -        default = { false },
    
    548
    +        default = { FxNimbus.features.privateBrowsingLock.value().enabled },
    
    549 549
         )
    
    550 550
     
    
    551 551
         var privateBrowsingModeLocked by booleanPreference(
    
    ... ... @@ -1905,7 +1905,7 @@ class Settings(
    1905 1905
     
    
    1906 1906
         var shouldShowVoiceSearch by booleanPreference(
    
    1907 1907
             appContext.getPreferenceKey(R.string.pref_key_show_voice_search),
    
    1908
    -        default = true,
    
    1908
    +        default = false,
    
    1909 1909
         )
    
    1910 1910
     
    
    1911 1911
         /**
    
    ... ... @@ -2374,7 +2374,7 @@ class Settings(
    2374 2374
          */
    
    2375 2375
         var shouldShowMarketingOnboarding by booleanPreference(
    
    2376 2376
             appContext.getPreferenceKey(R.string.pref_key_should_show_marketing_onboarding),
    
    2377
    -        default = true,
    
    2377
    +        default = false,
    
    2378 2378
         )
    
    2379 2379
     
    
    2380 2380
         var shouldUseMinimalBottomToolbarWhenEnteringText by booleanPreference(
    
    ... ... @@ -2699,7 +2699,7 @@ class Settings(
    2699 2699
          */
    
    2700 2700
         var isFirstTimeEngagingWithSignup: Boolean by booleanPreference(
    
    2701 2701
             appContext.getPreferenceKey(R.string.pref_key_first_time_engage_with_signup),
    
    2702
    -        default = true,
    
    2702
    +        default = false,
    
    2703 2703
         )
    
    2704 2704
     
    
    2705 2705
         /**
    
    ... ... @@ -2803,7 +2803,7 @@ class Settings(
    2803 2803
     
    
    2804 2804
         var aiControlsFeatureFlagEnabled by booleanPreference(
    
    2805 2805
             key = appContext.getPreferenceKey(R.string.pref_key_enable_ai_controls),
    
    2806
    -        default = true,
    
    2806
    +        default = false,
    
    2807 2807
         )
    
    2808 2808
     
    
    2809 2809
         /**
    

  • mobile/android/fenix/app/src/main/res/drawable-hdpi/fenix_search_widget.png
    No preview for this file type
  • mobile/android/fenix/app/src/main/res/layout/fragment_tor_security_level_preferences.xml
    ... ... @@ -82,7 +82,6 @@
    82 82
             android:layout_marginEnd="24dp"
    
    83 83
             android:layout_marginBottom="8dp"
    
    84 84
             android:background="">"@drawable/rounded_corners"
    
    85
    -        android:backgroundTint="@color/connect_button_purple"
    
    86 85
             android:enabled="false"
    
    87 86
             android:minWidth="360dp"
    
    88 87
             android:text="@string/tor_security_level_save_and_restart_tor_browser"
    
    ... ... @@ -103,7 +102,6 @@
    103 102
             android:layout_marginEnd="24dp"
    
    104 103
             android:layout_marginBottom="8dp"
    
    105 104
             android:background="">"@drawable/rounded_corners"
    
    106
    -        android:backgroundTint="@color/configure_connection_button_white"
    
    107 105
             android:minWidth="360dp"
    
    108 106
             android:text="@string/btn_cancel"
    
    109 107
             android:textAlignment="center"
    

  • mobile/android/fenix/app/src/main/res/values/colors.xml
    ... ... @@ -121,9 +121,9 @@
    121 121
         <color name="fx_mobile_private_on_tertiary">@color/photonDarkGrey90</color>
    
    122 122
         <color name="fx_mobile_private_tertiary_container">@color/photonPink80</color>
    
    123 123
         <color name="fx_mobile_private_on_tertiary_container">@color/photonLightGrey05</color>
    
    124
    -    <color name="fx_mobile_private_background">#FF342B4A</color>
    
    124
    +    <color name="fx_mobile_private_background">#321C64</color>
    
    125 125
         <color name="fx_mobile_private_on_background">@color/photonLightGrey05</color>
    
    126
    -    <color name="fx_mobile_private_surface">#FF342B4A</color>
    
    126
    +    <color name="fx_mobile_private_surface">#321C64</color>
    
    127 127
         <color name="fx_mobile_private_on_surface">@color/photonLightGrey05</color>
    
    128 128
         <color name="fx_mobile_private_surface_variant">#FF413857</color>
    
    129 129
         <color name="fx_mobile_private_on_surface_variant">@color/photonLightGrey40</color>
    
    ... ... @@ -310,9 +310,9 @@
    310 310
         <color name="mozac_ui_lock_slash_fill_critical" tools:ignore="UnusedResources">@color/fx_mobile_icon_color_critical</color>
    
    311 311
     
    
    312 312
         <!-- Connection Assist -->
    
    313
    -    <color name="connect_button_purple">#9059FF</color>
    
    314
    -    <color name="disabled_connect_button_purple">#5C42A9</color>
    
    315
    -    <color name="disabled_text_gray_purple">#8782A9</color>
    
    313
    +    <color name="connect_button_purple">#7542E5</color>
    
    314
    +    <color name="disabled_connect_button_purple">#542FA4</color>
    
    315
    +    <color name="disabled_text_gray_purple">#9781C8</color>
    
    316 316
         <color name="configure_connection_button_white">#E1E0E7</color>
    
    317 317
         <color name="warning_yellow">#FFA436</color>
    
    318 318
         <color name="progress_background_tint">#55148C</color>
    

  • mobile/android/fenix/app/src/nightly/res/drawable-hdpi/fenix_search_widget.png
    No preview for this file type
  • mobile/android/fenix/app/src/release/res/drawable-hdpi/fenix_search_widget.png
    No preview for this file type
  • toolkit/components/lox/Lox.sys.mjs
    ... ... @@ -1077,15 +1077,12 @@ class LoxImpl {
    1077 1077
         if (this.#domainFrontedRequests === null) {
    
    1078 1078
           this.#domainFrontedRequests = new Promise((resolve, reject) => {
    
    1079 1079
             // TODO: Customize to the values for Lox
    
    1080
    -        const reflector = Services.prefs.getStringPref(
    
    1081
    -          "extensions.torlauncher.bridgedb_reflector"
    
    1082
    -        );
    
    1083
    -        const front = Services.prefs.getStringPref(
    
    1084
    -          "extensions.torlauncher.bridgedb_front"
    
    1080
    +        const targets = Services.prefs.getStringPref(
    
    1081
    +          "extensions.torlauncher.bridgedb_targets"
    
    1085 1082
             );
    
    1086 1083
             const builder = new lazy.DomainFrontRequestBuilder();
    
    1087 1084
             builder
    
    1088
    -          .init(reflector, front)
    
    1085
    +          .init(targets)
    
    1089 1086
               .then(() => resolve(builder))
    
    1090 1087
               .catch(reject);
    
    1091 1088
           });
    

  • toolkit/components/tor-launcher/TorControlPort.sys.mjs
    ... ... @@ -672,6 +672,8 @@ export class TorController {
    672 672
       /**
    
    673 673
        * Authenticate to the tor daemon.
    
    674 674
        * Notice that a failure in the authentication makes the connection close.
    
    675
    +   * This function tolerates empty and false-ish passwords because a client
    
    676
    +   * needs to authenticate even when all authentication methods are disabled.
    
    675 677
        *
    
    676 678
        * @param {Uint8Array} password The password for the control port, as an array
    
    677 679
        * of bytes
    
    ... ... @@ -680,7 +682,11 @@ export class TorController {
    680 682
         const passwordString = Array.from(password ?? [], b =>
    
    681 683
           b.toString(16).padStart(2, "0")
    
    682 684
         ).join("");
    
    683
    -    await this.#sendCommandSimple(`authenticate ${passwordString}`);
    
    685
    +    let command = "AUTHENTICATE";
    
    686
    +    if (passwordString) {
    
    687
    +      command += ` ${passwordString}`;
    
    688
    +    }
    
    689
    +    await this.#sendCommandSimple(command);
    
    684 690
       }
    
    685 691
     
    
    686 692
       // Information
    

  • toolkit/components/tor-launcher/TorProvider.sys.mjs
    ... ... @@ -834,6 +834,9 @@ export class TorProvider extends TorProviderBase {
    834 834
               this.#controlPortSettings.cookieFilePath
    
    835 835
             );
    
    836 836
           }
    
    837
    +      // As per the spec, we must always authenticate to the control port, even
    
    838
    +      // when all authentication methods are disabled.
    
    839
    +      // https://spec.torproject.org/control-spec/commands.html#authenticate
    
    837 840
           await controlPort.authenticate(password);
    
    838 841
         } catch (e) {
    
    839 842
           try {
    

  • toolkit/modules/DomainFrontedRequests.sys.mjs
    ... ... @@ -24,38 +24,20 @@ ChromeUtils.defineESModuleGetters(lazy, {
    24 24
      * proxy credentials, which can be prepared with this function.
    
    25 25
      *
    
    26 26
      * @param {string} proxyType The proxy type (socks for socks5 or socks4)
    
    27
    - * @param {string} reflector The URL of the service hosted by the CDN
    
    28
    - * @param {string} front The domain to use as a front
    
    27
    + * @param {string} targets The string to pass to meek as the targets argument
    
    29 28
      * @returns {string[]} An array containing [username, password]
    
    30 29
      */
    
    31
    -function makeMeekCredentials(proxyType, reflector, front) {
    
    32
    -  // Construct the per-connection arguments.
    
    33
    -  let meekClientEscapedArgs = "";
    
    34
    -
    
    30
    +function makeMeekCredentials(proxyType, targets) {
    
    35 31
       // Escape aValue per section 3.5 of the PT specification:
    
    36 32
       //   First the "<Key>=<Value>" formatted arguments MUST be escaped,
    
    37 33
       //   such that all backslash, equal sign, and semicolon characters
    
    38 34
       //   are escaped with a backslash.
    
    39
    -  const escapeArgValue = aValue =>
    
    40
    -    aValue
    
    41
    -      ? aValue
    
    42
    -          .replaceAll("\\", "\\\\")
    
    43
    -          .replaceAll("=", "\\=")
    
    44
    -          .replaceAll(";", "\\;")
    
    45
    -      : "";
    
    46
    -
    
    47
    -  if (reflector) {
    
    48
    -    meekClientEscapedArgs += "url="">";
    
    49
    -    meekClientEscapedArgs += escapeArgValue(reflector);
    
    50
    -  }
    
    51
    -
    
    52
    -  if (front) {
    
    53
    -    if (meekClientEscapedArgs.length) {
    
    54
    -      meekClientEscapedArgs += ";";
    
    55
    -    }
    
    56
    -    meekClientEscapedArgs += "front=";
    
    57
    -    meekClientEscapedArgs += escapeArgValue(front);
    
    58
    -  }
    
    35
    +  targets = targets
    
    36
    +    .replaceAll("\\", "\\\\")
    
    37
    +    .replaceAll("=", "\\=")
    
    38
    +    .replaceAll(";", "\\;");
    
    39
    +  // Construct the per-connection arguments.
    
    40
    +  const meekClientEscapedArgs = `targets=${targets}`;
    
    59 41
     
    
    60 42
       // socks5
    
    61 43
       if (proxyType === "socks") {
    
    ... ... @@ -88,7 +70,7 @@ class MeekTransport {
    88 70
       #meekClientProcess = null;
    
    89 71
     
    
    90 72
       // launches the meekprocess
    
    91
    -  async init(reflector, front) {
    
    73
    +  async init(targets) {
    
    92 74
         // ensure we haven't already init'd
    
    93 75
         if (this.#inited) {
    
    94 76
           throw new Error("MeekTransport: Already initialized");
    
    ... ... @@ -267,8 +249,7 @@ class MeekTransport {
    267 249
           });
    
    268 250
           [this.proxyUsername, this.proxyPassword] = makeMeekCredentials(
    
    269 251
             this.proxyType,
    
    270
    -        reflector,
    
    271
    -        front
    
    252
    +        targets
    
    272 253
           );
    
    273 254
           this.#inited = true;
    
    274 255
         } catch (ex) {
    
    ... ... @@ -321,7 +302,7 @@ class MeekTransportAndroid {
    321 302
        */
    
    322 303
       #id = 0;
    
    323 304
     
    
    324
    -  async init(reflector, front) {
    
    305
    +  async init(targets) {
    
    325 306
         // ensure we haven't already init'd
    
    326 307
         if (this.#id) {
    
    327 308
           throw new Error("MeekTransport: Already initialized");
    
    ... ... @@ -336,8 +317,7 @@ class MeekTransportAndroid {
    336 317
         this.proxyPort = details.port;
    
    337 318
         [this.proxyUsername, this.proxyPassword] = makeMeekCredentials(
    
    338 319
           this.proxyType,
    
    339
    -      reflector,
    
    340
    -      front
    
    320
    +      targets
    
    341 321
         );
    
    342 322
       }
    
    343 323
     
    
    ... ... @@ -457,7 +437,7 @@ export class DomainFrontRequestBuilder {
    457 437
         return this.#inited;
    
    458 438
       }
    
    459 439
     
    
    460
    -  async init(reflector, front) {
    
    440
    +  async init(targets) {
    
    461 441
         if (this.#inited) {
    
    462 442
           throw new Error("DomainFrontRequestBuilder: Already initialized");
    
    463 443
         }
    
    ... ... @@ -466,7 +446,7 @@ export class DomainFrontRequestBuilder {
    466 446
           Services.appinfo.OS === "Android"
    
    467 447
             ? new MeekTransportAndroid()
    
    468 448
             : new MeekTransport();
    
    469
    -    await meekTransport.init(reflector, front);
    
    449
    +    await meekTransport.init(targets);
    
    470 450
         this.#meekTransport = meekTransport;
    
    471 451
         this.#inited = true;
    
    472 452
       }
    

  • toolkit/modules/Moat.sys.mjs
    ... ... @@ -18,8 +18,7 @@ ChromeUtils.defineESModuleGetters(lazy, {
    18 18
     });
    
    19 19
     
    
    20 20
     const TorLauncherPrefs = Object.freeze({
    
    21
    -  bridgedb_front: "extensions.torlauncher.bridgedb_front",
    
    22
    -  bridgedb_reflector: "extensions.torlauncher.bridgedb_reflector",
    
    21
    +  bridgedb_targets: "extensions.torlauncher.bridgedb_targets",
    
    23 22
       moat_service: "extensions.torlauncher.moat_service",
    
    24 23
     });
    
    25 24
     
    
    ... ... @@ -68,13 +67,12 @@ export class MoatRPC {
    68 67
           return;
    
    69 68
         }
    
    70 69
     
    
    71
    -    const reflector = Services.prefs.getStringPref(
    
    72
    -      TorLauncherPrefs.bridgedb_reflector
    
    70
    +    const targets = Services.prefs.getStringPref(
    
    71
    +      TorLauncherPrefs.bridgedb_targets
    
    73 72
         );
    
    74
    -    const front = Services.prefs.getStringPref(TorLauncherPrefs.bridgedb_front);
    
    75 73
         this.#requestBuilder = new lazy.DomainFrontRequestBuilder();
    
    76 74
         try {
    
    77
    -      await this.#requestBuilder.init(reflector, front);
    
    75
    +      await this.#requestBuilder.init(targets);
    
    78 76
         } catch (e) {
    
    79 77
           this.#requestBuilder = null;
    
    80 78
           throw e;
    

  • _______________________________________________
    tor-commits mailing list -- tor-commits@xxxxxxxxxxxxxxxxxxxx
    To unsubscribe send an email to tor-commits-leave@xxxxxxxxxxxxxxxxxxxx