From fc9b4e782e23577bc6d34b458e8882f97483dfab Mon Sep 17 00:00:00 2001 From: Alexandre Lision <alexandre.lision@savoirfairelinux.com> Date: Fri, 13 Dec 2013 14:55:25 -0500 Subject: [PATCH] * #36914: highlight correct navigation section --- src/org/sflphone/client/HomeActivity.java | 13 +++++-------- src/org/sflphone/fragments/MenuFragment.java | 12 ++++++++++-- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/src/org/sflphone/client/HomeActivity.java b/src/org/sflphone/client/HomeActivity.java index 70f18a43a..21ce7f022 100644 --- a/src/org/sflphone/client/HomeActivity.java +++ b/src/org/sflphone/client/HomeActivity.java @@ -328,12 +328,9 @@ public class HomeActivity extends FragmentActivity implements DialingFragment.Ca if (getSupportFragmentManager().getBackStackEntryCount() > 0) { BackStackEntry entry = getSupportFragmentManager().getBackStackEntryAt(getSupportFragmentManager().getBackStackEntryCount() - 1); - Log.i(TAG, "Popping:"+ getSupportFragmentManager().getBackStackEntryCount()); - Log.i(TAG, "Name:"+ entry.getName()); fContent = getSupportFragmentManager().findFragmentByTag(entry.getName()); - if(fContent == null) - Log.i(TAG, "Null frag"); getSupportFragmentManager().popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE); + fMenu.backToHome(); return; } @@ -685,10 +682,10 @@ public class HomeActivity extends FragmentActivity implements DialingFragment.Ca if (fContent instanceof HomeFragment) break; - - if(getSupportFragmentManager().getBackStackEntryCount() == 0) + + if (getSupportFragmentManager().getBackStackEntryCount() == 0) break; - + BackStackEntry entry = getSupportFragmentManager().getBackStackEntryAt(0); fContent = getSupportFragmentManager().findFragmentByTag(entry.getName()); getSupportFragmentManager().popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE); @@ -697,7 +694,7 @@ public class HomeActivity extends FragmentActivity implements DialingFragment.Ca case 1: if (fContent instanceof AccountsManagementFragment) break; - + fContent = new AccountsManagementFragment(); getSupportFragmentManager().beginTransaction().replace(R.id.main_frame, fContent, "Accounts").addToBackStack("Accounts").commit(); break; diff --git a/src/org/sflphone/fragments/MenuFragment.java b/src/org/sflphone/fragments/MenuFragment.java index b0fa2e11a..f7002c9df 100644 --- a/src/org/sflphone/fragments/MenuFragment.java +++ b/src/org/sflphone/fragments/MenuFragment.java @@ -75,6 +75,8 @@ public class MenuFragment extends Fragment implements LoaderCallbacks<Bundle>, A AccountsReceiver accountReceiver; private Callbacks mCallbacks = sDummyCallbacks; + private ListView sections; + private static Callbacks sDummyCallbacks = new Callbacks() { @Override @@ -149,8 +151,10 @@ public class MenuFragment extends Fragment implements LoaderCallbacks<Bundle>, A ArrayAdapter<String> paramAdapter = new ArrayAdapter<String>(getActivity(), R.layout.item_menu, getResources().getStringArray( R.array.menu_items_param)); - ((ListView) inflatedView.findViewById(R.id.listView)).setAdapter(paramAdapter); - ((ListView) inflatedView.findViewById(R.id.listView)).setOnItemClickListener(new OnItemClickListener() { + sections = (ListView) inflatedView.findViewById(R.id.listView); + sections.setAdapter(paramAdapter); + backToHome(); + sections.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View selected, int pos, long arg3) { @@ -240,4 +244,8 @@ public class MenuFragment extends Fragment implements LoaderCallbacks<Bundle>, A } + public void backToHome() { + sections.setItemChecked(0, true); + } + } -- GitLab