From 8369df095a73a77b3715f8ae7ba06089cebca4ce Mon Sep 17 00:00:00 2001 From: Eric Erfanian Date: Wed, 3 May 2017 10:27:13 -0700 Subject: This change reflects the Dialer V10 RC00 branch. RC00 is based on: branch: dialer-android_release_branch/153304843.1 synced to: 153304843 following the instructions at go/dialer-aosp-release. In this release: * Removes final apache sources. * Uses native lite compilation. More drops will follow with subsequent release candidates until we reach our final v10 release, in cadence with our prebuilt drops. Test: TreeHugger, on device Change-Id: Ic9684057230f9b579c777820c746cd21bf45ec0f --- .../dialer/app/list/BlockedListSearchFragment.java | 14 ++++--- .../dialer/app/list/DialtactsPagerAdapter.java | 47 +++++++++++++++++----- .../com/android/dialer/app/list/ListsFragment.java | 13 ++++-- .../dialer/app/list/OldSpeedDialFragment.java | 16 +++++--- .../dialer/app/list/RegularSearchFragment.java | 4 +- .../android/dialer/app/list/SearchFragment.java | 28 +++++++------ .../dialer/app/list/SmartDialSearchFragment.java | 4 +- 7 files changed, 84 insertions(+), 42 deletions(-) (limited to 'java/com/android/dialer/app/list') diff --git a/java/com/android/dialer/app/list/BlockedListSearchFragment.java b/java/com/android/dialer/app/list/BlockedListSearchFragment.java index 2129981c0..0f96e2d6e 100644 --- a/java/com/android/dialer/app/list/BlockedListSearchFragment.java +++ b/java/com/android/dialer/app/list/BlockedListSearchFragment.java @@ -23,7 +23,6 @@ import android.telephony.PhoneNumberUtils; import android.text.Editable; import android.text.TextUtils; import android.text.TextWatcher; -import android.util.Log; import android.util.TypedValue; import android.view.View; import android.widget.AdapterView; @@ -37,14 +36,13 @@ import com.android.dialer.app.widget.SearchEditTextLayout; import com.android.dialer.blocking.BlockNumberDialogFragment; import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler; import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler.OnCheckBlockedListener; +import com.android.dialer.common.LogUtil; +import com.android.dialer.logging.InteractionEvent; import com.android.dialer.logging.Logger; -import com.android.dialer.logging.nano.InteractionEvent; public class BlockedListSearchFragment extends RegularSearchFragment implements BlockNumberDialogFragment.Callback { - private static final String TAG = BlockedListSearchFragment.class.getSimpleName(); - private final TextWatcher mPhoneSearchQueryTextListener = new TextWatcher() { @Override @@ -152,7 +150,9 @@ public class BlockedListSearchFragment extends RegularSearchFragment blockNumber(number); break; default: - Log.w(TAG, "Ignoring unsupported shortcut type: " + shortcutType); + LogUtil.w( + "BlockedListSearchFragment.onItemClick", + "ignoring unsupported shortcut type: " + shortcutType); break; } } @@ -205,7 +205,9 @@ public class BlockedListSearchFragment extends RegularSearchFragment @Override public void onUnfilterNumberSuccess() { - Log.wtf(TAG, "Unblocked a number from the BlockedListSearchFragment"); + LogUtil.e( + "BlockedListSearchFragment.onUnfilterNumberSuccess", + "unblocked a number from the BlockedListSearchFragment"); goBack(); } diff --git a/java/com/android/dialer/app/list/DialtactsPagerAdapter.java b/java/com/android/dialer/app/list/DialtactsPagerAdapter.java index 3b700d81b..dba3d3a93 100644 --- a/java/com/android/dialer/app/list/DialtactsPagerAdapter.java +++ b/java/com/android/dialer/app/list/DialtactsPagerAdapter.java @@ -24,9 +24,13 @@ import android.support.v13.app.FragmentPagerAdapter; import android.view.ViewGroup; import com.android.dialer.app.calllog.CallLogFragment; import com.android.dialer.app.calllog.VisualVoicemailCallLogFragment; +import com.android.dialer.calllog.CallLogComponent; +import com.android.dialer.calllog.CallLogFramework; +import com.android.dialer.calllog.ui.NewCallLogFragment; import com.android.dialer.common.Assert; import com.android.dialer.common.ConfigProviderBindings; import com.android.dialer.common.LogUtil; +import com.android.dialer.contactsfragment.ContactsFragment; import com.android.dialer.database.CallLogQueryHandler; import com.android.dialer.speeddial.SpeedDialFragment; import com.android.dialer.util.ViewUtil; @@ -54,11 +58,14 @@ public class DialtactsPagerAdapter extends FragmentPagerAdapter { private final List fragments = new ArrayList<>(); private final String[] tabTitles; private final boolean useNewSpeedDialTab; - + private final boolean useNewCallLogTab; + private final boolean useNewContactsTab; private OldSpeedDialFragment oldSpeedDialFragment; private SpeedDialFragment speedDialFragment; private CallLogFragment callLogFragment; - private AllContactsFragment contactsFragment; + private NewCallLogFragment newCallLogFragment; + private AllContactsFragment oldContactsFragment; + private ContactsFragment contactsFragment; private CallLogFragment voicemailFragment; public boolean hasActiveVoicemailProvider; @@ -68,6 +75,10 @@ public class DialtactsPagerAdapter extends FragmentPagerAdapter { super(fm); useNewSpeedDialTab = ConfigProviderBindings.get(context).getBoolean("enable_new_favorites_tab", false); + CallLogFramework callLogFramework = CallLogComponent.get(context).callLogFramework(); + useNewCallLogTab = callLogFramework.isNewCallLogEnabled(context); + useNewContactsTab = + ConfigProviderBindings.get(context).getBoolean("enable_new_contacts_tab", false); this.tabTitles = tabTitles; hasActiveVoicemailProvider = hasVoicemailProvider; fragments.addAll(Collections.nCopies(TAB_COUNT_WITH_VOICEMAIL, null)); @@ -95,15 +106,29 @@ public class DialtactsPagerAdapter extends FragmentPagerAdapter { return oldSpeedDialFragment; } case TAB_INDEX_HISTORY: - if (callLogFragment == null) { - callLogFragment = new CallLogFragment(CallLogQueryHandler.CALL_TYPE_ALL); + if (useNewCallLogTab) { + if (newCallLogFragment == null) { + newCallLogFragment = new NewCallLogFragment(); + } + return newCallLogFragment; + } else { + if (callLogFragment == null) { + callLogFragment = new CallLogFragment(CallLogQueryHandler.CALL_TYPE_ALL); + } + return callLogFragment; } - return callLogFragment; case TAB_INDEX_ALL_CONTACTS: - if (contactsFragment == null) { - contactsFragment = new AllContactsFragment(); + if (useNewContactsTab) { + if (contactsFragment == null) { + contactsFragment = new ContactsFragment(); + } + return contactsFragment; + } else { + if (oldContactsFragment == null) { + oldContactsFragment = new AllContactsFragment(); + } + return oldContactsFragment; } - return contactsFragment; case TAB_INDEX_VOICEMAIL: if (voicemailFragment == null) { voicemailFragment = new VisualVoicemailCallLogFragment(); @@ -131,8 +156,12 @@ public class DialtactsPagerAdapter extends FragmentPagerAdapter { speedDialFragment = (SpeedDialFragment) fragment; } else if (fragment instanceof CallLogFragment && position == TAB_INDEX_HISTORY) { callLogFragment = (CallLogFragment) fragment; + } else if (fragment instanceof NewCallLogFragment) { + newCallLogFragment = (NewCallLogFragment) fragment; + } else if (fragment instanceof ContactsFragment) { + contactsFragment = (ContactsFragment) fragment; } else if (fragment instanceof AllContactsFragment) { - contactsFragment = (AllContactsFragment) fragment; + oldContactsFragment = (AllContactsFragment) fragment; } else if (fragment instanceof CallLogFragment && position == TAB_INDEX_VOICEMAIL) { voicemailFragment = (CallLogFragment) fragment; LogUtil.v("ViewPagerAdapter.instantiateItem", voicemailFragment.toString()); diff --git a/java/com/android/dialer/app/list/ListsFragment.java b/java/com/android/dialer/app/list/ListsFragment.java index bf29ef310..02498939c 100644 --- a/java/com/android/dialer/app/list/ListsFragment.java +++ b/java/com/android/dialer/app/list/ListsFragment.java @@ -44,9 +44,9 @@ import com.android.dialer.app.voicemail.error.VoicemailStatusCorruptionHandler; import com.android.dialer.app.voicemail.error.VoicemailStatusCorruptionHandler.Source; import com.android.dialer.common.LogUtil; import com.android.dialer.database.CallLogQueryHandler; +import com.android.dialer.logging.DialerImpression; import com.android.dialer.logging.Logger; -import com.android.dialer.logging.nano.DialerImpression; -import com.android.dialer.logging.nano.ScreenEvent; +import com.android.dialer.logging.ScreenEvent; import com.android.dialer.speeddial.SpeedDialFragment; import com.android.dialer.voicemailstatus.VisualVoicemailEnabledChecker; import com.android.dialer.voicemailstatus.VoicemailStatusHelper; @@ -76,6 +76,7 @@ public class ListsFragment extends Fragment private final ArrayList mOnPageChangeListeners = new ArrayList<>(); /** The position of the currently selected tab. */ private int mTabIndex = TAB_INDEX_SPEED_DIAL; + private boolean mPaused; private CallLogQueryHandler mCallLogQueryHandler; @@ -104,6 +105,8 @@ public class ListsFragment extends Fragment Trace.beginSection(TAG + " onResume"); super.onResume(); + mPaused = false; + if (getUserVisibleHint()) { sendScreenViewForCurrentPosition(); } @@ -127,6 +130,8 @@ public class ListsFragment extends Fragment ((CallLogFragment) mCurrentPage).onNotVisible(); } super.onPause(); + + mPaused = true; } @Override @@ -263,7 +268,7 @@ public class ListsFragment extends Fragment public void onVoicemailStatusFetched(Cursor statusCursor) { mHasFetchedVoicemailStatus = true; - if (getActivity() == null || getActivity().isFinishing()) { + if (getActivity() == null || mPaused) { return; } @@ -394,7 +399,7 @@ public class ListsFragment extends Fragment return; } - int screenType; + ScreenEvent.Type screenType; switch (getCurrentTabIndex()) { case TAB_INDEX_SPEED_DIAL: screenType = ScreenEvent.Type.SPEED_DIAL; diff --git a/java/com/android/dialer/app/list/OldSpeedDialFragment.java b/java/com/android/dialer/app/list/OldSpeedDialFragment.java index 4aafd9625..4ae84b6d9 100644 --- a/java/com/android/dialer/app/list/OldSpeedDialFragment.java +++ b/java/com/android/dialer/app/list/OldSpeedDialFragment.java @@ -51,8 +51,8 @@ import com.android.contacts.common.list.ContactTileView; import com.android.contacts.common.list.OnPhoneNumberPickerActionListener; import com.android.dialer.app.R; import com.android.dialer.app.widget.EmptyContentView; -import com.android.dialer.callintent.nano.CallInitiationType; -import com.android.dialer.callintent.nano.CallSpecificAppData; +import com.android.dialer.callintent.CallInitiationType; +import com.android.dialer.callintent.CallSpecificAppData; import com.android.dialer.common.LogUtil; import com.android.dialer.util.PermissionsUtil; import com.android.dialer.util.ViewUtil; @@ -462,8 +462,10 @@ public class OldSpeedDialFragment extends Fragment @Override public void onContactSelected(Uri contactUri, Rect targetRect) { if (mPhoneNumberPickerActionListener != null) { - CallSpecificAppData callSpecificAppData = new CallSpecificAppData(); - callSpecificAppData.callInitiationType = CallInitiationType.Type.SPEED_DIAL; + CallSpecificAppData callSpecificAppData = + CallSpecificAppData.newBuilder() + .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL) + .build(); mPhoneNumberPickerActionListener.onPickDataUri( contactUri, false /* isVideoCall */, callSpecificAppData); } @@ -472,8 +474,10 @@ public class OldSpeedDialFragment extends Fragment @Override public void onCallNumberDirectly(String phoneNumber) { if (mPhoneNumberPickerActionListener != null) { - CallSpecificAppData callSpecificAppData = new CallSpecificAppData(); - callSpecificAppData.callInitiationType = CallInitiationType.Type.SPEED_DIAL; + CallSpecificAppData callSpecificAppData = + CallSpecificAppData.newBuilder() + .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL) + .build(); mPhoneNumberPickerActionListener.onPickPhoneNumber( phoneNumber, false /* isVideoCall */, callSpecificAppData); } diff --git a/java/com/android/dialer/app/list/RegularSearchFragment.java b/java/com/android/dialer/app/list/RegularSearchFragment.java index 26959539b..02896793b 100644 --- a/java/com/android/dialer/app/list/RegularSearchFragment.java +++ b/java/com/android/dialer/app/list/RegularSearchFragment.java @@ -27,7 +27,7 @@ import com.android.contacts.common.list.PinnedHeaderListView; import com.android.dialer.app.R; import com.android.dialer.app.widget.EmptyContentView; import com.android.dialer.app.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener; -import com.android.dialer.callintent.nano.CallInitiationType; +import com.android.dialer.callintent.CallInitiationType; import com.android.dialer.phonenumbercache.CachedNumberLookupService; import com.android.dialer.phonenumbercache.PhoneNumberCache; import com.android.dialer.util.PermissionsUtil; @@ -133,7 +133,7 @@ public class RegularSearchFragment extends SearchFragment } @Override - protected int getCallInitiationType(boolean isRemoteDirectory) { + protected CallInitiationType.Type getCallInitiationType(boolean isRemoteDirectory) { return isRemoteDirectory ? CallInitiationType.Type.REMOTE_DIRECTORY : CallInitiationType.Type.REGULAR_SEARCH; diff --git a/java/com/android/dialer/app/list/SearchFragment.java b/java/com/android/dialer/app/list/SearchFragment.java index 4128300df..264bdf81b 100644 --- a/java/com/android/dialer/app/list/SearchFragment.java +++ b/java/com/android/dialer/app/list/SearchFragment.java @@ -42,7 +42,7 @@ import com.android.dialer.app.R; import com.android.dialer.app.dialpad.DialpadFragment.ErrorDialogFragment; import com.android.dialer.app.widget.DialpadSearchEmptyContentView; import com.android.dialer.app.widget.EmptyContentView; -import com.android.dialer.callintent.nano.CallSpecificAppData; +import com.android.dialer.callintent.CallSpecificAppData; import com.android.dialer.common.LogUtil; import com.android.dialer.util.DialerUtils; import com.android.dialer.util.IntentUtil; @@ -238,12 +238,13 @@ public class SearchFragment extends PhoneNumberPickerFragment { number = adapter.getQueryString(); listener = getOnPhoneNumberPickerListener(); if (listener != null && !checkForProhibitedPhoneNumber(number)) { - CallSpecificAppData callSpecificAppData = new CallSpecificAppData(); - callSpecificAppData.callInitiationType = - getCallInitiationType(false /* isRemoteDirectory */); - callSpecificAppData.positionOfSelectedSearchResult = position; - callSpecificAppData.charactersInSearchString = - getQueryString() == null ? 0 : getQueryString().length(); + CallSpecificAppData callSpecificAppData = + CallSpecificAppData.newBuilder() + .setCallInitiationType(getCallInitiationType(false /* isRemoteDirectory */)) + .setPositionOfSelectedSearchResult(position) + .setCharactersInSearchString( + getQueryString() == null ? 0 : getQueryString().length()) + .build(); listener.onPickPhoneNumber(number, false /* isVideoCall */, callSpecificAppData); } break; @@ -274,12 +275,13 @@ public class SearchFragment extends PhoneNumberPickerFragment { TextUtils.isEmpty(mAddToContactNumber) ? adapter.getQueryString() : mAddToContactNumber; listener = getOnPhoneNumberPickerListener(); if (listener != null && !checkForProhibitedPhoneNumber(number)) { - CallSpecificAppData callSpecificAppData = new CallSpecificAppData(); - callSpecificAppData.callInitiationType = - getCallInitiationType(false /* isRemoteDirectory */); - callSpecificAppData.positionOfSelectedSearchResult = position; - callSpecificAppData.charactersInSearchString = - getQueryString() == null ? 0 : getQueryString().length(); + CallSpecificAppData callSpecificAppData = + CallSpecificAppData.newBuilder() + .setCallInitiationType(getCallInitiationType(false /* isRemoteDirectory */)) + .setPositionOfSelectedSearchResult(position) + .setCharactersInSearchString( + getQueryString() == null ? 0 : getQueryString().length()) + .build(); listener.onPickPhoneNumber(number, true /* isVideoCall */, callSpecificAppData); } break; diff --git a/java/com/android/dialer/app/list/SmartDialSearchFragment.java b/java/com/android/dialer/app/list/SmartDialSearchFragment.java index c783d3ac3..5d72ee615 100644 --- a/java/com/android/dialer/app/list/SmartDialSearchFragment.java +++ b/java/com/android/dialer/app/list/SmartDialSearchFragment.java @@ -26,7 +26,7 @@ import com.android.contacts.common.list.ContactEntryListAdapter; import com.android.dialer.app.R; import com.android.dialer.app.dialpad.SmartDialCursorLoader; import com.android.dialer.app.widget.EmptyContentView; -import com.android.dialer.callintent.nano.CallInitiationType; +import com.android.dialer.callintent.CallInitiationType; import com.android.dialer.util.PermissionsUtil; /** Implements a fragment to load and display SmartDial search results. */ @@ -102,7 +102,7 @@ public class SmartDialSearchFragment extends SearchFragment } @Override - protected int getCallInitiationType(boolean isRemoteDirectory) { + protected CallInitiationType.Type getCallInitiationType(boolean isRemoteDirectory) { return CallInitiationType.Type.SMART_DIAL; } -- cgit v1.2.3