summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--app/src/main/java/com/wireguard/android/ConfigActivity.java18
1 files changed, 9 insertions, 9 deletions
diff --git a/app/src/main/java/com/wireguard/android/ConfigActivity.java b/app/src/main/java/com/wireguard/android/ConfigActivity.java
index 90ba754a..4833d876 100644
--- a/app/src/main/java/com/wireguard/android/ConfigActivity.java
+++ b/app/src/main/java/com/wireguard/android/ConfigActivity.java
@@ -31,13 +31,15 @@ public class ConfigActivity extends BaseConfigActivity {
@Override
public void onBackPressed() {
super.onBackPressed();
- // Ensure the current config is cleared when going back to the single-fragment-layout list.
+ if ((isEditing && isSplitLayout) || (!isEditing && !isSplitLayout)) {
+ if (getActionBar() != null)
+ getActionBar().setDisplayHomeAsUpEnabled(false);
+ }
+ // Ensure the current config is cleared when going back to the single-pane-layout list.
if (isEditing)
isEditing = false;
else
setCurrentConfig(null);
- if (!isSplitLayout && fm.getBackStackEntryCount() == 0 && getActionBar() != null)
- getActionBar().setDisplayHomeAsUpEnabled(false);
}
@Override
@@ -77,10 +79,8 @@ public class ConfigActivity extends BaseConfigActivity {
if (!isSplitLayout)
setTitle(config != null ? config.getName() : getString(R.string.app_name));
// Update the fragment in the main container.
- if (isEditing) {
- fm.popBackStackImmediate();
- isEditing = false;
- }
+ if (isEditing)
+ onBackPressed();
if (config != null) {
final boolean shouldPush = !isSplitLayout &&
fm.findFragmentById(mainContainer) instanceof ConfigListFragment;
@@ -97,8 +97,8 @@ public class ConfigActivity extends BaseConfigActivity {
onBackPressed();
return true;
case R.id.menu_action_edit:
- switchToFragment(mainContainer, TAG_EDIT, true);
isEditing = true;
+ switchToFragment(mainContainer, TAG_EDIT, true);
return true;
case R.id.menu_action_save:
// This menu item is handled by the current fragment.
@@ -186,7 +186,7 @@ public class ConfigActivity extends BaseConfigActivity {
if (push) {
transaction.addToBackStack(null);
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
- if (!isSplitLayout && getActionBar() != null)
+ if (getActionBar() != null && (!isSplitLayout || isEditing))
getActionBar().setDisplayHomeAsUpEnabled(true);
}
transaction.replace(container, fragment, null).commit();