diff options
author | calderwoodra <calderwoodra@google.com> | 2017-11-15 15:41:54 -0800 |
---|---|---|
committer | zachh <zachh@google.com> | 2017-11-18 07:30:52 +0000 |
commit | 9d197d0149cd6eb660e398a5f4a06a0387db7a18 (patch) | |
tree | 96901e5d921ade4fbb2a0c38d0d81e485d17f092 /java/com/android/dialer/app/DialtactsActivity.java | |
parent | 1636789520efce24c487c64f95f97f510c505661 (diff) |
Keyboard now closes in regular search when user scrolls list.
This change also enables search actions to be visible in regular search.
screenshot: http://screen/ULBgq2RnKnM
Bug: 68730642,67657783,68775021,66723880
Test: manual
PiperOrigin-RevId: 175892821
Change-Id: I2c71fe8ffa2ffddfbc88d777909c4837e0ea4384
Diffstat (limited to 'java/com/android/dialer/app/DialtactsActivity.java')
-rw-r--r-- | java/com/android/dialer/app/DialtactsActivity.java | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/java/com/android/dialer/app/DialtactsActivity.java b/java/com/android/dialer/app/DialtactsActivity.java index 269e598e1..d9a63fab2 100644 --- a/java/com/android/dialer/app/DialtactsActivity.java +++ b/java/com/android/dialer/app/DialtactsActivity.java @@ -96,6 +96,7 @@ import com.android.dialer.callintent.CallIntentBuilder; import com.android.dialer.callintent.CallSpecificAppData; import com.android.dialer.common.Assert; import com.android.dialer.common.LogUtil; +import com.android.dialer.common.UiUtil; import com.android.dialer.common.concurrent.ThreadUtil; import com.android.dialer.configprovider.ConfigProviderBindings; import com.android.dialer.constants.ActivityRequestCodes; @@ -178,6 +179,7 @@ public class DialtactsActivity extends TransactionSafeActivity private static final String KEY_IN_DIALPAD_SEARCH_UI = "in_dialpad_search_ui"; private static final String KEY_IN_NEW_SEARCH_UI = "in_new_search_ui"; private static final String KEY_SEARCH_QUERY = "search_query"; + private static final String KEY_DIALPAD_QUERY = "dialpad_query"; private static final String KEY_FIRST_LAUNCH = "first_launch"; private static final String KEY_WAS_CONFIGURATION_CHANGE = "was_configuration_change"; private static final String KEY_IS_DIALPAD_SHOWN = "is_dialpad_shown"; @@ -439,6 +441,7 @@ public class DialtactsActivity extends TransactionSafeActivity .commit(); } else { mSearchQuery = savedInstanceState.getString(KEY_SEARCH_QUERY); + mDialpadQuery = savedInstanceState.getString(KEY_DIALPAD_QUERY); mInRegularSearch = savedInstanceState.getBoolean(KEY_IN_REGULAR_SEARCH_UI); mInDialpadSearch = savedInstanceState.getBoolean(KEY_IN_DIALPAD_SEARCH_UI); mInNewSearch = savedInstanceState.getBoolean(KEY_IN_NEW_SEARCH_UI); @@ -654,6 +657,7 @@ public class DialtactsActivity extends TransactionSafeActivity LogUtil.enterBlock("DialtactsActivity.onSaveInstanceState"); super.onSaveInstanceState(outState); outState.putString(KEY_SEARCH_QUERY, mSearchQuery); + outState.putString(KEY_DIALPAD_QUERY, mDialpadQuery); outState.putBoolean(KEY_IN_REGULAR_SEARCH_UI, mInRegularSearch); outState.putBoolean(KEY_IN_DIALPAD_SEARCH_UI, mInDialpadSearch); outState.putBoolean(KEY_IN_NEW_SEARCH_UI, mInNewSearch); @@ -1425,6 +1429,21 @@ public class DialtactsActivity extends TransactionSafeActivity } @Override + public boolean onSearchListTouch(MotionEvent event) { + if (mIsDialpadShown) { + PerformanceReport.recordClick(UiAction.Type.CLOSE_DIALPAD); + hideDialpadFragment(true, false); + if (TextUtils.isEmpty(mDialpadQuery)) { + exitSearchUi(); + } + return true; + } else { + UiUtil.hideKeyboardFrom(this, mSearchEditTextLayout); + } + return false; + } + + @Override public void onListFragmentScrollStateChange(int scrollState) { PerformanceReport.recordScrollStateChange(scrollState); if (scrollState == OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) { @@ -1659,17 +1678,6 @@ public class DialtactsActivity extends TransactionSafeActivity } @Override - public boolean onSearchListTouch(MotionEvent event) { - if (mIsDialpadShown) { - hideDialpadFragment(true, false); - if (TextUtils.isEmpty(mDialpadQuery)) { - exitSearchUi(); - } - } - return false; - } - - @Override public void onCallPlaced() { if (mIsDialpadShown) { hideDialpadFragment(false, true); |