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

Commit d0c2359a authored by Fengjiang Li's avatar Fengjiang Li
Browse files

Check build version before using predicitve back API

Test: build and run app
Fix: 278798546
Change-Id: I4a7b226b1d710cc84ef40b59a33f50a84aca84bb
parent 52a7798b
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -74,6 +74,7 @@ import android.hardware.SensorManager;
import android.hardware.devicestate.DeviceStateManager;
import android.hardware.display.DisplayManager;
import android.media.permission.SafeCloseable;
import android.os.Build;
import android.os.Bundle;
import android.os.CancellationSignal;
import android.os.IBinder;
@@ -91,6 +92,7 @@ import android.window.SplashScreen;
import androidx.annotation.BinderThread;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;

import com.android.app.viewcapture.SettingsAwareViewCapture;
import com.android.launcher3.AbstractFloatingView;
@@ -764,6 +766,7 @@ public class QuickstepLauncher extends Launcher {
                        mActiveOnBackAnimationCallback.onBackStarted(backEvent);
                    }

                    @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
                    @Override
                    public void onBackInvoked() {
                        // Recreate mActiveOnBackAnimationCallback if necessary to avoid NPE
+2 −1
Original line number Diff line number Diff line
@@ -119,6 +119,7 @@ import android.window.OnBackAnimationCallback;
import androidx.annotation.CallSuper;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.annotation.StringRes;
import androidx.annotation.VisibleForTesting;

@@ -572,7 +573,7 @@ public class Launcher extends StatefulActivity<LauncherState>
     * Note that state handler will always be handling the back press event if the previous 3 don't.
     */
    @NonNull
    @TargetApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
    @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
    protected OnBackAnimationCallback getOnBackAnimationCallback() {
        // #1 auto cancel action mode handler
        if (isInAutoCancelActionMode()) {
+2 −2
Original line number Diff line number Diff line
@@ -28,7 +28,6 @@ import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.ObjectAnimator;
import android.animation.PropertyValuesHolder;
import android.annotation.TargetApi;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Outline;
@@ -46,6 +45,7 @@ import android.window.BackEvent;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.Px;
import androidx.annotation.RequiresApi;

import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.Utilities;
@@ -195,7 +195,7 @@ public abstract class AbstractSlideInView<T extends Context & ActivityContext>
    }

    @Override
    @TargetApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
    @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
    public void onBackProgressed(BackEvent backEvent) {
        final float progress = backEvent.getProgress();
        float deceleratedProgress =
+2 −2
Original line number Diff line number Diff line
@@ -25,7 +25,6 @@ import static com.android.launcher3.testing.shared.TestProtocol.NORMAL_STATE_ORD
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.PropertyValuesHolder;
import android.annotation.TargetApi;
import android.content.Context;
import android.content.pm.LauncherApps;
import android.content.res.Configuration;
@@ -52,6 +51,7 @@ import android.window.BackEvent;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.Px;
import androidx.annotation.RequiresApi;
import androidx.annotation.VisibleForTesting;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.RecyclerView;
@@ -286,7 +286,7 @@ public class WidgetsFullSheet extends BaseWidgetSheet
    }

    @Override
    @TargetApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
    @RequiresApi(Build.VERSION_CODES.UPSIDE_DOWN_CAKE)
    public void onBackProgressed(@NonNull BackEvent backEvent) {
        super.onBackProgressed(backEvent);
        mFastScroller.setVisibility(backEvent.getProgress() > 0 ? View.INVISIBLE : View.VISIBLE);