Loading src/com/android/contacts/activities/PeopleActivity.java +15 −2 Original line number Diff line number Diff line Loading @@ -82,6 +82,7 @@ import com.android.contacts.list.ContactsIntentResolver; import com.android.contacts.list.ContactsRequest; import com.android.contacts.list.ContactsUnavailableFragment; import com.android.contacts.list.DefaultContactBrowseListFragment; import com.android.contacts.list.DefaultContactBrowseListFragment.FeatureHighlightCallback; import com.android.contacts.list.MultiSelectContactsListFragment.OnCheckBoxListActionListener; import com.android.contacts.list.OnContactBrowserActionListener; import com.android.contacts.list.OnContactsUnavailableActionListener; Loading @@ -104,7 +105,8 @@ public class PeopleActivity extends ContactsDrawerActivity implements DialogManager.DialogShowingViewActivity, ContactListFilterController.ContactListFilterListener, ProviderStatusListener, MultiContactDeleteListener { MultiContactDeleteListener, DefaultContactBrowseListFragment.FeatureHighlightCallback { private static final String TAG = "PeopleActivity"; Loading Loading @@ -356,6 +358,7 @@ public class PeopleActivity extends ContactsDrawerActivity implements transaction.add(R.id.tab_pager, mAllFragment, ALL_TAG); } mAllFragment.setFeatureHighlightCallback(this); mAllFragment.setOnContactListActionListener(new ContactBrowserActionListener()); mAllFragment.setCheckBoxListListener(new CheckBoxListListener()); mAllFragment.setListType(mContactListFilterController.getFilterListType()); Loading Loading @@ -578,9 +581,14 @@ public class PeopleActivity extends ContactsDrawerActivity implements showFabWithAnimation(shouldShowFabForAccount()); break; case ActionBarAdapter.Listener.Action.STOP_SEARCH_AND_SELECTION_MODE: // If queryString is empty, fragment data will not be reloaded, // so hamburger promo should be checked now. // If not empty, promo should be checked and displayed after reloading. (b/30706521) if (TextUtils.isEmpty(mAllFragment.getQueryString())) { maybeShowHamburgerFeatureHighlight(); } setQueryTextToFragment(""); updateFragmentsVisibility(); maybeShowHamburgerFeatureHighlight(); invalidateOptionsMenu(); showFabWithAnimation(shouldShowFabForAccount()); break; Loading Loading @@ -1493,4 +1501,9 @@ public class PeopleActivity extends ContactsDrawerActivity implements protected ContactListFilter getContactListFilter() { return mContactListFilterController.getFilter(); } @Override public void onLoadFinishedCallback() { maybeShowHamburgerFeatureHighlight(); } } src/com/android/contacts/list/DefaultContactBrowseListFragment.java +12 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,11 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment private View mEmptyHomeView; private View mAccountFilterContainer; private TextView mSearchProgressText; private FeatureHighlightCallback mCallback; public interface FeatureHighlightCallback { void onLoadFinishedCallback(); } public DefaultContactBrowseListFragment() { setPhotoLoaderEnabled(true); Loading @@ -63,6 +68,10 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment setDisplayDirectoryHeader(false); } public void setFeatureHighlightCallback(FeatureHighlightCallback callback) { mCallback = callback; } @Override public CursorLoader createCursorLoader(Context context) { return new FavoritesAndContactsLoader(context); Loading @@ -72,6 +81,9 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment public void onLoadFinished(Loader<Cursor> loader, Cursor data) { bindListHeader(data.getCount()); super.onLoadFinished(loader, data); if (!isSearchMode() && mCallback != null) { mCallback.onLoadFinishedCallback(); } } private void bindListHeader(int numberOfContacts) { Loading Loading
src/com/android/contacts/activities/PeopleActivity.java +15 −2 Original line number Diff line number Diff line Loading @@ -82,6 +82,7 @@ import com.android.contacts.list.ContactsIntentResolver; import com.android.contacts.list.ContactsRequest; import com.android.contacts.list.ContactsUnavailableFragment; import com.android.contacts.list.DefaultContactBrowseListFragment; import com.android.contacts.list.DefaultContactBrowseListFragment.FeatureHighlightCallback; import com.android.contacts.list.MultiSelectContactsListFragment.OnCheckBoxListActionListener; import com.android.contacts.list.OnContactBrowserActionListener; import com.android.contacts.list.OnContactsUnavailableActionListener; Loading @@ -104,7 +105,8 @@ public class PeopleActivity extends ContactsDrawerActivity implements DialogManager.DialogShowingViewActivity, ContactListFilterController.ContactListFilterListener, ProviderStatusListener, MultiContactDeleteListener { MultiContactDeleteListener, DefaultContactBrowseListFragment.FeatureHighlightCallback { private static final String TAG = "PeopleActivity"; Loading Loading @@ -356,6 +358,7 @@ public class PeopleActivity extends ContactsDrawerActivity implements transaction.add(R.id.tab_pager, mAllFragment, ALL_TAG); } mAllFragment.setFeatureHighlightCallback(this); mAllFragment.setOnContactListActionListener(new ContactBrowserActionListener()); mAllFragment.setCheckBoxListListener(new CheckBoxListListener()); mAllFragment.setListType(mContactListFilterController.getFilterListType()); Loading Loading @@ -578,9 +581,14 @@ public class PeopleActivity extends ContactsDrawerActivity implements showFabWithAnimation(shouldShowFabForAccount()); break; case ActionBarAdapter.Listener.Action.STOP_SEARCH_AND_SELECTION_MODE: // If queryString is empty, fragment data will not be reloaded, // so hamburger promo should be checked now. // If not empty, promo should be checked and displayed after reloading. (b/30706521) if (TextUtils.isEmpty(mAllFragment.getQueryString())) { maybeShowHamburgerFeatureHighlight(); } setQueryTextToFragment(""); updateFragmentsVisibility(); maybeShowHamburgerFeatureHighlight(); invalidateOptionsMenu(); showFabWithAnimation(shouldShowFabForAccount()); break; Loading Loading @@ -1493,4 +1501,9 @@ public class PeopleActivity extends ContactsDrawerActivity implements protected ContactListFilter getContactListFilter() { return mContactListFilterController.getFilter(); } @Override public void onLoadFinishedCallback() { maybeShowHamburgerFeatureHighlight(); } }
src/com/android/contacts/list/DefaultContactBrowseListFragment.java +12 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,11 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment private View mEmptyHomeView; private View mAccountFilterContainer; private TextView mSearchProgressText; private FeatureHighlightCallback mCallback; public interface FeatureHighlightCallback { void onLoadFinishedCallback(); } public DefaultContactBrowseListFragment() { setPhotoLoaderEnabled(true); Loading @@ -63,6 +68,10 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment setDisplayDirectoryHeader(false); } public void setFeatureHighlightCallback(FeatureHighlightCallback callback) { mCallback = callback; } @Override public CursorLoader createCursorLoader(Context context) { return new FavoritesAndContactsLoader(context); Loading @@ -72,6 +81,9 @@ public class DefaultContactBrowseListFragment extends ContactBrowseListFragment public void onLoadFinished(Loader<Cursor> loader, Cursor data) { bindListHeader(data.getCount()); super.onLoadFinished(loader, data); if (!isSearchMode() && mCallback != null) { mCallback.onLoadFinishedCallback(); } } private void bindListHeader(int numberOfContacts) { Loading