From 6fb2050aaf6e992bf96d41c5f6b19f5c1a3771c3 Mon Sep 17 00:00:00 2001 From: cyBerta Date: Thu, 25 Nov 2021 01:54:18 +0100 Subject: implement separate settings fragment --- .../se/leap/bitmaskclient/base/MainActivity.java | 27 +++++++++++----------- 1 file changed, 14 insertions(+), 13 deletions(-) (limited to 'app/src/main/java/se/leap/bitmaskclient/base/MainActivity.java') diff --git a/app/src/main/java/se/leap/bitmaskclient/base/MainActivity.java b/app/src/main/java/se/leap/bitmaskclient/base/MainActivity.java index 54977f0a..77743eac 100644 --- a/app/src/main/java/se/leap/bitmaskclient/base/MainActivity.java +++ b/app/src/main/java/se/leap/bitmaskclient/base/MainActivity.java @@ -41,6 +41,7 @@ import se.leap.bitmaskclient.base.fragments.ExcludeAppsFragment; import se.leap.bitmaskclient.base.fragments.LogFragment; import se.leap.bitmaskclient.base.fragments.MainActivityErrorDialog; import se.leap.bitmaskclient.base.fragments.NavigationDrawerFragment; +import se.leap.bitmaskclient.base.fragments.SettingsFragment; import se.leap.bitmaskclient.base.models.Provider; import se.leap.bitmaskclient.base.models.ProviderObservable; import se.leap.bitmaskclient.base.utils.PreferenceHelper; @@ -76,7 +77,7 @@ import static se.leap.bitmaskclient.providersetup.ProviderAPI.INCORRECTLY_UPDATE import static se.leap.bitmaskclient.providersetup.ProviderAPI.USER_MESSAGE; -public class MainActivity extends AppCompatActivity implements EipSetupListener, Observer, ExcludeAppsFragment.ExcludedAppsCallback { +public class MainActivity extends AppCompatActivity implements EipSetupListener, Observer { public final static String TAG = MainActivity.class.getSimpleName(); @@ -114,12 +115,18 @@ public class MainActivity extends AppCompatActivity implements EipSetupListener, public void onBackPressed() { FragmentManagerEnhanced fragmentManagerEnhanced = new FragmentManagerEnhanced(getSupportFragmentManager()); Fragment fragment = fragmentManagerEnhanced.findFragmentByTag(MainActivity.TAG); - if (fragment == null || !(fragment instanceof EipFragment)) { - Fragment eipFragment = new EipFragment(); - Bundle bundle = new Bundle(); - bundle.putParcelable(PROVIDER_KEY, provider); - eipFragment.setArguments(bundle); - fragmentManagerEnhanced.replace(R.id.main_container, eipFragment, MainActivity.TAG); + //FIXME: use proper navigation, this is only a workaround + if (!(fragment instanceof EipFragment)) { + Fragment newFragment; + if (fragment instanceof ExcludeAppsFragment) { + newFragment = new SettingsFragment(); + } else { + newFragment = new EipFragment(); + Bundle bundle = new Bundle(); + bundle.putParcelable(PROVIDER_KEY, provider); + newFragment.setArguments(bundle); + } + fragmentManagerEnhanced.replace(R.id.main_container, newFragment, MainActivity.TAG); hideActionBarSubTitle(); } else { super.onBackPressed(); @@ -382,10 +389,4 @@ public class MainActivity extends AppCompatActivity implements EipSetupListener, } startActivityForResult(intent, REQUEST_CODE_LOG_IN); } - - - @Override - public void onAppsExcluded(int number) { - navigationDrawerFragment.onAppsExcluded(number); - } } -- cgit v1.2.3