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

Commit 18446d01 authored by Yein Jo's avatar Yein Jo
Browse files

Move OnBackInvoked to BaseActivity.

In order to have all the activities in Launcher get
the same OnBackInvoked behavior, the logic is moved to BaseActivity.

Test: Manual, Tapl
Bug: 238475344
Change-Id: I3f49091397e31fe1f183596f7fba3bf514697468
parent 59caeb94
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -25,12 +25,16 @@ import android.content.Context;
import android.content.ContextWrapper;
import android.content.Intent;
import android.content.res.Configuration;
import android.os.Bundle;
import android.window.OnBackInvokedDispatcher;

import androidx.annotation.IntDef;

import com.android.launcher3.DeviceProfile.DeviceProfileListenable;
import com.android.launcher3.DeviceProfile.OnDeviceProfileChangeListener;
import com.android.launcher3.logging.StatsLogManager;
import com.android.launcher3.testing.TestLogging;
import com.android.launcher3.testing.shared.TestProtocol;
import com.android.launcher3.util.SystemUiController;
import com.android.launcher3.util.ViewCache;
import com.android.launcher3.views.AppLauncher;
@@ -171,6 +175,19 @@ public abstract class BaseActivity extends Activity implements AppLauncher,
        super.onActivityResult(requestCode, resultCode, data);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (Utilities.ATLEAST_T) {
            getOnBackInvokedDispatcher().registerOnBackInvokedCallback(
                    OnBackInvokedDispatcher.PRIORITY_DEFAULT,
                    () -> {
                        onBackPressed();
                        TestLogging.recordEvent(TestProtocol.SEQUENCE_MAIN, "onBackInvoked");
                    });
        }
    }

    @Override
    protected void onStart() {
        addActivityFlags(ACTIVITY_STATE_STARTED);
+0 −14
Original line number Diff line number Diff line
@@ -114,7 +114,6 @@ import android.view.accessibility.AccessibilityEvent;
import android.view.animation.OvershootInterpolator;
import android.widget.ImageView;
import android.widget.Toast;
import android.window.OnBackInvokedDispatcher;

import androidx.annotation.CallSuper;
import androidx.annotation.NonNull;
@@ -544,8 +543,6 @@ public class Launcher extends StatefulActivity<LauncherState>
            getWindow().setSoftInputMode(LayoutParams.SOFT_INPUT_ADJUST_NOTHING);
        }
        setTitle(R.string.home_screen);

        registerOnBackInvokedCallback();
    }

    protected LauncherOverlayManager getDefaultOverlay() {
@@ -2065,17 +2062,6 @@ public class Launcher extends StatefulActivity<LauncherState>
        mStateManager.getState().onBackPressed(this);
    }

    private void registerOnBackInvokedCallback() {
        if (Utilities.ATLEAST_T) {
            getOnBackInvokedDispatcher().registerOnBackInvokedCallback(
                    OnBackInvokedDispatcher.PRIORITY_DEFAULT,
                    () -> {
                        onBackPressed();
                        TestLogging.recordEvent(TestProtocol.SEQUENCE_MAIN, "onBackInvoked");
                    });
        }
    }

    protected void onScreenOff() {
        // Reset AllApps to its initial state only if we are not in the middle of
        // processing a multi-step drop