Adding logging to track issue with apps pages. (Bug 6549598)

Change-Id: Iaf8ad301325442346a2587f038b7a44578c16427
diff --git a/src/com/android/launcher2/AppsCustomizePagedView.java b/src/com/android/launcher2/AppsCustomizePagedView.java
index 71a4be2..3a41255 100644
--- a/src/com/android/launcher2/AppsCustomizePagedView.java
+++ b/src/com/android/launcher2/AppsCustomizePagedView.java
@@ -276,7 +276,6 @@
     private int mMaxAppCellCountX, mMaxAppCellCountY;
     private int mWidgetCountX, mWidgetCountY;
     private int mWidgetWidthGap, mWidgetHeightGap;
-    private final int mWidgetPreviewIconPaddedDimension;
     private final float sWidgetPreviewIconPaddingPercentage = 0.25f;
     private PagedViewCellLayout mWidgetSpacingLayout;
     private int mNumAppsPages;
@@ -354,14 +353,14 @@
 
         // The padding on the non-matched dimension for the default widget preview icons
         // (top + bottom)
-        mWidgetPreviewIconPaddedDimension =
-            (int) (mAppIconSize * (1 + (2 * sWidgetPreviewIconPaddingPercentage)));
         mFadeInAdjacentScreens = false;
 
         // Unless otherwise specified this view is important for accessibility.
         if (getImportantForAccessibility() == View.IMPORTANT_FOR_ACCESSIBILITY_AUTO) {
             setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_YES);
         }
+
+        Log.d(TAG, "6549598 ctor mNumWidgetPages: " + mNumWidgetPages + " mNumAppsPages: " + mNumAppsPages);
     }
 
     @Override
@@ -372,6 +371,7 @@
         Context context = getContext();
         Resources r = context.getResources();
         setDragSlopeThreshold(r.getInteger(R.integer.config_appsCustomizeDragSlopeThreshold)/100f);
+        Log.d(TAG, "6549598 init mNumWidgetPages: " + mNumWidgetPages + " mNumAppsPages: " + mNumAppsPages);
     }
 
     @Override
@@ -452,9 +452,12 @@
         mNumWidgetPages = (int) Math.ceil(mWidgets.size() /
                 (float) (mWidgetCountX * mWidgetCountY));
         mNumAppsPages = (int) Math.ceil((float) mApps.size() / (mCellCountX * mCellCountY));
