Adjust the layouts of selecting category page and selecting wallpaper page

Category selecting page:
https://screenshot.googleplex.com/zeQq6Ch64vZyGuN.png

2 column wallpaper selecting page:
https://screenshot.googleplex.com/HQcF6CgKcaTgpiz.png

3 column wallpaper selecting page:
https://screenshot.googleplex.com/3PvgzgZXEXjbnXp.png

Bug: 186005937
Test: manual
Change-Id: Ic2ab068b9ab0b8db71bacb6ee33628b310365c15
diff --git a/src/com/android/wallpaper/picker/CategorySelectorFragment.java b/src/com/android/wallpaper/picker/CategorySelectorFragment.java
index 7d9f5d1..65c3819 100644
--- a/src/com/android/wallpaper/picker/CategorySelectorFragment.java
+++ b/src/com/android/wallpaper/picker/CategorySelectorFragment.java
@@ -130,8 +130,8 @@
         View view = inflater.inflate(R.layout.fragment_category_selector, container,
                 /* attachToRoot= */ false);
         mImageGrid = view.findViewById(R.id.category_grid);
-        mImageGrid.addItemDecoration(new GridPaddingDecoration(
-                getResources().getDimensionPixelSize(R.dimen.grid_padding)));
+        mImageGrid.addItemDecoration(new GridPaddingDecoration(getResources().getDimensionPixelSize(
+                R.dimen.grid_item_category_padding_horizontal)));
 
         mTileSizePx = SizeCalculator.getCategoryTileSize(getActivity());
 
@@ -517,7 +517,7 @@
 
     private class GridPaddingDecoration extends RecyclerView.ItemDecoration {
 
-        private int mPadding;
+        private final int mPadding;
 
         GridPaddingDecoration(int padding) {
             mPadding = padding;
@@ -531,6 +531,16 @@
                 outRect.left = mPadding;
                 outRect.right = mPadding;
             }
+
+            RecyclerView.ViewHolder viewHolder = parent.getChildViewHolder(view);
+            if (viewHolder instanceof MyPhotosCategoryHolder
+                    || viewHolder instanceof FeaturedCategoryHolder) {
+                outRect.bottom = getResources().getDimensionPixelSize(
+                        R.dimen.grid_item_featured_category_padding_bottom);
+            } else {
+                outRect.bottom = getResources().getDimensionPixelSize(
+                        R.dimen.grid_item_category_padding_bottom);
+            }
         }
     }