lists.torproject.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

tbb-commits

Thread Start a new thread
Download
Threads by month
  • ----- 2025 -----
  • 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
tbb-commits@lists.torproject.org

  • 1 participants
  • 18566 discussions
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Add mobile-override of 000-tor-browser prefs
by gk@torproject.org 31 Aug '19

31 Aug '19
commit f0c4f9219012e04982d99f92c2808716bc8b9cc4 Author: Matthew Finkel <Matthew.Finkel(a)gmail.com> Date: Fri Jan 19 23:49:11 2018 +0000 Bug 25741 - TBA: Add mobile-override of 000-tor-browser prefs --- .eslintignore | 3 ++ mobile/android/app/000-tor-browser-android.js | 61 +++++++++++++++++++++++++++ mobile/android/app/mobile.js | 4 ++ mobile/android/app/moz.build | 1 + mobile/android/installer/package-… [View More]manifest.in | 1 + 5 files changed, 70 insertions(+) diff --git a/.eslintignore b/.eslintignore index 2fc0d61fabe5..e8dbe3a037a3 100644 --- a/.eslintignore +++ b/.eslintignore @@ -227,6 +227,9 @@ media/webrtc/trunk/** # mobile/android/ exclusions mobile/android/tests/browser/chrome/tp5/** +# uses `#include` +mobile/android/app/000-tor-browser-android.js + # Uses `#filter substitution` mobile/android/app/mobile.js mobile/android/app/geckoview-prefs.js diff --git a/mobile/android/app/000-tor-browser-android.js b/mobile/android/app/000-tor-browser-android.js new file mode 100644 index 000000000000..02e3ef00c1b3 --- /dev/null +++ b/mobile/android/app/000-tor-browser-android.js @@ -0,0 +1,61 @@ +// Import all prefs from the canonical file +// We override mobile-specific prefs below +// Tor Browser for Android +// Do not edit this file. + +#include ../../../browser/app/profile/000-tor-browser.js + + +// Disable Presentation API +pref("dom.presentation.controller.enabled", false); +pref("dom.presentation.enabled", false); +pref("dom.presentation.discoverable", false); +pref("dom.presentation.discoverable.encrypted", false); +pref("dom.presentation.discovery.enabled", false); +pref("dom.presentation.receiver.enabled", false); + +pref("dom.audiochannel.audioCompeting", false); +pref("dom.audiochannel.mediaControl", false); + +// Space separated list of URLs that are allowed to send objects (instead of +// only strings) through webchannels. This list is duplicated in browser/app/profile/firefox.js +pref("webchannel.allowObject.urlWhitelist", ""); + +// Disable browser auto updaters +pref("app.update.auto", false); +pref("app.update.enabled", false); +pref("browser.startup.homepage_override.mstone", "ignore"); + +// Clear data on quit +pref("privacy.clearOnShutdown.cache", true); +pref("privacy.clearOnShutdown.cookies",true); +pref("privacy.clearOnShutdown.downloads",true); +pref("privacy.clearOnShutdown.formdata",true); +pref("privacy.clearOnShutdown.history",true); +pref("privacy.clearOnShutdown.offlineApps",true); +pref("privacy.clearOnShutdown.passwords",true); +pref("privacy.clearOnShutdown.sessions",true); +pref("privacy.clearOnShutdown.siteSettings",true); + +// Disable Control media casting & mirroring features +pref("browser.casting.enabled", false); +pref("browser.mirroring.enabled", false); + +// Disable autoplay +pref("media.autoplay.enabled", false); + +// controls if we want camera support +pref("device.camera.enabled", false); +pref("media.realtime_decoder.enabled", false); + +// Do not fetch updated per-site user-agent strings from Mozilla +// See ua-update.json.in for the packaged UA override list +// See https://bugzilla.mozilla.org/show_bug.cgi?id=897221 +pref("general.useragent.updates.enabled", false); +pref("general.useragent.updates.url", ""); + +// Enable touch events on Android (highlighting text, etc) +pref("dom.w3c_touch_events.enabled", 2); + +// Inherit locale from the OS, used for multi-locale builds +pref("intl.locale.requested", ""); diff --git a/mobile/android/app/mobile.js b/mobile/android/app/mobile.js index 9d4f331e968f..1d69f082da27 100644 --- a/mobile/android/app/mobile.js +++ b/mobile/android/app/mobile.js @@ -483,7 +483,11 @@ pref("app.update.timerMinimumDelay", 30); // seconds // used by update service to decide whether or not to // automatically download an update pref("app.update.autodownload", "wifi"); +#ifdef TOR_BROWSER_VERSION +pref("app.update.url.android", ""); +#else pref("app.update.url.android", "https://aus5.mozilla.org/update/4/%PRODUCT%/%VERSION%/%BUILD_ID%/%BUILD_TAR…"); +#endif #ifdef MOZ_UPDATER /* prefs used specifically for updating the app */ diff --git a/mobile/android/app/moz.build b/mobile/android/app/moz.build index 8ff152f3b369..773c1a3979a8 100644 --- a/mobile/android/app/moz.build +++ b/mobile/android/app/moz.build @@ -49,6 +49,7 @@ if CONFIG['MOZ_PKG_SPECIAL']: DEFINES['MOZ_PKG_SPECIAL'] = CONFIG['MOZ_PKG_SPECIAL'] JS_PREFERENCE_PP_FILES += [ + '000-tor-browser-android.js', 'geckoview-prefs.js', 'mobile.js', ] diff --git a/mobile/android/installer/package-manifest.in b/mobile/android/installer/package-manifest.in index 3d014cbc6e67..2002a894fc51 100644 --- a/mobile/android/installer/package-manifest.in +++ b/mobile/android/installer/package-manifest.in @@ -168,6 +168,7 @@ #ifdef MOZ_GECKOVIEW_JAR @BINPATH@/@PREF_DIR@/geckoview-prefs.js #else +@BINPATH@/@PREF_DIR@/000-tor-browser-android.js @BINPATH@/@PREF_DIR@/mobile.js #endif @BINPATH@/@PREF_DIR@/channel-prefs.js [View Less]
1 0
0 0
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Remove sync option from preferences
by gk@torproject.org 31 Aug '19

