diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/QuickstepLauncher.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/QuickstepLauncher.java
old mode 100644
new mode 100755
index 9a03d92e488..c4003f8454f
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/QuickstepLauncher.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/QuickstepLauncher.java
@@ -229,8 +229,12 @@ public class QuickstepLauncher extends BaseQuickstepLauncher {
}
case OVERVIEW_STATE_ORDINAL: {
RecentsView recentsView = getOverviewPanel();
- DiscoveryBounce.showForOverviewIfNeeded(this,
- recentsView.getPagedOrientationHandler());
+ // add start
+ if(!FeatureFlags.REMOVE_DRAWER){
+ DiscoveryBounce.showForOverviewIfNeeded(this,
+ recentsView.getPagedOrientationHandler());
+ }
+ // add end
RecentsView rv = getOverviewPanel();
sendCustomAccessibilityEvent(
rv.getPageAt(rv.getCurrentPage()), TYPE_VIEW_FOCUSED, null);
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/touchcontrollers/OverviewToAllAppsTouchController.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/touchcontrollers/OverviewToAllAppsTouchController.java
old mode 100644
new mode 100755
index 90911684ecf..ec7432714cf
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/touchcontrollers/OverviewToAllAppsTouchController.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/touchcontrollers/OverviewToAllAppsTouchController.java
@@ -29,6 +29,7 @@ import com.android.launcher3.userevent.nano.LauncherLogProto;
import com.android.quickstep.TouchInteractionService;
import com.android.quickstep.views.RecentsView;
+import com.android.launcher3.config.FeatureFlags; // add start
/**
* Touch controller from going from OVERVIEW to ALL_APPS.
*
@@ -42,6 +43,11 @@ public class OverviewToAllAppsTouchController extends PortraitStatesTouchControl
@Override
protected boolean canInterceptTouch(MotionEvent ev) {
+ // add start
+ if(FeatureFlags.REMOVE_DRAWER){
+ return false;
+ }
+ // add end
if (mCurrentAnimation != null) {
// If we are already animating from a previous state, we can intercept.
return true;
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityInterface.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/quickstep/Launch
erActivityInterface.java
old mode 100644
new mode 100755
index edefbe1252d..ff658b2693a
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityInterface.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityInterface.java
@@ -59,6 +59,7 @@ import com.android.systemui.shared.system.RemoteAnimationTargetCompat;
import java.util.function.Consumer;
import java.util.function.Predicate;
+import com.android.launcher3.config.FeatureFlags; // add start
/**
* {@link BaseActivityInterface} for the in-launcher recents.
*/
@@ -90,8 +91,12 @@ public final class LauncherActivityInterface extends
Launcher launcher = getCreatedActivity();
if (launcher != null) {
RecentsView recentsView = launcher.getOverviewPanel();
- DiscoveryBounce.showForOverviewIfNeeded(launcher,
- recentsView.getPagedOrientationHandler());
+ // add start
+ if(!FeatureFlags.REMOVE_DRAWER){
+ DiscoveryBounce.showForOverviewIfNeeded(launcher,
+ recentsView.getPagedOrientationHandler());
+ }
+ // add end
}
}
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/PortraitStatesTouchController.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/src/com/android/launcher3/uioverrides/tou
chcontrollers/PortraitStatesTouchController.java
old mode 100644
new mode 100755
index 20ee61db9b9..6a589a2e9b4
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/PortraitStatesTouchController.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/PortraitStatesTouchController.java
@@ -56,6 +56,8 @@ import com.android.quickstep.TouchInteractionService;
import com.android.quickstep.util.LayoutUtils;
import com.android.quickstep.views.RecentsView;
+import com.android.launcher3.config.FeatureFlags; // add start
+
/**
* Touch controller for handling various state transitions in portrait UI.
*/
@@ -118,6 +120,11 @@ public class PortraitStatesTouchController extends AbstractStateChangeTouchContr
return false;
}
} else {
+ // add start
+ if (FeatureFlags.REMOVE_DRAWER) {
+ return false;
+ }
+ // add end
// If we are swiping to all apps instead of overview, allow it from anywhere.
boolean interceptAnywhere = mLauncher.isInState(NORMAL) && !mAllowDragToOverview;
// For all other states, only listen if the event originated below the hotseat height
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/BubbleTextView.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/BubbleTextView.java
old mode 100644
new mode 100755
index 60b6da67f9f..45dea013f9e
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/BubbleTextView.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/BubbleTextView.java
@@ -167,16 +167,29 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver,
mDisplay = a.getInteger(R.styleable.BubbleTextView_iconDisplay, DISPLAY_WORKSPACE);
final int defaultIconSize;
if (mDisplay == DISPLAY_WORKSPACE) {
- setTextSize(TypedValue.COMPLEX_UNIT_PX, grid.iconTextSizePx);
- setCompoundDrawablePadding(grid.iconDrawablePaddingPx);
+ // add start
+ //setTextSize(TypedValue.COMPLEX_UNIT_PX, grid.iconTextSizePx);
+ //setCompoundDrawablePadding(grid.iconDrawablePaddingPx);
+ setTextSize(TypedValue.COMPLEX_UNIT_PX, grid.folderChildTextSizePx);
+ setCompoundDrawablePadding(0);
+ // add end
+
defaultIconSize = grid.iconSizePx;
} else if (mDisplay == DISPLAY_ALL_APPS) {
- setTextSize(TypedValue.COMPLEX_UNIT_PX, grid.allAppsIconTextSizePx);
- setCompoundDrawablePadding(grid.allAppsIconDrawablePaddingPx);
+ // add start
+ //setTextSize(TypedValue.COMPLEX_UNIT_PX, grid.allAppsIconTextSizePx);
+ //setCompoundDrawablePadding(grid.allAppsIconDrawablePaddingPx);
+ setTextSize(TypedValue.COMPLEX_UNIT_PX, grid.folderChildTextSizePx);
+ setCompoundDrawablePadding(0);
+ // add end
+
defaultIconSize = grid.allAppsIconSizePx;
} else if (mDisplay == DISPLAY_FOLDER) {
setTextSize(TypedValue.COMPLEX_UNIT_PX, grid.folderChildTextSizePx);
- setCompoundDrawablePadding(grid.folderChildDrawablePaddingPx);
+ // add start
+ //setCompoundDrawablePadding(grid.folderChildDrawablePaddingPx);
+ setCompoundDrawablePadding(0);
+ // add end
defaultIconSize = grid.folderChildIconSizePx;
} else {
// widget_selection or shortcut_popup
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/DeleteDropTarget.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/DeleteDropTarget.java
old mode 100644
new mode 100755
index 28574972ad6..8f81f475c0b
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/DeleteDropTarget.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/DeleteDropTarget.java
@@ -39,6 +39,8 @@ import com.android.launcher3.userevent.nano.LauncherLogProto.ControlType;
import com.android.launcher3.userevent.nano.LauncherLogProto.Target;
import com.android.launcher3.views.Snackbar;
+import com.android.launcher3.config.FeatureFlags; // add start
+
public class DeleteDropTarget extends ButtonDropTarget {
private final StatsLogManager mStatsLogManager;
@@ -102,6 +104,15 @@ public class DeleteDropTarget extends ButtonDropTarget {
mText = getResources().getString(canRemove(item)
? R.string.remove_drop_target_label
: android.R.string.cancel);
+
+ // add start
+ if(FeatureFlags.REMOVE_DRAWER){
+ mText = getResources().getString(isCanDrop(item)
+ ? R.string.remove_drop_target_label
+ : android.R.string.cancel);
+ }
+ // add end
+
setContentDescription(mText);
requestLayout();
}
@@ -117,6 +128,13 @@ public class DeleteDropTarget extends ButtonDropTarget {
private void setControlTypeBasedOnDragSource(ItemInfo item) {
mControlType = item.id != ItemInfo.NO_ID ? ControlType.REMOVE_TARGET
: ControlType.CANCEL_TARGET;
+
+ // add start
+ if(FeatureFlags.REMOVE_DRAWER) {
+ mControlType = isCanDrop(item) ? ControlType.REMOVE_TARGET
+ : ControlType.CANCEL_TARGET;
+ }
+ // add end
}
@Override
@@ -156,11 +174,23 @@ public class DeleteDropTarget extends ButtonDropTarget {
// Remove the item from launcher and the db, we can ignore the containerInfo in this call
// because we already remove the drag view from the folder (if the drag originated from
// a folder) in Folder.beginDrag()
+
+ // add start
+ if(!FeatureFlags.REMOVE_DRAWER || isCanDrop(item)) {
mLauncher.removeItem(view, item, true /* deleteFromDb */);
mLauncher.getWorkspace().stripEmptyScreens();
mLauncher.getDragLayer()
.announceForAccessibility(getContext().getString(R.string.item_removed));
+ }
+ // add end
+ }
+
+ // add start
+ private boolean isCanDrop(ItemInfo item){
+ return !(item.itemType == LauncherSettings.Favorites.ITEM_TYPE_APPLICATION ||
+ item.itemType == LauncherSettings.Favorites.ITEM_TYPE_FOLDER);
}
+ // add end
@Override
public Target getDropTargetForLogging() {
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/DeviceProfile.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/DeviceProfile.java
old mode 100644
new mode 100755
index 49caa93e612..930a575c474
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/DeviceProfile.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/DeviceProfile.java
@@ -391,7 +391,9 @@ public class DeviceProfile {
hotseatBarSizePx = iconSizePx + hotseatBarSidePaddingStartPx
+ hotseatBarSidePaddingEndPx;
}
- hotseatCellHeightPx = iconSizePx;
+ // add start
+ hotseatCellHeightPx = iconSizePx + 30;
+ // add end
if (!isVerticalLayout) {
int expectedWorkspaceHeight = availableHeightPx - hotseatBarSizePx
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/InstallShortcutReceiver.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/InstallShortcutReceiver.java
old mode 100644
new mode 100755
index 62c9b4dc934..e61a7da68c1
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/InstallShortcutReceiver.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/InstallShortcutReceiver.java
@@ -315,7 +315,10 @@ public class InstallShortcutReceiver extends BroadcastReceiver {
return name;
}
- private static class PendingInstallShortcutInfo {
+ // add start
+ //private static class PendingInstallShortcutInfo {
+ public static class PendingInstallShortcutInfo {
+ // add end
final boolean isActivity;
@Nullable final ShortcutInfo shortcutInfo;
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java
old mode 100644
new mode 100755
index 0970dae4790..043b14cc5ca
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java
@@ -920,7 +920,11 @@ public class Launcher extends StatefulActivity<LauncherState> implements Launche
// Set the notification listener and fetch updated notifications when we resume
NotificationListener.setNotificationsChangedListener(mPopupDataProvider);
- DiscoveryBounce.showForHomeIfNeeded(this);
+ // add start
+ if(!FeatureFlags.REMOVE_DRAWER){
+ DiscoveryBounce.showForHomeIfNeeded(this);
+ }
+ // add end
}
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/WorkspaceLayoutManager.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/WorkspaceLayoutManager.java
old mode 100644
new mode 100755
index c3d4aeb745b..47a8645a422
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/WorkspaceLayoutManager.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/WorkspaceLayoutManager.java
@@ -91,7 +91,10 @@ public interface WorkspaceLayoutManager {
// Hide folder title in the hotseat
if (child instanceof FolderIcon) {
- ((FolderIcon) child).setTextVisible(false);
+ // add start
+ //((FolderIcon) child).setTextVisible(false);
+ ((FolderIcon) child).setTextVisible(true);
+ // add end
}
} else {
// Show folder title if not in the hotseat
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/allapps/AllAppsTransitionController.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/allapps/AllAppsTransitionController.java
old mode 100644
new mode 100755
index a9b030e056a..e1166cc7664
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/allapps/AllAppsTransitionController.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/allapps/AllAppsTransitionController.java
@@ -40,6 +40,8 @@ import com.android.launcher3.views.ScrimView;
import com.android.systemui.plugins.AllAppsSearchPlugin;
import com.android.systemui.plugins.PluginListener;
+import com.android.launcher3.config.FeatureFlags; // add start
+
/**
* Handles AllApps view transition.
* 1) Slides all apps view using direct manipulation
@@ -157,6 +159,12 @@ public class AllAppsTransitionController implements StateHandler<LauncherState>,
@Override
public void setStateWithAnimation(LauncherState toState,
StateAnimationConfig config, PendingAnimation builder) {
+
+ // add start
+ if(FeatureFlags.REMOVE_DRAWER)
+ return;
+ // add end
+
float targetProgress = toState.getVerticalProgress(mLauncher);
if (Float.compare(mProgress, targetProgress) == 0) {
if (!config.onlyPlayAtomicComponent()) {
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/allapps/DiscoveryBounce.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/allapps/DiscoveryBounce.java
old mode 100644
new mode 100755
index b4ff5ea19a7..4f206c51255
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/allapps/DiscoveryBounce.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/allapps/DiscoveryBounce.java
@@ -37,6 +37,8 @@ import com.android.launcher3.statemanager.StateManager.StateListener;
import com.android.launcher3.touch.PagedOrientationHandler;
import com.android.launcher3.util.OnboardingPrefs;
+import com.android.launcher3.config.FeatureFlags; // add start
+
/**
* Abstract base class of floating view responsible for showing discovery bounce animation
*/
@@ -132,10 +134,17 @@ public class DiscoveryBounce extends AbstractFloatingView {
}
public static void showForHomeIfNeeded(Launcher launcher) {
+ // add start
+ if(!FeatureFlags.REMOVE_DRAWER){
showForHomeIfNeeded(launcher, true);
+ }
+ // add end
}
private static void showForHomeIfNeeded(Launcher launcher, boolean withDelay) {
+ // add start
+ if(!FeatureFlags.REMOVE_DRAWER){
+
OnboardingPrefs onboardingPrefs = launcher.getOnboardingPrefs();
if (!launcher.isInState(NORMAL)
|| onboardingPrefs.getBoolean(OnboardingPrefs.HOME_BOUNCE_SEEN)
@@ -152,15 +161,23 @@ public class DiscoveryBounce extends AbstractFloatingView {
onboardingPrefs.incrementEventCount(OnboardingPrefs.HOME_BOUNCE_COUNT);
new DiscoveryBounce(launcher, 0).show(HOTSEAT);
+ }
+ // add end
}
public static void showForOverviewIfNeeded(Launcher launcher,
PagedOrientationHandler orientationHandler) {
+ // add start
+ if(!FeatureFlags.REMOVE_DRAWER){
showForOverviewIfNeeded(launcher, true, orientationHandler);
+ }
+ // add end
}
private static void showForOverviewIfNeeded(Launcher launcher, boolean withDelay,
PagedOrientationHandler orientationHandler) {
+ // add start
+ if(!FeatureFlags.REMOVE_DRAWER){
OnboardingPrefs onboardingPrefs = launcher.getOnboardingPrefs();
if (!launcher.isInState(OVERVIEW)
|| !launcher.hasBeenResumed()
@@ -185,6 +202,8 @@ public class DiscoveryBounce extends AbstractFloatingView {
new DiscoveryBounce(launcher, (1 - OVERVIEW.getVerticalProgress(launcher)))
.show(PREDICTION);
+ }
+ // add end
}
/**
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/config/FeatureFlags.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/config/FeatureFlags.java
old mode 100644
new mode 100755
index 5c4a4922fdc..823ee74668a
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/config/FeatureFlags.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/config/FeatureFlags.java
@@ -48,6 +48,10 @@ public final class FeatureFlags {
*/
public static final boolean IS_STUDIO_BUILD = BuildConfig.DEBUG;
+ // add start
+ public static final boolean REMOVE_DRAWER = true;
+ // add end
+
/**
* Enable moving the QSB on the 0th screen of the workspace. This is not a configuration feature
* and should be modified at a project level.
@@ -65,7 +69,7 @@ public final class FeatureFlags {
*/
// When enabled the promise icon is visible in all apps while installation an app.
public static final BooleanFlag PROMISE_APPS_IN_ALL_APPS = getDebugFlag(
- "PROMISE_APPS_IN_ALL_APPS", false, "Add promise icon in all-apps");
+ "PROMISE_APPS_IN_ALL_APPS", true, "Add promise icon in all-apps"); // add start
// When enabled a promise icon is added to the home screen when install session is active.
public static final BooleanFlag PROMISE_APPS_NEW_INSTALLS = getDebugFlag(
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/dragndrop/DragController.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/dragndrop/DragController.java
old mode 100644
new mode 100755
index 03028d3a869..74a4b8864b7
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/dragndrop/DragController.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/dragndrop/DragController.java
@@ -47,6 +47,12 @@ import com.android.launcher3.util.TouchController;
import java.util.ArrayList;
+// add start
+import com.android.launcher3.config.FeatureFlags;
+import com.android.launcher3.DeleteDropTarget;
+import com.android.launcher3.LauncherSettings;
+// add end
+
/**
* Class for initiating a drag within a view or across multiple views.
*/
@@ -541,6 +547,14 @@ public class DragController implements DragDriver.EventListener, TouchController
dropTarget.onDrop(mDragObject, mOptions);
}
accepted = true;
+
+ // add start
+ if (FeatureFlags.REMOVE_DRAWER && dropTarget instanceof DeleteDropTarget &&
+ isNeedCancelDrag(mDragObject.dragInfo)) {
+ cancelDrag();
+ }
+ // add end
+
}
}
final View dropTargetAsView = dropTarget instanceof View ? (View) dropTarget : null;
@@ -548,6 +562,13 @@ public class DragController implements DragDriver.EventListener, TouchController
dispatchDropComplete(dropTargetAsView, accepted);
}
+ // add start
+ private boolean isNeedCancelDrag(ItemInfo item){
+ return (item.itemType == LauncherSettings.Favorites.ITEM_TYPE_APPLICATION ||
+ item.itemType == LauncherSettings.Favorites.ITEM_TYPE_FOLDER);
+ }
+ // add end
+
private DropTarget findDropTarget(int x, int y, int[] dropCoordinates) {
mDragObject.x = x;
mDragObject.y = y;
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/AddWorkspaceItemsTask.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/AddWorkspaceItemsTask.java
old mode 100644
new mode 100755
index c236fa6decd..870ef4daaa4
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/AddWorkspaceItemsTask.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/AddWorkspaceItemsTask.java
@@ -78,9 +78,11 @@ public class AddWorkspaceItemsTask extends BaseModelUpdateTask {
}
// b/139663018 Short-circuit this logic if the icon is a system app
- if (PackageManagerHelper.isSystemApp(app.getContext(), item.getIntent())) {
- continue;
- }
+ // add start
+ //if (PackageManagerHelper.isSystemApp(app.getContext(), item.getIntent())) {
+ // continue;
+ //}
+ // add end
}
if (item.itemType == LauncherSettings.Favorites.ITEM_TYPE_APPLICATION) {
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/AllAppsList.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/AllAppsList.java
old mode 100644
new mode 100755
index eb5d1068acc..713a46b61cc
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/AllAppsList.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/AllAppsList.java
@@ -64,6 +64,9 @@ public class AllAppsList {
/** The list off all apps. */
public final ArrayList<AppInfo> data = new ArrayList<>(DEFAULT_APPLICATIONS_NUMBER);
+ // add start
+ public ArrayList<AppInfo> added = new ArrayList<>(DEFAULT_APPLICATIONS_NUMBER);
+ // add end
private IconCache mIconCache;
private AppFilter mAppFilter;
@@ -142,6 +145,9 @@ public class AllAppsList {
info.sectionName = mIndex.computeSectionName(info.title);
data.add(info);
+ // add start
+ added.add(info);
+ // add end
mDataChanged = true;
}
@@ -155,6 +161,9 @@ public class AllAppsList {
info.sectionName = mIndex.computeSectionName(info.title);
data.add(info);
+ // add start
+ added.add(info);
+ // add end
mDataChanged = true;
}
}
@@ -189,6 +198,9 @@ public class AllAppsList {
public void clear() {
data.clear();
+ // add start
+ added.clear();
+ // add end
mDataChanged = false;
// Reset the index as locales might have changed
mIndex = new AlphabeticIndexCompat(LocaleList.getDefault());
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/BaseModelUpdateTask.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/BaseModelUpdateTask.java
old mode 100644
new mode 100755
index 9013cba54ff..26f09e8cc2f
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/BaseModelUpdateTask.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/BaseModelUpdateTask.java
@@ -32,6 +32,8 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.concurrent.Executor;
+import com.android.launcher3.config.FeatureFlags; //andy
+
/**
* Extension of {@link ModelUpdateTask} with some utility methods
*/
@@ -62,7 +64,12 @@ public abstract class BaseModelUpdateTask implements ModelUpdateTask {
Log.d(TAG, "Ignoring model task since loader is pending=" + this);
}
// Loader has not yet run.
- return;
+ // add start
+ // return;
+ if(!FeatureFlags.REMOVE_DRAWER){
+ return;
+ }
+ // add end
}
execute(mApp, mDataModel, mAllAppsList);
}
@@ -115,10 +122,12 @@ public abstract class BaseModelUpdateTask implements ModelUpdateTask {
}
public void bindApplicationsIfNeeded() {
- if (mAllAppsList.getAndResetChangeFlag()) {
+ // add start
+ /*if (mAllAppsList.getAndResetChangeFlag()) {*/
AppInfo[] apps = mAllAppsList.copyData();
int flags = mAllAppsList.getFlags();
scheduleCallbackTask(c -> c.bindAllApplications(apps, flags));
- }
+ // }
+ // add end
}
}
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/LoaderTask.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/LoaderTask.java
old mode 100644
new mode 100755
index 102ec31e1c8..e9c45ea52ed
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/LoaderTask.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/LoaderTask.java
@@ -98,7 +98,9 @@ import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CancellationException;
-
+// add start
+import android.util.Pair;
+// add end
/**
* Runnable for the thread that loads the contents of the launcher:
* - workspace icons
@@ -207,6 +209,12 @@ public class LoaderTask implements Runnable {
List<LauncherActivityInfo> allActivityList = loadAllApps();
logger.addSplit("loadAllApps");
+ // add start
+ if (FeatureFlags.REMOVE_DRAWER) {
+ verifyApplications();
+ }
+ // add end
+
verifyNotStopped();
mResults.bindAllApps();
logger.addSplit("bindAllApps");
@@ -285,6 +293,30 @@ public class LoaderTask implements Runnable {
TraceHelper.INSTANCE.endSection(traceToken);
}
+ // add start
+ private void verifyApplications() {
+ final Context context = mApp.getContext();
+ ArrayList<Pair<ItemInfo, Object>> installQueue = new ArrayList<>();
+ final List<UserHandle> profiles = mUserManager.getUserProfiles();
+ for (UserHandle user : profiles) {
+ final List<LauncherActivityInfo> apps = mLauncherApps.getActivityList(null, user);
+ ArrayList<InstallShortcutReceiver.PendingInstallShortcutInfo> added = new ArrayList<InstallShortcutReceiver.PendingInstallShortcutInfo>();
+ synchronized (this) {
+ for (LauncherActivityInfo app : apps) {
+ InstallShortcutReceiver.PendingInstallShortcutInfo pendingInstallShortcutInfo = new InstallShortcutReceiver.PendingInstallShortcutInfo(app, context);
+ added.add(pendingInstallShortcutInfo);
+ installQueue.add(pendingInstallShortcutInfo.getItemInfo());
+ Log.e("joyar","LoaderTask------pendingInstallShortcutInfo.getItemInfo()="+pendingInstallShortcutInfo.getItemInfo());
+ }
+ }
+ Log.e("joyar","LoaderTask------added="+added+",installQueue="+installQueue);
+ if (!added.isEmpty()) {
+ LauncherAppState.getInstance(context).getModel().addAndBindAddedWorkspaceItems(installQueue);
+ }
+ }
+ }
+ // add end
+
public synchronized void stopLocked() {
mStopped = true;
this.notify();
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/PackageUpdatedTask.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/PackageUpdatedTask.java
old mode 100644
new mode 100755
index 7cd467efd6a..fdf381a8cb0
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/PackageUpdatedTask.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/model/PackageUpdatedTask.java
@@ -57,6 +57,12 @@ import java.util.Collections;
import java.util.HashSet;
import java.util.List;
+// add start
+import android.util.Pair;
+import android.content.pm.LauncherActivityInfo;
+import java.util.List;
+import com.android.launcher3.model.data.AppInfo;
+// add end
/**
* Handles updates due to changes in package manager (app installed/updated/removed)
* or when a user availability changes.
@@ -85,6 +91,33 @@ public class PackageUpdatedTask extends BaseModelUpdateTask {
mPackages = packages;
}
+ // add start
+ public void updateToWorkSpace( Context context, LauncherAppState app , AllAppsList appsList){
+ if(FeatureFlags.REMOVE_DRAWER){
+ ArrayList<Pair<ItemInfo, Object>> installQueue = new ArrayList<>();
+ final List<UserHandle> profiles = UserCache.INSTANCE.get(context).getUserProfiles();
+ ArrayList<InstallShortcutReceiver.PendingInstallShortcutInfo> added = new ArrayList<InstallShortcutReceiver.PendingInstallShortcutInfo>();
+ for (UserHandle user : profiles) {
+ final List<LauncherActivityInfo> apps = context.getSystemService(LauncherApps.class).getActivityList(null, user);
+ synchronized (this) {
+ for (LauncherActivityInfo info : apps) {
+ for (AppInfo appInfo : appsList.added) {
+ if(info.getComponentName().equals(appInfo.componentName)){
+ InstallShortcutReceiver.PendingInstallShortcutInfo mPendingInstallShortcutInfo = new InstallShortcutReceiver.PendingInstallShortcutInfo(info,context);
+ added.add(mPendingInstallShortcutInfo);
+ installQueue.add(mPendingInstallShortcutInfo.getItemInfo());
+ }
+ }
+ }
+ }
+ }
+ if (!added.isEmpty()) {
+ LauncherAppState.getInstance(context).getModel().addAndBindAddedWorkspaceItems(installQueue);
+ }
+ }
+ }
+ // add end
+
@Override
public void execute(LauncherAppState app, BgDataModel dataModel, AllAppsList appsList) {
final Context context = app.getContext();
@@ -170,6 +203,14 @@ public class PackageUpdatedTask extends BaseModelUpdateTask {
bindApplicationsIfNeeded();
+ // add start
+ final ArrayList<AppInfo> addedOrModified = new ArrayList<>();
+ addedOrModified.addAll(appsList.added);
+ if(FeatureFlags.REMOVE_DRAWER){
+ updateToWorkSpace(context, app, appsList);
+ }
+ // add end
+
final IntSparseArrayMap<Boolean> removedShortcuts = new IntSparseArrayMap<>();
// Update shortcut infos
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/settings/SettingsActivity.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/settings/SettingsActivity.java
old mode 100644
new mode 100755
index d3213a18717..f2c6937064c
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/settings/SettingsActivity.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/settings/SettingsActivity.java
@@ -198,7 +198,10 @@ public class SettingsActivity extends FragmentActivity
}
// Initialize the UI once
preference.setDefaultValue(getAllowRotationDefaultValue());
- return true;
+ // add start
+ //return true;
+ return false;
+ // add end
case FLAGS_PREFERENCE_KEY:
// Only show flag toggler UI if this build variant implements that.
diff --git a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/touch/AllAppsSwipeController.java b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/touch/AllAppsSwipeController.java
old mode 100644
new mode 100755
index 4a202b65d86..cb37496afb6
--- a/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/touch/AllAppsSwipeController.java
+++ b/vendor/mediatek/proprietary/packages/apps/Launcher3/src/com/android/launcher3/touch/AllAppsSwipeController.java
@@ -26,6 +26,8 @@ import com.android.launcher3.LauncherState;
import com.android.launcher3.states.StateAnimationConfig.AnimationFlags;
import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType;
+import com.android.launcher3.config.FeatureFlags; // add start
+
/**
* TouchController to switch between NORMAL and ALL_APPS state.
*/
@@ -56,6 +58,11 @@ public class AllAppsSwipeController extends AbstractStateChangeTouchController {
if (mLauncher.isInState(ALL_APPS) && !mLauncher.getAppsView().shouldContainerScroll(ev)) {
return false;
}
+ // add start
+ if(FeatureFlags.REMOVE_DRAWER){
+ return false;
+ }
+ // add end
return true;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。