summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2014-11-14 21:21:23 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-11-14 21:21:23 +0000
commit6318a0bdbf948cbebdccb0d7239a8cc6bff12a89 (patch)
tree8e1ccc2215f112ac0aa41970ffff146180851cd2
parent1f68c7c85bc9ad31672c8e62ef6e4687bc08ead6 (diff)
parent416541cc0e03ccd919d5669f0d06ef42a3b7ff21 (diff)
downloadandroid_packages_apps_Trebuchet-6318a0bdbf948cbebdccb0d7239a8cc6bff12a89.tar.gz
android_packages_apps_Trebuchet-6318a0bdbf948cbebdccb0d7239a8cc6bff12a89.tar.bz2
android_packages_apps_Trebuchet-6318a0bdbf948cbebdccb0d7239a8cc6bff12a89.zip
am 416541cc: Adding a few null checks. 1) During migration, if launcher2 has deleted user data, migration oes not happen 2) If Launcher3 does not has bind widget permission, QSB would be null.
* commit '416541cc0e03ccd919d5669f0d06ef42a3b7ff21': Adding a few null checks. 1) During migration, if launcher2 has deleted user data, migration oes not happen 2) If Launcher3 does not has bind widget permission, QSB would be null.
-rw-r--r--src/com/android/launcher3/Launcher.java6
-rw-r--r--src/com/android/launcher3/LauncherProvider.java6
-rw-r--r--src/com/android/launcher3/Workspace.java6
3 files changed, 13 insertions, 5 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index f5e3bc65c..22db3ac4d 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -3960,11 +3960,11 @@ public class Launcher extends Activity
SharedPreferences sp = getSharedPreferences(
LauncherAppState.getSharedPreferencesKey(), MODE_PRIVATE);
int widgetId = sp.getInt(QSB_WIDGET_ID, -1);
+ AppWidgetProviderInfo widgetInfo = mAppWidgetManager.getAppWidgetInfo(widgetId);
if (!searchProvider.provider.flattenToString().equals(
sp.getString(QSB_WIDGET_PROVIDER, null))
- || (widgetId == -1)
- || !mAppWidgetManager.getAppWidgetInfo(widgetId).provider
- .equals(searchProvider.provider)) {
+ || (widgetInfo == null)
+ || !widgetInfo.provider.equals(searchProvider.provider)) {
// A valid widget is not already bound.
if (widgetId > -1) {
mAppWidgetHost.deleteAppWidgetId(widgetId);
diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java
index cadc06eef..1715b02bf 100644
--- a/src/com/android/launcher3/LauncherProvider.java
+++ b/src/com/android/launcher3/LauncherProvider.java
@@ -1432,6 +1432,12 @@ public class LauncherProvider extends ContentProvider {
userHandle = UserHandleCompat.myUserHandle();
userSerialNumber = userManager.getSerialNumberForUser(userHandle);
}
+
+ if (userHandle == null) {
+ Launcher.addDumpLog(TAG, "skipping deleted user", true);
+ continue;
+ }
+
Launcher.addDumpLog(TAG, "migrating \""
+ c.getString(titleIndex) + "\" ("
+ cellX + "," + cellY + "@"
diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java
index c24e27177..2b520c5f4 100644
--- a/src/com/android/launcher3/Workspace.java
+++ b/src/com/android/launcher3/Workspace.java
@@ -2449,8 +2449,10 @@ public class Workspace extends SmoothPagedView
pageIndicator.setAlpha(finalHotseatAndPageIndicatorAlpha);
AlphaUpdateListener.updateVisibility(pageIndicator);
}
- searchBar.setAlpha(finalSearchBarAlpha);
- AlphaUpdateListener.updateVisibility(searchBar);
+ if (searchBar != null) {
+ searchBar.setAlpha(finalSearchBarAlpha);
+ AlphaUpdateListener.updateVisibility(searchBar);
+ }
updateCustomContentVisibility();
setScaleX(mNewScale);
setScaleY(mNewScale);