summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/app/DialtactsActivity.java
diff options
context:
space:
mode:
authorkeyboardr <keyboardr@google.com>2017-06-26 15:16:26 -0700
committerBrandon Maxwell <maxwelb@google.com>2017-06-30 14:33:17 -0700
commita60579e8f6abff88814d940f9da51e22788d6007 (patch)
tree188bdb9ec664a2d572efef0f87841958fa966c9d /java/com/android/dialer/app/DialtactsActivity.java
parent4b499669dde98f485199fd38883ad0dc26d1f0f3 (diff)
All Fragments are now support library Fragments.
Switch a bunch of imports to support library Fragments (and Loaders) instead of framework Fragments (and Loaders). This was needed to use FragmentManager.isStateSaved() instead of manually tracking that state. This should reduce errors around committing after state is saved. Also adds METADATA presubmit to prevent new usages of framework Fragments or Loaders. Bug: 38241305 Test: Covered by existing tests. PiperOrigin-RevId: 160202511 Change-Id: I5dc0b467da984ca571e49b4dfa0deea44eb372b2
Diffstat (limited to 'java/com/android/dialer/app/DialtactsActivity.java')
-rw-r--r--java/com/android/dialer/app/DialtactsActivity.java56
1 files changed, 23 insertions, 33 deletions
diff --git a/java/com/android/dialer/app/DialtactsActivity.java b/java/com/android/dialer/app/DialtactsActivity.java
index 1c9718e40..48c916707 100644
--- a/java/com/android/dialer/app/DialtactsActivity.java
+++ b/java/com/android/dialer/app/DialtactsActivity.java
@@ -16,8 +16,6 @@
package com.android.dialer.app;
-import android.app.Fragment;
-import android.app.FragmentTransaction;
import android.app.KeyguardManager;
import android.content.ActivityNotFoundException;
import android.content.Context;
@@ -40,6 +38,8 @@ import android.support.design.widget.CoordinatorLayout;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v4.app.ActivityCompat;
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.ViewPager;
import android.support.v7.app.ActionBar;
import android.telecom.PhoneAccount;
@@ -204,11 +204,6 @@ public class DialtactsActivity extends TransactionSafeActivity
private Animation mSlideOut;
/** Fragment containing the speed dial list, call history list, and all contacts list. */
private ListsFragment mListsFragment;
- /**
- * Tracks whether onSaveInstanceState has been called. If true, no fragment transactions can be
- * commited.
- */
- private boolean mStateSaved;
private boolean mIsRestarting;
private boolean mInDialpadSearch;
@@ -405,12 +400,12 @@ public class DialtactsActivity extends TransactionSafeActivity
actionBar.setBackgroundDrawable(null);
SearchEditTextLayout searchEditTextLayout =
- (SearchEditTextLayout) actionBar.getCustomView().findViewById(R.id.search_view_container);
+ actionBar.getCustomView().findViewById(R.id.search_view_container);
searchEditTextLayout.setPreImeKeyListener(mSearchEditTextLayoutListener);
mActionBarController = new ActionBarController(this, searchEditTextLayout);
- mSearchView = (EditText) searchEditTextLayout.findViewById(R.id.search_view);
+ mSearchView = searchEditTextLayout.findViewById(R.id.search_view);
mSearchView.addTextChangedListener(mPhoneSearchQueryTextListener);
mVoiceSearchButton = searchEditTextLayout.findViewById(R.id.voice_search_button);
searchEditTextLayout
@@ -433,14 +428,13 @@ public class DialtactsActivity extends TransactionSafeActivity
mIsLandscape =
getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE;
mPreviouslySelectedTabIndex = DialtactsPagerAdapter.TAB_INDEX_SPEED_DIAL;
- FloatingActionButton floatingActionButton =
- (FloatingActionButton) findViewById(R.id.floating_action_button);
+ FloatingActionButton floatingActionButton = findViewById(R.id.floating_action_button);
floatingActionButton.setOnClickListener(this);
mFloatingActionButtonController =
new FloatingActionButtonController(this, floatingActionButton);
ImageButton optionsMenuButton =
- (ImageButton) searchEditTextLayout.findViewById(R.id.dialtacts_options_menu_button);
+ searchEditTextLayout.findViewById(R.id.dialtacts_options_menu_button);
optionsMenuButton.setOnClickListener(this);
mOverflowMenu = buildOptionsMenu(optionsMenuButton);
optionsMenuButton.setOnTouchListener(mOverflowMenu.getDragToOpenListener());
@@ -448,7 +442,7 @@ public class DialtactsActivity extends TransactionSafeActivity
// Add the favorites fragment but only if savedInstanceState is null. Otherwise the
// fragment manager is responsible for recreating it.
if (savedInstanceState == null) {
- getFragmentManager()
+ getSupportFragmentManager()
.beginTransaction()
.add(R.id.dialtacts_frame, new ListsFragment(), TAG_FAVORITES_FRAGMENT)
.commit();
@@ -481,7 +475,7 @@ public class DialtactsActivity extends TransactionSafeActivity
mSlideIn.setAnimationListener(mSlideInListener);
mSlideOut.setAnimationListener(mSlideOutListener);
- mParentLayout = (CoordinatorLayout) findViewById(R.id.dialtacts_mainlayout);
+ mParentLayout = findViewById(R.id.dialtacts_mainlayout);
mParentLayout.setOnDragListener(new LayoutOnDragListener());
ViewUtil.doOnGlobalLayout(
floatingActionButton,
@@ -521,7 +515,6 @@ public class DialtactsActivity extends TransactionSafeActivity
PerformanceReport.startRecording();
}
- mStateSaved = false;
if (mFirstLaunch) {
displayFragment(getIntent());
} else if (!phoneIsInUse() && mInCallDialpadUp) {
@@ -651,7 +644,6 @@ public class DialtactsActivity extends TransactionSafeActivity
outState.putBoolean(KEY_IS_DIALPAD_SHOWN, mIsDialpadShown);
outState.putBoolean(KEY_WAS_CONFIGURATION_CHANGE, isChangingConfigurations());
mActionBarController.saveInstanceState(outState);
- mStateSaved = true;
}
@Override
@@ -660,7 +652,7 @@ public class DialtactsActivity extends TransactionSafeActivity
if (fragment instanceof DialpadFragment) {
mDialpadFragment = (DialpadFragment) fragment;
if (!mIsDialpadShown && !mShowDialpadOnResume) {
- final FragmentTransaction transaction = getFragmentManager().beginTransaction();
+ final FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
transaction.hide(mDialpadFragment);
transaction.commit();
}
@@ -747,7 +739,7 @@ public class DialtactsActivity extends TransactionSafeActivity
final Intent intent = new Intent(this, CallLogActivity.class);
startActivity(intent);
} else if (resId == R.id.menu_clear_frequents) {
- ClearFrequentsDialog.show(getFragmentManager());
+ ClearFrequentsDialog.show(getSupportFragmentManager());
Logger.get(this).logScreenView(ScreenEvent.Type.CLEAR_FREQUENTS, this);
return true;
} else if (resId == R.id.menu_call_settings) {
@@ -824,14 +816,14 @@ public class DialtactsActivity extends TransactionSafeActivity
*/
private void showDialpadFragment(boolean animate) {
LogUtil.d("DialtactActivity.showDialpadFragment", "animate: %b", animate);
- if (mIsDialpadShown || mStateSaved) {
+ if (mIsDialpadShown || getSupportFragmentManager().isStateSaved()) {
return;
}
mIsDialpadShown = true;
mListsFragment.setUserVisibleHint(false);
- final FragmentTransaction ft = getFragmentManager().beginTransaction();
+ final FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
if (mDialpadFragment == null) {
mDialpadFragment = new DialpadFragment();
ft.add(R.id.dialtacts_container, mDialpadFragment, TAG_DIALPAD_FRAGMENT);
@@ -854,7 +846,7 @@ public class DialtactsActivity extends TransactionSafeActivity
Assert.isNotNull(mListsFragment.getView()).animate().alpha(0).withLayer();
- //adjust the title, so the user will know where we're at when the activity start/resumes.
+ // adjust the title, so the user will know where we're at when the activity start/resumes.
setTitle(R.string.launcherDialpadActivityLabel);
}
@@ -916,17 +908,17 @@ public class DialtactsActivity extends TransactionSafeActivity
exitSearchUi();
}
}
- //reset the title to normal.
+ // reset the title to normal.
setTitle(R.string.launcherActivityLabel);
}
/** Finishes hiding the dialpad fragment after any animations are completed. */
private void commitDialpadFragmentHide() {
- if (!mStateSaved
+ if (!getSupportFragmentManager().isStateSaved()
&& mDialpadFragment != null
&& !mDialpadFragment.isHidden()
&& !isDestroyed()) {
- final FragmentTransaction ft = getFragmentManager().beginTransaction();
+ final FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.hide(mDialpadFragment);
ft.commit();
}
@@ -998,8 +990,7 @@ public class DialtactsActivity extends TransactionSafeActivity
/** Sets the hint text for the contacts search box */
private void setSearchBoxHint() {
SearchEditTextLayout searchEditTextLayout =
- (SearchEditTextLayout)
- getActionBarSafely().getCustomView().findViewById(R.id.search_view_container);
+ getActionBarSafely().getCustomView().findViewById(R.id.search_view_container);
((TextView) searchEditTextLayout.findViewById(R.id.search_box_start_search))
.setHint(getSearchBoxHint());
}
@@ -1089,7 +1080,6 @@ public class DialtactsActivity extends TransactionSafeActivity
setIntent(newIntent);
mFirstLaunch = true;
- mStateSaved = false;
displayFragment(newIntent);
invalidateOptionsMenu();
@@ -1112,7 +1102,7 @@ public class DialtactsActivity extends TransactionSafeActivity
/** Shows the search fragment */
private void enterSearchUi(boolean smartDialSearch, String query, boolean animate) {
- if (mStateSaved || getFragmentManager().isDestroyed()) {
+ if (getSupportFragmentManager().isStateSaved() || getSupportFragmentManager().isDestroyed()) {
// Weird race condition where fragment is doing work after the activity is destroyed
// due to talkback being on (b/10209937). Just return since we can't do any
// constructive here.
@@ -1123,7 +1113,7 @@ public class DialtactsActivity extends TransactionSafeActivity
LogUtil.v("DialtactsActivity.enterSearchUi", "smart dial " + smartDialSearch);
}
- final FragmentTransaction transaction = getFragmentManager().beginTransaction();
+ final FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
if (mInDialpadSearch && mSmartDialSearchFragment != null) {
transaction.remove(mSmartDialSearchFragment);
} else if (mInRegularSearch && mRegularSearchFragment != null) {
@@ -1151,7 +1141,7 @@ public class DialtactsActivity extends TransactionSafeActivity
transaction.setTransition(FragmentTransaction.TRANSIT_NONE);
}
- Fragment fragment = getFragmentManager().findFragmentByTag(tag);
+ Fragment fragment = getSupportFragmentManager().findFragmentByTag(tag);
if (fragment == null) {
if (useNewSearch) {
fragment = new NewSearchFragment();
@@ -1209,7 +1199,7 @@ public class DialtactsActivity extends TransactionSafeActivity
/** Hides the search fragment */
private void exitSearchUi() {
// See related bug in enterSearchUI();
- if (getFragmentManager().isDestroyed() || mStateSaved) {
+ if (getSupportFragmentManager().isStateSaved() || getSupportFragmentManager().isDestroyed()) {
return;
}
@@ -1229,7 +1219,7 @@ public class DialtactsActivity extends TransactionSafeActivity
onPageScrolled(mListsFragment.getCurrentTabIndex(), 0 /* offset */, 0 /* pixelOffset */);
onPageSelected(mListsFragment.getCurrentTabIndex());
- final FragmentTransaction transaction = getFragmentManager().beginTransaction();
+ final FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
if (mSmartDialSearchFragment != null) {
transaction.remove(mSmartDialSearchFragment);
}
@@ -1258,7 +1248,7 @@ public class DialtactsActivity extends TransactionSafeActivity
public void onBackPressed() {
PerformanceReport.recordClick(UiAction.Type.PRESS_ANDROID_BACK_BUTTON);
- if (mStateSaved) {
+ if (getSupportFragmentManager().isStateSaved()) {
return;
}
if (mIsDialpadShown) {