diff options
-rw-r--r-- | src/com/android/dialer/list/PhoneFavoriteListView.java | 7 | ||||
-rw-r--r-- | src/com/android/dialer/list/PhoneFavoritesTileAdapter.java | 16 |
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; } |