summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorYorke Lee <yorkelee@google.com>2014-05-29 07:18:42 -0700
committerYorke Lee <yorkelee@google.com>2014-05-29 14:56:09 -0700
commit710709da8389d401d3089bbf9836dfca527f15c3 (patch)
tree0fdef1182179000b50b569b0ca68792e3b9e09d9 /src
parentc987e00fa84f8997c07e8cb2d413897ae1d41b14 (diff)
Fix for search UI remaining on screen after call is made
Also slide up the action bar after it is faded out - this is so that it doesn't remain in the same position and intercept touches Remove unneeded FragmentTransaction fadeout animation in exitSearchUI that was causing jank when returning to the favorites screen Bug: 15120649 Change-Id: Idcf96c2339603af09e1773729994d267158f70a0
Diffstat (limited to 'src')
-rw-r--r--src/com/android/dialer/DialtactsActivity.java11
-rw-r--r--src/com/android/dialer/list/ListsFragment.java10
-rw-r--r--src/com/android/dialer/widget/ActionBarController.java16
-rw-r--r--src/com/android/dialer/widget/SearchEditTextLayout.java6
4 files changed, 36 insertions, 7 deletions
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index 82b78381c..b7772c112 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -263,10 +263,11 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
// no need to do anything here.
return;
}
- mSearchQuery = newText;
if (DEBUG) {
Log.d(TAG, "onTextChange for mSearchView called with new query: " + newText);
+ Log.d(TAG, "Previous Query: " + mSearchQuery);
}
+ mSearchQuery = newText;
// Show search fragment only when the query string is changed to non-empty text.
if (!TextUtils.isEmpty(newText)) {
@@ -687,8 +688,11 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
}
private void hideDialpadAndSearchUi() {
- mSearchView.setText(null);
- hideDialpadFragment(false, true);
+ if (mIsDialpadShown) {
+ hideDialpadFragment(false, true);
+ } else {
+ exitSearchUi();
+ }
}
private void hideInputMethod(View view) {
@@ -873,7 +877,6 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
setNotInSearchUi();
final FragmentTransaction transaction = getFragmentManager().beginTransaction();
- transaction.setCustomAnimations(0, android.R.animator.fade_out);
if (mSmartDialSearchFragment != null) {
transaction.remove(mSmartDialSearchFragment);
}
diff --git a/src/com/android/dialer/list/ListsFragment.java b/src/com/android/dialer/list/ListsFragment.java
index 229f7f3cc..30e0e0fa0 100644
--- a/src/com/android/dialer/list/ListsFragment.java
+++ b/src/com/android/dialer/list/ListsFragment.java
@@ -52,6 +52,9 @@ import java.util.ArrayList;
public class ListsFragment extends Fragment implements CallLogQueryHandler.Listener,
CallLogAdapter.CallFetcher, ViewPager.OnPageChangeListener {
+ private static final boolean DEBUG = DialtactsActivity.DEBUG;
+ private static final String TAG = "ListsFragment";
+
public static final int TAB_INDEX_SPEED_DIAL = 0;
public static final int TAB_INDEX_RECENTS = 1;
public static final int TAB_INDEX_ALL_CONTACTS = 2;
@@ -154,11 +157,17 @@ public class ListsFragment extends Fragment implements CallLogQueryHandler.Liste
@Override
public void onPanelOpened(View panel) {
+ if (DEBUG) {
+ Log.d(TAG, "onPanelOpened");
+ }
mIsPanelOpen = true;
}
@Override
public void onPanelClosed(View panel) {
+ if (DEBUG) {
+ Log.d(TAG, "onPanelClosed");
+ }
mIsPanelOpen = false;
}
};
@@ -232,7 +241,6 @@ public class ListsFragment extends Fragment implements CallLogQueryHandler.Liste
// Wipe the cache to refresh the call shortcut item. This is not that expensive because
// it only contains one item.
mCallLogAdapter.invalidateCache();
- mActionBar = null;
super.onPause();
}
diff --git a/src/com/android/dialer/widget/ActionBarController.java b/src/com/android/dialer/widget/ActionBarController.java
index 49506f4d6..67037a28b 100644
--- a/src/com/android/dialer/widget/ActionBarController.java
+++ b/src/com/android/dialer/widget/ActionBarController.java
@@ -7,6 +7,8 @@ import android.animation.ValueAnimator.AnimatorUpdateListener;
import android.os.Bundle;
import android.util.Log;
+import com.android.contacts.common.animation.AnimUtils;
+import com.android.contacts.common.animation.AnimUtils.AnimationCallback;
import com.android.dialer.DialtactsActivity;
/**
@@ -26,6 +28,18 @@ public class ActionBarController {
private boolean mIsActionBarSlidUp;
+ private final AnimationCallback mFadeOutCallback = new AnimationCallback() {
+ @Override
+ public void onAnimationEnd() {
+ slideActionBarUp(false);
+ }
+
+ @Override
+ public void onAnimationCancel() {
+ slideActionBarUp(false);
+ }
+ };
+
public interface ActivityUi {
public boolean isInSearchUi();
public boolean hasSearchQuery();
@@ -127,7 +141,7 @@ public class ActionBarController {
slideActionBarUp(true);
} else {
// From the lists fragment
- mSearchBox.fadeOut();
+ mSearchBox.fadeOut(mFadeOutCallback);
}
}
diff --git a/src/com/android/dialer/widget/SearchEditTextLayout.java b/src/com/android/dialer/widget/SearchEditTextLayout.java
index ef3ddcc6e..311d2afd1 100644
--- a/src/com/android/dialer/widget/SearchEditTextLayout.java
+++ b/src/com/android/dialer/widget/SearchEditTextLayout.java
@@ -123,7 +123,11 @@ public class SearchEditTextLayout extends FrameLayout {
}
public void fadeOut() {
- AnimUtils.fadeOut(this, ANIMATION_DURATION);
+ fadeOut(null);
+ }
+
+ public void fadeOut(AnimUtils.AnimationCallback callback) {
+ AnimUtils.fadeOut(this, ANIMATION_DURATION, callback);
mIsFadedOut = true;
}