Skip to main content
Sign in
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision
  • mullvad-browser-145.0a1-16.0-1
  • mullvad-browser-140.5.0esr-15.0-1
  • mullvad-browser-144.0a1-16.0-2
  • mullvad-browser-140.4.0esr-15.0-1
  • mullvad-browser-128.14.0esr-14.5-1
  • mullvad-browser-140.3.0esr-15.0-1
  • mullvad-browser-143.0a1-16.0-1
  • mullvad-browser-143.0a1-16.0-2
  • mullvad-browser-140.2.0esr-15.0-1
  • mullvad-browser-142.0a1-16.0-1
  • mullvad-browser-140.1.0esr-15.0-1
  • mullvad-browser-128.13.0esr-14.5-1
  • mullvad-browser-141.0a1-16.0-2
  • mullvad-browser-140.0esr-15.0-1
  • mullvad-browser-140.0a1-15.0-2
  • mullvad-browser-128.12.0esr-14.5-1
  • mullvad-browser-141.0a1-16.0-1
  • mullvad-browser-140.0a1-15.0-1
  • mullvad-browser-128.11.0esr-14.5-1
  • mullvad-browser-128.10.1esr-14.5-1
  • mullvad-browser-139.0a1-15.0-1
  • mullvad-browser-138.0a1-15.0-1
  • mullvad-browser-128.10.0esr-14.5-1
  • mullvad-browser-137.0a1-15.0-1
  • mullvad-browser-136.0a1-15.0-1
  • mullvad-browser-135.0a1-15.0-1
  • mullvad-browser-134.0a1-15.0-2
  • mullvad-browser-133.0a1-15.0-2
  • mullvad-browser-128.9.0esr-14.5-1
  • mullvad-browser-128.9.0esr-14.0-2
  • mullvad-browser-128.8.0esr-14.0-1
  • mullvad-browser-128.9.0esr-14.0-1
  • mullvad-browser-128.8.0esr-14.5-1
  • mullvad-browser-132.0a1-15.0-2
  • mullvad-browser-128.7.0esr-14.5-1
  • mullvad-browser-131.0a1-15.0-1
  • mullvad-browser-130.0a1-15.0-1
  • mullvad-browser-129.0a1-15.0-2
  • mullvad-browser-128.7.0esr-14.0-1
  • mullvad-browser-128.6.0esr-14.0-1
  • mullvad-browser-128.6.0esr-14.5-1
  • mullvad-browser-128.5.0esr-14.5-2
  • mullvad-browser-128.5.0esr-14.5-1
  • mullvad-browser-128.5.0esr-14.0-1
  • mullvad-browser-128.4.0esr-14.5-1
  • mullvad-browser-128.4.0esr-14.0-1
  • mullvad-browser-115.17.0esr-13.5-1
  • mullvad-browser-128.3.0esr-14.0-1
  • mullvad-browser-115.16.0esr-13.5-1
  • mullvad-browser-128.2.0esr-14.0-1
  • mullvad-browser-115.15.0esr-13.5-1
  • mullvad-browser-128.1.0esr-14.0-1
  • mullvad-browser-115.14.0esr-13.5-1
  • mullvad-browser-128.0esr-14.0-2
  • mullvad-browser-128.0esr-14.0-1
  • mullvad-browser-115.13.0esr-13.5-1
  • mullvad-browser-115.12.0esr-13.5-1
  • mullvad-browser-115.12.0esr-13.0-1
  • mullvad-browser-115.11.0esr-13.0-1
  • mullvad-browser-115.11.0esr-13.5-1
  • mullvad-browser-115.10.0esr-13.5-1
  • mullvad-browser-115.9.0esr-13.5-1
  • mullvad-browser-115.10.0esr-13.0-1
  • mullvad-browser-115.9.1esr-13.0-1
  • mullvad-browser-115.9.0esr-13.0-1
  • mullvad-browser-115.8.0esr-13.5-1
  • mullvad-browser-115.8.0esr-13.0-1
  • mullvad-browser-115.7.0esr-13.5-1
  • mullvad-browser-115.7.0esr-13.0-1
  • mullvad-browser-115.6.0esr-13.0-1
  • mullvad-browser-115.6.0esr-13.5-1
  • mullvad-browser-115.5.0esr-13.5-1
  • mullvad-browser-115.5.0esr-13.0-1
  • mullvad-browser-115.4.0esr-13.5-1
  • mullvad-browser-115.4.0esr-13.0-1
  • mullvad-browser-115.3.1esr-13.0-1
  • mullvad-browser-115.3.0esr-13.0-1
  • mullvad-browser-102.15.1esr-12.5-1
  • mullvad-browser-115.2.1esr-13.0-1
  • mullvad-browser-115.2.0esr-13.0-1
  • mullvad-browser-102.15.0esr-12.5-1
  • mullvad-browser-115.1.0esr-13.0-1
  • mullvad-browser-102.14.0esr-12.5-1
  • mullvad-browser-115.0.2esr-13.0-1
  • mullvad-browser-115.0esrbase-13.0-1
  • mullvad-browser-115.0b5-13.0-1
  • mullvad-browser-102.13.0esr-12.5-1
  • mullvad-browser-102.12.0esr-12.5-1
  • mullvad-browser-102.12.0esr-12.0-1
  • mullvad-browser-102.11.0esr-12.5-1
  • mullvad-browser-102.11.0esr-12.0-1
  • mullvad-browser-102.10.0esr-12.0-2
  • mullvad-browser-102.10.0esr-12.5-1
  • mullvad-browser-102.10.0esr-12.0-1
  • mullvad-browser-102.9.0esr-12.0-2
  • mullvad-browser-102.9.0esr-12.0-1
  • mullvad-browser-102.8.0esr-12.0-2
  • privacy-browser-102.8.0esr-12.0-2
  • privacy-browser-102.8.0esr-12.0-1
  • privacy-browser-102.7.0esr-12.0-1
  • 14.5a6
  • FIREFOX_102_10_0esr_BUILD1
  • FIREFOX_102_11_0esr_BUILD2
  • FIREFOX_102_12_0esr_BUILD1
  • FIREFOX_102_14_0esr_BUILD1
  • FIREFOX_102_5_0esr_RELEASE
  • FIREFOX_102_8_0esr_BUILD1
  • FIREFOX_102_9_0esr_BUILD1
  • FIREFOX_115_15_0esr_BUILD1
  • FIREFOX_115_16_0esr_BUILD1
  • FIREFOX_115_17_0esr_BUILD1
  • FIREFOX_115_2_1esr_BUILD1
  • FIREFOX_115_3_0esr_BUILD1
  • FIREFOX_115_5_0esr_BUILD1
  • FIREFOX_115_9_1esr_BUILD1
  • FIREFOX_128_0esr_RELEASE
  • FIREFOX_128_10_0esr_BUILD1
  • FIREFOX_128_11_0esr_BUILD1
  • FIREFOX_128_12_0esr_BUILD1
  • FIREFOX_128_13_0esr_BUILD1
  • FIREFOX_128_14_0esr_BUILD1
  • FIREFOX_128_1_0esr_BUILD1
  • FIREFOX_128_2_0esr_BUILD1
  • FIREFOX_128_3_0esr_BUILD1
  • FIREFOX_128_4_0esr_BUILD1
  • FIREFOX_128_5_0esr_BUILD1
  • FIREFOX_128_6_0esr_BUILD1
  • FIREFOX_128_7_0esr_BUILD1
  • FIREFOX_128_8_0esr_BUILD1
  • FIREFOX_128_9_0esr_BUILD1
  • FIREFOX_128_9_0esr_BUILD2
  • FIREFOX_140_0esr_RELEASE
  • FIREFOX_140_1_0esr_BUILD1
  • FIREFOX_140_2_0esr_BUILD1
  • FIREFOX_140_3_0esr_BUILD1
  • FIREFOX_140_4_0esr_BUILD1
  • FIREFOX_140_5_0esr_BUILD1
  • FIREFOX_NIGHTLY_129_END
  • FIREFOX_NIGHTLY_130_END
  • FIREFOX_NIGHTLY_131_END
  • FIREFOX_NIGHTLY_132_END
  • FIREFOX_NIGHTLY_133_END
  • FIREFOX_NIGHTLY_134_END
  • FIREFOX_NIGHTLY_135_END
  • FIREFOX_NIGHTLY_140_END
  • FIREFOX_NIGHTLY_141_END
  • FIREFOX_NIGHTLY_143_END
  • FIREFOX_NIGHTLY_144_END
  • FIREFOX_NIGHTLY_145_END
  • FIREFOX_NIGHTLY_146_END
  • base-browser-102.10.0esr-12.0-1-build1
  • base-browser-102.10.0esr-12.0-1-build2
  • base-browser-102.11.0esr-12.0-1-build1
  • base-browser-102.11.0esr-12.5-1-build1
  • base-browser-102.12.0esr-12.0-1-build1
  • base-browser-102.13.0esr-12.5-1-build1
  • base-browser-102.14.0esr-12.5-1-build1
  • base-browser-102.5.0esr-12.0-1-build1
  • base-browser-102.8.0esr-12.0-1-build1
  • base-browser-102.9.0esr-12.0-1-build1
  • base-browser-115.0esrbase-13.0-1-build1
  • base-browser-115.14.0esr-13.5-1-build1
  • base-browser-115.15.0esr-13.5-1-build1
  • base-browser-115.16.0esr-13.5-1-build1
  • base-browser-115.17.0esr-13.5-1-build1
  • base-browser-115.2.1esr-13.0-1-build1
  • base-browser-115.3.0esr-13.0-1-build1
  • base-browser-115.4.0esr-13.0-1-build1
  • base-browser-115.4.0esr-13.5-1-build1
  • base-browser-115.9.1esr-13.0-1-build1
  • base-browser-128.10.0esr-14.5-1-build1
  • base-browser-128.10.1esr-14.5-1-build1
  • base-browser-128.11.0esr-14.5-1-build1
  • base-browser-128.12.0esr-14.5-1-build1
  • base-browser-128.13.0esr-14.5-1-build1
  • base-browser-128.13.0esr-14.5-1-build2
  • base-browser-128.14.0esr-14.5-1-build1
  • base-browser-128.2.0esr-14.0-1-build1
  • base-browser-128.3.0esr-14.0-1-build1
  • base-browser-128.4.0esr-14.0-1-build1
  • base-browser-128.5.0esr-14.0-1-build1
  • base-browser-128.5.0esr-14.5-1-build1
  • base-browser-128.5.0esr-14.5-2-build1
  • base-browser-128.6.0esr-14.0-1-build1
  • base-browser-128.7.0esr-14.0-1-build1
  • base-browser-128.7.0esr-14.5-1-build1
  • base-browser-128.8.0esr-14.0-1-build1
  • base-browser-128.8.0esr-14.5-1-build1
  • base-browser-128.9.0esr-14.0-1-build1
  • base-browser-128.9.0esr-14.0-2-build1
  • base-browser-128.9.0esr-14.5-1-build1
  • base-browser-130.0a1-15.0-1-build1
  • base-browser-131.0a1-15.0-1-build1
  • base-browser-132.0a1-15.0-2-build1
  • base-browser-133.0a1-15.0-2-build1
  • base-browser-134.0a1-15.0-2-build1
  • base-browser-135.0a1-15.0-1-build1
  • base-browser-137.0a1-15.0-1-build1
  • base-browser-138.0a1-15.0-1-build1
  • base-browser-139.0a1-15.0-1-build1
