Merge "Reveal recent calls shortcut only when at top of list" into lmp-preview-dev
diff --git a/res/drawable-hdpi/fab_ic_call.png b/res/drawable-hdpi/fab_ic_call.png
index 548a391..7bf83fa 100644
--- a/res/drawable-hdpi/fab_ic_call.png
+++ b/res/drawable-hdpi/fab_ic_call.png
Binary files differ
diff --git a/res/drawable-hdpi/fab_ic_dial.png b/res/drawable-hdpi/fab_ic_dial.png
index a856632..3cad4c6 100644
--- a/res/drawable-hdpi/fab_ic_dial.png
+++ b/res/drawable-hdpi/fab_ic_dial.png
Binary files differ
diff --git a/res/drawable-hdpi/fab_teal_background.png b/res/drawable-hdpi/fab_teal_background.png
index 88e8495..e2f01e8 100644
--- a/res/drawable-hdpi/fab_teal_background.png
+++ b/res/drawable-hdpi/fab_teal_background.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_ab_search.png b/res/drawable-hdpi/ic_ab_search.png
index 3702846..d86b219 100644
--- a/res/drawable-hdpi/ic_ab_search.png
+++ b/res/drawable-hdpi/ic_ab_search.png
Binary files differ
diff --git a/res/drawable-mdpi/fab_ic_call.png b/res/drawable-mdpi/fab_ic_call.png
index ff7b345..790f935 100644
--- a/res/drawable-mdpi/fab_ic_call.png
+++ b/res/drawable-mdpi/fab_ic_call.png
Binary files differ
diff --git a/res/drawable-mdpi/fab_ic_dial.png b/res/drawable-mdpi/fab_ic_dial.png
index 3a23245..4c854e1 100644
--- a/res/drawable-mdpi/fab_ic_dial.png
+++ b/res/drawable-mdpi/fab_ic_dial.png
Binary files differ
diff --git a/res/drawable-mdpi/fab_teal_background.png b/res/drawable-mdpi/fab_teal_background.png
index 3a37b27..c95d124 100644
--- a/res/drawable-mdpi/fab_teal_background.png
+++ b/res/drawable-mdpi/fab_teal_background.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_ab_search.png b/res/drawable-mdpi/ic_ab_search.png
index cc9f911..2b23b1e 100644
--- a/res/drawable-mdpi/ic_ab_search.png
+++ b/res/drawable-mdpi/ic_ab_search.png
Binary files differ
diff --git a/res/drawable-xhdpi/fab_ic_call.png b/res/drawable-xhdpi/fab_ic_call.png
index 2bff65e..6bd53f5 100644
--- a/res/drawable-xhdpi/fab_ic_call.png
+++ b/res/drawable-xhdpi/fab_ic_call.png
Binary files differ
diff --git a/res/drawable-xhdpi/fab_ic_dial.png b/res/drawable-xhdpi/fab_ic_dial.png
index 3694017..398a03c 100644
--- a/res/drawable-xhdpi/fab_ic_dial.png
+++ b/res/drawable-xhdpi/fab_ic_dial.png
Binary files differ
diff --git a/res/drawable-xhdpi/fab_teal_background.png b/res/drawable-xhdpi/fab_teal_background.png
index b2ed8cd..f94f759 100644
--- a/res/drawable-xhdpi/fab_teal_background.png
+++ b/res/drawable-xhdpi/fab_teal_background.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_ab_search.png b/res/drawable-xhdpi/ic_ab_search.png
index 718ff49..71f7827 100644
--- a/res/drawable-xhdpi/ic_ab_search.png
+++ b/res/drawable-xhdpi/ic_ab_search.png
Binary files differ
diff --git a/res/drawable-xxhdpi/fab_ic_call.png b/res/drawable-xxhdpi/fab_ic_call.png
index a756b95..6866fa4 100644
--- a/res/drawable-xxhdpi/fab_ic_call.png
+++ b/res/drawable-xxhdpi/fab_ic_call.png
Binary files differ
diff --git a/res/drawable-xxhdpi/fab_ic_dial.png b/res/drawable-xxhdpi/fab_ic_dial.png
index 8f1f21e..5f1cd45 100644
--- a/res/drawable-xxhdpi/fab_ic_dial.png
+++ b/res/drawable-xxhdpi/fab_ic_dial.png
Binary files differ
diff --git a/res/drawable-xxhdpi/fab_teal_background.png b/res/drawable-xxhdpi/fab_teal_background.png
index 6bb4d20..cc0ba27 100644
--- a/res/drawable-xxhdpi/fab_teal_background.png
+++ b/res/drawable-xxhdpi/fab_teal_background.png
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_ab_search.png b/res/drawable-xxhdpi/ic_ab_search.png
index 4bb5165..142c545 100644
--- a/res/drawable-xxhdpi/ic_ab_search.png
+++ b/res/drawable-xxhdpi/ic_ab_search.png
Binary files differ
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 42d9118..5f45638 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -100,7 +100,7 @@
     <!-- Color for icons in the actionbar -->
     <color name="actionbar_icon_color">#ffffff</color>
 
