diff options
Diffstat (limited to 'src/com/cyanogenmod/trebuchet/LauncherModel.java')
-rw-r--r-- | src/com/cyanogenmod/trebuchet/LauncherModel.java | 86 |
1 files changed, 45 insertions, 41 deletions
diff --git a/src/com/cyanogenmod/trebuchet/LauncherModel.java b/src/com/cyanogenmod/trebuchet/LauncherModel.java index 323be71..6aa109a 100644 --- a/src/com/cyanogenmod/trebuchet/LauncherModel.java +++ b/src/com/cyanogenmod/trebuchet/LauncherModel.java @@ -1667,56 +1667,60 @@ public class LauncherModel extends BroadcastReceiver { } // Shortcuts - int N = workspaceItems.size() - 1; - for (int i = N; i >= 0; i--) { - final ItemInfo item = workspaceItems.get(i); - if (item instanceof ShortcutInfo) { - ShortcutInfo shortcut = (ShortcutInfo)item; - if (shortcut.intent != null && shortcut.intent.getComponent() != null) { - if (mHiddenApps.contains(shortcut.intent.getComponent())) { - LauncherModel.deleteItemFromDatabase(mContext, shortcut); - workspaceItems.remove(i); + if (PreferencesProvider.Interface.Drawer.getRemoveShortcutsOfHiddenApps()) { + int N = workspaceItems.size() - 1; + for (int i = N; i >= 0; i--) { + final ItemInfo item = workspaceItems.get(i); + if (item instanceof ShortcutInfo) { + ShortcutInfo shortcut = (ShortcutInfo)item; + if (shortcut.intent != null && shortcut.intent.getComponent() != null) { + if (mHiddenApps.contains(shortcut.intent.getComponent())) { + LauncherModel.deleteItemFromDatabase(mContext, shortcut); + workspaceItems.remove(i); + } } - } - } else { - final FolderInfo folder = (FolderInfo)item; - List<ShortcutInfo> shortcuts = folder.contents; - int NN = shortcuts.size() - 1; - for (int j = NN; j >= 0; j--) { - ShortcutInfo sci = shortcuts.get(j); - if (sci.intent != null && sci.intent.getComponent() != null) { - if (mHiddenApps.contains(sci.intent.getComponent())) { - LauncherModel.deleteItemFromDatabase(mContext, sci); - folder.remove(sci); + } else { + final FolderInfo folder = (FolderInfo)item; + List<ShortcutInfo> shortcuts = folder.contents; + int NN = shortcuts.size() - 1; + for (int j = NN; j >= 0; j--) { + ShortcutInfo sci = shortcuts.get(j); + if (sci.intent != null && sci.intent.getComponent() != null) { + if (mHiddenApps.contains(sci.intent.getComponent())) { + LauncherModel.deleteItemFromDatabase(mContext, sci); + folder.remove(sci); + } } } - } - if (folder.contents.size() == 1) { - ShortcutInfo finalItem = folder.contents.get(0); - finalItem.container = folder.container; - LauncherModel.deleteItemFromDatabase(mContext, folder); - LauncherModel.addOrMoveItemInDatabase(mContext, finalItem, folder.container, - folder.screen, folder.cellX, folder.cellY); - workspaceItems.remove(i); - workspaceItems.add(finalItem); - folders.remove(Long.valueOf(item.id)); - } else if (folder.contents.size() == 0) { - LauncherModel.deleteFolderContentsFromDatabase(mContext, folder); - workspaceItems.remove(i); - folders.remove(Long.valueOf(item.id)); + if (folder.contents.size() == 1) { + ShortcutInfo finalItem = folder.contents.get(0); + finalItem.container = folder.container; + LauncherModel.deleteItemFromDatabase(mContext, folder); + LauncherModel.addOrMoveItemInDatabase(mContext, finalItem, folder.container, + folder.screen, folder.cellX, folder.cellY); + workspaceItems.remove(i); + workspaceItems.add(finalItem); + folders.remove(Long.valueOf(item.id)); + } else if (folder.contents.size() == 0) { + LauncherModel.deleteFolderContentsFromDatabase(mContext, folder); + workspaceItems.remove(i); + folders.remove(Long.valueOf(item.id)); + } } } } // AppWidgets - N = appWidgets.size() - 1; - for (int i = N; i >= 0; i--) { - final LauncherAppWidgetInfo item = appWidgets.get(i); - if (item.providerName != null) { - if (mHiddenAppsPackages.contains(item.providerName.getPackageName())) { - LauncherModel.deleteItemFromDatabase(mContext, item); - appWidgets.remove(i); + if (PreferencesProvider.Interface.Drawer.getRemoveWidgetsOfHiddenApps()) { + int N = appWidgets.size() - 1; + for (int i = N; i >= 0; i--) { + final LauncherAppWidgetInfo item = appWidgets.get(i); + if (item.providerName != null) { + if (mHiddenAppsPackages.contains(item.providerName.getPackageName())) { + LauncherModel.deleteItemFromDatabase(mContext, item); + appWidgets.remove(i); + } } } } |