200 results

Target

Select target project
  • The Tor Project / Applications / Mullvad Browser
  • Pier Angelo Vendrame / Mullvad Browser
  • ma1 / Mullvad Browser
  • morgan / Mullvad Browser
  • boklm / Mullvad Browser
  • henry / Mullvad Browser
  • NoisyCoil / Mullvad Browser
  • Dan Ballard / Mullvad Browser
  • brizental / Mullvad Browser
  • securitybrahh / Mullvad Browser
  • clairehurst / Mullvad Browser
  • stayanon / Mullvad Browser
12 results
Select Git revision
  • mullvad-browser-145.0a1-16.0-1
  • mullvad-browser-140.5.0esr-15.0-1
  • mullvad-browser-144.0a1-16.0-2
  • mullvad-browser-140.4.0esr-15.0-1
  • mullvad-browser-128.14.0esr-14.5-1
  • mullvad-browser-140.3.0esr-15.0-1
  • mullvad-browser-143.0a1-16.0-1
  • mullvad-browser-143.0a1-16.0-2
  • mullvad-browser-140.2.0esr-15.0-1
  • mullvad-browser-142.0a1-16.0-1
  • mullvad-browser-140.1.0esr-15.0-1
  • mullvad-browser-128.13.0esr-14.5-1
  • mullvad-browser-141.0a1-16.0-2
  • mullvad-browser-140.0esr-15.0-1
  • mullvad-browser-140.0a1-15.0-2
  • mullvad-browser-128.12.0esr-14.5-1
  • mullvad-browser-141.0a1-16.0-1
  • mullvad-browser-140.0a1-15.0-1
  • mullvad-browser-128.11.0esr-14.5-1
  • mullvad-browser-128.10.1esr-14.5-1
  • mullvad-browser-139.0a1-15.0-1
  • mullvad-browser-138.0a1-15.0-1
  • mullvad-browser-128.10.0esr-14.5-1
  • mullvad-browser-137.0a1-15.0-1
  • mullvad-browser-136.0a1-15.0-1
  • mullvad-browser-135.0a1-15.0-1
  • mullvad-browser-134.0a1-15.0-2
  • mullvad-browser-133.0a1-15.0-2
  • mullvad-browser-128.9.0esr-14.5-1
  • mullvad-browser-128.9.0esr-14.0-2
  • mullvad-browser-128.8.0esr-14.0-1
  • mullvad-browser-128.9.0esr-14.0-1
  • mullvad-browser-128.8.0esr-14.5-1
  • mullvad-browser-132.0a1-15.0-2
  • mullvad-browser-128.7.0esr-14.5-1
  • mullvad-browser-131.0a1-15.0-1
  • mullvad-browser-130.0a1-15.0-1
  • mullvad-browser-129.0a1-15.0-2
  • mullvad-browser-128.7.0esr-14.0-1
  • mullvad-browser-128.6.0esr-14.0-1
  • mullvad-browser-128.6.0esr-14.5-1
  • mullvad-browser-128.5.0esr-14.5-2
  • mullvad-browser-128.5.0esr-14.5-1
  • mullvad-browser-128.5.0esr-14.0-1
  • mullvad-browser-128.4.0esr-14.5-1
  • mullvad-browser-128.4.0esr-14.0-1
  • mullvad-browser-115.17.0esr-13.5-1
  • mullvad-browser-128.3.0esr-14.0-1
  • mullvad-browser-115.16.0esr-13.5-1
  • mullvad-browser-128.2.0esr-14.0-1
  • mullvad-browser-115.15.0esr-13.5-1
  • mullvad-browser-128.1.0esr-14.0-1
  • mullvad-browser-115.14.0esr-13.5-1
  • mullvad-browser-128.0esr-14.0-2
  • mullvad-browser-128.0esr-14.0-1
  • mullvad-browser-115.13.0esr-13.5-1
  • mullvad-browser-115.12.0esr-13.5-1
  • mullvad-browser-115.12.0esr-13.0-1
  • mullvad-browser-115.11.0esr-13.0-1
  • mullvad-browser-115.11.0esr-13.5-1
  • mullvad-browser-115.10.0esr-13.5-1
  • mullvad-browser-115.9.0esr-13.5-1
  • mullvad-browser-115.10.0esr-13.0-1
  • mullvad-browser-115.9.1esr-13.0-1
  • mullvad-browser-115.9.0esr-13.0-1
  • mullvad-browser-115.8.0esr-13.5-1
  • mullvad-browser-115.8.0esr-13.0-1
  • mullvad-browser-115.7.0esr-13.5-1
  • mullvad-browser-115.7.0esr-13.0-1
  • mullvad-browser-115.6.0esr-13.0-1
  • mullvad-browser-115.6.0esr-13.5-1
  • mullvad-browser-115.5.0esr-13.5-1
  • mullvad-browser-115.5.0esr-13.0-1
  • mullvad-browser-115.4.0esr-13.5-1
  • mullvad-browser-115.4.0esr-13.0-1
  • mullvad-browser-115.3.1esr-13.0-1
  • mullvad-browser-115.3.0esr-13.0-1
  • mullvad-browser-102.15.1esr-12.5-1
  • mullvad-browser-115.2.1esr-13.0-1
  • mullvad-browser-115.2.0esr-13.0-1
  • mullvad-browser-102.15.0esr-12.5-1
  • mullvad-browser-115.1.0esr-13.0-1
  • mullvad-browser-102.14.0esr-12.5-1
  • mullvad-browser-115.0.2esr-13.0-1
  • mullvad-browser-115.0esrbase-13.0-1
  • mullvad-browser-115.0b5-13.0-1
  • mullvad-browser-102.13.0esr-12.5-1
  • mullvad-browser-102.12.0esr-12.5-1
  • mullvad-browser-102.12.0esr-12.0-1
  • mullvad-browser-102.11.0esr-12.5-1
  • mullvad-browser-102.11.0esr-12.0-1
  • mullvad-browser-102.10.0esr-12.0-2
  • mullvad-browser-102.10.0esr-12.5-1
  • mullvad-browser-102.10.0esr-12.0-1
  • mullvad-browser-102.9.0esr-12.0-2
  • mullvad-browser-102.9.0esr-12.0-1
  • mullvad-browser-102.8.0esr-12.0-2
  • privacy-browser-102.8.0esr-12.0-2
  • privacy-browser-102.8.0esr-12.0-1
  • privacy-browser-102.7.0esr-12.0-1
  • 14.5a6
  • FIREFOX_102_10_0esr_BUILD1
  • FIREFOX_102_11_0esr_BUILD2
  • FIREFOX_102_12_0esr_BUILD1
  • FIREFOX_102_14_0esr_BUILD1
  • FIREFOX_102_5_0esr_RELEASE
  • FIREFOX_102_8_0esr_BUILD1
  • FIREFOX_102_9_0esr_BUILD1
  • FIREFOX_115_15_0esr_BUILD1
  • FIREFOX_115_16_0esr_BUILD1
  • FIREFOX_115_17_0esr_BUILD1
  • FIREFOX_115_2_1esr_BUILD1
  • FIREFOX_115_3_0esr_BUILD1
  • FIREFOX_115_5_0esr_BUILD1
  • FIREFOX_115_9_1esr_BUILD1
  • FIREFOX_128_0esr_RELEASE
  • FIREFOX_128_10_0esr_BUILD1
  • FIREFOX_128_11_0esr_BUILD1
  • FIREFOX_128_12_0esr_BUILD1
  • FIREFOX_128_13_0esr_BUILD1
  • FIREFOX_128_14_0esr_BUILD1
  • FIREFOX_128_1_0esr_BUILD1
  • FIREFOX_128_2_0esr_BUILD1
  • FIREFOX_128_3_0esr_BUILD1
  • FIREFOX_128_4_0esr_BUILD1
  • FIREFOX_128_5_0esr_BUILD1
  • FIREFOX_128_6_0esr_BUILD1
  • FIREFOX_128_7_0esr_BUILD1
  • FIREFOX_128_8_0esr_BUILD1
  • FIREFOX_128_9_0esr_BUILD1
  • FIREFOX_128_9_0esr_BUILD2
  • FIREFOX_140_0esr_RELEASE
  • FIREFOX_140_1_0esr_BUILD1
  • FIREFOX_140_2_0esr_BUILD1
  • FIREFOX_140_3_0esr_BUILD1
  • FIREFOX_140_4_0esr_BUILD1
  • FIREFOX_140_5_0esr_BUILD1
  • FIREFOX_NIGHTLY_129_END
  • FIREFOX_NIGHTLY_130_END
  • FIREFOX_NIGHTLY_131_END
  • FIREFOX_NIGHTLY_132_END
  • FIREFOX_NIGHTLY_133_END
  • FIREFOX_NIGHTLY_134_END
  • FIREFOX_NIGHTLY_135_END
  • FIREFOX_NIGHTLY_140_END
  • FIREFOX_NIGHTLY_141_END
  • FIREFOX_NIGHTLY_143_END
  • FIREFOX_NIGHTLY_144_END
  • FIREFOX_NIGHTLY_145_END
  • FIREFOX_NIGHTLY_146_END
  • base-browser-102.10.0esr-12.0-1-build1
  • base-browser-102.10.0esr-12.0-1-build2
  • base-browser-102.11.0esr-12.0-1-build1
  • base-browser-102.11.0esr-12.5-1-build1
  • base-browser-102.12.0esr-12.0-1-build1
  • base-browser-102.13.0esr-12.5-1-build1
  • base-browser-102.14.0esr-12.5-1-build1
  • base-browser-102.5.0esr-12.0-1-build1
  • base-browser-102.8.0esr-12.0-1-build1
  • base-browser-102.9.0esr-12.0-1-build1
  • base-browser-115.0esrbase-13.0-1-build1
  • base-browser-115.14.0esr-13.5-1-build1
  • base-browser-115.15.0esr-13.5-1-build1
  • base-browser-115.16.0esr-13.5-1-build1
  • base-browser-115.17.0esr-13.5-1-build1
  • base-browser-115.2.1esr-13.0-1-build1
  • base-browser-115.3.0esr-13.0-1-build1
  • base-browser-115.4.0esr-13.0-1-build1
  • base-browser-115.4.0esr-13.5-1-build1
  • base-browser-115.9.1esr-13.0-1-build1
  • base-browser-128.10.0esr-14.5-1-build1
  • base-browser-128.10.1esr-14.5-1-build1
  • base-browser-128.11.0esr-14.5-1-build1
  • base-browser-128.12.0esr-14.5-1-build1
  • base-browser-128.13.0esr-14.5-1-build1
  • base-browser-128.13.0esr-14.5-1-build2
  • base-browser-128.14.0esr-14.5-1-build1
  • base-browser-128.2.0esr-14.0-1-build1
  • base-browser-128.3.0esr-14.0-1-build1
  • base-browser-128.4.0esr-14.0-1-build1
  • base-browser-128.5.0esr-14.0-1-build1
  • base-browser-128.5.0esr-14.5-1-build1
  • base-browser-128.5.0esr-14.5-2-build1
  • base-browser-128.6.0esr-14.0-1-build1
  • base-browser-128.7.0esr-14.0-1-build1
  • base-browser-128.7.0esr-14.5-1-build1
  • base-browser-128.8.0esr-14.0-1-build1
  • base-browser-128.8.0esr-14.5-1-build1
  • base-browser-128.9.0esr-14.0-1-build1
  • base-browser-128.9.0esr-14.0-2-build1
  • base-browser-128.9.0esr-14.5-1-build1
  • base-browser-130.0a1-15.0-1-build1
  • base-browser-131.0a1-15.0-1-build1
  • base-browser-132.0a1-15.0-2-build1
  • base-browser-133.0a1-15.0-2-build1
  • base-browser-134.0a1-15.0-2-build1
  • base-browser-135.0a1-15.0-1-build1
  • base-browser-137.0a1-15.0-1-build1
  • base-browser-138.0a1-15.0-1-build1
  • base-browser-139.0a1-15.0-1-build1
