summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorAmith Yamasani <yamasani@google.com>2014-05-02 13:47:11 -0700
committerAmith Yamasani <yamasani@google.com>2014-05-02 13:47:11 -0700
commit6cc806d678c8a44478308119c087ac9adde73b66 (patch)
tree4b2c180a0587416da1d673b4d317ab5b7c890950 /src/com
parented13187a745866483139e2878037e1f8427ce567 (diff)
downloadandroid_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
Diffstat (limited to 'src/com')
-rw-r--r--src/com/android/launcher3/Launcher.java6
-rw-r--r--src/com/android/launcher3/LauncherModel.java2
-rw-r--r--src/com/android/launcher3/compat/LauncherAppsCompat.java5
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);