Overlay shouldn't show up above Intro screen

bug: 18173340
Change-Id: Icf738a55398023ab6bad5cced05b25e053dec0a2
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index 7fd8193..a2de314 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -489,13 +489,6 @@
         // On large interfaces, we want the screen to auto-rotate based on the current orientation
         unlockScreenOrientation(true);
 
-        if (shouldShowIntroScreen()) {
-            showIntroScreen();
-        } else {
-            showFirstRunActivity();
-            showFirstRunClings();
-        }
-
         if (mLauncherCallbacks != null) {
             mLauncherCallbacks.onCreate(savedInstanceState);
             if (mLauncherCallbacks.hasLauncherOverlay()) {
@@ -506,6 +499,13 @@
                 mWorkspace.setLauncherOverlay(mLauncherOverlay);
             }
         }
+
+        if (shouldShowIntroScreen()) {
+            showIntroScreen();
+        } else {
+            showFirstRunActivity();
+            showFirstRunClings();
+        }
     }
 
     private LauncherCallbacks mLauncherCallbacks;
@@ -5260,6 +5260,9 @@
         if (introScreen != null) {
             mDragLayer.showOverlayView(introScreen);
         }
+        if (mLauncherOverlayContainer != null) {
+            mLauncherOverlayContainer.setVisibility(View.INVISIBLE);
+        }
     }
 
     public void dismissIntroScreen() {
@@ -5271,11 +5274,17 @@
                 @Override
                 public void run() {
                     mDragLayer.dismissOverlayView();
+                    if (mLauncherOverlayContainer != null) {
+                        mLauncherOverlayContainer.setVisibility(View.VISIBLE);
+                    }
                     showFirstRunClings();
                 }
             }, ACTIVITY_START_DELAY);
         } else {
             mDragLayer.dismissOverlayView();
+            if (mLauncherOverlayContainer != null) {
+                mLauncherOverlayContainer.setVisibility(View.VISIBLE);
+            }
             showFirstRunClings();
         }
         changeWallpaperVisiblity(true);