-    <color name="dialer_dialpad_touch_tint">#1a1dc7db</color>
+    <color name="dialer_dialpad_touch_tint">#331dc7db</color>
 
     <color name="tab_ripple_color">@color/dialer_accent_color</color>
     <color name="tab_selected_underline_color">@color/dialer_accent_color</color>
diff --git a/src/com/android/dialer/list/ShortcutCardsAdapter.java b/src/com/android/dialer/list/ShortcutCardsAdapter.java
index 128871d..088535a 100644
--- a/src/com/android/dialer/list/ShortcutCardsAdapter.java
+++ b/src/com/android/dialer/list/ShortcutCardsAdapter.java
@@ -31,6 +31,7 @@
 
 import com.android.dialer.R;
 import com.android.dialer.calllog.CallLogAdapter;
+import com.android.dialer.calllog.CallLogListItemView;
 import com.android.dialer.calllog.CallLogNotificationsHelper;
 import com.android.dialer.calllog.CallLogQueryHandler;
 import com.android.dialer.list.SwipeHelper.OnItemGestureListener;
@@ -188,10 +189,7 @@
         final View view = mCallLogAdapter.getView(position, convertView == null ?
                 null : wrapper.getChildAt(0), parent);
         wrapper.removeAllViews();
-        final View callLogItem = view.findViewById(R.id.call_log_list_item);
-        // Reset the internal call log item view if it is being recycled
-        callLogItem.setTranslationX(0);
-        callLogItem.setAlpha(1);
+        wrapper.prepareChildView(view);
         wrapper.addView(view);
         return wrapper;
     }
@@ -225,8 +223,7 @@
                     densityScale, pagingTouchSlop);
         }
 
-        @Override
-        public void addView(View view) {
+        private void prepareChildView(View view) {
             view.setBackgroundResource(R.drawable.rounded_corner_bg);
 
             final FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(
@@ -251,7 +248,13 @@
                     R.dimen.recent_call_log_item_translation_z);
             view.setTranslationZ(mPreviousTranslationZ);
 
-            super.addView(view);
+            final CallLogListItemView callLogItem =
+                    (CallLogListItemView) view.findViewById(R.id.call_log_list_item);
+            // Reset the internal call log item view if it is being recycled
+            callLogItem.setTranslationX(0);
+            callLogItem.setAlpha(1);
+            callLogItem.setClipBounds(null);
+            setChildrenOpacity(callLogItem, 1.0f);
         }
 
         @Override
@@ -346,9 +349,13 @@
 
             // If the view has any children, fade them out of view.
             final ViewGroup viewGroup = (ViewGroup) viewToClip;
+            setChildrenOpacity(viewGroup, Math.max(0, 1 - 3 * ratioHidden));
+        }
+
+        private void setChildrenOpacity(ViewGroup viewGroup, float alpha) {
             final int count = viewGroup.getChildCount();
             for (int i = 0; i < count; i++) {
-                viewGroup.getChildAt(i).setAlpha(Math.max(0, 1 - 3 * ratioHidden));
+                viewGroup.getChildAt(i).setAlpha(alpha);
             }
         }
     }