diff options
author | Adam Cohen <adamcohen@google.com> | 2014-09-08 19:54:17 +0200 |
---|---|---|
committer | Adam Cohen <adamcohen@google.com> | 2014-09-09 10:00:48 +0000 |
commit | 0f668f3c2be93ad9be221d868abb3d9a6e418f18 (patch) | |
tree | dfaefe5b42820567e63ac9ef7ebc52614e00ae18 | |
parent | 55f77f983afeffd2240ccd24d783e6d8d3ab44fd (diff) | |
download | android_packages_apps_Trebuchet-0f668f3c2be93ad9be221d868abb3d9a6e418f18.tar.gz android_packages_apps_Trebuchet-0f668f3c2be93ad9be221d868abb3d9a6e418f18.tar.bz2 android_packages_apps_Trebuchet-0f668f3c2be93ad9be221d868abb3d9a6e418f18.zip |
Prevent GNL from crashing on JB
issue 17433546
Change-Id: Ie5071e516b26400a27473eaaa401023f1af1d840
-rw-r--r-- | src/com/android/launcher3/AppsCustomizePagedView.java | 6 | ||||
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 17 |
2 files changed, 20 insertions, 3 deletions
diff --git a/src/com/android/launcher3/AppsCustomizePagedView.java b/src/com/android/launcher3/AppsCustomizePagedView.java index a92bff1b6..1bd290777 100644 --- a/src/com/android/launcher3/AppsCustomizePagedView.java +++ b/src/com/android/launcher3/AppsCustomizePagedView.java @@ -366,7 +366,11 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen // This code triggers requestLayout so must be posted outside of the // layout pass. public void run() { - if (isAttachedToWindow()) { + boolean attached = true; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { + attached = isAttachedToWindow(); + } + if (attached) { setDataIsReady(); onDataReady(getMeasuredWidth(), getMeasuredHeight()); } diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 33cc29e67..5c6261dc5 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -59,6 +59,7 @@ import android.graphics.Rect; import android.graphics.drawable.Drawable; import android.net.Uri; import android.os.AsyncTask; +import android.os.Build; import android.os.Bundle; import android.os.Environment; import android.os.Handler; @@ -3378,7 +3379,13 @@ public class Launcher extends Activity if (Utilities.isLmp()) { for (int i = 0; i < layerViews.size(); i++) { View v = layerViews.get(i); - if (v != null && v.isAttachedToWindow()) v.buildLayer(); + if (v != null) { + boolean attached = true; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { + attached = v.isAttachedToWindow(); + } + if (attached) v.buildLayer(); + } } } mStateAnimation.start(); @@ -3625,7 +3632,13 @@ public class Launcher extends Activity if (Utilities.isLmp()) { for (int i = 0; i < layerViews.size(); i++) { View v = layerViews.get(i); - if (v != null && v.isAttachedToWindow()) v.buildLayer(); + if (v != null) { + boolean attached = true; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { + attached = v.isAttachedToWindow(); + } + if (attached) v.buildLayer(); + } } } mStateAnimation.start(); |