From de8d1b7d965395b4354378e8735a09c16ffac77f Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Thu, 27 Sep 2018 18:25:31 -0300 Subject: [PATCH] Allow sign out by trusted non-paired panic apps --- .../briar/android/panic/PanicPreferencesFragment.java | 8 ++------ .../briar/android/panic/PanicResponderActivity.java | 8 +++++--- briar-android/src/main/res/xml/panic_preferences.xml | 1 - 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/briar-android/src/main/java/org/briarproject/briar/android/panic/PanicPreferencesFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/panic/PanicPreferencesFragment.java index a40a4e716..1927f177b 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/panic/PanicPreferencesFragment.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/panic/PanicPreferencesFragment.java @@ -97,14 +97,12 @@ public class PanicPreferencesFragment extends PreferenceFragmentCompat showPanicApp(packageName); if (packageName.equals(Panic.PACKAGE_NAME_NONE)) { - lockPref.setEnabled(false); purgePref.setChecked(false); purgePref.setEnabled(false); uninstallPref.setChecked(false); uninstallPref.setEnabled(false); getActivity().setResult(Activity.RESULT_CANCELED); } else { - lockPref.setEnabled(true); purgePref.setEnabled(true); uninstallPref.setEnabled(true); } @@ -179,8 +177,7 @@ public class PanicPreferencesFragment extends PreferenceFragmentCompat panicAppPref.setIcon( android.R.drawable.ic_menu_close_clear_cancel); - // disable panic actions - lockPref.setEnabled(false); + // disable destructive panic actions purgePref.setEnabled(false); uninstallPref.setEnabled(false); } else { @@ -192,8 +189,7 @@ public class PanicPreferencesFragment extends PreferenceFragmentCompat panicAppPref.setIcon( pm.getApplicationIcon(triggerPackageName)); - // enable panic actions - lockPref.setEnabled(true); + // enable destructive panic actions purgePref.setEnabled(true); uninstallPref.setEnabled(true); } catch (PackageManager.NameNotFoundException e) { diff --git a/briar-android/src/main/java/org/briarproject/briar/android/panic/PanicResponderActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/panic/PanicResponderActivity.java index 1fc500edf..52ac773f2 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/panic/PanicResponderActivity.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/panic/PanicResponderActivity.java @@ -71,11 +71,13 @@ public class PanicResponderActivity extends BriarActivity { } else if (sharedPref.getBoolean(KEY_PURGE, false)) { LOG.info("Purging all data..."); deleteAllData(); - } else if (sharedPref.getBoolean(KEY_LOCK, true)) { - LOG.info("Signing out..."); - signOut(true); } } + // non-destructive actions are allowed by non-connected trusted apps + if (sharedPref.getBoolean(KEY_LOCK, true)) { + LOG.info("Signing out..."); + signOut(true); + } } } diff --git a/briar-android/src/main/res/xml/panic_preferences.xml b/briar-android/src/main/res/xml/panic_preferences.xml index d823e6f0f..024bd6a72 100644 --- a/briar-android/src/main/res/xml/panic_preferences.xml +++ b/briar-android/src/main/res/xml/panic_preferences.xml @@ -10,7 +10,6 @@