diff options
author | Amith Yamasani <yamasani@google.com> | 2014-05-02 13:47:11 -0700 |
---|---|---|
committer | Amith Yamasani <yamasani@google.com> | 2014-05-02 13:47:11 -0700 |
commit | 6cc806d678c8a44478308119c087ac9adde73b66 (patch) | |
tree | 4b2c180a0587416da1d673b4d317ab5b7c890950 | |
parent | ed13187a745866483139e2878037e1f8427ce567 (diff) | |
download | android_packages_apps_Trebuchet-6cc806d678c8a44478308119c087ac9adde73b66.tar.gz android_packages_apps_Trebuchet-6cc806d678c8a44478308119c087ac9adde73b66.tar.bz2 android_packages_apps_Trebuchet-6cc806d678c8a44478308119c087ac9adde73b66.zip |
Watch for profile events and reload
Reload the workspace and all-apps list when a managed profile
is added or removed.
Bug: 14484845
Change-Id: I69210c22e568f2a561266ef2846ddf8f6d659070
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 6 | ||||
-rw-r--r-- | src/com/android/launcher3/LauncherModel.java | 2 | ||||
-rw-r--r-- | src/com/android/launcher3/compat/LauncherAppsCompat.java | 5 |
3 files changed, 12 insertions, 1 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 217219412..5757cb7ee 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -1568,6 +1568,9 @@ public class Launcher extends Activity mModel.startLoader(false, PagedView.INVALID_RESTORE_PAGE, LauncherModel.LOADER_FLAG_CLEAR_WORKSPACE | LauncherModel.LOADER_FLAG_MIGRATE_SHORTCUTS); + } else if (LauncherAppsCompat.ACTION_MANAGED_PROFILE_ADDED.equals(action) + || LauncherAppsCompat.ACTION_MANAGED_PROFILE_REMOVED.equals(action)) { + getModel().forceReload(); } } }; @@ -1580,6 +1583,9 @@ public class Launcher extends Activity final IntentFilter filter = new IntentFilter(); filter.addAction(Intent.ACTION_SCREEN_OFF); filter.addAction(Intent.ACTION_USER_PRESENT); + // For handling managed profiles + filter.addAction(LauncherAppsCompat.ACTION_MANAGED_PROFILE_ADDED); + filter.addAction(LauncherAppsCompat.ACTION_MANAGED_PROFILE_REMOVED); if (ENABLE_DEBUG_INTENTS) { filter.addAction(DebugIntents.DELETE_DATABASE); filter.addAction(DebugIntents.MIGRATE_DATABASE); diff --git a/src/com/android/launcher3/LauncherModel.java b/src/com/android/launcher3/LauncherModel.java index 15db057ec..f0ffe1d4c 100644 --- a/src/com/android/launcher3/LauncherModel.java +++ b/src/com/android/launcher3/LauncherModel.java @@ -1256,7 +1256,7 @@ public class LauncherModel extends BroadcastReceiver } } - private void forceReload() { + void forceReload() { resetLoadedState(true, true); // Do this here because if the launcher activity is running it will be restarted. diff --git a/src/com/android/launcher3/compat/LauncherAppsCompat.java b/src/com/android/launcher3/compat/LauncherAppsCompat.java index 59ee45c2c..069e3dea7 100644 --- a/src/com/android/launcher3/compat/LauncherAppsCompat.java +++ b/src/com/android/launcher3/compat/LauncherAppsCompat.java @@ -34,6 +34,11 @@ import java.util.Map; public abstract class LauncherAppsCompat { + public static final String ACTION_MANAGED_PROFILE_ADDED = + "android.intent.action.MANAGED_PROFILE_ADDED"; + public static final String ACTION_MANAGED_PROFILE_REMOVED = + "android.intent.action.MANAGED_PROFILE_REMOVED"; + public interface OnAppsChangedListenerCompat { void onPackageRemoved(UserHandleCompat user, String packageName); void onPackageAdded(UserHandleCompat user, String packageName); |