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

Commit 6547721d authored by Jonathan Scott's avatar Jonathan Scott Committed by Android (Google) Code Review
Browse files

Merge "Revert "Open taskMenu based on TaskIdAttributeContainer"" into sc-v2-dev

parents 988a8752 ec79eb9c
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -76,7 +76,7 @@ public class GroupedTaskView extends TaskView {
        mSecondaryTask = secondary;
        mTaskIdContainer[1] = secondary.key.id;
        mTaskIdAttributeContainer[1] = new TaskIdAttributeContainer(secondary, mSnapshotView2,
                mIconView2, STAGE_POSITION_BOTTOM_OR_RIGHT);
                STAGE_POSITION_BOTTOM_OR_RIGHT);
        mTaskIdAttributeContainer[0].setStagePosition(STAGE_POSITION_TOP_OR_LEFT);
        mSnapshotView2.bind(secondary);
        mSplitBoundsConfig = splitBoundsConfig;
@@ -117,6 +117,14 @@ public class GroupedTaskView extends TaskView {
        }
    }

    protected boolean showTaskMenuWithContainer(IconView iconView) {
        if (mActivity.getDeviceProfile().overviewShowAsGrid) {
            return TaskMenuViewWithArrow.Companion.showForTask(mTaskIdAttributeContainer[0]);
        } else {
            return TaskMenuView.showForTask(mTaskIdAttributeContainer[0]);
        }
    }

    public void updateSplitBoundsConfig(StagedSplitBounds stagedSplitBounds) {
        mSplitBoundsConfig = stagedSplitBounds;
        invalidate();
+4 −3
Original line number Diff line number Diff line
@@ -80,6 +80,7 @@ class TaskMenuViewWithArrow<T : BaseDraggingActivity> : ArrowPopup<T> {

    private val menuWidth = context.resources.getDimensionPixelSize(R.dimen.task_menu_width_grid)

    private lateinit var taskView: TaskView
    private lateinit var optionLayout: LinearLayout
    private lateinit var taskContainer: TaskIdAttributeContainer

@@ -93,7 +94,7 @@ class TaskMenuViewWithArrow<T : BaseDraggingActivity> : ArrowPopup<T> {
    override fun isOfType(type: Int): Boolean = type and TYPE_TASK_MENU != 0

    override fun getTargetObjectLocation(outPos: Rect?) {
        popupContainer.getDescendantRectRelativeToSelf(taskContainer.iconView, outPos)
        popupContainer.getDescendantRectRelativeToSelf(taskView.iconView, outPos)
    }

    override fun onControllerInterceptTouchEvent(ev: MotionEvent?): Boolean {
@@ -116,6 +117,7 @@ class TaskMenuViewWithArrow<T : BaseDraggingActivity> : ArrowPopup<T> {
            return false
        }

        taskView = taskContainer.taskView
        this.taskContainer = taskContainer
        if (!populateMenu()) return false
        show()
@@ -135,8 +137,7 @@ class TaskMenuViewWithArrow<T : BaseDraggingActivity> : ArrowPopup<T> {
    private fun addMenuOptions() {
        // Add the options
        TaskOverlayFactory
            .getEnabledShortcuts(taskContainer.taskView, mActivityContext.deviceProfile,
                    taskContainer)
            .getEnabledShortcuts(taskView, mActivityContext.deviceProfile, taskContainer)
            .forEach { this.addMenuOption(it) }

        // Add the spaces between items
+4 −12
Original line number Diff line number Diff line
@@ -539,7 +539,7 @@ public class TaskView extends FrameLayout implements Reusable {
        mTask = task;
        mTaskIdContainer[0] = mTask.key.id;
        mTaskIdAttributeContainer[0] = new TaskIdAttributeContainer(task, mSnapshotView,
                mIconView, STAGE_POSITION_UNDEFINED);
                STAGE_POSITION_UNDEFINED);
        mSnapshotView.bind(task);
        setOrientationState(orientedState);
    }
@@ -837,12 +837,10 @@ public class TaskView extends FrameLayout implements Reusable {
    }

    protected boolean showTaskMenuWithContainer(IconView iconView) {
        TaskIdAttributeContainer menuContainer =
                mTaskIdAttributeContainer[iconView == mIconView ? 0 : 1];
        if (mActivity.getDeviceProfile().overviewShowAsGrid) {
            return TaskMenuViewWithArrow.Companion.showForTask(menuContainer);
            return TaskMenuViewWithArrow.Companion.showForTask(mTaskIdAttributeContainer[0]);
        } else {
            return TaskMenuView.showForTask(menuContainer);
            return TaskMenuView.showForTask(mTaskIdAttributeContainer[0]);
        }
    }

@@ -1564,15 +1562,13 @@ public class TaskView extends FrameLayout implements Reusable {
    public class TaskIdAttributeContainer {
        private final TaskThumbnailView mThumbnailView;
        private final Task mTask;
        private final IconView mIconView;
        /** Defaults to STAGE_POSITION_UNDEFINED if in not a split screen task view */
        private @SplitConfigurationOptions.StagePosition int mStagePosition;

        public TaskIdAttributeContainer(Task task, TaskThumbnailView thumbnailView,
                IconView iconView, int stagePosition) {
                int stagePosition) {
            this.mTask = task;
            this.mThumbnailView = thumbnailView;
            this.mIconView = iconView;
            this.mStagePosition = stagePosition;
        }

@@ -1592,10 +1588,6 @@ public class TaskView extends FrameLayout implements Reusable {
            return TaskView.this;
        }

        public IconView getIconView() {
            return mIconView;
        }

        public int getStagePosition() {
            return mStagePosition;
        }