Properly show dialpad fragment on first launch if needed
Bug: 10205058
Change-Id: If7eb79b77357a81b17bdff719939debd71544bc4
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index a0153ea..8cac17e 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -155,6 +155,7 @@
* {@link PhoneNumberPickerFragment}).
*/
private boolean mInSearchUi;
+ private boolean mFirstLaunch;
private View mSearchViewContainer;
private View mSearchViewCloseButton;
private View mVoiceSearchButton;
@@ -234,6 +235,8 @@
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+ mFirstLaunch = true;
+
final Intent intent = getIntent();
fixIntent(intent);
@@ -265,8 +268,6 @@
mBottomPaddingView = findViewById(R.id.dialtacts_bottom_padding);
prepareSearchView();
- displayFragment(intent);
-
if (UI.FILTER_CONTACTS_ACTION.equals(intent.getAction())
&& savedInstanceState == null) {
setupFilterText(intent);
@@ -295,6 +296,11 @@
TAG_SHOW_ALL_CONTACTS_FRAGMENT);
mShowAllContactsFragment.setOnPhoneNumberPickerActionListener(
mPhoneNumberPickerActionListener);
+
+ if (mFirstLaunch) {
+ displayFragment(getIntent());
+ }
+ mFirstLaunch = false;
}
@Override
@@ -605,8 +611,7 @@
return;
}
- if ((mDialpadFragment != null && phoneIsInUse())
- || isDialIntent(intent)) {
+ if (mDialpadFragment != null && (phoneIsInUse() || isDialIntent(intent))) {
mDialpadFragment.setStartedFromNewIntent(true);
// TODO krelease: This should use showDialpadFragment(false) to avoid animating
// the dialpad in. Need to fix the onPreDrawListener in NewDialpadFragment first.