Merge "Disallowing touches through the custom workspace cling. (Bug 6721250)" into jb-dev
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index b9d35c2..0b01e42 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -23,9 +23,9 @@
     <string name="home" msgid="5921706419368316758">"Startbildschirm"</string>
     <string name="uid_name" msgid="3371120195364560632">"Android Core Apps"</string>
     <string name="folder_name" msgid="8551881338202938211"></string>
-    <string name="chooser_wallpaper" msgid="6063168087625352235">"Hintergrund auswählen von"</string>
+    <string name="chooser_wallpaper" msgid="6063168087625352235">"Hintergrund auswählen"</string>
     <string name="wallpaper_instructions" msgid="4215640646180727542">"Hintergrund festlegen"</string>
-    <string name="pick_wallpaper" msgid="5630222540525626723">"Hintergrundbilder"</string>
+    <string name="pick_wallpaper" msgid="5630222540525626723">"Hintergrund-Bilder"</string>
     <string name="activity_not_found" msgid="217823393239365967">"App ist nicht installiert."</string>
     <string name="widgets_tab_label" msgid="9145860100000983599">"Widgets"</string>
     <string name="long_press_widget_to_add" msgid="7395697462851217506">"Zum Hinzufügen Widget berühren und halten"</string>
diff --git a/res/values-sw340dp/dimens.xml b/res/values-sw340dp/dimens.xml
index 42fbb47..93de009 100644
--- a/res/values-sw340dp/dimens.xml
+++ b/res/values-sw340dp/dimens.xml
@@ -39,10 +39,4 @@
     <dimen name="cell_layout_top_padding_land">8dp</dimen>
     <dimen name="cell_layout_bottom_padding_port">8dp</dimen>
     <dimen name="cell_layout_bottom_padding_land">8dp</dimen>
-
-<!-- Workspace cell size -->
-    <dimen name="workspace_width_gap_land">0dp</dimen>
-    <dimen name="workspace_width_gap_port">0dp</dimen>
-    <dimen name="workspace_height_gap_land">0dp</dimen>
-    <dimen name="workspace_height_gap_port">0dp</dimen>
 </resources>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 274c72f..f15d3d8 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -150,8 +150,8 @@
     <dimen name="workspace_cell_width_port">80dp</dimen>
     <dimen name="workspace_cell_height_land">74dp</dimen>
     <dimen name="workspace_cell_height_port">100dp</dimen>
-    <dimen name="workspace_width_gap_land">-1dp</dimen>
-    <dimen name="workspace_width_gap_port">-1dp</dimen>
-    <dimen name="workspace_height_gap_land">-1dp</dimen>
-    <dimen name="workspace_height_gap_port">-1dp</dimen>
+    <dimen name="workspace_width_gap_land">0dp</dimen>
+    <dimen name="workspace_width_gap_port">0dp</dimen>
+    <dimen name="workspace_height_gap_land">0dp</dimen>
+    <dimen name="workspace_height_gap_port">0dp</dimen>
 </resources>
diff --git a/src/com/android/launcher2/Folder.java b/src/com/android/launcher2/Folder.java
index 1163f9e..de2e435 100644
--- a/src/com/android/launcher2/Folder.java
+++ b/src/com/android/launcher2/Folder.java
@@ -923,7 +923,9 @@
 
     private void onCloseComplete() {
         DragLayer parent = (DragLayer) getParent();
-        parent.removeView(this);
+        if (parent != null) {
+            parent.removeView(this);
+        }
         mDragController.removeDropTarget((DropTarget) this);
         clearFocus();
         mFolderIcon.requestFocus();
diff --git a/src/com/android/launcher2/InstallShortcutReceiver.java b/src/com/android/launcher2/InstallShortcutReceiver.java
index 54ba7de..a525d00 100644
--- a/src/com/android/launcher2/InstallShortcutReceiver.java
+++ b/src/com/android/launcher2/InstallShortcutReceiver.java
@@ -169,6 +169,7 @@
                 if (intent.getAction() == null) {
                     intent.setAction(Intent.ACTION_VIEW);
                 } else if (intent.getAction().equals(Intent.ACTION_MAIN) &&
+                        intent.getCategories() != null &&
                         intent.getCategories().contains(Intent.CATEGORY_LAUNCHER)) {
                     intent.addFlags(
                         Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
diff --git a/src/com/android/launcher2/SearchDropTargetBar.java b/src/com/android/launcher2/SearchDropTargetBar.java
index 77681a8..a1d36cd 100644
--- a/src/com/android/launcher2/SearchDropTargetBar.java
+++ b/src/com/android/launcher2/SearchDropTargetBar.java
@@ -144,7 +144,7 @@
             if (mEnableDropDownDropTargets) {
                 mQSBSearchBar.setTranslationY(0);
             } else {
-                mDropTargetBar.setAlpha(1f);
+                mQSBSearchBar.setAlpha(1f);
             }
         }
         mIsSearchBarHidden = false;
@@ -159,7 +159,7 @@
             if (mEnableDropDownDropTargets) {
                 mQSBSearchBar.setTranslationY(-mBarHeight);
             } else {
-                mDropTargetBar.setAlpha(0f);
+                mQSBSearchBar.setAlpha(0f);
             }
         }
         mIsSearchBarHidden = true;
diff --git a/src/com/android/launcher2/Workspace.java b/src/com/android/launcher2/Workspace.java
index 0192630..2d2340a 100644
--- a/src/com/android/launcher2/Workspace.java
+++ b/src/com/android/launcher2/Workspace.java
@@ -3684,12 +3684,13 @@
                     // Remove all queued items that match the same package
                     if (newApps != null) {
                         synchronized (newApps) {
-                            for (String intentStr : newApps) {
+                            Iterator<String> iter = newApps.iterator();
+                            while (iter.hasNext()) {
                                 try {
-                                    Intent intent = Intent.parseUri(intentStr, 0);
+                                    Intent intent = Intent.parseUri(iter.next(), 0);
                                     String pn = ItemInfo.getPackageName(intent);
                                     if (packageNames.contains(pn)) {
-                                        newApps.remove(intentStr);
+                                        iter.remove();
                                     }
                                 } catch (URISyntaxException e) {}
                             }