Updating fade-effect parameters:
> Shifting the effect at the edge in the presence of padding
> Removing fade effect at the bottom
> Fixing wrong call for translating children

Bug: 63003761
Change-Id: Ia9d030de60e933a2e688496109d62977885c2c0d
diff --git a/src/com/android/launcher3/allapps/AllAppsRecyclerView.java b/src/com/android/launcher3/allapps/AllAppsRecyclerView.java
index ab589d8..22e295e 100644
--- a/src/com/android/launcher3/allapps/AllAppsRecyclerView.java
+++ b/src/com/android/launcher3/allapps/AllAppsRecyclerView.java
@@ -202,8 +202,6 @@
 
     @Override
     public void onDraw(Canvas c) {
-        c.translate(0, mContentTranslationY);
-
         // Draw the background
         if (mEmptySearchBackground != null && mEmptySearchBackground.getAlpha() > 0) {
             mEmptySearchBackground.draw(c);
@@ -212,6 +210,13 @@
         super.onDraw(c);
     }
 
+    @Override
+    protected void dispatchDraw(Canvas canvas) {
+        canvas.translate(0, mContentTranslationY);
+        super.dispatchDraw(canvas);
+        canvas.translate(0, -mContentTranslationY);
+    }
+
     public float getContentTranslationY() {
         return mContentTranslationY;
     }
@@ -336,6 +341,22 @@
         mFastScrollHelper.onSetAdapter((AllAppsGridAdapter) adapter);
     }
 
+    @Override
+    protected float getBottomFadingEdgeStrength() {
+        // No bottom fading edge.
+        return 0;
+    }
+
+    @Override
+    protected boolean isPaddingOffsetRequired() {
+        return true;
+    }
+
+    @Override
+    protected int getTopPaddingOffset() {
+        return -getPaddingTop();
+    }
+
     /**
      * Updates the bounds for the scrollbar.
      */