Loading app/src/main/java/foundation/e/blisslauncher/features/launcher/AppProvider.java +4 −7 Original line number Original line Diff line number Diff line Loading @@ -174,9 +174,6 @@ public class AppProvider extends Service implements Provider { @Override @Override public void reload() { public void reload() { appsLoaded = false; shortcutsLoaded = false; databaseLoaded = false; initializeAppLoading(new LoadAppsTask(this)); initializeAppLoading(new LoadAppsTask(this)); if (Utilities.ATLEAST_OREO) { if (Utilities.ATLEAST_OREO) { initializeShortcutsLoading(new LoadShortcutTask(this)); initializeShortcutsLoading(new LoadShortcutTask(this)); Loading @@ -187,16 +184,19 @@ public class AppProvider extends Service implements Provider { } } private void initializeAppLoading(LoadAppsTask loader) { private void initializeAppLoading(LoadAppsTask loader) { appsLoaded = false; loader.setAppProvider(this); loader.setAppProvider(this); loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); } } private void initializeShortcutsLoading(LoadShortcutTask loader) { private void initializeShortcutsLoading(LoadShortcutTask loader) { shortcutsLoaded = false; loader.setAppProvider(this); loader.setAppProvider(this); loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); } } private void initializeDatabaseLoading(LoadDatabaseTask loader) { private void initializeDatabaseLoading(LoadDatabaseTask loader) { databaseLoaded = false; loader.setAppProvider(this); loader.setAppProvider(this); loader.executeOnExecutor(AppExecutors.getInstance().diskIO()); loader.executeOnExecutor(AppExecutors.getInstance().diskIO()); } } Loading @@ -208,7 +208,6 @@ public class AppProvider extends Service implements Provider { } } public void loadShortcutsOver(Map<String, ShortcutInfoCompat> shortcuts) { public void loadShortcutsOver(Map<String, ShortcutInfoCompat> shortcuts) { Log.d(TAG, "loadShortcutsOver() called with: shortcuts = [" + shortcuts + "]"); mShortcutInfoCompats = shortcuts; mShortcutInfoCompats = shortcuts; shortcutsLoaded = true; shortcutsLoaded = true; handleAllProviderLoaded(); handleAllProviderLoaded(); Loading Loading @@ -317,9 +316,7 @@ public class AppProvider extends Service implements Provider { } } applicationItems.removeAll(mDatabaseItems); applicationItems.removeAll(mDatabaseItems); for (ApplicationItem applicationItem : applicationItems) { mLauncherItems.addAll(applicationItems); mLauncherItems.add(applicationItem); } } } private ShortcutItem prepareShortcutForNougat(LauncherItem databaseItem) { private ShortcutItem prepareShortcutForNougat(LauncherItem databaseItem) { Loading app/src/main/java/foundation/e/blisslauncher/features/launcher/LauncherActivity.java +22 −25 Original line number Original line Diff line number Diff line Loading @@ -47,7 +47,6 @@ import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.support.v7.widget.RecyclerView; import android.text.Editable; import android.text.Editable; import android.text.TextWatcher; import android.text.TextWatcher; import android.util.Log; import android.view.DragEvent; import android.view.DragEvent; import android.view.Gravity; import android.view.Gravity; import android.view.LayoutInflater; import android.view.LayoutInflater; Loading Loading @@ -100,7 +99,6 @@ import foundation.e.blisslauncher.core.customviews.SquareFrameLayout; import foundation.e.blisslauncher.core.customviews.SquareImageView; import foundation.e.blisslauncher.core.customviews.SquareImageView; import foundation.e.blisslauncher.core.customviews.WidgetHost; import foundation.e.blisslauncher.core.customviews.WidgetHost; import foundation.e.blisslauncher.core.database.DatabaseManager; import foundation.e.blisslauncher.core.database.DatabaseManager; import foundation.e.blisslauncher.core.database.LauncherDB; import foundation.e.blisslauncher.core.database.model.ApplicationItem; import foundation.e.blisslauncher.core.database.model.ApplicationItem; import foundation.e.blisslauncher.core.database.model.CalendarIcon; import foundation.e.blisslauncher.core.database.model.CalendarIcon; import foundation.e.blisslauncher.core.database.model.FolderItem; import foundation.e.blisslauncher.core.database.model.FolderItem; Loading Loading @@ -143,7 +141,7 @@ public class LauncherActivity extends AppCompatActivity implements AutoCompleteAdapter.OnSuggestionClickListener { AutoCompleteAdapter.OnSuggestionClickListener { public static final int REORDER_TIMEOUT = 350; public static final int REORDER_TIMEOUT = 350; private final static int INVALID = LauncherItem.INVALID_CELL; private final static int EMPTY_LOCATION_DRAG = -999; private static final int REQUEST_PERMISSION_CALL_PHONE = 14; private static final int REQUEST_PERMISSION_CALL_PHONE = 14; private static final int REQUEST_LOCATION_SOURCE_SETTING = 267; private static final int REQUEST_LOCATION_SOURCE_SETTING = 267; public static boolean longPressed; public static boolean longPressed; Loading Loading @@ -203,7 +201,6 @@ public class LauncherActivity extends AppCompatActivity implements private BlissFrameLayout activeFolderView; private BlissFrameLayout activeFolderView; private int activeDot; private int activeDot; private int statusBarHeight; private int statusBarHeight; private List<LauncherItem> mLauncherItems; private static final String TAG = "LauncherActivity"; private static final String TAG = "LauncherActivity"; private TextView openUsageAccessTextView; private TextView openUsageAccessTextView; Loading Loading @@ -306,14 +303,14 @@ public class LauncherActivity extends AppCompatActivity implements LauncherActivity.this).getAppProvider().reload(); LauncherActivity.this).getAppProvider().reload(); } else { } else { if (!allAppsDisplayed) { if (!allAppsDisplayed) { mLauncherItems = launcherItems; showApps(launcherItems); showApps(); } } } } } } @Override @Override public void onError(Throwable e) { public void onError(Throwable e) { e.printStackTrace(); } } @Override @Override Loading Loading @@ -597,7 +594,6 @@ public class LauncherActivity extends AppCompatActivity implements } } private void removePackageFromLauncher(String packageName) { private void removePackageFromLauncher(String packageName) { Log.d(TAG, "removePackageFromLauncher() called with: packageName = [" + packageName + "]"); handleWobbling(false); handleWobbling(false); if (mFolderWindowContainer.getVisibility() == View.VISIBLE) { if (mFolderWindowContainer.getVisibility() == View.VISIBLE) { for (int i = 0; i < mFolderAppsViewPager.getChildCount(); i++) { for (int i = 0; i < mFolderAppsViewPager.getChildCount(); i++) { Loading Loading @@ -851,9 +847,9 @@ public class LauncherActivity extends AppCompatActivity implements addLauncherItem(updatedAppItem); addLauncherItem(updatedAppItem); } } public void showApps() { public void showApps(List<LauncherItem> launcherItems) { mProgressBar.setVisibility(GONE); mProgressBar.setVisibility(GONE); createUI(); createUI(launcherItems); isUiDone = true; isUiDone = true; createPageChangeListener(); createPageChangeListener(); createFolderTitleListener(); createFolderTitleListener(); Loading Loading @@ -1084,7 +1080,8 @@ public class LauncherActivity extends AppCompatActivity implements /** /** * Populates the pages and the mDock for the first time. * Populates the pages and the mDock for the first time. */ */ private void createUI() { private void createUI( List<LauncherItem> launcherItems) { mHorizontalPager.setUiCreated(false); mHorizontalPager.setUiCreated(false); mDock.setEnabled(false); mDock.setEnabled(false); Loading @@ -1096,8 +1093,8 @@ public class LauncherActivity extends AppCompatActivity implements GridLayout workspaceScreen = preparePage(); GridLayout workspaceScreen = preparePage(); pages.add(workspaceScreen); pages.add(workspaceScreen); for (int i = 0; i < mLauncherItems.size(); i++) { for (int i = 0; i < launcherItems.size(); i++) { LauncherItem launcherItem = mLauncherItems.get(i); LauncherItem launcherItem = launcherItems.get(i); BlissFrameLayout appView = prepareLauncherItem(launcherItem); BlissFrameLayout appView = prepareLauncherItem(launcherItem); if (launcherItem.container == Constants.CONTAINER_HOTSEAT) { if (launcherItem.container == Constants.CONTAINER_HOTSEAT) { addAppToDock(appView, launcherItem.cell); addAppToDock(appView, launcherItem.cell); Loading @@ -1124,8 +1121,7 @@ public class LauncherActivity extends AppCompatActivity implements currentPageNumber = 0; currentPageNumber = 0; mHorizontalPager.setUiCreated(true); mHorizontalPager.setUiCreated(true); new Thread(() -> LauncherDB.getDatabase(this).launcherDao().insertAll( DatabaseManager.getManager(this).saveLayouts(pages, mDock); mLauncherItems)).start(); mDock.setEnabled(true); mDock.setEnabled(true); } } Loading Loading @@ -1540,7 +1536,7 @@ public class LauncherActivity extends AppCompatActivity implements } } private void addAppToGrid(GridLayout page, BlissFrameLayout view) { private void addAppToGrid(GridLayout page, BlissFrameLayout view) { addAppToGrid(page, view, INVALID); addAppToGrid(page, view, EMPTY_LOCATION_DRAG); } } private void addAppToGrid(GridLayout page, BlissFrameLayout view, int index) { private void addAppToGrid(GridLayout page, BlissFrameLayout view, int index) { Loading @@ -1552,7 +1548,8 @@ public class LauncherActivity extends AppCompatActivity implements view.findViewById(R.id.app_label).setVisibility(View.VISIBLE); view.findViewById(R.id.app_label).setVisibility(View.VISIBLE); view.setLayoutParams(iconLayoutParams); view.setLayoutParams(iconLayoutParams); view.setWithText(true); view.setWithText(true); if (index == INVALID || index > page.getChildCount()) { if (index == EMPTY_LOCATION_DRAG || index == LauncherItem.INVALID_CELL || index > page.getChildCount()) { page.addView(view); page.addView(view); } else { } else { page.addView(view, index); page.addView(view, index); Loading @@ -1573,7 +1570,8 @@ public class LauncherActivity extends AppCompatActivity implements iconLayoutParams.setGravity(Gravity.CENTER); iconLayoutParams.setGravity(Gravity.CENTER); view.setLayoutParams(iconLayoutParams); view.setLayoutParams(iconLayoutParams); view.setWithText(false); view.setWithText(false); if (index == LauncherItem.INVALID_CELL || index > mDock.getChildCount()) { if (index == LauncherItem.INVALID_CELL || index == EMPTY_LOCATION_DRAG || index > mDock.getChildCount()) { mDock.addView(view); mDock.addView(view); } else { } else { mDock.addView(view, index); mDock.addView(view, index); Loading Loading @@ -1983,14 +1981,14 @@ public class LauncherActivity extends AppCompatActivity implements } } // If hovering over an empty location, ignore drag/drop // If hovering over an empty location, ignore drag/drop if (index == INVALID) { if (index == EMPTY_LOCATION_DRAG) { discardCollidingApp(); discardCollidingApp(); } } // If hovering over another app icon // If hovering over another app icon // either move it or create a folder // either move it or create a folder // depending on time and distance // depending on time and distance if (index != INVALID) { if (index != EMPTY_LOCATION_DRAG) { BlissFrameLayout latestCollidingApp = BlissFrameLayout latestCollidingApp = (BlissFrameLayout) mDock.getChildAt(index); (BlissFrameLayout) mDock.getChildAt(index); if (collidingApp != latestCollidingApp) { if (collidingApp != latestCollidingApp) { Loading Loading @@ -2043,7 +2041,7 @@ public class LauncherActivity extends AppCompatActivity implements "Dock is already full", "Dock is already full", Toast.LENGTH_SHORT).show(); Toast.LENGTH_SHORT).show(); } else { } else { addAppToDock(movingApp, INVALID); addAppToDock(movingApp, EMPTY_LOCATION_DRAG); } } } } movingApp.setVisibility(View.VISIBLE); movingApp.setVisibility(View.VISIBLE); Loading Loading @@ -2130,14 +2128,14 @@ public class LauncherActivity extends AppCompatActivity implements } } // If hovering over an empty location, ignore drag/drop // If hovering over an empty location, ignore drag/drop if (index == INVALID) { if (index == EMPTY_LOCATION_DRAG) { discardCollidingApp(); discardCollidingApp(); } } // If hovering over another app icon // If hovering over another app icon // either move it or create a folder // either move it or create a folder // depending on time and distance // depending on time and distance if (index != INVALID) { if (index != EMPTY_LOCATION_DRAG) { View latestCollidingApp = getGridFromPage(page).getChildAt(index); View latestCollidingApp = getGridFromPage(page).getChildAt(index); if (collidingApp != latestCollidingApp) { if (collidingApp != latestCollidingApp) { if (collidingApp != null) { if (collidingApp != null) { Loading Loading @@ -2372,7 +2370,6 @@ public class LauncherActivity extends AppCompatActivity implements DatabaseManager.getManager(this).removeLauncherItem(activeFolder.id); DatabaseManager.getManager(this).removeLauncherItem(activeFolder.id); } else { } else { if (activeFolder.items.size() == 1) { if (activeFolder.items.size() == 1) { Log.i(TAG, "removeAppFromFolder: here"); LauncherItem item = activeFolder.items.get(0); LauncherItem item = activeFolder.items.get(0); activeFolder.items.remove(item); activeFolder.items.remove(item); mFolderAppsViewPager.getAdapter().notifyDataSetChanged(); mFolderAppsViewPager.getAdapter().notifyDataSetChanged(); Loading Loading @@ -2578,7 +2575,7 @@ public class LauncherActivity extends AppCompatActivity implements */ */ private int getIndex(ViewGroup page, float x, float y) { private int getIndex(ViewGroup page, float x, float y) { float minDistance = Float.MAX_VALUE; float minDistance = Float.MAX_VALUE; int index = INVALID; int index = EMPTY_LOCATION_DRAG; for (int i = 0; i < page.getChildCount(); i++) { for (int i = 0; i < page.getChildCount(); i++) { Loading Loading
app/src/main/java/foundation/e/blisslauncher/features/launcher/AppProvider.java +4 −7 Original line number Original line Diff line number Diff line Loading @@ -174,9 +174,6 @@ public class AppProvider extends Service implements Provider { @Override @Override public void reload() { public void reload() { appsLoaded = false; shortcutsLoaded = false; databaseLoaded = false; initializeAppLoading(new LoadAppsTask(this)); initializeAppLoading(new LoadAppsTask(this)); if (Utilities.ATLEAST_OREO) { if (Utilities.ATLEAST_OREO) { initializeShortcutsLoading(new LoadShortcutTask(this)); initializeShortcutsLoading(new LoadShortcutTask(this)); Loading @@ -187,16 +184,19 @@ public class AppProvider extends Service implements Provider { } } private void initializeAppLoading(LoadAppsTask loader) { private void initializeAppLoading(LoadAppsTask loader) { appsLoaded = false; loader.setAppProvider(this); loader.setAppProvider(this); loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); } } private void initializeShortcutsLoading(LoadShortcutTask loader) { private void initializeShortcutsLoading(LoadShortcutTask loader) { shortcutsLoaded = false; loader.setAppProvider(this); loader.setAppProvider(this); loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); loader.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); } } private void initializeDatabaseLoading(LoadDatabaseTask loader) { private void initializeDatabaseLoading(LoadDatabaseTask loader) { databaseLoaded = false; loader.setAppProvider(this); loader.setAppProvider(this); loader.executeOnExecutor(AppExecutors.getInstance().diskIO()); loader.executeOnExecutor(AppExecutors.getInstance().diskIO()); } } Loading @@ -208,7 +208,6 @@ public class AppProvider extends Service implements Provider { } } public void loadShortcutsOver(Map<String, ShortcutInfoCompat> shortcuts) { public void loadShortcutsOver(Map<String, ShortcutInfoCompat> shortcuts) { Log.d(TAG, "loadShortcutsOver() called with: shortcuts = [" + shortcuts + "]"); mShortcutInfoCompats = shortcuts; mShortcutInfoCompats = shortcuts; shortcutsLoaded = true; shortcutsLoaded = true; handleAllProviderLoaded(); handleAllProviderLoaded(); Loading Loading @@ -317,9 +316,7 @@ public class AppProvider extends Service implements Provider { } } applicationItems.removeAll(mDatabaseItems); applicationItems.removeAll(mDatabaseItems); for (ApplicationItem applicationItem : applicationItems) { mLauncherItems.addAll(applicationItems); mLauncherItems.add(applicationItem); } } } private ShortcutItem prepareShortcutForNougat(LauncherItem databaseItem) { private ShortcutItem prepareShortcutForNougat(LauncherItem databaseItem) { Loading
app/src/main/java/foundation/e/blisslauncher/features/launcher/LauncherActivity.java +22 −25 Original line number Original line Diff line number Diff line Loading @@ -47,7 +47,6 @@ import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.support.v7.widget.RecyclerView; import android.text.Editable; import android.text.Editable; import android.text.TextWatcher; import android.text.TextWatcher; import android.util.Log; import android.view.DragEvent; import android.view.DragEvent; import android.view.Gravity; import android.view.Gravity; import android.view.LayoutInflater; import android.view.LayoutInflater; Loading Loading @@ -100,7 +99,6 @@ import foundation.e.blisslauncher.core.customviews.SquareFrameLayout; import foundation.e.blisslauncher.core.customviews.SquareImageView; import foundation.e.blisslauncher.core.customviews.SquareImageView; import foundation.e.blisslauncher.core.customviews.WidgetHost; import foundation.e.blisslauncher.core.customviews.WidgetHost; import foundation.e.blisslauncher.core.database.DatabaseManager; import foundation.e.blisslauncher.core.database.DatabaseManager; import foundation.e.blisslauncher.core.database.LauncherDB; import foundation.e.blisslauncher.core.database.model.ApplicationItem; import foundation.e.blisslauncher.core.database.model.ApplicationItem; import foundation.e.blisslauncher.core.database.model.CalendarIcon; import foundation.e.blisslauncher.core.database.model.CalendarIcon; import foundation.e.blisslauncher.core.database.model.FolderItem; import foundation.e.blisslauncher.core.database.model.FolderItem; Loading Loading @@ -143,7 +141,7 @@ public class LauncherActivity extends AppCompatActivity implements AutoCompleteAdapter.OnSuggestionClickListener { AutoCompleteAdapter.OnSuggestionClickListener { public static final int REORDER_TIMEOUT = 350; public static final int REORDER_TIMEOUT = 350; private final static int INVALID = LauncherItem.INVALID_CELL; private final static int EMPTY_LOCATION_DRAG = -999; private static final int REQUEST_PERMISSION_CALL_PHONE = 14; private static final int REQUEST_PERMISSION_CALL_PHONE = 14; private static final int REQUEST_LOCATION_SOURCE_SETTING = 267; private static final int REQUEST_LOCATION_SOURCE_SETTING = 267; public static boolean longPressed; public static boolean longPressed; Loading Loading @@ -203,7 +201,6 @@ public class LauncherActivity extends AppCompatActivity implements private BlissFrameLayout activeFolderView; private BlissFrameLayout activeFolderView; private int activeDot; private int activeDot; private int statusBarHeight; private int statusBarHeight; private List<LauncherItem> mLauncherItems; private static final String TAG = "LauncherActivity"; private static final String TAG = "LauncherActivity"; private TextView openUsageAccessTextView; private TextView openUsageAccessTextView; Loading Loading @@ -306,14 +303,14 @@ public class LauncherActivity extends AppCompatActivity implements LauncherActivity.this).getAppProvider().reload(); LauncherActivity.this).getAppProvider().reload(); } else { } else { if (!allAppsDisplayed) { if (!allAppsDisplayed) { mLauncherItems = launcherItems; showApps(launcherItems); showApps(); } } } } } } @Override @Override public void onError(Throwable e) { public void onError(Throwable e) { e.printStackTrace(); } } @Override @Override Loading Loading @@ -597,7 +594,6 @@ public class LauncherActivity extends AppCompatActivity implements } } private void removePackageFromLauncher(String packageName) { private void removePackageFromLauncher(String packageName) { Log.d(TAG, "removePackageFromLauncher() called with: packageName = [" + packageName + "]"); handleWobbling(false); handleWobbling(false); if (mFolderWindowContainer.getVisibility() == View.VISIBLE) { if (mFolderWindowContainer.getVisibility() == View.VISIBLE) { for (int i = 0; i < mFolderAppsViewPager.getChildCount(); i++) { for (int i = 0; i < mFolderAppsViewPager.getChildCount(); i++) { Loading Loading @@ -851,9 +847,9 @@ public class LauncherActivity extends AppCompatActivity implements addLauncherItem(updatedAppItem); addLauncherItem(updatedAppItem); } } public void showApps() { public void showApps(List<LauncherItem> launcherItems) { mProgressBar.setVisibility(GONE); mProgressBar.setVisibility(GONE); createUI(); createUI(launcherItems); isUiDone = true; isUiDone = true; createPageChangeListener(); createPageChangeListener(); createFolderTitleListener(); createFolderTitleListener(); Loading Loading @@ -1084,7 +1080,8 @@ public class LauncherActivity extends AppCompatActivity implements /** /** * Populates the pages and the mDock for the first time. * Populates the pages and the mDock for the first time. */ */ private void createUI() { private void createUI( List<LauncherItem> launcherItems) { mHorizontalPager.setUiCreated(false); mHorizontalPager.setUiCreated(false); mDock.setEnabled(false); mDock.setEnabled(false); Loading @@ -1096,8 +1093,8 @@ public class LauncherActivity extends AppCompatActivity implements GridLayout workspaceScreen = preparePage(); GridLayout workspaceScreen = preparePage(); pages.add(workspaceScreen); pages.add(workspaceScreen); for (int i = 0; i < mLauncherItems.size(); i++) { for (int i = 0; i < launcherItems.size(); i++) { LauncherItem launcherItem = mLauncherItems.get(i); LauncherItem launcherItem = launcherItems.get(i); BlissFrameLayout appView = prepareLauncherItem(launcherItem); BlissFrameLayout appView = prepareLauncherItem(launcherItem); if (launcherItem.container == Constants.CONTAINER_HOTSEAT) { if (launcherItem.container == Constants.CONTAINER_HOTSEAT) { addAppToDock(appView, launcherItem.cell); addAppToDock(appView, launcherItem.cell); Loading @@ -1124,8 +1121,7 @@ public class LauncherActivity extends AppCompatActivity implements currentPageNumber = 0; currentPageNumber = 0; mHorizontalPager.setUiCreated(true); mHorizontalPager.setUiCreated(true); new Thread(() -> LauncherDB.getDatabase(this).launcherDao().insertAll( DatabaseManager.getManager(this).saveLayouts(pages, mDock); mLauncherItems)).start(); mDock.setEnabled(true); mDock.setEnabled(true); } } Loading Loading @@ -1540,7 +1536,7 @@ public class LauncherActivity extends AppCompatActivity implements } } private void addAppToGrid(GridLayout page, BlissFrameLayout view) { private void addAppToGrid(GridLayout page, BlissFrameLayout view) { addAppToGrid(page, view, INVALID); addAppToGrid(page, view, EMPTY_LOCATION_DRAG); } } private void addAppToGrid(GridLayout page, BlissFrameLayout view, int index) { private void addAppToGrid(GridLayout page, BlissFrameLayout view, int index) { Loading @@ -1552,7 +1548,8 @@ public class LauncherActivity extends AppCompatActivity implements view.findViewById(R.id.app_label).setVisibility(View.VISIBLE); view.findViewById(R.id.app_label).setVisibility(View.VISIBLE); view.setLayoutParams(iconLayoutParams); view.setLayoutParams(iconLayoutParams); view.setWithText(true); view.setWithText(true); if (index == INVALID || index > page.getChildCount()) { if (index == EMPTY_LOCATION_DRAG || index == LauncherItem.INVALID_CELL || index > page.getChildCount()) { page.addView(view); page.addView(view); } else { } else { page.addView(view, index); page.addView(view, index); Loading @@ -1573,7 +1570,8 @@ public class LauncherActivity extends AppCompatActivity implements iconLayoutParams.setGravity(Gravity.CENTER); iconLayoutParams.setGravity(Gravity.CENTER); view.setLayoutParams(iconLayoutParams); view.setLayoutParams(iconLayoutParams); view.setWithText(false); view.setWithText(false); if (index == LauncherItem.INVALID_CELL || index > mDock.getChildCount()) { if (index == LauncherItem.INVALID_CELL || index == EMPTY_LOCATION_DRAG || index > mDock.getChildCount()) { mDock.addView(view); mDock.addView(view); } else { } else { mDock.addView(view, index); mDock.addView(view, index); Loading Loading @@ -1983,14 +1981,14 @@ public class LauncherActivity extends AppCompatActivity implements } } // If hovering over an empty location, ignore drag/drop // If hovering over an empty location, ignore drag/drop if (index == INVALID) { if (index == EMPTY_LOCATION_DRAG) { discardCollidingApp(); discardCollidingApp(); } } // If hovering over another app icon // If hovering over another app icon // either move it or create a folder // either move it or create a folder // depending on time and distance // depending on time and distance if (index != INVALID) { if (index != EMPTY_LOCATION_DRAG) { BlissFrameLayout latestCollidingApp = BlissFrameLayout latestCollidingApp = (BlissFrameLayout) mDock.getChildAt(index); (BlissFrameLayout) mDock.getChildAt(index); if (collidingApp != latestCollidingApp) { if (collidingApp != latestCollidingApp) { Loading Loading @@ -2043,7 +2041,7 @@ public class LauncherActivity extends AppCompatActivity implements "Dock is already full", "Dock is already full", Toast.LENGTH_SHORT).show(); Toast.LENGTH_SHORT).show(); } else { } else { addAppToDock(movingApp, INVALID); addAppToDock(movingApp, EMPTY_LOCATION_DRAG); } } } } movingApp.setVisibility(View.VISIBLE); movingApp.setVisibility(View.VISIBLE); Loading Loading @@ -2130,14 +2128,14 @@ public class LauncherActivity extends AppCompatActivity implements } } // If hovering over an empty location, ignore drag/drop // If hovering over an empty location, ignore drag/drop if (index == INVALID) { if (index == EMPTY_LOCATION_DRAG) { discardCollidingApp(); discardCollidingApp(); } } // If hovering over another app icon // If hovering over another app icon // either move it or create a folder // either move it or create a folder // depending on time and distance // depending on time and distance if (index != INVALID) { if (index != EMPTY_LOCATION_DRAG) { View latestCollidingApp = getGridFromPage(page).getChildAt(index); View latestCollidingApp = getGridFromPage(page).getChildAt(index); if (collidingApp != latestCollidingApp) { if (collidingApp != latestCollidingApp) { if (collidingApp != null) { if (collidingApp != null) { Loading Loading @@ -2372,7 +2370,6 @@ public class LauncherActivity extends AppCompatActivity implements DatabaseManager.getManager(this).removeLauncherItem(activeFolder.id); DatabaseManager.getManager(this).removeLauncherItem(activeFolder.id); } else { } else { if (activeFolder.items.size() == 1) { if (activeFolder.items.size() == 1) { Log.i(TAG, "removeAppFromFolder: here"); LauncherItem item = activeFolder.items.get(0); LauncherItem item = activeFolder.items.get(0); activeFolder.items.remove(item); activeFolder.items.remove(item); mFolderAppsViewPager.getAdapter().notifyDataSetChanged(); mFolderAppsViewPager.getAdapter().notifyDataSetChanged(); Loading Loading @@ -2578,7 +2575,7 @@ public class LauncherActivity extends AppCompatActivity implements */ */ private int getIndex(ViewGroup page, float x, float y) { private int getIndex(ViewGroup page, float x, float y) { float minDistance = Float.MAX_VALUE; float minDistance = Float.MAX_VALUE; int index = INVALID; int index = EMPTY_LOCATION_DRAG; for (int i = 0; i < page.getChildCount(); i++) { for (int i = 0; i < page.getChildCount(); i++) { Loading