summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorYorke Lee <yorkelee@google.com>2014-08-07 22:03:53 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-08-06 23:49:20 +0000
commit0b8f2803d6051f53970e178fb037c985608f7ac8 (patch)
tree914696cdaf7769c7176e12ca73f09febf969ab2b /src
parent9028f6e6420ff47c6227d9f3936b9a19b8a0b153 (diff)
parent94762c39403e4b49aefa8f49620b4a6bc2e675b3 (diff)
Merge "Fix IllegalStateException in Dialer" into lmp-dev
Diffstat (limited to 'src')
-rw-r--r--src/com/android/dialer/list/PhoneFavoriteListView.java7
-rw-r--r--src/com/android/dialer/list/PhoneFavoritesTileAdapter.java16
2 files changed, 23 insertions, 0 deletions
diff --git a/src/com/android/dialer/list/PhoneFavoriteListView.java b/src/com/android/dialer/list/PhoneFavoriteListView.java
index 4ecc1cd90..2b4575486 100644
--- a/src/com/android/dialer/list/PhoneFavoriteListView.java
+++ b/src/com/android/dialer/list/PhoneFavoriteListView.java
@@ -317,4 +317,11 @@ public class PhoneFavoriteListView extends GridView implements OnDragDropListene
return (PhoneFavoriteSquareTileView) child;
}
+
+ // Temporary workaround for b/16862804
+ @Override
+ public void onWindowFocusChanged(boolean hasWindowFocus) {
+ setAddStatesFromChildren(false);
+ super.onWindowFocusChanged(hasWindowFocus);
+ }
}
diff --git a/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java b/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java
index 382e42e56..600bd8b5c 100644
--- a/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java
+++ b/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java
@@ -35,7 +35,9 @@ import android.provider.ContactsContract.PinnedPositions;
import android.text.TextUtils;
import android.util.Log;
import android.util.LongSparseArray;
+import android.view.MotionEvent;
import android.view.View;
+import android.view.View.OnTouchListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.FrameLayout;
@@ -129,6 +131,18 @@ public class PhoneFavoritesTileAdapter extends BaseAdapter implements
}
};
+ // Temporary workaround for b/16862804
+ final OnTouchListener mOnTouchListener = new OnTouchListener() {
+ @Override
+ public boolean onTouch(View v, MotionEvent event) {
+ if (v.getParent() != null) {
+ ViewGroup parent = (ViewGroup) v.getParent();
+ parent.setAddStatesFromChildren(false);
+ }
+ return false;
+ }
+ };
+
public interface OnDataSetChangedForAnimationListener {
public void onDataSetChangedForAnimation(long... idsInPlace);
public void cacheOffsetsForDatasetChange();
@@ -399,6 +413,8 @@ public class PhoneFavoritesTileAdapter extends BaseAdapter implements
tileView.setPhotoManager(mPhotoManager);
tileView.setListener(mListener);
tileView.loadFromContact(getItem(position));
+
+ tileView.setOnTouchListener(mOnTouchListener);
return tileView;
}