diff --git a/app/src/main/java/com/wireguard/android/activity/MainActivity.java b/app/src/main/java/com/wireguard/android/activity/MainActivity.java index e13438d9..a905156c 100644 --- a/app/src/main/java/com/wireguard/android/activity/MainActivity.java +++ b/app/src/main/java/com/wireguard/android/activity/MainActivity.java @@ -53,14 +53,9 @@ public class MainActivity extends BaseActivity { return true; } state = nextState; - if (state.layer > 1) { - if (getActionBar() != null) - getActionBar().setDisplayHomeAsUpEnabled(true); - } else { - if (getActionBar() != null) - getActionBar().setDisplayHomeAsUpEnabled(false); + if (state.layer <= State.LIST.layer) setSelectedTunnel(null); - } + updateActionBar(); return true; } @@ -82,6 +77,7 @@ public class MainActivity extends BaseActivity { initialState = State.valueOf(getIntent().getStringExtra(KEY_STATE)); moveToState(initialState); } + updateActionBar(); } @Override @@ -124,6 +120,11 @@ public class MainActivity extends BaseActivity { moveToState(newTunnel != null ? State.DETAIL : State.LIST); } + private void updateActionBar() { + if (getActionBar() != null) + getActionBar().setDisplayHomeAsUpEnabled(state.layer > State.LIST.layer); + } + private enum State { EMPTY(null, 0), LIST(TunnelListFragment.class, 1),