200 results
Show changes

Commits on Source 2

5 files
+ 33
11
Compare changes
  • Side-by-side
  • Inline

Files

+1 −0
Original line number Diff line number Diff line
@@ -242,6 +242,7 @@ pref("privacy.donottrackheader.enabled", false); // (mullvad-browser#17)
// Make sure there is no Tracking Protection active in Tor Browser, see: #17898.
pref("privacy.trackingprotection.enabled", false);
pref("privacy.trackingprotection.pbmode.enabled", false);
pref("privacy.trackingprotection.emailtracking.pbmode.enabled", false);
pref("privacy.trackingprotection.annotate_channels", false);
pref("privacy.trackingprotection.cryptomining.enabled", false);
pref("privacy.trackingprotection.fingerprinting.enabled", false);
+24 −7
Original line number Diff line number Diff line
@@ -13,6 +13,8 @@ import mozilla.components.browser.state.state.SessionState
import mozilla.components.browser.state.state.selectedOrDefaultSearchEngine
import mozilla.components.browser.state.store.BrowserStore
import mozilla.components.concept.engine.EngineSession
import mozilla.components.concept.engine.Settings
import mozilla.components.concept.engine.UnsupportedSettingException
import mozilla.components.feature.search.ext.buildSearchUrl
import mozilla.components.feature.session.SessionUseCases
import mozilla.components.feature.tabs.TabsUseCases
@@ -25,6 +27,7 @@ class SearchUseCases(
    store: BrowserStore,
    tabsUseCases: TabsUseCases,
    sessionUseCases: SessionUseCases,
    settings: Settings? = null,
) {
    interface SearchUseCase {
        /**
@@ -41,6 +44,7 @@ class SearchUseCases(
        private val store: BrowserStore,
        private val tabsUseCases: TabsUseCases,
        private val sessionUseCases: SessionUseCases,
        private val settings: Settings? = null,
    ) : SearchUseCase {
        private val logger = Logger("DefaultSearchUseCase")

@@ -72,9 +76,15 @@ class SearchUseCases(
            flags: EngineSession.LoadUrlFlags = EngineSession.LoadUrlFlags.none(),
            additionalHeaders: Map<String, String>? = null,
        ) {
            var securityLevel: Int
            try {
                securityLevel = settings?.torSecurityLevel ?: 0
            } catch (e: UnsupportedSettingException) {
                securityLevel = 0
            }
            val searchUrl = searchEngine?.let {
                searchEngine.buildSearchUrl(searchTerms)
            } ?: store.state.search.selectedOrDefaultSearchEngine?.buildSearchUrl(searchTerms)
                searchEngine.buildSearchUrl(searchTerms, securityLevel)
            } ?: store.state.search.selectedOrDefaultSearchEngine?.buildSearchUrl(searchTerms, securityLevel)

            if (searchUrl == null) {
                logger.warn("No default search engine available to perform search")
@@ -124,6 +134,7 @@ class SearchUseCases(
        private val store: BrowserStore,
        private val tabsUseCases: TabsUseCases,
        private val isPrivate: Boolean,
        private val settings: Settings? = null,
    ) : SearchUseCase {
        private val logger = Logger("NewTabSearchUseCase")

@@ -161,9 +172,15 @@ class SearchUseCases(
            flags: EngineSession.LoadUrlFlags = EngineSession.LoadUrlFlags.none(),
            additionalHeaders: Map<String, String>? = null,
        ) {
            var securityLevel: Int
            try {
                securityLevel = settings?.torSecurityLevel ?: 0
            } catch (e: UnsupportedSettingException) {
                securityLevel = 0
            }
            val searchUrl = searchEngine?.let {
                searchEngine.buildSearchUrl(searchTerms)
            } ?: store.state.search.selectedOrDefaultSearchEngine?.buildSearchUrl(searchTerms)
                searchEngine.buildSearchUrl(searchTerms, securityLevel)
            } ?: store.state.search.selectedOrDefaultSearchEngine?.buildSearchUrl(searchTerms, securityLevel)

            if (searchUrl == null) {
                logger.warn("No default search engine available to perform search")
@@ -310,15 +327,15 @@ class SearchUseCases(
    }

    val defaultSearch: DefaultSearchUseCase by lazy {
        DefaultSearchUseCase(store, tabsUseCases, sessionUseCases)
        DefaultSearchUseCase(store, tabsUseCases, sessionUseCases, settings)
    }

    val newTabSearch: NewTabSearchUseCase by lazy {
        NewTabSearchUseCase(store, tabsUseCases, false)
        NewTabSearchUseCase(store, tabsUseCases, false, settings)
    }

    val newPrivateTabSearch: NewTabSearchUseCase by lazy {
        NewTabSearchUseCase(store, tabsUseCases, true)
        NewTabSearchUseCase(store, tabsUseCases, true, settings)
    }

    val addSearchEngine: AddNewSearchEngineUseCase by lazy {
+2 −2
Original line number Diff line number Diff line
@@ -85,9 +85,9 @@ fun SearchEngine.buildSuggestionsURL(query: String): String? {
/**
 * Builds a URL to search for the given search terms with this search engine.
 */
fun SearchEngine.buildSearchUrl(searchTerm: String): String {
fun SearchEngine.buildSearchUrl(searchTerm: String, securityLevel: Int = 0): String {
    val builder = SearchUrlBuilder(this)
    return builder.buildSearchUrl(searchTerm)
    return builder.buildSearchUrl(searchTerm, securityLevel)
}

/**
+5 −2
Original line number Diff line number Diff line
@@ -28,9 +28,12 @@ private const val OS_PARAM_OPTIONAL = "\\{" + "(?:\\w+:)?\\w+?" + "\\}"
internal class SearchUrlBuilder(
    private val searchEngine: SearchEngine,
) {
    fun buildSearchUrl(searchTerms: String): String {
    fun buildSearchUrl(searchTerms: String, securityLevel: Int): String {
        // The parser should have put the best URL for this device at the beginning of the list.
        val template = searchEngine.resultUrls[0]
        var template = searchEngine.resultUrls[0]
        if (securityLevel == 1 && (searchEngine.id == "ddg" || searchEngine.id == "ddg-onion")) {
            template = template.replaceFirst("/?", "/html/?")
        }
        return buildUrl(template, searchTerms)
    }

+1 −0
Original line number Diff line number Diff line
@@ -73,6 +73,7 @@ class UseCases(
            store,
            tabsUseCases,
            sessionUseCases,
            engine.settings,
        )
    }