Preventing a Runtime widget crash from crashing the Launcher

Bug: 26750103
Change-Id: I31f120bb0c4d64b903b3dd5dae0ae46f95bcdf59
This commit is contained in:
Sunny Goyal
2016-01-25 17:28:37 -08:00
parent a5cfbe8075
commit 3fc648d3b7

View File

@@ -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));
}
});
}
}
}