diff options
author | Nancy Chen <nancychen@google.com> | 2015-07-01 09:20:45 -0700 |
---|---|---|
committer | Nancy Chen <nancychen@google.com> | 2015-07-01 10:23:22 -0700 |
commit | d5de03bcc20fcdb667fdc9d0eb56f0d6c57da0c8 (patch) | |
tree | 5bd91ddef2309e73359320516aa1bed37c2cfb08 | |
parent | 82d30284d32d2e563661ad0a1465c1b9bf501a9f (diff) |
Ensure the EXTRA_SHOW_TAB is checked for all new intents.
onNewIntent is only called when the activity is already active so when
an intent is sent to start the DialtactsActivity on a specific tab when
the DialtactsActivity is not already active, the code to switch to the
specific tab is not called. Move this code to onResume() instead.
Bug: 21120186
Change-Id: I735eae22ca5de54f4c17688777b4309616f2c691
-rw-r--r-- | src/com/android/dialer/DialtactsActivity.java | 13 | ||||
-rw-r--r-- | src/com/android/dialer/list/ListsFragment.java | 4 |
2 files changed, 12 insertions, 5 deletions
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java index b8a1d4dce..ba1b8d163 100644 --- a/src/com/android/dialer/DialtactsActivity.java +++ b/src/com/android/dialer/DialtactsActivity.java @@ -545,6 +545,14 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O prepareVoiceSearchButton(); mDialerDatabaseHelper.startSmartDialUpdateThread(); mFloatingActionButtonController.align(getFabAlignment(), false /* animate */); + + if (getIntent().hasExtra(EXTRA_SHOW_TAB)) { + int index = getIntent().getIntExtra(EXTRA_SHOW_TAB, ListsFragment.TAB_INDEX_SPEED_DIAL); + if (index < mListsFragment.getTabCount()) { + mListsFragment.showTab(index); + } + } + Trace.endSection(); } @@ -906,11 +914,6 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O mStateSaved = false; displayFragment(newIntent); - if (newIntent.hasExtra(EXTRA_SHOW_TAB)) { - mListsFragment.showTab( - getIntent().getIntExtra(EXTRA_SHOW_TAB, mListsFragment.TAB_INDEX_SPEED_DIAL)); - } - invalidateOptionsMenu(); } diff --git a/src/com/android/dialer/list/ListsFragment.java b/src/com/android/dialer/list/ListsFragment.java index e45da0ce0..33c977670 100644 --- a/src/com/android/dialer/list/ListsFragment.java +++ b/src/com/android/dialer/list/ListsFragment.java @@ -347,6 +347,10 @@ public class ListsFragment extends Fragment return mRemoveView; } + public int getTabCount() { + return mViewPagerAdapter.getCount(); + } + private int getRtlPosition(int position) { if (DialerUtils.isRtl()) { return mViewPagerAdapter.getCount() - 1 - position; |