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

Commit 61f076a3 authored by Vadim Tryshev's avatar Vadim Tryshev
Browse files

Accumulating tab presses during animations

Also introducing these animations. Will need to talk to UX regarding
these animations' properties. So far, I'm keeping a growing list of
questions to UX.

Bug: 73090995
Test: Press, Alt-tab, tab with and without shift, press Alt-Tab on
already open Overview.

Change-Id: Ib7250349acc528d14d8702f60b0f205612205478
parent 35208bbf
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -93,7 +93,7 @@ public class OverviewCommandHelper extends InternalStateHandler {
    public void onOverviewShown() {
        if (isOverviewAlmostVisible()) {
            final RecentsView rv = getLauncher().getOverviewPanel();
            rv.selectNextTask();
            rv.snapToTaskAfterNext();
        } else {
            openRecents();
        }
@@ -101,7 +101,7 @@ public class OverviewCommandHelper extends InternalStateHandler {

    public void onOverviewHidden() {
        final RecentsView rv = getLauncher().getOverviewPanel();
        rv.launchCurrentTask();
        rv.launchNextTask();
    }

    private void startNonLauncherTask(int backStackCount) {
+6 −6
Original line number Diff line number Diff line
@@ -613,7 +613,7 @@ public abstract class RecentsView<T extends BaseActivity>
    public boolean dispatchKeyEvent(KeyEvent event) {
        if (event.getKeyCode() == KeyEvent.KEYCODE_TAB
                && event.getAction() == KeyEvent.ACTION_DOWN) {
            setCurrentPage((getCurrentPage()
            snapToPage((getNextPage()
                    + (event.isShiftPressed() ? getPageCount() - 1 : 1)) % getPageCount());
            loadVisibleTaskData();
            return true;
@@ -621,13 +621,13 @@ public abstract class RecentsView<T extends BaseActivity>
        return super.dispatchKeyEvent(event);
    }

    public void selectNextTask() {
        setCurrentPage((getCurrentPage() + 1) % getPageCount());
    public void snapToTaskAfterNext() {
        snapToPage((getNextPage() + 1) % getPageCount());
        loadVisibleTaskData();
    }

    public void launchCurrentTask() {
        final TaskView currentTask = (TaskView) getChildAt(getCurrentPage());
        currentTask.launchTask(true);
    public void launchNextTask() {
        final TaskView nextTask = (TaskView) getChildAt(getNextPage());
        nextTask.launchTask(true);
    }
}