31 Aug '19
commit da563f691147389df259b61f4f47c490257e8bf2 Author: Amogh Pradeep <amoghbl1(a)gmail.com> Date: Fri Jul 17 13:27:07 2015 -0400 Bug 25741 - TBA: Remove sync option from preferences We don't want this while the Sync subsystem is a proxy-bypass risk. We can drop this when the feature is patched (Bug 1314778). Signed-off-by: Amogh Pradeep <amoghbl1(a)gmail.com> Also: Bug 28507 - Don't call Push and Sync services during Sanitize Bug 30086 -… [View More] Prevent Sync-related crashes on Android Bug 25741 - TBA: Only include Firefox Account permissions if we want them (using MOZ_ACCOUNT) Bug 25741 - TBA: Neuter Firefox Accounts --- .../android/app/src/main/res/xml/preferences.xml | 6 -- mobile/android/base/AndroidManifest.xml.in | 4 ++ .../android/base/FennecManifest_permissions.xml.in | 2 + .../base/java/org/mozilla/gecko/BrowserApp.java | 8 --- .../mozilla/gecko/home/CombinedHistoryPanel.java | 14 +++-- .../overlays/service/sharemethods/SendTab.java | 6 +- .../base/locales/en-US/torbrowser_strings.dtd | 2 + mobile/android/base/strings.xml.in | 2 + mobile/android/modules/Sanitizer.jsm | 47 ++++++++------ .../org/mozilla/gecko/fxa/FirefoxAccounts.java | 73 +++++++++++++--------- .../gecko/fxa/authenticator/AndroidFxAccount.java | 13 +++- 11 files changed, 107 insertions(+), 70 deletions(-) diff --git a/mobile/android/app/src/main/res/xml/preferences.xml b/mobile/android/app/src/main/res/xml/preferences.xml index a9cec32ca3ef..f9c5c9e1ac53 100644 --- a/mobile/android/app/src/main/res/xml/preferences.xml +++ b/mobile/android/app/src/main/res/xml/preferences.xml @@ -9,12 +9,6 @@ xmlns:gecko="http://schemas.android.com/apk/res-auto" android:enabled="false"> - <org.mozilla.gecko.preferences.SyncPreference android:key="android.not_a_preference.sync" - android:title="@string/pref_sync" - android:icon="@drawable/sync_avatar_default" - android:summary="@string/pref_sync_summary" - android:persistent="false" /> - <org.mozilla.gecko.preferences.DefaultBrowserPreference android:key="android.not_a_preference.default_browser.link" android:persistent="false" diff --git a/mobile/android/base/AndroidManifest.xml.in b/mobile/android/base/AndroidManifest.xml.in index 17a34703e6e7..e61a3411b2e0 100644 --- a/mobile/android/base/AndroidManifest.xml.in +++ b/mobile/android/base/AndroidManifest.xml.in @@ -291,7 +291,9 @@ </intent-filter> </receiver> +#ifdef MOZ_ACCOUNT #include ../services/manifests/FxAccountAndroidManifest_activities.xml.in +#endif #ifdef MOZ_CRASHREPORTER <activity android:name="org.mozilla.gecko.CrashReporterActivity" @@ -504,7 +506,9 @@ </intent-filter> </service> +#ifdef MOZ_ACCOUNT #include ../services/manifests/FxAccountAndroidManifest_services.xml.in +#endif <service android:name="org.mozilla.gecko.tabqueue.TabReceivedService" diff --git a/mobile/android/base/FennecManifest_permissions.xml.in b/mobile/android/base/FennecManifest_permissions.xml.in index ffa6d27a8b0d..f3e43bb4e3ca 100644 --- a/mobile/android/base/FennecManifest_permissions.xml.in +++ b/mobile/android/base/FennecManifest_permissions.xml.in @@ -1,5 +1,7 @@ +#ifdef MOZ_ACCOUNT #include ../services/manifests/FxAccountAndroidManifest_permissions.xml.in +#endif <!-- Bug 1261302: we have two new permissions to request, RECEIVE_BOOT_COMPLETED and the permission for push. We want to ask for diff --git a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java index 7d4c03f7e5d2..80981eb87136 100644 --- a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java +++ b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java @@ -303,8 +303,6 @@ public class BrowserApp extends GeckoApp private ReadingListHelper mReadingListHelper; - private AccountsHelper mAccountsHelper; - private ExtensionPermissionsHelper mExtensionPermissionsHelper; // The tab to be selected on editing mode exit. @@ -839,7 +837,6 @@ public class BrowserApp extends GeckoApp mSharedPreferencesHelper = new SharedPreferencesHelper(appContext); mReadingListHelper = new ReadingListHelper(appContext, profile); - mAccountsHelper = new AccountsHelper(appContext, profile); mExtensionPermissionsHelper = new ExtensionPermissionsHelper(this); if (AppConstants.MOZ_ANDROID_BEAM) { @@ -1575,11 +1572,6 @@ public class BrowserApp extends GeckoApp mReadingListHelper = null; } - if (mAccountsHelper != null) { - mAccountsHelper.uninit(); - mAccountsHelper = null; - } - if (mExtensionPermissionsHelper != null) { mExtensionPermissionsHelper.uninit(); mExtensionPermissionsHelper = null; diff --git a/mobile/android/base/java/org/mozilla/gecko/home/CombinedHistoryPanel.java b/mobile/android/base/java/org/mozilla/gecko/home/CombinedHistoryPanel.java index 4080317cd65a..39905dd950de 100644 --- a/mobile/android/base/java/org/mozilla/gecko/home/CombinedHistoryPanel.java +++ b/mobile/android/base/java/org/mozilla/gecko/home/CombinedHistoryPanel.java @@ -244,10 +244,16 @@ public class CombinedHistoryPanel extends HomeFragment implements RemoteClientsD syncSetupButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - Telemetry.sendUIEvent(TelemetryContract.Event.ACTION, TelemetryContract.Method.BUTTON, "history_syncsetup"); - // This Activity will redirect to the correct Activity as needed. - final Intent intent = new Intent(FxAccountConstants.ACTION_FXA_GET_STARTED); - startActivity(intent); + // Tell the user this action is not supported + final AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity()); + dialogBuilder.setMessage(R.string.sync_not_supported); + dialogBuilder.setNegativeButton(R.string.button_cancel, new AlertDialog.OnClickListener() { + @Override + public void onClick(final DialogInterface dialog, final int which) { + dialog.dismiss(); + } + }); + dialogBuilder.show(); } }); diff --git a/mobile/android/base/java/org/mozilla/gecko/overlays/service/sharemethods/SendTab.java b/mobile/android/base/java/org/mozilla/gecko/overlays/service/sharemethods/SendTab.java index 9382c2ec15f9..5babb74c4f88 100644 --- a/mobile/android/base/java/org/mozilla/gecko/overlays/service/sharemethods/SendTab.java +++ b/mobile/android/base/java/org/mozilla/gecko/overlays/service/sharemethods/SendTab.java @@ -165,7 +165,8 @@ public class SendTab extends ShareMethod { } // Have registered UIs offer to set up a Firefox Account. - setOverrideIntentAction(FxAccountConstants.ACTION_FXA_GET_STARTED); + // Comment for Tor Browser + //setOverrideIntentAction(FxAccountConstants.ACTION_FXA_GET_STARTED); } /** @@ -187,7 +188,8 @@ public class SendTab extends ShareMethod { if (validGUIDs.isEmpty()) { // Guess we'd better override. We have no clients. // This does the broadcast for us. - setOverrideIntentAction(FxAccountConstants.ACTION_FXA_GET_STARTED); + // Comment for Tor Browser + //setOverrideIntentAction(FxAccountConstants.ACTION_FXA_GET_STARTED); return; } diff --git a/mobile/android/base/locales/en-US/torbrowser_strings.dtd b/mobile/android/base/locales/en-US/torbrowser_strings.dtd index d23acc8a033a..b43134a0260b 100644 --- a/mobile/android/base/locales/en-US/torbrowser_strings.dtd +++ b/mobile/android/base/locales/en-US/torbrowser_strings.dtd @@ -3,3 +3,5 @@ - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> <!ENTITY firstrun_urlbar_subtext2 "A modern mobile browser from The Tor Project, the non-profit committed to a free and open web."> + +<!ENTITY sync_not_supported "Sync is not currently supported in Tor Browser on Android"> diff --git a/mobile/android/base/strings.xml.in b/mobile/android/base/strings.xml.in index c328bd6b512a..5453bed65e71 100644 --- a/mobile/android/base/strings.xml.in +++ b/mobile/android/base/strings.xml.in @@ -54,6 +54,8 @@ <string name="firstrun_welcome_restricted">&onboard_start_restricted1;</string> + <string name="sync_not_supported">&sync_not_supported;</string> + <string name="bookmarks_title">&bookmarks_title;</string> <string name="history_title">&history_title;</string> diff --git a/mobile/android/modules/Sanitizer.jsm b/mobile/android/modules/Sanitizer.jsm index f244e4a2008b..d3538d49e07f 100644 --- a/mobile/android/modules/Sanitizer.jsm +++ b/mobile/android/modules/Sanitizer.jsm @@ -183,18 +183,22 @@ Sanitizer.prototype = { sss.clearAll(); // Clear push subscriptions - await new Promise((resolve, reject) => { - let push = Cc["@mozilla.org/push/Service;1"].getService( - Ci.nsIPushService - ); - push.clearForDomain("*", status => { - if (Components.isSuccessCode(status)) { - resolve(); - } else { - reject(new Error("Error clearing push subscriptions: " + status)); - } - }); - }); + //await new Promise((resolve, reject) => { + // let push = Cc["@mozilla.org/push/Service;1"].getService( + // Ci.nsIPushService + // ); + // push.clearForDomain("*", status => { + // if (Components.isSuccessCode(status)) { + // resolve(); + // } else { + // reject(new Error("Error clearing push subscriptions: " + status)); + // } + // }); + //}); + + // Avoid throwing an error because Ci.nsIPushService isn't implemented + // All other clearing actions should succeed if we arrive here. + Promise.resolve(); TelemetryStopwatch.finish("FX_SANITIZE_SITESETTINGS", refObj); }, @@ -491,14 +495,17 @@ Sanitizer.prototype = { }, canClear: function(aCallback) { - Accounts.anySyncAccountsExist() - .then(aCallback) - .catch(function(err) { - Cu.reportError("Java-side synced tabs clearing failed: " + err); - aCallback(false); - }); - }, - }, + //Accounts.anySyncAccountsExist() + // .then(aCallback) + // .catch(function(err) { + // Cu.reportError("Java-side synced tabs clearing failed: " + err); + // aCallback(false); + // }); + + // We can't clear syncedTabs because Sync is non-functional + aCallback(false); + } + } }, }; diff --git a/mobile/android/services/src/main/java/org/mozilla/gecko/fxa/FirefoxAccounts.java b/mobile/android/services/src/main/java/org/mozilla/gecko/fxa/FirefoxAccounts.java index 74b10c477237..a207f9b237ad 100644 --- a/mobile/android/services/src/main/java/org/mozilla/gecko/fxa/FirefoxAccounts.java +++ b/mobile/android/services/src/main/java/org/mozilla/gecko/fxa/FirefoxAccounts.java @@ -7,6 +7,7 @@ package org.mozilla.gecko.fxa; import java.io.File; import java.util.concurrent.CountDownLatch; +import org.mozilla.gecko.AppConstants; import org.mozilla.gecko.background.common.log.Logger; import org.mozilla.gecko.fxa.authenticator.AccountPickler; import org.mozilla.gecko.fxa.authenticator.AndroidFxAccount; @@ -49,15 +50,22 @@ public class FirefoxAccounts { * @return Firefox account objects. */ public static Account[] getFirefoxAccounts(final Context context) { - final Account[] accounts = - AccountManager.get(context).getAccountsByType(FxAccountConstants.ACCOUNT_TYPE); - if (accounts.length > 0) { - FirefoxAccountsUtils.optionallySeparateAccountsDuringFirstRun(context, accounts); - return accounts; - } + if (AppConstants.isTorBrowser()) { + return new Account[0]; + } else { + // TBA: Conditionally disable this at run-time. + // XXX This will throw a java.lang.SecurityException because we don't declare + // the android.permission.GET_ACCOUNTS permission. + final Account[] accounts = + AccountManager.get(context).getAccountsByType(FxAccountConstants.ACCOUNT_TYPE); + if (accounts.length > 0) { + FirefoxAccountsUtils.optionallySeparateAccountsDuringFirstRun(context, accounts); + return accounts; + } - final Account pickledAccount = getPickledAccount(context); - return (pickledAccount != null) ? new Account[] {pickledAccount} : new Account[0]; + final Account pickledAccount = getPickledAccount(context); + return (pickledAccount != null) ? new Account[] {pickledAccount} : new Account[0]; + } } private static Account getPickledAccount(final Context context) { @@ -111,9 +119,14 @@ public class FirefoxAccounts { } public static void logSyncOptions(Bundle syncOptions) { - final boolean scheduleNow = syncOptions.getBoolean(ContentResolver.SYNC_EXTRAS_IGNORE_BACKOFF, false); + if (AppConstants.isTorBrowser()) { + // Don't log an erroneous message, this'll only confuse someone looking at the logs. + return; + } else { + final boolean scheduleNow = syncOptions.getBoolean(ContentResolver.SYNC_EXTRAS_IGNORE_BACKOFF, false); - Logger.info(LOG_TAG, "Sync options -- scheduling now: " + scheduleNow); + Logger.info(LOG_TAG, "Sync options -- scheduling now: " + scheduleNow); + } } public static void requestImmediateSync(final Account account, String[] stagesToSync, String[] stagesToSkip, boolean ignoreSettings) { @@ -145,28 +158,32 @@ public class FirefoxAccounts { * @param stagesToSkip stage names to skip. */ protected static void requestSync(final Account account, final Bundle syncOptions, String[] stagesToSync, String[] stagesToSkip) { - if (account == null) { - throw new IllegalArgumentException("account must not be null"); - } - if (syncOptions == null) { - throw new IllegalArgumentException("syncOptions must not be null"); - } + if (AppConstants.isTorBrowser()) { + return; + } else { + if (account == null) { + throw new IllegalArgumentException("account must not be null"); + } + if (syncOptions == null) { + throw new IllegalArgumentException("syncOptions must not be null"); + } - Utils.putStageNamesToSync(syncOptions, stagesToSync, stagesToSkip); + Utils.putStageNamesToSync(syncOptions, stagesToSync, stagesToSkip); - Logger.info(LOG_TAG, "Requesting sync."); - logSyncOptions(syncOptions); + Logger.info(LOG_TAG, "Requesting sync."); + logSyncOptions(syncOptions); - // We get strict mode warnings on some devices, so make the request on a - // background thread. - ThreadPool.run(new Runnable() { - @Override - public void run() { - for (String authority : AndroidFxAccount.DEFAULT_AUTHORITIES_TO_SYNC_AUTOMATICALLY_MAP.keySet()) { - ContentResolver.requestSync(account, authority, syncOptions); + // We get strict mode warnings on some devices, so make the request on a + // background thread. + ThreadPool.run(new Runnable() { + @Override + public void run() { + for (String authority : AndroidFxAccount.DEFAULT_AUTHORITIES_TO_SYNC_AUTOMATICALLY_MAP.keySet()) { + ContentResolver.requestSync(account, authority, syncOptions); + } } - } - }); + }); + } } /** diff --git a/mobile/android/services/src/main/java/org/mozilla/gecko/fxa/authenticator/AndroidFxAccount.java b/mobile/android/services/src/main/java/org/mozilla/gecko/fxa/authenticator/AndroidFxAccount.java index 4562559afc44..8d2b8bd2cd4a 100644 --- a/mobile/android/services/src/main/java/org/mozilla/gecko/fxa/authenticator/AndroidFxAccount.java +++ b/mobile/android/services/src/main/java/org/mozilla/gecko/fxa/authenticator/AndroidFxAccount.java @@ -29,6 +29,7 @@ import android.support.v4.content.LocalBroadcastManager; import android.text.TextUtils; import android.util.Log; +import org.mozilla.gecko.AppConstants; import org.mozilla.gecko.background.common.GlobalConstants; import org.mozilla.gecko.background.common.log.Logger; import org.mozilla.gecko.background.fxa.FxAccountUtils; @@ -708,7 +709,11 @@ public class AndroidFxAccount { * @param ignoreSettings whether we should check if syncing is allowed via in-app or system settings. */ public void requestImmediateSync(String[] stagesToSync, String[] stagesToSkip, boolean ignoreSettings) { - FirefoxAccounts.requestImmediateSync(getAndroidAccount(), stagesToSync, stagesToSkip, ignoreSettings); + if (AppConstants.isTorBrowser()) { + return; + } else { + FirefoxAccounts.requestImmediateSync(getAndroidAccount(), stagesToSync, stagesToSkip, ignoreSettings); + } } /** @@ -719,7 +724,11 @@ public class AndroidFxAccount { * @param stagesToSkip stage names to skip; can be null to skip <b>no</b> known stages. */ public void requestEventualSync(String[] stagesToSync, String[] stagesToSkip) { - FirefoxAccounts.requestEventualSync(getAndroidAccount(), stagesToSync, stagesToSkip); + if (AppConstants.isTorBrowser()) { + return; + } else { + FirefoxAccounts.requestEventualSync(getAndroidAccount(), stagesToSync, stagesToSkip); + } } public synchronized void setState(State state) { [View Less]
1 0
0 0
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Do not register Stumbler listener at start up
by gk@torproject.org 31 Aug '19

