Adding utility method to temporarily hide scrollbar

Bug: 37616877
Change-Id: I286493746c44ace8958ffd8df24317125b445cf7
diff --git a/src/com/android/launcher3/BaseRecyclerView.java b/src/com/android/launcher3/BaseRecyclerView.java
index 1e6d894..514cc07 100644
--- a/src/com/android/launcher3/BaseRecyclerView.java
+++ b/src/com/android/launcher3/BaseRecyclerView.java
@@ -48,6 +48,8 @@
     private int mDownY;
     private int mLastY;
 
+    private boolean mScrollBarVisible = true;
+
     public BaseRecyclerView(Context context) {
         this(context, null);
     }
@@ -199,8 +201,18 @@
     @Override
     protected void dispatchDraw(Canvas canvas) {
         super.dispatchDraw(canvas);
-        onUpdateScrollbar(0);
-        mScrollbar.draw(canvas);
+        if (mScrollBarVisible) {
+            onUpdateScrollbar(0);
+            mScrollbar.draw(canvas);
+        }
+    }
+
+    /**
+     * Sets the scrollbar visibility. The call does not refresh the UI, its the responsibility
+     * of the caller to call {@link #invalidate()}.
+     */
+    public void setScrollBarVisible(boolean visible) {
+        mScrollBarVisible = visible;
     }
 
     /**