Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aaf30945 authored by David Saff's avatar David Saff Committed by Android (Google) Code Review
Browse files

Merge "Revert "Provide AllApps item OnLongClickListener through ActivityContext."" into udc-qpr-dev

parents 0b5cc64e 853a5b9e
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ import com.android.launcher3.keyboard.FocusIndicatorHelper.SimpleFocusIndicatorH
import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.model.data.ItemInfoWithIcon;
import com.android.launcher3.model.data.WorkspaceItemInfo;
import com.android.launcher3.touch.ItemLongClickListener;
import com.android.launcher3.views.ActivityContext;

import java.util.ArrayList;
@@ -65,6 +66,7 @@ public class PredictionRowView<T extends Context & ActivityContext>
    private FloatingHeaderView mParent;

    private boolean mPredictionsEnabled = false;
    private OnLongClickListener mOnIconLongClickListener = ItemLongClickListener.INSTANCE_ALL_APPS;

    public PredictionRowView(@NonNull Context context) {
        this(context, null);
@@ -174,6 +176,15 @@ public class PredictionRowView<T extends Context & ActivityContext>
        applyPredictionApps();
    }

    /**
     * Sets the long click listener for predictions for any future predictions.
     *
     * Existing predictions in the container are not updated with this new callback.
     */
    public void setOnIconLongClickListener(OnLongClickListener onIconLongClickListener) {
        mOnIconLongClickListener = onIconLongClickListener;
    }

    @Override
    public void onDeviceProfileChanged(DeviceProfile dp) {
        mNumPredictedAppsPerRow = dp.numShownAllAppsColumns;
@@ -191,7 +202,7 @@ public class PredictionRowView<T extends Context & ActivityContext>
                BubbleTextView icon = (BubbleTextView) inflater.inflate(
                        R.layout.all_apps_icon, this, false);
                icon.setOnClickListener(mActivityContext.getItemOnClickListener());
                icon.setOnLongClickListener(mActivityContext.getAllAppsItemLongClickListener());
                icon.setOnLongClickListener(mOnIconLongClickListener);
                icon.setLongPressTimeoutFactor(1f);
                icon.setOnFocusChangeListener(mFocusHelper);

+10 −0
Original line number Diff line number Diff line
@@ -18,7 +18,9 @@ package com.android.launcher3.secondarydisplay;
import static com.android.launcher3.util.OnboardingPrefs.ALL_APPS_VISITED_COUNT;

import android.content.Context;
import android.view.View;

import com.android.launcher3.allapps.ActivityAllAppsContainerView;
import com.android.launcher3.appprediction.AppsDividerView;
import com.android.launcher3.appprediction.PredictionRowView;
import com.android.launcher3.model.BgDataModel;
@@ -54,4 +56,12 @@ public final class SecondaryDisplayPredictionsImpl extends SecondaryDisplayPredi
                .findFixedRowByType(PredictionRowView.class)
                .setPredictedApps(item.items);
    }

    @Override
    public void setLongClickListener(ActivityAllAppsContainerView<?> appsView,
            View.OnLongClickListener onIconLongClickListener) {
        appsView.getFloatingHeaderView()
                .findFixedRowByType(PredictionRowView.class)
                .setOnIconLongClickListener(onIconLongClickListener);
    }
}
+11 −0
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import static com.android.launcher3.util.OnboardingPrefs.ALL_APPS_VISITED_COUNT;

import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.appprediction.AppsDividerView;
import com.android.launcher3.appprediction.PredictionRowView;
import com.android.launcher3.taskbar.NavbarButtonsViewController;
import com.android.launcher3.taskbar.TaskbarControllers;
import com.android.launcher3.taskbar.TaskbarStashController;
@@ -53,6 +54,7 @@ final class TaskbarAllAppsViewController {
        mOverlayController = taskbarControllers.taskbarOverlayController;

        mSlideInView.init(new TaskbarAllAppsCallbacks());
        setUpIconLongClick();
        setUpAppDivider();
        setUpTaskbarStashing();
    }
@@ -67,6 +69,15 @@ final class TaskbarAllAppsViewController {
        mSlideInView.close(animate);
    }

    private void setUpIconLongClick() {
        mAppsView.setOnIconLongClickListener(
                mContext.getDragController()::startDragOnLongClick);
        mAppsView.getFloatingHeaderView()
                .findFixedRowByType(PredictionRowView.class)
                .setOnIconLongClickListener(
                        mContext.getDragController()::startDragOnLongClick);
    }

    private void setUpAppDivider() {
        mAppsView.getFloatingHeaderView()
                .findFixedRowByType(AppsDividerView.class)
+0 −5
Original line number Diff line number Diff line
@@ -125,11 +125,6 @@ public class TaskbarOverlayContext extends BaseTaskbarContext {
        return mTaskbarContext.getItemOnClickListener();
    }

    @Override
    public View.OnLongClickListener getAllAppsItemLongClickListener() {
        return mDragController::startDragOnLongClick;
    }

    @Override
    public PopupDataProvider getPopupDataProvider() {
        return mTaskbarContext.getPopupDataProvider();
+0 −6
Original line number Diff line number Diff line
@@ -194,7 +194,6 @@ import com.android.launcher3.states.RotationHelper;
import com.android.launcher3.testing.TestLogging;
import com.android.launcher3.testing.shared.TestProtocol;
import com.android.launcher3.touch.AllAppsSwipeController;
import com.android.launcher3.touch.ItemLongClickListener;
import com.android.launcher3.uioverrides.plugins.PluginManagerWrapper;
import com.android.launcher3.util.ActivityResultInfo;
import com.android.launcher3.util.ActivityTracker;
@@ -3373,9 +3372,4 @@ public class Launcher extends StatefulActivity<LauncherState>
    public boolean areFreeformTasksVisible() {
        return false; // Base launcher does not track freeform tasks
    }

    @Override
    public View.OnLongClickListener getAllAppsItemLongClickListener() {
        return ItemLongClickListener.INSTANCE_ALL_APPS;
    }
}
Loading