Moved gcFragments to onViewAttachedToWindow

This assures gcFragments gets executed even when a user keeps switching
between two already bound pages.  This prevents a theoretical
'Fragment memory leak' in small collections.

Bug: 122669030
Test: ./gradlew viewpager:connectedCheck

Change-Id: Ifb5aa0a97cbe1a71f99e9125fb20dd5d3cd36201
diff --git a/viewpager2/src/main/java/androidx/viewpager2/adapter/FragmentStateAdapter.java b/viewpager2/src/main/java/androidx/viewpager2/adapter/FragmentStateAdapter.java
index 4c851ae..c37e953 100644
--- a/viewpager2/src/main/java/androidx/viewpager2/adapter/FragmentStateAdapter.java
+++ b/viewpager2/src/main/java/androidx/viewpager2/adapter/FragmentStateAdapter.java
@@ -220,6 +220,7 @@
     @Override
     public final void onViewAttachedToWindow(@NonNull final FragmentViewHolder holder) {
         placeFragmentInViewHolder(holder);
+        gcFragments();
     }
 
     /**
@@ -299,8 +300,6 @@
                 }
             });
         }
-
-        gcFragments();
     }
 
     private void scheduleViewAttach(final Fragment fragment, final FrameLayout container) {