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

Commit 4d177beb authored by Archisha Baranwal's avatar Archisha Baranwal
Browse files

Modified Revert of "Adding ViewCaptureAwareWindowManager to AuthContainerView."

This reverts commit 15915273.

Reason for revert: Reverting change due to the restructure of ViewCaptureAwareWindowManager ( go/wm-for-viewcapture )

Flag: com.android.systemui.enable_view_capture_tracing

Change-Id: I1ac1105613b9640b79c95d66cff0b021b4472191
parent 7ee68ecf
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -41,7 +41,6 @@ import android.widget.ScrollView
import androidx.constraintlayout.widget.ConstraintLayout
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.filters.SmallTest
import com.android.app.viewcapture.ViewCapture
import com.android.internal.jank.InteractionJankMonitor
import com.android.internal.widget.LockPatternUtils
import com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PATTERN
@@ -116,7 +115,6 @@ open class AuthContainerViewTest : SysuiTestCase() {
    @Mock private lateinit var packageManager: PackageManager
    @Mock private lateinit var activityTaskManager: ActivityTaskManager
    @Mock private lateinit var accessibilityManager: AccessibilityManager
    @Mock private lateinit var lazyViewCapture: Lazy<ViewCapture>

    private lateinit var displayRepository: FakeDisplayRepository
    private lateinit var displayStateInteractor: DisplayStateInteractor
@@ -689,7 +687,6 @@ open class AuthContainerViewTest : SysuiTestCase() {
            { credentialViewModel },
            fakeExecutor,
            vibrator,
            lazyViewCapture,
            msdlPlayer,
        ) {
        override fun postOnAnimation(runnable: Runnable) {
+6 −7
Original line number Diff line number Diff line
@@ -83,7 +83,6 @@ import android.view.WindowManager;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.SmallTest;

import com.android.app.viewcapture.ViewCapture;
import com.android.internal.R;
import com.android.internal.jank.InteractionJankMonitor;
import com.android.internal.widget.LockPatternUtils;
@@ -100,11 +99,10 @@ import com.android.systemui.util.concurrency.Execution;
import com.android.systemui.util.concurrency.FakeExecution;
import com.android.systemui.util.concurrency.FakeExecutor;
import com.android.systemui.util.time.FakeSystemClock;
import com.android.systemui.utils.windowmanager.WindowManagerProvider;

import com.google.android.msdl.domain.MSDLPlayer;

import dagger.Lazy;

import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -175,8 +173,6 @@ public class AuthControllerTest extends SysuiTestCase {
    private PromptViewModel mPromptViewModel;
    @Mock
    private UdfpsUtils mUdfpsUtils;
    @Mock
    private Lazy<ViewCapture> mLazyViewCapture;

    @Captor
    private ArgumentCaptor<IFingerprintAuthenticatorsRegisteredCallback> mFpAuthenticatorsRegisteredCaptor;
@@ -198,6 +194,8 @@ public class AuthControllerTest extends SysuiTestCase {
    private KeyguardManager mKeyguardManager;
    @Mock
    private MSDLPlayer mMSDLPlayer;
    @Mock
    private WindowManagerProvider mWindowManagerProvider;

    private TestableContext mContextSpy;
    private Execution mExecution;
@@ -1198,7 +1196,8 @@ public class AuthControllerTest extends SysuiTestCase {
            when(mDisplayManager.getDisplay(displayId)).thenReturn(mockDisplay);
        }
        doReturn(mockDisplayContext).when(mContextSpy).createDisplayContext(mockDisplay);
        when(mockDisplayContext.getSystemService(WindowManager.class)).thenReturn(mockDisplayWM);
        when(mWindowManagerProvider.getWindowManager(mockDisplayContext))
                .thenReturn(mockDisplayWM);
        return mockDisplayWM;
    }

@@ -1214,7 +1213,7 @@ public class AuthControllerTest extends SysuiTestCase {
                    () -> mLogContextInteractor, () -> mPromptSelectionInteractor,
                    () -> mCredentialViewModel, () -> mPromptViewModel, mInteractionJankMonitor,
                    mHandler, mBackgroundExecutor, mUdfpsUtils, mVibratorHelper, mKeyguardManager,
                    mLazyViewCapture, mMSDLPlayer);
                    mMSDLPlayer, mWindowManagerProvider);
        }

        @Override
+3 −10
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@ import static android.hardware.biometrics.BiometricAuthenticator.TYPE_FACE;
import static android.view.WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS;

import static com.android.internal.jank.InteractionJankMonitor.CUJ_BIOMETRIC_PROMPT_TRANSITION;
import static com.android.systemui.Flags.enableViewCaptureTracing;

import android.animation.Animator;
import android.annotation.IntDef;
@@ -57,8 +56,6 @@ import android.window.OnBackInvokedDispatcher;
import androidx.constraintlayout.widget.ConstraintLayout;

import com.android.app.animation.Interpolators;
import com.android.app.viewcapture.ViewCapture;
import com.android.app.viewcapture.ViewCaptureAwareWindowManager;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.jank.InteractionJankMonitor;
import com.android.internal.widget.LockPatternUtils;
@@ -78,11 +75,10 @@ import com.android.systemui.keyguard.WakefulnessLifecycle;
import com.android.systemui.res.R;
import com.android.systemui.statusbar.VibratorHelper;
import com.android.systemui.util.concurrency.DelayableExecutor;
import com.android.systemui.utils.windowmanager.WindowManagerUtils;

import com.google.android.msdl.domain.MSDLPlayer;

import kotlin.Lazy;

import kotlinx.coroutines.CoroutineScope;

import java.io.PrintWriter;
@@ -132,7 +128,7 @@ public class AuthContainerView extends LinearLayout
    private final Config mConfig;
    private final int mEffectiveUserId;
    private final IBinder mWindowToken = new Binder();
    private final ViewCaptureAwareWindowManager mWindowManager;
    private final WindowManager mWindowManager;
    @Nullable private final AuthContextPlugins mAuthContextPlugins;
    private final Interpolator mLinearOutSlowIn;
    private final LockPatternUtils mLockPatternUtils;
@@ -298,16 +294,13 @@ public class AuthContainerView extends LinearLayout
            @NonNull Provider<CredentialViewModel> credentialViewModelProvider,
            @NonNull @Background DelayableExecutor bgExecutor,
            @NonNull VibratorHelper vibratorHelper,
            Lazy<ViewCapture> lazyViewCapture,
            @NonNull MSDLPlayer msdlPlayer) {
        super(config.mContext);

        mConfig = config;
        mLockPatternUtils = lockPatternUtils;
        mEffectiveUserId = userManager.getCredentialOwnerProfile(mConfig.mUserId);
        WindowManager wm = getContext().getSystemService(WindowManager.class);
        mWindowManager = new ViewCaptureAwareWindowManager(wm, lazyViewCapture,
                enableViewCaptureTracing());
        mWindowManager = WindowManagerUtils.getWindowManager(getContext());
        mAuthContextPlugins = authContextPlugins;
        mWakefulnessLifecycle = wakefulnessLifecycle;
        mApplicationCoroutineScope = applicationCoroutineScope;
+7 −9
Original line number Diff line number Diff line
@@ -22,7 +22,6 @@ import static android.hardware.fingerprint.FingerprintSensorProperties.TYPE_REAR
import static android.view.Display.INVALID_DISPLAY;

import static com.android.systemui.Flags.contAuthPlugin;
import static com.android.systemui.util.ConvenienceExtensionsKt.toKotlinLazy;

import android.annotation.NonNull;
import android.annotation.Nullable;
@@ -67,7 +66,6 @@ import android.view.DisplayInfo;
import android.view.MotionEvent;
import android.view.WindowManager;

import com.android.app.viewcapture.ViewCapture;
import com.android.internal.R;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.jank.InteractionJankMonitor;
@@ -93,6 +91,7 @@ import com.android.systemui.statusbar.VibratorHelper;
import com.android.systemui.statusbar.policy.ConfigurationController;
import com.android.systemui.util.concurrency.DelayableExecutor;
import com.android.systemui.util.concurrency.Execution;
import com.android.systemui.utils.windowmanager.WindowManagerProvider;

import com.google.android.msdl.domain.MSDLPlayer;

@@ -194,7 +193,7 @@ public class AuthController implements
    @NonNull private final VibratorHelper mVibratorHelper;
    @NonNull private final MSDLPlayer mMSDLPlayer;

    private final kotlin.Lazy<ViewCapture> mLazyViewCapture;
    private final WindowManagerProvider mWindowManagerProvider;

    @VisibleForTesting
    final TaskStackListener mTaskStackListener = new TaskStackListener() {
@@ -693,8 +692,8 @@ public class AuthController implements
            @NonNull UdfpsUtils udfpsUtils,
            @NonNull VibratorHelper vibratorHelper,
            @NonNull KeyguardManager keyguardManager,
            Lazy<ViewCapture> daggerLazyViewCapture,
            @NonNull MSDLPlayer msdlPlayer) {
            @NonNull MSDLPlayer msdlPlayer,
            WindowManagerProvider windowManagerProvider) {
        mContext = context;
        mExecution = execution;
        mUserManager = userManager;
@@ -755,7 +754,7 @@ public class AuthController implements
        context.registerReceiver(mBroadcastReceiver, filter, Context.RECEIVER_EXPORTED_UNAUDITED);
        mSensorPrivacyManager = context.getSystemService(SensorPrivacyManager.class);

        mLazyViewCapture = toKotlinLazy(daggerLazyViewCapture);
        mWindowManagerProvider = windowManagerProvider;
    }

    // TODO(b/229290039): UDFPS controller should manage its dimensions on its own. Remove this.
@@ -1278,7 +1277,7 @@ public class AuthController implements
            Log.e(TAG, "unable to get Display for user=" + userId);
            return null;
        }
        return mContext.createDisplayContext(display).getSystemService(WindowManager.class);
        return mWindowManagerProvider.getWindowManager(mContext.createDisplayContext(display));
    }

    private void onDialogDismissed(@BiometricPrompt.DismissedReason int reason) {
@@ -1337,8 +1336,7 @@ public class AuthController implements
        return new AuthContainerView(config, mApplicationCoroutineScope, mFpProps, mFaceProps,
                wakefulnessLifecycle, userManager, mContextPlugins, lockPatternUtils,
                mInteractionJankMonitor, mPromptSelectorInteractor, viewModel,
                mCredentialViewModelProvider, bgExecutor, mVibratorHelper,
                mLazyViewCapture, mMSDLPlayer);
                mCredentialViewModelProvider, bgExecutor, mVibratorHelper, mMSDLPlayer);
    }

    @Override