31 Aug '19
commit cee7a826fa47d7155ac902f093b6f7c07a4c0e55 Author: Matthew Finkel <Matthew.Finkel(a)gmail.com> Date: Wed Apr 25 01:55:44 2018 +0000 Bug 25741 - TBA: Do not register Stumbler listener at start up --- mobile/android/base/java/org/mozilla/gecko/GeckoApp.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/mobile/android/base/java/org/mozilla/gecko/GeckoApp.java b/mobile/android/base/java/org/mozilla/gecko/GeckoApp.java index 4f09e065c0c3..… [View More]246ce55d0d23 100644 --- a/mobile/android/base/java/org/mozilla/gecko/GeckoApp.java +++ b/mobile/android/base/java/org/mozilla/gecko/GeckoApp.java @@ -96,7 +96,8 @@ import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import org.mozilla.geckoview.GeckoViewBridge; -import org.mozilla.mozstumbler.service.mainthread.SafeReceiver; +// SafeReceiver excluded at compile-time +//import org.mozilla.mozstumbler.service.mainthread.SafeReceiver; import java.io.File; import java.util.ArrayList; @@ -1008,9 +1009,13 @@ public abstract class GeckoApp extends GeckoActivity // Tell Stumbler to register a local broadcast listener to listen for preference intents. // We do this via intents since we can't easily access Stumbler directly, // as it might be compiled outside of Fennec. - final Intent stumblerIntent = new Intent(getApplicationContext(), SafeReceiver.class); - stumblerIntent.setAction(INTENT_REGISTER_STUMBLER_LISTENER); - getApplicationContext().sendBroadcast(stumblerIntent); + // Tor Browser: We don't want Fennec using or receiving Stumbler + // SafeReceiver excluded at compile-time + //if (!AppConstants.isTorBrowser()) { + // final Intent stumblerIntent = new Intent(getApplicationContext(), SafeReceiver.class); + // stumblerIntent.setAction(INTENT_REGISTER_STUMBLER_LISTENER); + // getApplicationContext().sendBroadcast(stumblerIntent); + //} // Did the OS locale change while we were backgrounded? If so, // we need to die so that Gecko will re-init add-ons that touch @@ -1071,6 +1076,7 @@ public abstract class GeckoApp extends GeckoActivity final String uri = getURIFromIntent(intent); if (!TextUtils.isEmpty(uri)) { // Start a speculative connection as soon as Gecko loads. + // XXX TBA: Check this doesn't leak, and is blocked by Tor bootstrap GeckoThread.speculativeConnect(uri); } } [View Less]
1 0
0 0
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Disable telemetry and experiments
by gk@torproject.org 31 Aug '19

