diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2016-01-25 17:28:37 -0800 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2016-01-25 17:30:25 -0800 |
commit | 3fc648d3b792f63d3b99509300a602d23c842433 (patch) | |
tree | 406812c92433a2adf3423c38e06c523dcbf242ad | |
parent | a5cfbe807503bf4c2d5853f700191fef34fb3713 (diff) | |
download | android_packages_apps_Trebuchet-3fc648d3b792f63d3b99509300a602d23c842433.tar.gz android_packages_apps_Trebuchet-3fc648d3b792f63d3b99509300a602d23c842433.tar.bz2 android_packages_apps_Trebuchet-3fc648d3b792f63d3b99509300a602d23c842433.zip |
Preventing a Runtime widget crash from crashing the Launcher
Bug: 26750103
Change-Id: I31f120bb0c4d64b903b3dd5dae0ae46f95bcdf59
-rw-r--r-- | src/com/android/launcher3/LauncherAppWidgetHostView.java | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/com/android/launcher3/LauncherAppWidgetHostView.java b/src/com/android/launcher3/LauncherAppWidgetHostView.java index c49d43fb1..18ae753c9 100644 --- a/src/com/android/launcher3/LauncherAppWidgetHostView.java +++ b/src/com/android/launcher3/LauncherAppWidgetHostView.java @@ -267,4 +267,19 @@ public class LauncherAppWidgetHostView extends AppWidgetHostView implements Touc getOnFocusChangeListener().onFocusChange(this, focused || isFocused()); } } + + @Override + protected void onLayout(boolean changed, int left, int top, int right, int bottom) { + try { + super.onLayout(changed, left, top, right, bottom); + } catch (final RuntimeException e) { + post(new Runnable() { + @Override + public void run() { + // Update the widget with 0 Layout id, to reset the view to error view. + updateAppWidget(new RemoteViews(getAppWidgetInfo().provider.getPackageName(), 0)); + } + }); + } + } } |