Fixing crash and updating default layout

- Fixing dragging/rotation crash due to runnables referencing old Launcher activity (5122814)
- Updating default layout to add portal and contents (4998213)

Change-Id: I87658e7119a2b86aea25ebc7ecc82ee0ebcffc1e
diff --git a/res/values/strings.xml b/res/values/strings.xml
index e8c8d00..95d35d0 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -194,6 +194,9 @@
     <!-- Widgets: -->
     <skip />    
 
+    <!-- The Google Apps folder name -->
+    <string name="google_apps_folder_name">Google Apps</string>
+
     <!-- Text to show user in place of a gadget when we can't display it properly -->
     <string name="gadget_error_text">Problem loading widget</string>
 
diff --git a/res/xml/default_workspace.xml b/res/xml/default_workspace.xml
index d509490..01d2430 100644
--- a/res/xml/default_workspace.xml
+++ b/res/xml/default_workspace.xml
@@ -26,16 +26,50 @@
         launcher:screen="2"
         launcher:x="0"
         launcher:y="3" />
+    <folder
+        launcher:screen="2"
+        launcher:x="3"
+        launcher:y="3"
+        launcher:title="Google Apps">
+        <favorite
+            launcher:packageName="com.google.android.apps.plus"
+            launcher:className="com.google.android.apps.plus.phone.HomeActivity" />
+        <favorite
+            launcher:packageName="com.google.android.gm"
+            launcher:className="com.google.android.gm.ConversationListActivityGmail" />
+        <favorite
+            launcher:packageName="com.google.android.talk"
+            launcher:className="com.google.android.talk.SigningInActivity" />
+        <favorite
+            launcher:packageName="com.google.android.apps.maps"
+            launcher:className="com.google.android.maps.MapsActivity" />
+        <favorite
+            launcher:packageName="com.google.android.youtube"
+            launcher:className="com.google.android.youtube.app.honeycomb.Shell$HomeActivity" />
+        <favorite
+            launcher:packageName="com.google.android.music"
+            launcher:className="com.android.music.activitymanagement.TopLevelActivity" />
+        <favorite
+            launcher:packageName="com.google.android.videos"
+            launcher:className="com.google.android.youtube.videos.honeycomb.VideosActivity" />
+        <favorite
+            launcher:packageName="com.google.android.apps.books"
+            launcher:className="com.google.android.apps.books.app.BooksActivity" />
+        <favorite
+            launcher:packageName="com.android.vending"
+            launcher:className="com.android.vending.AssetBrowserActivity" />
+        <favorite
+            launcher:packageName="com.google.android.calendar"
+            launcher:className="com.android.calendar.AllInOneActivity" />
+        <favorite
+            launcher:packageName="com.google.android.gallery3d"
+            launcher:className="com.android.gallery3d.app.Gallery" />
+        <favorite
+            launcher:packageName="com.android.settings"
+            launcher:className="com.android.settings.Settings" />
+    </folder>
 
     <!-- Right screen [3] -->
-    <appwidget
-        launcher:packageName="com.android.music"
-        launcher:className="com.android.music.MediaAppWidgetProvider"
-        launcher:screen="3"
-        launcher:x="0"
-        launcher:y="0"
-        launcher:spanX="4"
-        launcher:spanY="1" />
 
     <!-- Far-right screen [4] -->
 
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index 6d8fd4d..1fa3210 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -1139,6 +1139,10 @@
     public void onDestroy() {
         super.onDestroy();
 
+        // Remove all pending runnables
+        mHandler.removeMessages(ADVANCE_MSG);
+        mHandler.removeMessages(0);
+
         // Stop callbacks from LauncherModel
         LauncherApplication app = ((LauncherApplication) getApplication());
         mModel.stopLoader();
@@ -2175,7 +2179,7 @@
         // Otherwise, we are not in spring loaded mode, so don't do anything.
     }
     void exitSpringLoadedDragModeDelayed(final boolean successfulDrop, boolean extendedDelay) {
-        mWorkspace.postDelayed(new Runnable() {
+        mHandler.postDelayed(new Runnable() {
             @Override
             public void run() {
                 exitSpringLoadedDragMode();