Avoid stripping empty screens if the workspace is still loading (issue 12523285)

-> This appears to be what may be causing data loss in some users during update.
   A certain (seemingly) rare combination of life-cycle events and package events
   seems to be the culprit (potentially why it's seen at update time).

Change-Id: Iea4f8aef012ba80b7ba568e0df264edb9284efbe
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index c87f9e2..7944173 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -2078,6 +2078,10 @@
         return mWorkspaceLoading || mWaitingForResult;
     }
 
+    public boolean isWorkspaceLoading() {
+        return mWorkspaceLoading;
+    }
+
     private void resetAddInfo() {
         mPendingAddInfo.container = ItemInfo.NO_ID;
         mPendingAddInfo.screenId = -1;
@@ -3771,6 +3775,8 @@
      * Implementation of the method from LauncherModel.Callbacks.
      */
     public void startBinding() {
+        mWorkspaceLoading = true;
+
         // If we're starting binding all over again, clear any bind calls we'd postponed in
         // the past (see waitUntilResume) -- we don't need them since we're starting binding
         // from scratch again