diff --git a/src/com/android/dialer/list/PhoneFavoriteListView.java b/src/com/android/dialer/list/PhoneFavoriteListView.java
index 4ecc1cd..2b45754 100644
--- a/src/com/android/dialer/list/PhoneFavoriteListView.java
+++ b/src/com/android/dialer/list/PhoneFavoriteListView.java
@@ -317,4 +317,11 @@
 
         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 382e42e..600bd8b 100644
--- a/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java
+++ b/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java
@@ -35,7 +35,9 @@
 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 @@
         }
     };
 
+    // 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 @@
         tileView.setPhotoManager(mPhotoManager);
         tileView.setListener(mListener);
         tileView.loadFromContact(getItem(position));
+
+        tileView.setOnTouchListener(mOnTouchListener);
         return tileView;
     }
 
