From 62497220952a832824ac6425ac5301ca5fe198e6 Mon Sep 17 00:00:00 2001 From: Matthew Finkel Date: Thu, 14 Mar 2019 02:03:26 +0000 Subject: [PATCH] Bug 28329 - Part 4. Add new Tor Bootstrapping and configuration screens Also: Bug 30214 - Kill background thread when Activity is null Bug 30239 - Render Fragments after crash Bug 29982 - Force single-pane UI on Tor Preferences --- .../app/src/main/res/layout/gecko_app.xml | 5 + .../preference_tor_network_bridge_summary.xml | 25 + ...preference_tor_network_bridges_enabled.xml | 85 ++ ...nce_tor_network_bridges_enabled_switch.xml | 15 + .../preference_tor_network_provide_bridge.xml | 89 ++ ...ference_tor_network_select_bridge_type.xml | 128 +++ .../app/src/main/res/layout/tor_bootstrap.xml | 83 ++ .../tor_bootstrap_animation_container.xml | 20 + .../src/main/res/layout/tor_bootstrap_log.xml | 37 + .../res/xml/preferences_tor_network_main.xml | 15 + ...preferences_tor_network_provide_bridge.xml | 27 + ...erences_tor_network_select_bridge_type.xml | 17 + mobile/android/base/AndroidManifest.xml.in | 5 + .../java/org/mozilla/gecko/BrowserApp.java | 52 +- .../TorBootstrapAnimationContainer.java | 82 ++ .../torbootstrap/TorBootstrapLogPanel.java | 54 + .../torbootstrap/TorBootstrapLogger.java | 17 + .../gecko/torbootstrap/TorBootstrapPager.java | 203 ++++ .../torbootstrap/TorBootstrapPagerConfig.java | 48 + .../gecko/torbootstrap/TorBootstrapPanel.java | 575 +++++++++++ .../torbootstrap/TorLogEventListener.java | 128 +++ .../gecko/torbootstrap/TorPreferences.java | 975 ++++++++++++++++++ 22 files changed, 2680 insertions(+), 5 deletions(-) create mode 100644 mobile/android/app/src/main/res/layout/preference_tor_network_bridge_summary.xml create mode 100644 mobile/android/app/src/main/res/layout/preference_tor_network_bridges_enabled.xml create mode 100644 mobile/android/app/src/main/res/layout/preference_tor_network_bridges_enabled_switch.xml create mode 100644 mobile/android/app/src/main/res/layout/preference_tor_network_provide_bridge.xml create mode 100644 mobile/android/app/src/main/res/layout/preference_tor_network_select_bridge_type.xml create mode 100644 mobile/android/app/src/main/res/layout/tor_bootstrap.xml create mode 100644 mobile/android/app/src/main/res/layout/tor_bootstrap_animation_container.xml create mode 100644 mobile/android/app/src/main/res/layout/tor_bootstrap_log.xml create mode 100644 mobile/android/app/src/main/res/xml/preferences_tor_network_main.xml create mode 100644 mobile/android/app/src/main/res/xml/preferences_tor_network_provide_bridge.xml create mode 100644 mobile/android/app/src/main/res/xml/preferences_tor_network_select_bridge_type.xml create mode 100644 mobile/android/base/java/org/mozilla/gecko/torbootstrap/TorBootstrapAnimationContainer.java create mode 100644 mobile/android/base/java/org/mozilla/gecko/torbootstrap/TorBootstrapLogPanel.java create mode 100644 mobile/android/base/java/org/mozilla/gecko/torbootstrap/TorBootstrapLogger.java create mode 100644 mobile/android/base/java/org/mozilla/gecko/torbootstrap/TorBootstrapPager.java create mode 100644 mobile/android/base/java/org/mozilla/gecko/torbootstrap/TorBootstrapPagerConfig.java create mode 100644 mobile/android/base/java/org/mozilla/gecko/torbootstrap/TorBootstrapPanel.java create mode 100644 mobile/android/base/java/org/mozilla/gecko/torbootstrap/TorLogEventListener.java create mode 100644 mobile/android/base/java/org/mozilla/gecko/torbootstrap/TorPreferences.java diff --git a/mobile/android/app/src/main/res/layout/gecko_app.xml b/mobile/android/app/src/main/res/layout/gecko_app.xml index f48e7fc9f3bee..d6a6133496e2d 100644 --- a/mobile/android/app/src/main/res/layout/gecko_app.xml +++ b/mobile/android/app/src/main/res/layout/gecko_app.xml @@ -63,6 +63,11 @@ android:layout_width="match_parent" android:layout_height="match_parent"/> + + + + + + + + diff --git a/mobile/android/app/src/main/res/layout/preference_tor_network_bridges_enabled.xml b/mobile/android/app/src/main/res/layout/preference_tor_network_bridges_enabled.xml new file mode 100644 index 0000000000000..8d8e4f320ba78 --- /dev/null +++ b/mobile/android/app/src/main/res/layout/preference_tor_network_bridges_enabled.xml @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + diff --git a/mobile/android/app/src/main/res/layout/preference_tor_network_bridges_enabled_switch.xml b/mobile/android/app/src/main/res/layout/preference_tor_network_bridges_enabled_switch.xml new file mode 100644 index 0000000000000..3ab276f0916c8 --- /dev/null +++ b/mobile/android/app/src/main/res/layout/preference_tor_network_bridges_enabled_switch.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/mobile/android/app/src/main/res/layout/preference_tor_network_provide_bridge.xml b/mobile/android/app/src/main/res/layout/preference_tor_network_provide_bridge.xml new file mode 100644 index 0000000000000..9e72b44ae7349 --- /dev/null +++ b/mobile/android/app/src/main/res/layout/preference_tor_network_provide_bridge.xml @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + diff --git a/mobile/android/app/src/main/res/layout/preference_tor_network_select_bridge_type.xml b/mobile/android/app/src/main/res/layout/preference_tor_network_select_bridge_type.xml new file mode 100644 index 0000000000000..2c1632bb82689 --- /dev/null +++ b/mobile/android/app/src/main/res/layout/preference_tor_network_select_bridge_type.xml @@ -0,0 +1,128 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/mobile/android/app/src/main/res/layout/tor_bootstrap.xml b/mobile/android/app/src/main/res/layout/tor_bootstrap.xml new file mode 100644 index 0000000000000..af9c7d11d3f22 --- /dev/null +++ b/mobile/android/app/src/main/res/layout/tor_bootstrap.xml @@ -0,0 +1,83 @@ + + + + + + + + + + + +