Revert "Add shortcuts for apps installed on work profile."

This reverts commit fac729e7d93ffd5d5fd3252cf74fbc42ef1dfd7d.

Bug:16188104
Change-Id: Icea2d18ec6410da930d1e999ad36a0ced75f487e
diff --git a/src/com/android/launcher2/LauncherModel.java b/src/com/android/launcher2/LauncherModel.java
index 9086f14..c972355 100644
--- a/src/com/android/launcher2/LauncherModel.java
+++ b/src/com/android/launcher2/LauncherModel.java
@@ -26,7 +26,6 @@
 import android.content.ContentValues;
 import android.content.Context;
 import android.content.Intent;
-import android.content.SharedPreferences;
 import android.content.Intent.ShortcutIconResource;
 import android.content.pm.ActivityInfo;
 import android.content.pm.LauncherActivityInfo;
@@ -73,15 +72,8 @@
  */
 public class LauncherModel extends BroadcastReceiver {
     static final boolean DEBUG_LOADERS = false;
-    static final boolean DEBUG_MP_SHORTCUT = false; // logging shorcut creation in managed profile
     static final String TAG = "Launcher.Model";
 
-    private static final String PACKAGES_SHORTCUT_SENT =
-            "packages_with_shortcut_intent_sent_for_user";
-
-    private static final String SHORTCUT_PREFS = "shortcut_prefs";
-
-
     private static final int ITEMS_CHUNK = 6; // batch size for the workspace icons
     private int mBatchSize; // 0 is all apps at once
     private int mAllAppsLoadDelay; // milliseconds between batches
@@ -629,7 +621,6 @@
         }
 
         final ContentValues values = new ContentValues();
-
         final ContentResolver cr = context.getContentResolver();
         item.onAddToDatabase(context, values);
 
@@ -886,84 +877,6 @@
         }
     }
 
-    public void addShortcutsForNewInstalledManagedApps() {
-        final List<UserHandle> profiles = mUserManager.getUserProfiles();
-        for (UserHandle user : profiles) {
-            if (DEBUG_MP_SHORTCUT) Log.d(TAG, "addShortcutsForNewInstalledManagedApps");
-            if (Process.myUserHandle().equals(user)) {
-                continue;
-            }
-            long userSerial = mUserManager.getSerialNumberForUser(user);
-            String prefKey = PACKAGES_SHORTCUT_SENT + userSerial;
-
-            // Get installed packages.
-            List<LauncherActivityInfo> installedActivities =
-                    mLauncherApps.getActivityList(null, user);
-
-            // Get installed packages with the shortcut intent already sent.
-            SharedPreferences shortcutSentPref = mApp.getSharedPreferences(SHORTCUT_PREFS,
-                    Context.MODE_PRIVATE);
-            Set<String> installedAppsWithIntentSent = shortcutSentPref
-                    .getStringSet(prefKey,Collections.<String>emptySet());
-
-            // Send intents for newly installed packages.
-            HashSet<String> newInstalledAppsWithIntentSent = new HashSet<String>();
-            for (LauncherActivityInfo info : installedActivities) {
-                String packageName = info.getApplicationInfo().packageName;
-                if (!installedAppsWithIntentSent.contains(packageName)
-                        && !newInstalledAppsWithIntentSent.contains(packageName)) {
-                    sendInstallShortcutIntentForPackage(packageName, user);
-                }
-                newInstalledAppsWithIntentSent.add(packageName);
-            }
-
-           shortcutSentPref.edit().putStringSet(prefKey, newInstalledAppsWithIntentSent).apply();
-        }
-    }
-
-    private void sendInstallShortcutIntentForPackage(String packageName, UserHandle user) {
-        try {
-            List<LauncherActivityInfo> activityList =
-                    mLauncherApps.getActivityList(packageName, user);
-
-            if (activityList.isEmpty()) {
-                return;
-            }
-
-            // Pick the first main activity. The exact main activity doesn't matter,
-            // as we use startMainActivity from LauncherApps.
-            LauncherActivityInfo info = activityList.get(0);
-
-            Intent launchIntent = new Intent(Intent.ACTION_MAIN);
-            launchIntent.addCategory(Intent.CATEGORY_LAUNCHER);
-            launchIntent.setPackage(packageName);
-            launchIntent.setComponent(info.getComponentName());
-            CharSequence shortcutName = info.getLabel();
-
-            // Package this up into the magic shortcut-installing intent and send it.
-            Intent installShortcut = new Intent(InstallShortcutReceiver.ACTION_INSTALL_SHORTCUT);
-            installShortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, shortcutName);
-            installShortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, launchIntent);
-            installShortcut.putExtra(Launcher.EXTRA_SHORTCUT_DUPLICATE, false);
-            installShortcut.putExtra(LauncherSettings.Favorites.ITEM_TYPE,
-                    LauncherSettings.Favorites.ITEM_TYPE_APPLICATION);
-            installShortcut.putExtra(ItemInfo.EXTRA_PROFILE, user);
-            installShortcut.setPackage(mApp.getPackageName());
-
-            mApp.sendBroadcast(installShortcut);
-            if (DEBUG_MP_SHORTCUT) {
-                Log.d(TAG, "send INSTALL_SHORTCUT for " + packageName + " with user " + user);
-            }
-        } catch (Resources.NotFoundException e) {
-            // Necessary resources were not found - log it but don't crash
-            Log.e(TAG, "Unable to load resources", e);
-        } catch (Exception e) {
-            // Unexpected externally-generated error - log it but don't crash
-            Log.e(TAG, "Unable to add shortcut", e);
-        }
-    }
-
-
     void forceReload() {
         resetLoadedState(true, true);
 
@@ -1370,7 +1283,6 @@
                 sBgDbIconCache.clear();
 
                 final ArrayList<Long> itemsToRemove = new ArrayList<Long>();
-                final Set<Integer> usersToRemove = new HashSet<Integer>();
 
                 final Cursor c = contentResolver.query(
                         LauncherSettings.Favorites.CONTENT_URI, null, null, null, null);
@@ -1436,7 +1348,6 @@
                                 user = mUserManager.getUserForSerialNumber(serialNumber);
                                 // If the user doesn't exist anymore, skip.
                                 if (user == null) {
-                                    usersToRemove.add(serialNumber);
                                     itemsToRemove.add(c.getLong(idIndex));
                                     continue;
                                 }
@@ -1611,20 +1522,6 @@
                     }
                 }
 
