diff options
author | Christian Schneppe <christian@pix-art.de> | 2018-11-15 21:08:42 +0100 |
---|---|---|
committer | Christian Schneppe <christian@pix-art.de> | 2018-11-15 21:08:42 +0100 |
commit | e05df83a2a3260f1b04c36ff270ea2c3f2b5a64c (patch) | |
tree | a9c27e9866bfc40b51624cbf7688c9a174a72e07 /src/main/java/de/pixart/messenger/ui/StartConversationActivity.java | |
parent | 0bffe0ef9edc7b382da53d7518fa51ec995902c0 (diff) |
do not show up navigation in start conversation screen if called with view intent
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/StartConversationActivity.java')
-rw-r--r-- | src/main/java/de/pixart/messenger/ui/StartConversationActivity.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java index 60c94042d..1edbafd67 100644 --- a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java +++ b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java @@ -99,6 +99,7 @@ public class StartConversationActivity extends XmppActivity implements XmppConne private EditText mSearchEditText; private AtomicBoolean mRequestedContactsPermission = new AtomicBoolean(false); private boolean mHideOfflineContacts = false; + private boolean createdByViewIntent = false; private MenuItem.OnActionExpandListener mOnActionExpandListener = new MenuItem.OnActionExpandListener() { @Override @@ -302,6 +303,7 @@ public class StartConversationActivity extends XmppActivity implements XmppConne if (savedInstanceState == null) { intent = getIntent(); } else { + createdByViewIntent = savedInstanceState.getBoolean("created_by_view_intent", false); final String search = savedInstanceState.getString("search"); if (search != null) { mInitialSearchValue.push(search); @@ -311,6 +313,7 @@ public class StartConversationActivity extends XmppActivity implements XmppConne if (isViewIntent(intent)) { pendingViewIntent.push(intent); + createdByViewIntent = true; setIntent(createLauncherIntent(this)); } else if (startSearching && mInitialSearchValue.peek() == null) { mInitialSearchValue.push(""); @@ -321,6 +324,7 @@ public class StartConversationActivity extends XmppActivity implements XmppConne public void onSaveInstanceState(Bundle savedInstanceState) { Intent pendingIntent = pendingViewIntent.peek(); savedInstanceState.putParcelable("intent", pendingIntent != null ? pendingIntent : getIntent()); + savedInstanceState.putBoolean("created_by_view_intent", createdByViewIntent); if (mMenuSearchView != null && mMenuSearchView.isActionViewExpanded()) { savedInstanceState.putString("search", mSearchEditText != null ? mSearchEditText.getText().toString() : null); } @@ -723,7 +727,7 @@ public class StartConversationActivity extends XmppActivity implements XmppConne if (actionBar == null) { return; } - boolean openConversations = !xmppConnectionService.isConversationsListEmpty(null); + boolean openConversations = !createdByViewIntent && !xmppConnectionService.isConversationsListEmpty(null); actionBar.setDisplayHomeAsUpEnabled(openConversations); actionBar.setDisplayHomeAsUpEnabled(openConversations); @@ -937,7 +941,7 @@ public class StartConversationActivity extends XmppActivity implements XmppConne } private void navigateBack() { - if (xmppConnectionService != null && !xmppConnectionService.isConversationsListEmpty(null)) { + if (!createdByViewIntent && xmppConnectionService != null && !xmppConnectionService.isConversationsListEmpty(null)) { Intent intent = new Intent(this, ConversationsActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); startActivity(intent); |