31 Aug '19
commit bb1e2de8f19b000acd81f15ea2e0d19ba276b11d Author: Matthew Finkel <Matthew.Finkel(a)gmail.com> Date: Mon Apr 9 21:57:22 2018 +0000 Bug 25741 - TBA: Disable telemetry and experiments --- mobile/android/base/java/org/mozilla/gecko/BrowserApp.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java index 80981eb87136..e7d490a552fe 100644 --… [View More]- a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java +++ b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java @@ -64,6 +64,7 @@ import android.widget.Button; import android.widget.ListView; import android.widget.ViewFlipper; +import org.mozilla.gecko.AppConstants; import org.mozilla.gecko.AppConstants.Versions; import org.mozilla.gecko.DynamicToolbar.VisibilityTransition; import org.mozilla.gecko.Tabs.TabEvents; @@ -631,7 +632,11 @@ public class BrowserApp extends GeckoApp showSplashScreen = true; safeStartingIntent = new SafeIntent(getIntent()); - isInAutomation = IntentUtils.getIsInAutomationFromEnvironment(safeStartingIntent); + // TBA: Disable Switchboard testing experiments and + // Telemetry-uploading by abusing the isInAutomation detection. + isInAutomation = + (IntentUtils.getIsInAutomationFromEnvironment(safeStartingIntent) + || AppConstants.isTorBrowser()); GeckoProfile.setIntentArgs(safeStartingIntent.getStringExtra("args")); [View Less]
1 0
0 0
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Disable QR Code reader by default
by gk@torproject.org 31 Aug '19