-                if (usersToRemove.size() > 0) {
-                    SharedPreferences shortcutSentPref = mApp.getSharedPreferences(
-                            SHORTCUT_PREFS, Context.MODE_PRIVATE);
-                    SharedPreferences.Editor edit = shortcutSentPref.edit();
-                    for (int userSerial : usersToRemove) {
-                        if (DEBUG_MP_SHORTCUT) {
-                            Log.d(TAG, "remove app list for user " + userSerial);
-                        }
-                        String prefKey = PACKAGES_SHORTCUT_SENT + userSerial;
-                        edit.remove(prefKey);
-                    }
-                    edit.apply();
-                }
-
                 if (DEBUG_LOADERS) {
                     Log.d(TAG, "loaded workspace in " + (SystemClock.uptimeMillis()-t) + "ms");
                     Log.d(TAG, "workspace layout: ");
@@ -2002,8 +1899,6 @@
                 return;
             }
 
-            addShortcutsForNewInstalledManagedApps();
-
             final Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
             mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
 
@@ -2151,31 +2046,6 @@
                     for (int i=0; i<N; i++) {
                         if (DEBUG_LOADERS) Log.d(TAG, "mAllAppsList.addPackage " + packages[i]);
                         mBgAllAppsList.addPackage(context, packages[i], mUser);
-
-                        if (!Process.myUserHandle().equals(mUser)) {
-
-                            // If package added on a non-owner profile,
-                            // then send the install shortcut intent,
-                            // and add it to the persisted list.
-                            if (DEBUG_MP_SHORTCUT) Log.d(TAG, "managed app added, add shorcut");
-                            long userSerial = mUserManager.getSerialNumberForUser(mUser);
-                            String prefKey = PACKAGES_SHORTCUT_SENT + userSerial;
-
-                            SharedPreferences shortcutSentPref = mApp.getSharedPreferences(
-                                    SHORTCUT_PREFS, Context.MODE_PRIVATE);
-                            Set<String> installedAppsWithIntentSent = shortcutSentPref
-                                    .getStringSet(prefKey,Collections.<String>emptySet());
-
-                            // We will modify the set, so make a copy.
-                            installedAppsWithIntentSent =
-                                    new HashSet<String>(installedAppsWithIntentSent);
-                            boolean added = installedAppsWithIntentSent.add(packages[i]);
-                            if (added) {
-                                shortcutSentPref.edit()
-                                        .putStringSet(prefKey, installedAppsWithIntentSent).apply();
-                                sendInstallShortcutIntentForPackage(packages[i], mUser);
-                            }
-                        }
                     }
                     break;
                 case OP_UPDATE:
@@ -2189,29 +2059,6 @@
                     }
                     break;
                 case OP_REMOVE:
-                    if (!Process.myUserHandle().equals(mUser)) {
-
-                        // If package removed on a non-owner profile,
-                        // then remove it from the persisted list.
-                        if (DEBUG_MP_SHORTCUT) {
-                            Log.d(TAG, "managed app removed, remove app from list");
-                        }
-                        long userSerial = mUserManager.getSerialNumberForUser(mUser);
-                        String prefKey = PACKAGES_SHORTCUT_SENT + userSerial;
-
-                        SharedPreferences shortcutSentPref = mApp.getSharedPreferences(
-                                SHORTCUT_PREFS, Context.MODE_PRIVATE);
-                        Set<String> installedAppsWithIntentSent = shortcutSentPref
-                                .getStringSet(prefKey,Collections.<String>emptySet());
-
-                        // We will modify the set, so make a copy.
-                        installedAppsWithIntentSent =
-                                new HashSet<String>(installedAppsWithIntentSent);
-                        installedAppsWithIntentSent.removeAll(Arrays.asList(mPackages));
-                        shortcutSentPref.edit().putStringSet(prefKey, installedAppsWithIntentSent)
-                                .apply();
-                    }
-                    // Fall through.
                 case OP_UNAVAILABLE:
                     for (int i=0; i<N; i++) {
                         if (DEBUG_LOADERS) Log.d(TAG, "mAllAppsList.removePackage " + packages[i]);
@@ -2582,18 +2429,6 @@
             return null;
         }
 
-        if (data.getIntExtra(LauncherSettings.Favorites.ITEM_TYPE,
-                        LauncherSettings.Favorites.ITEM_TYPE_SHORTCUT)
-                == LauncherSettings.Favorites.ITEM_TYPE_APPLICATION) {
-            ShortcutInfo info = getShortcutInfo(context.getPackageManager(), intent, user, context);
-            if (info == null) {
-                return null;
-            }
-
-            info.intent = intent;
-            return info;
-        }
-
         Bitmap icon = null;
         boolean customIcon = false;
         ShortcutIconResource iconResource = null;