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

Commit b64b59d0 authored by Sreyas's avatar Sreyas
Browse files

Fix Task Icon menu behavior.

Tapping task icon will now show the scrim for rest of thumbnail and not snap to page that is already snapped to.
Pressing task icon from clear all will scroll to the page.
Link: https://drive.google.com/file/d/1I90rd6ELPZNIje2_VZ3CamWWeFN8ywhL/view?usp=sharing

Bug: 158004853
Change-Id: I9ac8229a603190ea09a74e1cfb70a6bb6e1e65b7
parent 236f40d9
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -607,6 +607,17 @@ public abstract class RecentsView<T extends BaseActivity> extends PagedView impl
        }
    }

    /**
     * Whether the Clear All button is hidden or fully visible. Used to determine if center
     * displayed page is a task or the Clear All button.
     *
     * @return True = Clear All button not fully visible, center page is a task. False = Clear All
     * button fully visible, center page is Clear All button.
     */
    public boolean isClearAllHidden() {
        return mClearAllButton.getAlpha() != 1f;
    }

    @Override
    protected void onPageBeginTransition() {
        super.onPageBeginTransition();
@@ -616,7 +627,7 @@ public abstract class RecentsView<T extends BaseActivity> extends PagedView impl
    @Override
    protected void onPageEndTransition() {
        super.onPageEndTransition();
        if (getScrollX() == getScrollForPage(getPageNearestToCenterOfScreen())) {
        if (isClearAllHidden()) {
            LayoutUtils.setViewEnabled(mActionsView, true);
        }
        if (getNextPage() > 0) {
+10 −7
Original line number Diff line number Diff line
@@ -425,7 +425,9 @@ public class TaskView extends FrameLayout implements PageCallbacks, Reusable {
    }

    private boolean showTaskMenu(int action) {
        if (!getRecentsView().isClearAllHidden()) {
            getRecentsView().snapToPage(getRecentsView().indexOfChild(this));
        } else {
            mMenuView = TaskMenuView.showForTask(this);
            mActivity.getStatsLogManager().log(LAUNCHER_TASK_ICON_TAP_OR_LONGPRESS, buildProto());
            UserEventDispatcher.newInstance(getContext()).logActionOnItem(action, Direction.NONE,
@@ -433,6 +435,7 @@ public class TaskView extends FrameLayout implements PageCallbacks, Reusable {
            if (mMenuView != null) {
                mMenuView.addOnAttachStateChangeListener(mTaskMenuStateListener);
            }
        }
        return mMenuView != null;
    }