Merge branch 'cupcake'
This commit is contained in:
commit
c8d179888a
Binary file not shown.
Before Width: | Height: | Size: 2.3 KiB |
Binary file not shown.
Before Width: | Height: | Size: 1.7 KiB |
Binary file not shown.
Before Width: | Height: | Size: 2.1 KiB |
|
@ -36,6 +36,7 @@
|
|||
android:singleLine="true"
|
||||
android:selectAllOnFocus="true"
|
||||
android:completionThreshold="1"
|
||||
android:inputType="textAutoComplete|textSearchString"
|
||||
/>
|
||||
|
||||
<ImageButton android:id="@+id/search_go_btn"
|
||||
|
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<resources xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
||||
<string name="application_name">"Accueil"</string>
|
||||
<string name="folder_name">"Dossier"</string>
|
||||
<string name="chooser_wallpaper">"Sélectionner l\'arrière-plan à partir de"</string>
|
||||
<string name="wallpaper_instructions">"Configurer l\'arrière-plan"</string>
|
||||
<string name="pick_wallpaper">"Galerie des arrière-plans"</string>
|
||||
<string name="activity_not_found">"L\'application n\'est pas installée sur votre téléphone."</string>
|
||||
<!-- no translation found for rename_folder_label (5646236631298452787) -->
|
||||
<skip />
|
||||
<string name="rename_folder_title">"Renommer le dossier"</string>
|
||||
<string name="rename_action">"OK"</string>
|
||||
<string name="cancel_action">"Annuler"</string>
|
||||
<!-- no translation found for menu_item_add_item (6233177331075781114) -->
|
||||
<skip />
|
||||
<string name="group_applications">"Application"</string>
|
||||
<string name="group_shortcuts">"Raccourci"</string>
|
||||
<!-- no translation found for group_live_folders (3057578584715591220) -->
|
||||
<skip />
|
||||
<string name="group_widgets">"Widget"</string>
|
||||
<string name="group_wallpapers">"Arrière-plan"</string>
|
||||
<string name="add_folder">"Dossier"</string>
|
||||
<string name="add_clock">"Horloge"</string>
|
||||
<string name="add_photo_frame">"Cadre d\'image"</string>
|
||||
<string name="add_search">"Rechercher"</string>
|
||||
<string name="out_of_space">"Plus d\'espace libre sur l\'écran Accueil."</string>
|
||||
<string name="menu_add">"Ajouter"</string>
|
||||
<string name="menu_wallpaper">"Arrière-plan"</string>
|
||||
<string name="menu_search">"Rechercher"</string>
|
||||
<string name="menu_notifications">"Notifications"</string>
|
||||
<string name="menu_settings">"Paramètres"</string>
|
||||
<string name="permlab_install_shortcut">"installer des raccourcis"</string>
|
||||
<string name="permdesc_install_shortcut">"Permet à une application d\'ajouter des raccourcis sans l\'intervention de l\'utilisateur."</string>
|
||||
<string name="permlab_uninstall_shortcut">"désinstaller les raccourcis"</string>
|
||||
<string name="permdesc_uninstall_shortcut">"Permet à une application de supprimer les raccourcis sans l\'intervention de l\'utilisateur."</string>
|
||||
<!-- no translation found for permlab_read_settings (3452408290738106747) -->
|
||||
<skip />
|
||||
<!-- no translation found for permdesc_read_settings (8377434937176025492) -->
|
||||
<skip />
|
||||
<!-- no translation found for permlab_write_settings (1360567537236705628) -->
|
||||
<skip />
|
||||
<!-- no translation found for permdesc_write_settings (1098648778383349818) -->
|
||||
<skip />
|
||||
<string name="search_hint">"Recherche Google"</string>
|
||||
</resources>
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<resources xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
||||
<string name="application_name">"Home"</string>
|
||||
<string name="folder_name">"Cartella"</string>
|
||||
<string name="chooser_wallpaper">"Seleziona sfondo da"</string>
|
||||
<string name="wallpaper_instructions">"Imposta sfondo"</string>
|
||||
<string name="pick_wallpaper">"Galleria sfondi"</string>
|
||||
<string name="activity_not_found">"Applicazione non installata sul telefono."</string>
|
||||
<!-- no translation found for rename_folder_label (5646236631298452787) -->
|
||||
<skip />
|
||||
<string name="rename_folder_title">"Rinomina cartella"</string>
|
||||
<string name="rename_action">"OK"</string>
|
||||
<string name="cancel_action">"Annulla"</string>
|
||||
<!-- no translation found for menu_item_add_item (6233177331075781114) -->
|
||||
<skip />
|
||||
<string name="group_applications">"Applicazione"</string>
|
||||
<string name="group_shortcuts">"Collegamento"</string>
|
||||
<!-- no translation found for group_live_folders (3057578584715591220) -->
|
||||
<skip />
|
||||
<string name="group_widgets">"Widget"</string>
|
||||
<string name="group_wallpapers">"Sfondo"</string>
|
||||
<string name="add_folder">"Cartella"</string>
|
||||
<string name="add_clock">"Orologio"</string>
|
||||
<string name="add_photo_frame">"Cornice immagini"</string>
|
||||
<string name="add_search">"Ricerca"</string>
|
||||
<string name="out_of_space">"Spazio nella schermata Home esaurito."</string>
|
||||
<string name="menu_add">"Aggiungi"</string>
|
||||
<string name="menu_wallpaper">"Sfondo"</string>
|
||||
<string name="menu_search">"Cerca"</string>
|
||||
<string name="menu_notifications">"Notifiche"</string>
|
||||
<string name="menu_settings">"Impostazioni"</string>
|
||||
<string name="permlab_install_shortcut">"aggiungere collegamenti"</string>
|
||||
<string name="permdesc_install_shortcut">"Consente a un\'applicazione di aggiungere collegamenti automaticamente."</string>
|
||||
<string name="permlab_uninstall_shortcut">"eliminare collegamenti"</string>
|
||||
<string name="permdesc_uninstall_shortcut">"Consente a un\'applicazione di rimuovere collegamenti automaticamente."</string>
|
||||
<!-- no translation found for permlab_read_settings (3452408290738106747) -->
|
||||
<skip />
|
||||
<!-- no translation found for permdesc_read_settings (8377434937176025492) -->
|
||||
<skip />
|
||||
<!-- no translation found for permlab_write_settings (1360567537236705628) -->
|
||||
<skip />
|
||||
<!-- no translation found for permdesc_write_settings (1098648778383349818) -->
|
||||
<skip />
|
||||
<string name="search_hint">"Ricerca Google"</string>
|
||||
</resources>
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<resources xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
|
||||
<string name="application_name">"主页"</string>
|
||||
<string name="folder_name">"文件夹"</string>
|
||||
<string name="chooser_wallpaper">"选择壁纸"</string>
|
||||
<string name="wallpaper_instructions">"设置壁纸"</string>
|
||||
<string name="pick_wallpaper">"壁纸图库"</string>
|
||||
<string name="activity_not_found">"您的手机上没有安装应用程序。"</string>
|
||||
<!-- no translation found for rename_folder_label (5646236631298452787) -->
|
||||
<skip />
|
||||
<string name="rename_folder_title">"重命名文件夹"</string>
|
||||
<string name="rename_action">"确定"</string>
|
||||
<string name="cancel_action">"取消"</string>
|
||||
<!-- no translation found for menu_item_add_item (6233177331075781114) -->
|
||||
<skip />
|
||||
<string name="group_applications">"应用程序"</string>
|
||||
<string name="group_shortcuts">"快捷键"</string>
|
||||
<!-- no translation found for group_live_folders (3057578584715591220) -->
|
||||
<skip />
|
||||
<string name="group_widgets">"小工具"</string>
|
||||
<string name="group_wallpapers">"壁纸"</string>
|
||||
<string name="add_folder">"文件夹"</string>
|
||||
<string name="add_clock">"时钟"</string>
|
||||
<string name="add_photo_frame">"相框"</string>
|
||||
<string name="add_search">"搜索"</string>
|
||||
<string name="out_of_space">"该“主页”屏幕上没有多余空间。"</string>
|
||||
<string name="menu_add">"添加"</string>
|
||||
<string name="menu_wallpaper">"壁纸"</string>
|
||||
<string name="menu_search">"搜索"</string>
|
||||
<string name="menu_notifications">"通知"</string>
|
||||
<string name="menu_settings">"设置"</string>
|
||||
<string name="permlab_install_shortcut">"安装快捷键"</string>
|
||||
<string name="permdesc_install_shortcut">"允许应用程序在没有用户介入的情况下添加快捷键。"</string>
|
||||
<string name="permlab_uninstall_shortcut">"卸载快捷键"</string>
|
||||
<string name="permdesc_uninstall_shortcut">"允许应用程序在没有用户介入的情况下删除快捷键。"</string>
|
||||
<!-- no translation found for permlab_read_settings (3452408290738106747) -->
|
||||
<skip />
|
||||
<!-- no translation found for permdesc_read_settings (8377434937176025492) -->
|
||||
<skip />
|
||||
<!-- no translation found for permlab_write_settings (1360567537236705628) -->
|
||||
<skip />
|
||||
<!-- no translation found for permdesc_write_settings (1098648778383349818) -->
|
||||
<skip />
|
||||
<string name="search_hint">"Google 搜索"</string>
|
||||
</resources>
|
|
@ -49,7 +49,7 @@ public class HandleView extends ImageView {
|
|||
@Override
|
||||
public View focusSearch(int direction) {
|
||||
View newFocus = super.focusSearch(direction);
|
||||
if (newFocus == null) {
|
||||
if (newFocus == null && mLauncher.isDrawerDown()) {
|
||||
final Workspace workspace = mLauncher.getWorkspace();
|
||||
workspace.dispatchUnhandledMove(null, direction);
|
||||
return (mOrientation == ORIENTATION_HORIZONTAL && direction == FOCUS_DOWN) ?
|
||||
|
|
|
@ -45,6 +45,7 @@ import android.os.IBinder;
|
|||
import android.os.Parcelable;
|
||||
import android.os.RemoteException;
|
||||
import android.os.ServiceManager;
|
||||
import android.os.Message;
|
||||
import android.provider.*;
|
||||
import android.telephony.PhoneNumberUtils;
|
||||
import android.text.Selection;
|
||||
|
@ -260,7 +261,7 @@ public final class Launcher extends Activity implements View.OnClickListener, On
|
|||
|
||||
private void startLoaders() {
|
||||
sModel.loadApplications(true, this, mLocaleChanged);
|
||||
sModel.loadUserItems(!mLocaleChanged, this, mLocaleChanged);
|
||||
sModel.loadUserItems(!mLocaleChanged, this, mLocaleChanged, true);
|
||||
mRestoring = false;
|
||||
}
|
||||
|
||||
|
@ -812,13 +813,13 @@ public final class Launcher extends Activity implements View.OnClickListener, On
|
|||
.setIcon(android.R.drawable.ic_menu_add)
|
||||
.setAlphabeticShortcut('A');
|
||||
menu.add(0, MENU_WALLPAPER_SETTINGS, 0, R.string.menu_wallpaper)
|
||||
.setIcon(R.drawable.ic_menu_gallery)
|
||||
.setIcon(android.R.drawable.ic_menu_gallery)
|
||||
.setAlphabeticShortcut('W');
|
||||
menu.add(0, MENU_SEARCH, 0, R.string.menu_search)
|
||||
.setIcon(android.R.drawable.ic_search_category_default)
|
||||
.setAlphabeticShortcut(SearchManager.MENU_KEY);
|
||||
menu.add(0, MENU_NOTIFICATIONS, 0, R.string.menu_notifications)
|
||||
.setIcon(R.drawable.ic_menu_notifications)
|
||||
.setIcon(android.R.drawable.ic_menu_notifications)
|
||||
.setAlphabeticShortcut('N');
|
||||
|
||||
final Intent settings = new Intent(android.provider.Settings.ACTION_SETTINGS);
|
||||
|
@ -826,7 +827,7 @@ public final class Launcher extends Activity implements View.OnClickListener, On
|
|||
| Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
|
||||
|
||||
menu.add(0, MENU_SETTINGS, 0, R.string.menu_settings)
|
||||
.setIcon(R.drawable.ic_menu_preferences).setAlphabeticShortcut('P')
|
||||
.setIcon(android.R.drawable.ic_menu_preferences).setAlphabeticShortcut('P')
|
||||
.setIntent(settings);
|
||||
|
||||
return true;
|
||||
|
@ -1111,7 +1112,7 @@ public final class Launcher extends Activity implements View.OnClickListener, On
|
|||
private void onFavoritesChanged() {
|
||||
mDesktopLocked = true;
|
||||
mDrawer.lock();
|
||||
sModel.loadUserItems(false, this, false);
|
||||
sModel.loadUserItems(false, this, false, false);
|
||||
}
|
||||
|
||||
void onDesktopItemsLoaded() {
|
||||
|
@ -1119,7 +1120,80 @@ public final class Launcher extends Activity implements View.OnClickListener, On
|
|||
|
||||
bindDesktopItems();
|
||||
mAllAppsGrid.setAdapter(Launcher.getModel().getApplicationsAdapter());
|
||||
}
|
||||
|
||||
/**
|
||||
* Refreshes the shortcuts shown on the workspace.
|
||||
*/
|
||||
private void bindDesktopItems() {
|
||||
final ArrayList<ItemInfo> shortcuts = sModel.getDesktopItems();
|
||||
if (shortcuts == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
final Workspace workspace = mWorkspace;
|
||||
int count = workspace.getChildCount();
|
||||
for (int i = 0; i < count; i++) {
|
||||
((ViewGroup) workspace.getChildAt(i)).removeAllViewsInLayout();
|
||||
}
|
||||
|
||||
count = shortcuts.size();
|
||||
|
||||
final DesktopItemsBinder binder = new DesktopItemsBinder(this, shortcuts);
|
||||
binder.obtainMessage(DesktopItemsBinder.MESSAGE_BIND_ITEMS, 0, count).sendToTarget();
|
||||
}
|
||||
|
||||
private void bindItems(Launcher.DesktopItemsBinder binder,
|
||||
ArrayList<ItemInfo> shortcuts, int start, int count) {
|
||||
|
||||
final Workspace workspace = mWorkspace;
|
||||
final boolean desktopLocked = mDesktopLocked;
|
||||
|
||||
final int end = Math.min(start + DesktopItemsBinder.ITEMS_COUNT, count);
|
||||
int i = start;
|
||||
|
||||
for ( ; i < end; i++) {
|
||||
final ItemInfo item = shortcuts.get(i);
|
||||
switch (item.itemType) {
|
||||
case LauncherSettings.Favorites.ITEM_TYPE_APPLICATION:
|
||||
case LauncherSettings.Favorites.ITEM_TYPE_SHORTCUT:
|
||||
final View shortcut = createShortcut((ApplicationInfo) item);
|
||||
workspace.addInScreen(shortcut, item.screen, item.cellX, item.cellY, 1, 1,
|
||||
!desktopLocked);
|
||||
break;
|
||||
case LauncherSettings.Favorites.ITEM_TYPE_USER_FOLDER:
|
||||
final FolderIcon newFolder = FolderIcon.fromXml(R.layout.folder_icon, this,
|
||||
(ViewGroup) workspace.getChildAt(workspace.getCurrentScreen()),
|
||||
(UserFolderInfo) item);
|
||||
workspace.addInScreen(newFolder, item.screen, item.cellX, item.cellY, 1, 1,
|
||||
!desktopLocked);
|
||||
break;
|
||||
case LauncherSettings.Favorites.ITEM_TYPE_LIVE_FOLDER:
|
||||
final FolderIcon newLiveFolder = LiveFolderIcon.fromXml(
|
||||
R.layout.live_folder_icon, this,
|
||||
(ViewGroup) workspace.getChildAt(workspace.getCurrentScreen()),
|
||||
(LiveFolderInfo) item);
|
||||
workspace.addInScreen(newLiveFolder, item.screen, item.cellX, item.cellY, 1, 1,
|
||||
!desktopLocked);
|
||||
break;
|
||||
default:
|
||||
final Widget widget = (Widget) item;
|
||||
final View view = createWidget(mInflater, widget);
|
||||
view.setTag(widget);
|
||||
workspace.addWidget(view, widget, !desktopLocked);
|
||||
}
|
||||
}
|
||||
|
||||
workspace.requestLayout();
|
||||
|
||||
if (end >= count) {
|
||||
finishBindDesktopItems();
|
||||
} else {
|
||||
binder.obtainMessage(DesktopItemsBinder.MESSAGE_BIND_ITEMS, i, count).sendToTarget();
|
||||
}
|
||||
}
|
||||
|
||||
private void finishBindDesktopItems() {
|
||||
if (mSavedState != null) {
|
||||
mWorkspace.getChildAt(mWorkspace.getCurrentScreen()).requestFocus();
|
||||
|
||||
|
@ -1152,57 +1226,6 @@ public final class Launcher extends Activity implements View.OnClickListener, On
|
|||
mDrawer.unlock();
|
||||
}
|
||||
|
||||
/**
|
||||
* Refreshes the shortcuts shown on the workspace.
|
||||
*/
|
||||
private void bindDesktopItems() {
|
||||
final ArrayList<ItemInfo> shortcuts = sModel.getDesktopItems();
|
||||
if (shortcuts == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
final Workspace workspace = mWorkspace;
|
||||
int count = workspace.getChildCount();
|
||||
for (int i = 0; i < count; i++) {
|
||||
((ViewGroup) workspace.getChildAt(i)).removeAllViewsInLayout();
|
||||
}
|
||||
|
||||
count = shortcuts.size();
|
||||
for (int i = 0; i < count; i++) {
|
||||
final ItemInfo item = shortcuts.get(i);
|
||||
switch (item.itemType) {
|
||||
case LauncherSettings.Favorites.ITEM_TYPE_APPLICATION:
|
||||
case LauncherSettings.Favorites.ITEM_TYPE_SHORTCUT:
|
||||
final View shortcut = createShortcut((ApplicationInfo) item);
|
||||
workspace.addInScreen(shortcut, item.screen, item.cellX, item.cellY, 1, 1,
|
||||
!mDesktopLocked);
|
||||
break;
|
||||
case LauncherSettings.Favorites.ITEM_TYPE_USER_FOLDER:
|
||||
final FolderIcon newFolder = FolderIcon.fromXml(R.layout.folder_icon, this,
|
||||
(ViewGroup) mWorkspace.getChildAt(mWorkspace.getCurrentScreen()),
|
||||
((UserFolderInfo) item));
|
||||
workspace.addInScreen(newFolder, item.screen, item.cellX, item.cellY, 1, 1,
|
||||
!mDesktopLocked);
|
||||
break;
|
||||
case LauncherSettings.Favorites.ITEM_TYPE_LIVE_FOLDER:
|
||||
final FolderIcon newLiveFolder = LiveFolderIcon.fromXml(
|
||||
R.layout.live_folder_icon, this,
|
||||
(ViewGroup) mWorkspace.getChildAt(mWorkspace.getCurrentScreen()),
|
||||
((LiveFolderInfo) item));
|
||||
workspace.addInScreen(newLiveFolder, item.screen, item.cellX, item.cellY, 1, 1,
|
||||
!mDesktopLocked);
|
||||
break;
|
||||
default:
|
||||
final Widget widget = (Widget)item;
|
||||
final View view = createWidget(mInflater, widget);
|
||||
view.setTag(widget);
|
||||
workspace.addWidget(view, widget, !mDesktopLocked);
|
||||
}
|
||||
}
|
||||
|
||||
workspace.requestLayout();
|
||||
}
|
||||
|
||||
private View createWidget(LayoutInflater inflater, Widget widget) {
|
||||
final Workspace workspace = mWorkspace;
|
||||
final int screen = workspace.getCurrentScreen();
|
||||
|
@ -1456,7 +1479,7 @@ public final class Launcher extends Activity implements View.OnClickListener, On
|
|||
|
||||
if (mDesktopLocked) {
|
||||
mDrawer.lock();
|
||||
sModel.loadUserItems(false, Launcher.this, false);
|
||||
sModel.loadUserItems(false, Launcher.this, false, false);
|
||||
} else {
|
||||
final FolderIcon folderIcon = (FolderIcon)
|
||||
mWorkspace.getViewForTag(mFolderInfo);
|
||||
|
@ -1466,7 +1489,7 @@ public final class Launcher extends Activity implements View.OnClickListener, On
|
|||
} else {
|
||||
mDesktopLocked = true;
|
||||
mDrawer.lock();
|
||||
sModel.loadUserItems(false, Launcher.this, false);
|
||||
sModel.loadUserItems(false, Launcher.this, false, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1635,4 +1658,28 @@ public final class Launcher extends Activity implements View.OnClickListener, On
|
|||
public void onScrollEnded() {
|
||||
}
|
||||
}
|
||||
|
||||
private static class DesktopItemsBinder extends Handler {
|
||||
static final int MESSAGE_BIND_ITEMS = 0x1;
|
||||
// Number of items to bind in every pass
|
||||
static final int ITEMS_COUNT = 6;
|
||||
|
||||
private final ArrayList<ItemInfo> mShortcuts;
|
||||
private final WeakReference<Launcher> mLauncher;
|
||||
|
||||
DesktopItemsBinder(Launcher launcher, ArrayList<ItemInfo> shortcuts) {
|
||||
mLauncher = new WeakReference<Launcher>(launcher);
|
||||
mShortcuts = shortcuts;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleMessage(Message msg) {
|
||||
switch (msg.what) {
|
||||
case MESSAGE_BIND_ITEMS:
|
||||
Launcher launcher = mLauncher.get();
|
||||
if (launcher != null) launcher.bindItems(this, mShortcuts, msg.arg1, msg.arg2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -28,9 +28,9 @@ import android.content.res.Resources;
|
|||
import android.database.Cursor;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.BitmapFactory;
|
||||
import android.graphics.drawable.BitmapDrawable;
|
||||
import android.net.Uri;
|
||||
import android.util.Log;
|
||||
import android.os.Process;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
|
@ -45,7 +45,6 @@ import java.net.URISyntaxException;
|
|||
* Maintains in-memory state of the Launcher. It is expected that there should be only one
|
||||
* LauncherModel object held in a static. Also provide APIs for updating the database state
|
||||
* for the Launcher
|
||||
*
|
||||
*/
|
||||
public class LauncherModel {
|
||||
private static final int UI_NOTIFICATION_RATE = 4;
|
||||
|
@ -104,6 +103,13 @@ public class LauncherModel {
|
|||
}
|
||||
|
||||
mApplicationsLoaded = false;
|
||||
|
||||
if (!isLaunching) {
|
||||
startApplicationsLoader(launcher);
|
||||
}
|
||||
}
|
||||
|
||||
private void startApplicationsLoader(Launcher launcher) {
|
||||
mApplicationsLoader = new ApplicationsLoader(launcher);
|
||||
mLoader = new Thread(mApplicationsLoader, "Applications Loader");
|
||||
mLoader.start();
|
||||
|
@ -130,6 +136,8 @@ public class LauncherModel {
|
|||
public void run() {
|
||||
mRunning = true;
|
||||
|
||||
android.os.Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND);
|
||||
|
||||
Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
|
||||
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
|
||||
|
||||
|
@ -221,8 +229,11 @@ public class LauncherModel {
|
|||
* Loads all of the items on the desktop, in folders, or in the dock.
|
||||
* These can be apps, shortcuts or widgets
|
||||
*/
|
||||
void loadUserItems(boolean isLaunching, Launcher launcher, boolean localeChanged) {
|
||||
void loadUserItems(boolean isLaunching, Launcher launcher, boolean localeChanged,
|
||||
boolean loadApplications) {
|
||||
|
||||
if (isLaunching && mDesktopItems != null && mDesktopItemsLoaded) {
|
||||
if (loadApplications) startApplicationsLoader(launcher);
|
||||
// We have already loaded our data from the DB
|
||||
launcher.onDesktopItemsLoaded();
|
||||
return;
|
||||
|
@ -240,7 +251,7 @@ public class LauncherModel {
|
|||
}
|
||||
|
||||
mDesktopItemsLoaded = false;
|
||||
mDesktopItemsLoader = new DesktopItemsLoader(launcher, localeChanged);
|
||||
mDesktopItemsLoader = new DesktopItemsLoader(launcher, localeChanged, loadApplications);
|
||||
mDesktopLoader = new Thread(mDesktopItemsLoader, "Desktop Items Loader");
|
||||
mDesktopLoader.start();
|
||||
}
|
||||
|
@ -317,9 +328,11 @@ public class LauncherModel {
|
|||
private volatile boolean mRunning;
|
||||
|
||||
private final WeakReference<Launcher> mLauncher;
|
||||
private boolean mLocaleChanged;
|
||||
private final boolean mLocaleChanged;
|
||||
private final boolean mLoadApplications;
|
||||
|
||||
DesktopItemsLoader(Launcher launcher, boolean localeChanged) {
|
||||
DesktopItemsLoader(Launcher launcher, boolean localeChanged, boolean loadApplications) {
|
||||
mLoadApplications = loadApplications;
|
||||
mLauncher = new WeakReference<Launcher>(launcher);
|
||||
mLocaleChanged = localeChanged;
|
||||
}
|
||||
|
@ -532,6 +545,7 @@ public class LauncherModel {
|
|||
launcher.onDesktopItemsLoaded();
|
||||
}
|
||||
});
|
||||
if (mLoadApplications) startApplicationsLoader(launcher);
|
||||
}
|
||||
|
||||
if (!mStopped) {
|
||||
|
|
Loading…
Reference in New Issue