Check the corresponding NavDrawer item when coming from a notification

Signed-off-by: goapunk <noobie@goapunks.net>
This commit is contained in:
goapunk
2017-01-06 15:10:04 +01:00
parent dc6a6f27ab
commit 09b2ecaecf

View File

@@ -75,13 +75,13 @@ public class NavDrawerActivity extends BriarActivity implements
exitIfStartupFailed(intent); exitIfStartupFailed(intent);
// TODO don't create new instances if they are on the stack (#606) // TODO don't create new instances if they are on the stack (#606)
if (intent.getBooleanExtra(INTENT_GROUPS, false)) { if (intent.getBooleanExtra(INTENT_GROUPS, false)) {
startFragment(GroupListFragment.newInstance()); startFragment(GroupListFragment.newInstance(), R.id.nav_btn_groups);
} else if (intent.getBooleanExtra(INTENT_FORUMS, false)) { } else if (intent.getBooleanExtra(INTENT_FORUMS, false)) {
startFragment(ForumListFragment.newInstance()); startFragment(ForumListFragment.newInstance(), R.id.nav_btn_forums);
} else if (intent.getBooleanExtra(INTENT_CONTACTS, false)) { } else if (intent.getBooleanExtra(INTENT_CONTACTS, false)) {
startFragment(ContactListFragment.newInstance()); startFragment(ContactListFragment.newInstance(), R.id.nav_btn_contacts);
} else if (intent.getBooleanExtra(INTENT_BLOGS, false)) { } else if (intent.getBooleanExtra(INTENT_BLOGS, false)) {
startFragment(FeedFragment.newInstance()); startFragment(FeedFragment.newInstance(), R.id.nav_btn_blogs);
} }
setIntent(null); setIntent(null);
} }
@@ -117,8 +117,7 @@ public class NavDrawerActivity extends BriarActivity implements
transportsView.setAdapter(transportsAdapter); transportsView.setAdapter(transportsAdapter);
if (state == null) { if (state == null) {
navigation.setCheckedItem(R.id.nav_btn_contacts); startFragment(ContactListFragment.newInstance(), R.id.nav_btn_contacts);
startFragment(ContactListFragment.newInstance());
} }
if (getIntent() != null) { if (getIntent() != null) {
onNewIntent(getIntent()); onNewIntent(getIntent());
@@ -195,8 +194,7 @@ public class NavDrawerActivity extends BriarActivity implements
* exiting. This models the typical Google navigation behaviour such * exiting. This models the typical Google navigation behaviour such
* as in Gmail/Inbox. * as in Gmail/Inbox.
*/ */
navigation.setCheckedItem(R.id.nav_btn_contacts); startFragment(ContactListFragment.newInstance(), R.id.nav_btn_contacts);
startFragment(ContactListFragment.newInstance());
} else { } else {
super.onBackPressed(); super.onBackPressed();
} }
@@ -221,6 +219,11 @@ public class NavDrawerActivity extends BriarActivity implements
super.signOut(); super.signOut();
} }
private void startFragment(BaseFragment fragment, int itemId){
navigation.setCheckedItem(itemId);
startFragment(fragment);
}
private void startFragment(BaseFragment fragment) { private void startFragment(BaseFragment fragment) {
if (getSupportFragmentManager().getBackStackEntryCount() == 0) if (getSupportFragmentManager().getBackStackEntryCount() == 0)
startFragment(fragment, false); startFragment(fragment, false);