Fixing weird deferred click events after deleting folder
-> Fixing issue 5055487
Change-Id: I932f95f29322fa50035b13063ab51fad2d2217e8
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index a8782ba..ac85f98 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -1533,8 +1533,15 @@
* @param v The view representing the clicked shortcut.
*/
public void onClick(View v) {
- // Make sure that rogue clicks don't get through while allapps is launching
- if (mWorkspace.isSwitchingState()) return;
+ // Make sure that rogue clicks don't get through while allapps is launching, or after the
+ // view has detached (it's possible for this to happen if the view is removed mid touch).
+ if (v.getWindowToken() == null) {
+ return;
+ }
+
+ if (mWorkspace.isSwitchingState()) {
+ return;
+ }
Object tag = v.getTag();
if (tag instanceof ShortcutInfo) {
@@ -1692,6 +1699,7 @@
}
private void growAndFadeOutFolderIcon(FolderIcon fi) {
+ if (fi == null) return;
PropertyValuesHolder alpha = PropertyValuesHolder.ofFloat("alpha", 0);
PropertyValuesHolder scaleX = PropertyValuesHolder.ofFloat("scaleX", 1.5f);
PropertyValuesHolder scaleY = PropertyValuesHolder.ofFloat("scaleY", 1.5f);
@@ -1708,6 +1716,7 @@
}
private void shrinkAndFadeInFolderIcon(FolderIcon fi) {
+ if (fi == null) return;
PropertyValuesHolder alpha = PropertyValuesHolder.ofFloat("alpha", 1.0f);
PropertyValuesHolder scaleX = PropertyValuesHolder.ofFloat("scaleX", 1.0f);
PropertyValuesHolder scaleY = PropertyValuesHolder.ofFloat("scaleY", 1.0f);