31 Aug '19
commit ea9068b111c5454b91b2017383c39cc4ac7bf1f2 Author: Matthew Finkel <Matthew.Finkel(a)gmail.com> Date: Mon Apr 9 22:36:53 2018 +0000 Bug 25741 - TBA: Disable QR Code reader by default This is another accessibility and usability concern, so we allow this as an opt-in. --- mobile/android/app/src/main/res/xml/preferences_accessibility.xml | 2 +- .../android/base/java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java | 2 +- 2 files changed, 2 insertions(+), 2 … [View More]deletions(-) diff --git a/mobile/android/app/src/main/res/xml/preferences_accessibility.xml b/mobile/android/app/src/main/res/xml/preferences_accessibility.xml index c82006ee2473..c5afa4d8d644 100644 --- a/mobile/android/app/src/main/res/xml/preferences_accessibility.xml +++ b/mobile/android/app/src/main/res/xml/preferences_accessibility.xml @@ -23,6 +23,6 @@ <SwitchPreference android:key="android.not_a_preference.qrcode_enabled" android:title="@string/pref_qrcode_enabled" android:summary="@string/pref_qrcode_enabled_summary" - android:defaultValue="true"/> + android:defaultValue="false"/> </PreferenceScreen> diff --git a/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java b/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java index 1d53de172c47..a28847285350 100644 --- a/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java +++ b/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java @@ -324,7 +324,7 @@ public class ToolbarEditLayout extends ThemedLinearLayout { return false; } return GeckoSharedPrefs.forApp(context) - .getBoolean(GeckoPreferences.PREFS_QRCODE_ENABLED, true); + .getBoolean(GeckoPreferences.PREFS_QRCODE_ENABLED, false); } private void launchQRCodeReader() { [View Less]
1 0
0 0
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Conditionally require WIFI and NETWORK permissions
by gk@torproject.org 31 Aug '19

31 Aug '19
commit c60818fd0b1922514fab5d4d6dbef05d0ae70217 Author: Matthew Finkel <Matthew.Finkel(a)gmail.com> Date: Wed Apr 11 17:52:59 2018 +0000 Bug 25741 - TBA: Conditionally require WIFI and NETWORK permissions Only require the {ACCESS,CHANGE}_WIFI_STATE and ACCESS_NETWORK_STATE permissions if MOZ_ANDROID_NETWORK_STATE is defined in the preprocessor. Also: Bug 25741 - TBA: Conditionally require *_LOCATION permissions Only require the {FINE,COURSE}… [View More]_LOCATION permissions if MOZ_ANDROID_LOCATION is defined in the preprocessor. Also include location features (with gps). Bug 25741 - TBA: Move CAMERA permission within MOZ_WEBRTC Require the CAMERA permissions if MOZ_WEBRTC is defined in the preprocessor. Bug 25741 - TBA: Only include GCM permissions if we want them Bug 26826 - Disable tab queue and delete SYSTEM_ALERT_WINDOW permission 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. --- .../app/src/main/res/xml/preferences_general.xml | 1 + .../src/main/res/xml/preferences_general_tablet.xml | 1 + .../android/base/FennecManifest_permissions.xml.in | 18 ++++++++++++++---- .../android/geckoview/src/main/AndroidManifest.xml | 20 +++++++++++++++++--- mobile/android/moz.configure | 8 ++++++++ .../FxAccountAndroidManifest_permissions.xml.in | 2 ++ mobile/android/torbrowser.configure | 3 +++ 7 files changed, 46 insertions(+), 7 deletions(-) diff --git a/mobile/android/app/src/main/res/xml/preferences_general.xml b/mobile/android/app/src/main/res/xml/preferences_general.xml index f148ae61b169..ef739db0c3d8 100644 --- a/mobile/android/app/src/main/res/xml/preferences_general.xml +++ b/mobile/android/app/src/main/res/xml/preferences_general.xml @@ -31,6 +31,7 @@ <SwitchPreference android:key="android.not_a_preference.tab_queue" android:title="@string/pref_tab_queue_title" android:summary="@string/pref_tab_queue_summary" + android:selectable="false" android:defaultValue="false" /> <SwitchPreference android:key="android.not_a_preference.compact_tabs" diff --git a/mobile/android/app/src/main/res/xml/preferences_general_tablet.xml b/mobile/android/app/src/main/res/xml/preferences_general_tablet.xml index 903e9e315f59..aee9937f9759 100644 --- a/mobile/android/app/src/main/res/xml/preferences_general_tablet.xml +++ b/mobile/android/app/src/main/res/xml/preferences_general_tablet.xml @@ -43,6 +43,7 @@ <SwitchPreference android:key="android.not_a_preference.tab_queue" android:title="@string/pref_tab_queue_title" android:summary="@string/pref_tab_queue_summary" + android:selectable="false" android:defaultValue="false" /> </PreferenceScreen> diff --git a/mobile/android/base/FennecManifest_permissions.xml.in b/mobile/android/base/FennecManifest_permissions.xml.in index f3e43bb4e3ca..796e28777aad 100644 --- a/mobile/android/base/FennecManifest_permissions.xml.in +++ b/mobile/android/base/FennecManifest_permissions.xml.in @@ -8,14 +8,23 @@ them during the same release, which should be Fennec 48. Therefore we decouple the push permission from MOZ_ANDROID_GCM to let it ride ahead (potentially) of the push feature. --> + +#ifdef MOZ_ANDROID_GCM #include GcmAndroidManifest_permissions.xml.in +#endif #include SamsungAppStoreManifest_permissions.xml.in +#ifdef MOZ_ANDROID_NETWORK_STATE + <!-- Android WIFI state --> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> +#endif + +#ifdef MOZ_ANDROID_LOCATION <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> +#endif <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.INTERNET"/> #ifdef MOZ_ANDROID_MLS_STUMBLER @@ -25,7 +34,9 @@ <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/> <uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"/> +#ifdef MOZ_ANDROID_LOCATION <uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/> +#endif <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/> <uses-permission android:name="android.permission.WAKE_LOCK"/> @@ -34,13 +45,12 @@ <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" /> #endif +#ifdef MOZ_ANDROID_LOCATION <uses-feature android:name="android.hardware.location" android:required="false"/> <uses-feature android:name="android.hardware.location.gps" android:required="false"/> +#endif <uses-feature android:name="android.hardware.touchscreen"/> - <!-- Tab Queue --> - <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/> - <!-- To be able to install updates and other downloaded APKs on API 26+ --> <uses-permission-sdk-23 android:name="android.permission.REQUEST_INSTALL_PACKAGES"/> @@ -55,10 +65,10 @@ <uses-feature android:name="android.hardware.audio.low_latency" android:required="false"/> <uses-feature android:name="android.hardware.camera.any" android:required="false"/> <uses-feature android:name="android.hardware.microphone" android:required="false"/> -#endif <uses-permission android:name="android.permission.CAMERA" /> <uses-feature android:name="android.hardware.camera" android:required="false"/> <uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/> +#endif <!-- App requires OpenGL ES 2.0 --> <uses-feature android:glEsVersion="0x00020000" android:required="true" /> diff --git a/mobile/android/geckoview/src/main/AndroidManifest.xml b/mobile/android/geckoview/src/main/AndroidManifest.xml index a14bb6b1750e..0d93ee53ee4b 100644 --- a/mobile/android/geckoview/src/main/AndroidManifest.xml +++ b/mobile/android/geckoview/src/main/AndroidManifest.xml @@ -2,20 +2,32 @@ <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.mozilla.geckoview"> +<!--#ifdef MOZ_ANDROID_NETWORK_STATE--> + <!-- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> + --> +<!--#endif--> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.WAKE_LOCK"/> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> +<!--#ifdef MOZ_ANDROID_LOCATION--> + <!-- <uses-feature android:name="android.hardware.location" android:required="false"/> <uses-feature android:name="android.hardware.location.gps" android:required="false"/> + --> +<!--#endif--> <uses-feature android:name="android.hardware.touchscreen" android:required="false"/> +<!--#ifdef MOZ_WEBRTC--> + <!-- TODO preprocess AndroidManifest.xml so that we can + conditionally include WebRTC permissions based on MOZ_WEBRTC. --> + <!-- <uses-feature android:name="android.hardware.camera" android:required="false"/> @@ -24,14 +36,16 @@ android:required="false"/> <uses-feature - android:name="android.hardware.audio.low_latency" + android:name="android.hardware.camera.any" android:required="false"/> <uses-feature - android:name="android.hardware.microphone" + android:name="android.hardware.audio.low_latency" android:required="false"/> <uses-feature - android:name="android.hardware.camera.any" + android:name="android.hardware.microphone" android:required="false"/> + --> +<!--#endif--> <!-- GeckoView requires OpenGL ES 2.0 --> <uses-feature diff --git a/mobile/android/moz.configure b/mobile/android/moz.configure index def87ba268f1..c8ed3a9a59e1 100644 --- a/mobile/android/moz.configure +++ b/mobile/android/moz.configure @@ -193,3 +193,11 @@ def check_android_gcm(android_gcm, if not google_play_services: die('You must specify --with-google-play-services when' ' building with MOZ_ANDROID_GCM=1') + +project_flag('MOZ_ANDROID_NETWORK_STATE', + help='Include permission for accessing WiFi/network state on Android', + default=False) + +project_flag('MOZ_ANDROID_LOCATION', + help='Include permission for accessing fine and course-grain Location on Android', + default=False) diff --git a/mobile/android/services/manifests/FxAccountAndroidManifest_permissions.xml.in b/mobile/android/services/manifests/FxAccountAndroidManifest_permissions.xml.in index d5c7e3e5c7dc..8498b8015855 100644 --- a/mobile/android/services/manifests/FxAccountAndroidManifest_permissions.xml.in +++ b/mobile/android/services/manifests/FxAccountAndroidManifest_permissions.xml.in @@ -1,5 +1,7 @@ <uses-permission android:name="android.permission.GET_ACCOUNTS" /> +#ifdef MOZ_ANDROID_NETWORK_STATE <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> +#endif <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" /> <uses-permission android:name="android.permission.USE_CREDENTIALS" /> <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" /> diff --git a/mobile/android/torbrowser.configure b/mobile/android/torbrowser.configure index 5e3ab67dca6a..ac30fde888a6 100644 --- a/mobile/android/torbrowser.configure +++ b/mobile/android/torbrowser.configure @@ -41,3 +41,6 @@ imply_option('MOZ_SERVICES_HEALTHREPORT', False) # them here, as well. #imply_option('MOZ_TELEMETRY_REPORTING', False) #imply_option('MOZ_DATA_REPORTING', False) + +imply_option('MOZ_ANDROID_NETWORK_STATE', False); +imply_option('MOZ_ANDROID_LOCATION', False); [View Less]
1 0
0 0
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Do not save browsing history by default
by gk@torproject.org 31 Aug '19

31 Aug '19
commit 02f75df3521e77f1515bb195a611e59e35578302 Author: Matthew Finkel <Matthew.Finkel(a)gmail.com> Date: Wed Apr 11 18:46:02 2018 +0000 Bug 25741 - TBA: Do not save browsing history by default --- mobile/android/app/src/main/res/xml-v11/preferences_search.xml | 2 +- mobile/android/app/src/main/res/xml/preferences_search.xml | 2 +- mobile/android/base/java/org/mozilla/gecko/home/BrowserSearch.java | 2 +- mobile/android/base/java/org/mozilla/gecko/home/… [View More]SearchEngineRow.java | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mobile/android/app/src/main/res/xml-v11/preferences_search.xml b/mobile/android/app/src/main/res/xml-v11/preferences_search.xml index 937b05b617c6..a58bb7cece44 100644 --- a/mobile/android/app/src/main/res/xml-v11/preferences_search.xml +++ b/mobile/android/app/src/main/res/xml-v11/preferences_search.xml @@ -27,7 +27,7 @@ <CheckBoxPreference android:key="android.not_a_preference.search.search_history.enabled" android:title="@string/pref_history_search_suggestions" - android:defaultValue="true" + android:defaultValue="false" android:persistent="true" /> </PreferenceScreen> diff --git a/mobile/android/app/src/main/res/xml/preferences_search.xml b/mobile/android/app/src/main/res/xml/preferences_search.xml index 440167fe5e2a..fc8c258821e1 100644 --- a/mobile/android/app/src/main/res/xml/preferences_search.xml +++ b/mobile/android/app/src/main/res/xml/preferences_search.xml @@ -34,7 +34,7 @@ <CheckBoxPreference android:key="android.not_a_preference.search.search_history.enabled" android:title="@string/pref_history_search_suggestions" - android:defaultValue="true" + android:defaultValue="false" android:persistent="true" /> </PreferenceScreen> diff --git a/mobile/android/base/java/org/mozilla/gecko/home/BrowserSearch.java b/mobile/android/base/java/org/mozilla/gecko/home/BrowserSearch.java index 386f0494b75c..9e415cb454d7 100644 --- a/mobile/android/base/java/org/mozilla/gecko/home/BrowserSearch.java +++ b/mobile/android/base/java/org/mozilla/gecko/home/BrowserSearch.java @@ -278,7 +278,7 @@ public class BrowserSearch extends HomeFragment super.onResume(); final SharedPreferences prefs = GeckoSharedPrefs.forApp(getContext()); - mSavedSearchesEnabled = prefs.getBoolean(GeckoPreferences.PREFS_HISTORY_SAVED_SEARCH, true); + mSavedSearchesEnabled = prefs.getBoolean(GeckoPreferences.PREFS_HISTORY_SAVED_SEARCH, false); // Fetch engines if we need to. if (mSearchEngines.isEmpty() || !Locale.getDefault().equals(mLastLocale)) { diff --git a/mobile/android/base/java/org/mozilla/gecko/home/SearchEngineRow.java b/mobile/android/base/java/org/mozilla/gecko/home/SearchEngineRow.java index 8d7eec1d839a..1d90f7bacf41 100644 --- a/mobile/android/base/java/org/mozilla/gecko/home/SearchEngineRow.java +++ b/mobile/android/base/java/org/mozilla/gecko/home/SearchEngineRow.java @@ -378,7 +378,7 @@ class SearchEngineRow extends ThemedRelativeLayout { final int recycledSuggestionCount = mSuggestionView.getChildCount(); final SharedPreferences prefs = GeckoSharedPrefs.forApp(getContext()); - final boolean savedSearchesEnabled = prefs.getBoolean(GeckoPreferences.PREFS_HISTORY_SAVED_SEARCH, true); + final boolean savedSearchesEnabled = prefs.getBoolean(GeckoPreferences.PREFS_HISTORY_SAVED_SEARCH, false); // Remove duplicates of search engine suggestions from saved searches. List<String> searchHistorySuggestions = (rawSearchHistorySuggestions != null) ? rawSearchHistorySuggestions : new ArrayList<String>(); [View Less]
1 0
0 0
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Disable the microphone by default
by gk@torproject.org 31 Aug '19

31 Aug '19
commit 6cb0b508fb19dda23310263620c9d8d07c14c7d2 Author: Matthew Finkel <Matthew.Finkel(a)gmail.com> Date: Mon Apr 9 22:20:16 2018 +0000 Bug 25741 - TBA: Disable the microphone by default Deactivating this is an accessibility concern because this is used for voice dictation, so users should have the option of re-enabling this. This uses the Android Speech API. --- mobile/android/app/src/main/res/xml/preferences_accessibility.xml | 2 +- .../android/base/… [View More]java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mobile/android/app/src/main/res/xml/preferences_accessibility.xml b/mobile/android/app/src/main/res/xml/preferences_accessibility.xml index c4fe86ed62c3..c82006ee2473 100644 --- a/mobile/android/app/src/main/res/xml/preferences_accessibility.xml +++ b/mobile/android/app/src/main/res/xml/preferences_accessibility.xml @@ -18,7 +18,7 @@ <SwitchPreference android:key="android.not_a_preference.voice_input_enabled" android:title="@string/pref_voice_input" android:summary="@string/pref_voice_input_summary" - android:defaultValue="true"/> + android:defaultValue="false"/> <SwitchPreference android:key="android.not_a_preference.qrcode_enabled" android:title="@string/pref_qrcode_enabled" diff --git a/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java b/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java index 7c9a99fc5432..1d53de172c47 100644 --- a/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java +++ b/mobile/android/base/java/org/mozilla/gecko/toolbar/ToolbarEditLayout.java @@ -287,7 +287,7 @@ public class ToolbarEditLayout extends ThemedLinearLayout { return false; } return GeckoSharedPrefs.forApp(context) - .getBoolean(GeckoPreferences.PREFS_VOICE_INPUT_ENABLED, true); + .getBoolean(GeckoPreferences.PREFS_VOICE_INPUT_ENABLED, false); } void launchVoiceRecognizer() { [View Less]
1 0
0 0
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Adjust the User Agent String so it doesn't leak Android version
by gk@torproject.org 31 Aug '19

31 Aug '19
commit 268ff9c9220b648975f533afa8b488cca2c36dea Author: Matthew Finkel <Matthew.Finkel(a)gmail.com> Date: Thu Apr 26 15:17:42 2018 +0000 Bug 25741 - TBA: Adjust the User Agent String so it doesn't leak Android version --- mobile/android/base/AppConstants.java.in | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/mobile/android/base/AppConstants.java.in b/mobile/android/base/AppConstants.java.in index bfc594e7e801..26047188841c 100644 --- a/… [View More]mobile/android/base/AppConstants.java.in +++ b/mobile/android/base/AppConstants.java.in @@ -145,20 +145,33 @@ public class AppConstants { public static final String OS_TARGET = "@OS_TARGET@"; public static final String TARGET_XPCOM_ABI = "@TARGET_XPCOM_ABI@"; - public static final String USER_AGENT_BOT_LIKE = "Redirector/" + AppConstants.MOZ_APP_VERSION + - " (Android; rv:" + AppConstants.MOZ_APP_VERSION + ")"; - - public static final String USER_AGENT_FENNEC_MOBILE = "Mozilla/5.0 (Android " + + // TBA: Commented out, not used. + //public static final String USER_AGENT_BOT_LIKE = "Redirector/" + AppConstants.MOZ_APP_VERSION + + // " (Android; rv:" + AppConstants.MOZ_APP_VERSION + ")"; + + // TBA: Fennec's UAS now contains the Android version. Hard-code all users UAS + // so it matches the RFP string from necko. + // toolkit/components/resistfingerprinting/nsRFPService.h + public static final String USER_AGENT_FENNEC_MOBILE = +//#ifdef TOR_BROWSER_VERSION + "Mozilla/5.0 (Android 6.0; Mobile; rv:68.0) Gecko/20100101 Firefox/68.0"; +//#else + "Mozilla/5.0 (Android " + Build.VERSION.RELEASE + "; Mobile; rv:" + AppConstants.MOZ_APP_VERSION + ") Gecko/" + AppConstants.MOZ_APP_VERSION + " Firefox/" + AppConstants.MOZ_APP_VERSION; +//#endif +//#ifdef TOR_BROWSER_VERSION + public static final String USER_AGENT_FENNEC_TABLET = USER_AGENT_FENNEC_MOBILE; +//#else public static final String USER_AGENT_FENNEC_TABLET = "Mozilla/5.0 (Android " + Build.VERSION.RELEASE + "; Tablet; rv:" + AppConstants.MOZ_APP_VERSION + ") Gecko/" + AppConstants.MOZ_APP_VERSION + " Firefox/" + AppConstants.MOZ_APP_VERSION; +//#endif public static final boolean MOZ_ANDROID_ANR_REPORTER = //#ifdef MOZ_ANDROID_ANR_REPORTER [View Less]
1 0
0 0
[tor-browser/tor-browser-68.1.0esr-9.0-1] Bug 25741 - TBA: Disable all data reporting by default
by gk@torproject.org 31 Aug '19

31 Aug '19
commit 2d3e4864df1cec08bf6f085e21cdbdcf08f57c8c Author: Matthew Finkel <Matthew.Finkel(a)gmail.com> Date: Wed Apr 11 20:37:43 2018 +0000 Bug 25741 - TBA: Disable all data reporting by default This includes: Telemetry Geo-Location (Wi-Fi, Cellular location data, etc) Health Report --- mobile/android/app/src/main/res/xml/preferences_privacy.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mobile/android/app/src/main/res/xml/… [View More]preferences_privacy.xml b/mobile/android/app/src/main/res/xml/preferences_privacy.xml index 68a2066976c8..23be2f12121b 100644 --- a/mobile/android/app/src/main/res/xml/preferences_privacy.xml +++ b/mobile/android/app/src/main/res/xml/preferences_privacy.xml @@ -84,7 +84,8 @@ <CheckBoxPreference android:key="android.not_a_preference.app.geo.reportdata" android:title="@string/datareporting_wifi_title" - android:summary="@string/datareporting_wifi_geolocation_summary" /> + android:summary="@string/datareporting_wifi_geolocation_summary" + android:defaultValue="false" /> <org.mozilla.gecko.preferences.AlignRightLinkPreference android:key="android.not_a_preference.geo.learn_more" android:title="@string/pref_learn_more" @@ -94,7 +95,7 @@ <CheckBoxPreference android:key="android.not_a_preference.healthreport.uploadEnabled" android:title="@string/datareporting_fhr_title" android:summary="@string/datareporting_fhr_summary2" - android:defaultValue="true" /> + android:defaultValue="false" /> </PreferenceCategory> [View Less]
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 1355
  • 1356
  • 1357
  • 1358
  • 1359
  • 1360
  • 1361
  • ...
  • 1857
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.