+        Log.d(TAG, "6549598 updatePageCounts mNumWidgetPages: " + mNumWidgetPages + " mNumAppsPages: " + mNumAppsPages);
+        Log.d(TAG, "6549598 mApps.size(): " + mApps.size() + " mWidgets.size(): " + mWidgets.size() + " mCellCountX: " + mCellCountX + " mCellCountY: " + mCellCountY);
     }
 
     protected void onDataReady(int width, int height) {
+        Log.d(TAG, "6549598 onDataReady");
         // Note that we transpose the counts in portrait so that we get a similar layout
         boolean isLandscape = getResources().getConfiguration().orientation ==
             Configuration.ORIENTATION_LANDSCAPE;
@@ -540,6 +543,7 @@
     }
 
     public void onPackagesUpdated() {
+        Log.d(TAG, "6549598 onPackagesUpdated");
         // TODO: this isn't ideal, but we actually need to delay here. This call is triggered
         // by a broadcast receiver, and in order for it to work correctly, we need to know that
         // the AppWidgetService has already received and processed the same broadcast. Since there
@@ -579,6 +583,7 @@
         mWidgets.addAll(shortcuts);
         Collections.sort(mWidgets,
                 new LauncherModel.WidgetAndShortcutNameComparator(mPackageManager));
+        Log.d(TAG, "6549598 updatePackages mWidgets.size(): " + mWidgets.size() + " wasEmpty: " + wasEmpty);
         updatePageCounts();
 
         if (wasEmpty) {
@@ -929,6 +934,7 @@
 
     @Override
     public void onLauncherTransitionEnd(Launcher l, boolean animated, boolean toWorkspace) {
+        Log.d(TAG, "6549598 onLauncherTransitionEnd");
         mInTransition = false;
         for (AsyncTaskPageData d : mDeferredSyncWidgetPageItems) {
             onSyncWidgetPageItems(d);
@@ -1020,6 +1026,7 @@
     }
 
     public void setContentType(ContentType type) {
+        Log.d(TAG, "6549598 setContentType mNumAppsPages: " + mNumAppsPages);
         if (type == ContentType.Widgets) {
             invalidatePageData(mNumAppsPages, true);
         } else if (type == ContentType.Applications) {
@@ -1046,6 +1053,7 @@
     }
 
     private void updateCurrentTab(int currentPage) {
+        Log.d(TAG, "6549598 updateCurrentTab mNumAppsPages: " + mNumAppsPages);
         AppsCustomizeTabHost tabHost = getTabHost();
         if (tabHost != null) {
             String tag = tabHost.getCurrentTabTag();
@@ -1089,6 +1097,7 @@
     }
 
     public void syncAppsPageItems(int page, boolean immediate) {
+        Log.d(TAG, "6549598 syncAppsPageItems page: " + page);
         // ensure that we have the right number of items on the pages
         int numCells = mCellCountX * mCellCountY;
         int startIndex = page * numCells;
@@ -1411,6 +1420,7 @@
     }
 
     public void syncWidgetPageItems(final int page, final boolean immediate) {
+        Log.d(TAG, "6549598 syncWidgetPageItems page: " + page);
         int numItemsPerPage = mWidgetCountX * mWidgetCountY;
 
         // Calculate the dimensions of each cell we are giving to each widget
@@ -1602,10 +1612,13 @@
             setupPage(layout);
             addView(layout);
         }
+
+        Log.d(TAG, "6549598 syncPages mNumAppsPages: " + mNumAppsPages + " mNumWidgetPages: " + mNumWidgetPages);
     }
 
     @Override
     public void syncPageItems(int page, boolean immediate) {
+        Log.d(TAG, "6549598 syncPageItems page: " + page + " immediate: " + immediate);
         if (page < mNumAppsPages) {
             syncAppsPageItems(page, immediate);
         } else {
@@ -1739,6 +1752,7 @@
     public void setApps(ArrayList<ApplicationInfo> list) {
         mApps = list;
         Collections.sort(mApps, LauncherModel.APP_NAME_COMPARATOR);
+        Log.d(TAG, "6549598 setApps mApps.size(): " + mApps.size());
         updatePageCounts();
 
         // The next layout pass will trigger data-ready if both widgets and apps are set, so 
@@ -1759,8 +1773,10 @@
     @Override
     public void addApps(ArrayList<ApplicationInfo> list) {
         addAppsWithoutInvalidate(list);
+        Log.d(TAG, "6549598 addApps mApps.size(): " + mApps.size() + " list.size(): " + list.size());
         updatePageCounts();
         invalidatePageData();
+        Log.d(TAG, "6549598 addApps mNumAppsPages: " + mNumAppsPages);
     }
     private int findAppByComponent(List<ApplicationInfo> list, ApplicationInfo item) {
         ComponentName removeComponent = item.intent.getComponent();
@@ -1787,8 +1803,10 @@
     @Override
     public void removeApps(ArrayList<ApplicationInfo> list) {
         removeAppsWithoutInvalidate(list);
+        Log.d(TAG, "6549598 removeApps mApps.size(): " + mApps.size() + " list.size(): " + list.size());
         updatePageCounts();
         invalidatePageData();
+        Log.d(TAG, "6549598 removeApps mNumAppsPages: " + mNumAppsPages);
     }
     @Override
     public void updateApps(ArrayList<ApplicationInfo> list) {
@@ -1797,13 +1815,15 @@
         // place in the list.
         removeAppsWithoutInvalidate(list);
         addAppsWithoutInvalidate(list);
+        Log.d(TAG, "6549598 updateApps mApps.size(): " + mApps.size() + " list.size(): " + list.size());
         updatePageCounts();
-
         invalidatePageData();
+        Log.d(TAG, "6549598 updateApps mNumAppsPages: " + mNumAppsPages);
     }
 
     @Override
     public void reset() {
+        Log.d(TAG, "6549598 reset");
         // If we have reset, then we should not continue to restore the previous state
         mSaveInstanceStateItemIndex = -1;
 
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index 9fbf50e..b2f27b9 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -350,6 +350,7 @@
 
         // Update customization drawer _after_ restoring the states
         if (mAppsCustomizeContent != null) {
+            Log.d(TAG, "6549598 Launcher.onCreate()");
             mAppsCustomizeContent.onPackagesUpdated();
         }
 
@@ -2227,6 +2228,11 @@
     }
 
     private void dispatchOnLauncherTransitionStart(View v, boolean animated, boolean toWorkspace) {
+        if (toWorkspace) {
+            Log.d(TAG, "6549598 Start animation to workspace");
+        } else {
+            Log.d(TAG, "6549598 Start animation to all apps");
+        }
         if (v instanceof LauncherTransitionable) {
             ((LauncherTransitionable) v).onLauncherTransitionStart(this, animated, toWorkspace);
         }
@@ -2242,6 +2248,11 @@
     }
 
     private void dispatchOnLauncherTransitionEnd(View v, boolean animated, boolean toWorkspace) {
+        if (toWorkspace) {
+            Log.d(TAG, "6549598 End animation to workspace");
+        } else {
+            Log.d(TAG, "6549598 End animation to all apps");
+        }
         if (v instanceof LauncherTransitionable) {
             ((LauncherTransitionable) v).onLauncherTransitionEnd(this, animated, toWorkspace);
         }
diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java
index 93725ce..c820264 100644
--- a/src/com/android/launcher2/PagedView.java
+++ b/src/com/android/launcher2/PagedView.java
@@ -1673,6 +1673,7 @@
     }
     protected void invalidatePageData(int currentPage, boolean immediateAndOnly) {
         if (!mIsDataReady) {
+            if (this instanceof AppsCustomizePagedView) Log.d(TAG, "6549598 invalidatePageData page: " + currentPage + " not data ready");
             return;
         }
 
@@ -1704,6 +1705,8 @@
             // Load any pages that are necessary for the current window of views
             loadAssociatedPages(mCurrentPage, immediateAndOnly);
             requestLayout();
+
+            if (this instanceof AppsCustomizePagedView) Log.d(TAG, "6549598 invalidatePageData page: " + currentPage);
         }
     }