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

Commit 9e81f874 authored by archisha's avatar archisha Committed by Archisha Baranwal
Browse files

Change ViewCaptureAwareWindowManager to extend WindowManagerImpl

directly.

Bug: 364461638
Flag: com.android.systemui.enable_view_capture_tracing
Test: tested locally

Change-Id: I2652bc5918db5b4de8aa39229ce93d7b6abfc287
parent 308d8b6c
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ package com.android.systemui.statusbar.data.repository

import android.view.Display
import android.view.WindowManager.LayoutParams.TYPE_NAVIGATION_BAR_PANEL
import com.android.app.viewcapture.ViewCaptureAwareWindowManager
import com.android.systemui.CoreStartable
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Background
@@ -48,7 +47,6 @@ constructor(
    private val windowControllerFactory: PrivacyDotWindowController.Factory,
    private val displayWindowPropertiesRepository: DisplayWindowPropertiesRepository,
    private val privacyDotViewControllerStore: PrivacyDotViewControllerStore,
    private val viewCaptureAwareWindowManagerFactory: ViewCaptureAwareWindowManager.Factory,
) :
    PrivacyDotWindowControllerStore,
    StatusBarPerDisplayStoreImpl<PrivacyDotWindowController>(
@@ -72,8 +70,7 @@ constructor(
        return windowControllerFactory.create(
            displayId = displayId,
            privacyDotViewController = privacyDotViewController,
            viewCaptureAwareWindowManager =
                viewCaptureAwareWindowManagerFactory.create(displayWindowProperties.windowManager),
            windowManager = displayWindowProperties.windowManager,
            inflater = displayWindowProperties.layoutInflater,
        )
    }
+5 −5
Original line number Diff line number Diff line
@@ -24,10 +24,10 @@ import android.view.DisplayCutout.BOUNDS_POSITION_RIGHT
import android.view.DisplayCutout.BOUNDS_POSITION_TOP
import android.view.LayoutInflater
import android.view.View
import android.view.WindowManager
import android.view.WindowManager.InvalidDisplayException
import android.view.WindowManager.LayoutParams.WRAP_CONTENT
import android.widget.FrameLayout
import com.android.app.viewcapture.ViewCaptureAwareWindowManager
import com.android.systemui.ScreenDecorations
import com.android.systemui.ScreenDecorationsThread
import com.android.systemui.decor.DecorProvider
@@ -54,7 +54,7 @@ class PrivacyDotWindowController
constructor(
    @Assisted private val displayId: Int,
    @Assisted private val privacyDotViewController: PrivacyDotViewController,
    @Assisted private val viewCaptureAwareWindowManager: ViewCaptureAwareWindowManager,
    @Assisted private val windowManager: WindowManager,
    @Assisted private val inflater: LayoutInflater,
    @ScreenDecorationsThread private val uiExecutor: Executor,
    private val dotFactory: PrivacyDotDecorProviderFactory,
@@ -106,7 +106,7 @@ constructor(
        try {
            // Wrapping this in a try/catch to avoid crashes when a display is instantly removed
            // after being added, and initialization hasn't finished yet.
            viewCaptureAwareWindowManager.addView(rootView, params)
            windowManager.addView(rootView, params)
        } catch (e: InvalidDisplayException) {
            Log.e(
                TAG,
@@ -118,7 +118,7 @@ constructor(
    }

    fun stop() {
        dotViews.forEach { viewCaptureAwareWindowManager.removeView(it) }
        dotViews.forEach { windowManager.removeView(it) }
    }

    @AssistedFactory
@@ -126,7 +126,7 @@ constructor(
        fun create(
            displayId: Int,
            privacyDotViewController: PrivacyDotViewController,
            viewCaptureAwareWindowManager: ViewCaptureAwareWindowManager,
            windowManager: WindowManager,
            inflater: LayoutInflater,
        ): PrivacyDotWindowController
    }
+2 −2
Original line number Diff line number Diff line
@@ -19,7 +19,7 @@ package com.android.systemui.statusbar.window
import android.content.Context
import android.view.View
import android.view.ViewGroup
import com.android.app.viewcapture.ViewCaptureAwareWindowManager
import android.view.WindowManager
import com.android.systemui.animation.ActivityTransitionAnimator
import com.android.systemui.fragments.FragmentHostManager
import com.android.systemui.statusbar.data.repository.StatusBarConfigurationController
@@ -84,7 +84,7 @@ interface StatusBarWindowController {
    fun interface Factory {
        fun create(
            context: Context,
            viewCaptureAwareWindowManager: ViewCaptureAwareWindowManager,
            windowManager: WindowManager,
            statusBarConfigurationController: StatusBarConfigurationController,
            contentInsetsProvider: StatusBarContentInsetsProvider,
        ): StatusBarWindowController
+4 −5
Original line number Diff line number Diff line
@@ -47,7 +47,6 @@ import android.view.WindowManager;

import androidx.annotation.NonNull;

import com.android.app.viewcapture.ViewCaptureAwareWindowManager;
import com.android.internal.policy.SystemBarUtils;
import com.android.systemui.animation.ActivityTransitionAnimator;
import com.android.systemui.animation.DelegateTransitionAnimatorController;
@@ -78,7 +77,7 @@ public class StatusBarWindowControllerImpl implements StatusBarWindowController
    private static final boolean DEBUG = false;

    private final Context mContext;
    private final ViewCaptureAwareWindowManager mWindowManager;
    private final WindowManager mWindowManager;
    private final StatusBarConfigurationController mStatusBarConfigurationController;
    private final IWindowManager mIWindowManager;
    private final StatusBarContentInsetsProvider mContentInsetsProvider;
@@ -100,7 +99,7 @@ public class StatusBarWindowControllerImpl implements StatusBarWindowController
    public StatusBarWindowControllerImpl(
            @Assisted Context context,
            @InternalWindowViewInflater StatusBarWindowViewInflater statusBarWindowViewInflater,
            @Assisted ViewCaptureAwareWindowManager viewCaptureAwareWindowManager,
            @Assisted WindowManager windowManager,
            @Assisted StatusBarConfigurationController statusBarConfigurationController,
            IWindowManager iWindowManager,
            @Assisted StatusBarContentInsetsProvider contentInsetsProvider,
@@ -108,7 +107,7 @@ public class StatusBarWindowControllerImpl implements StatusBarWindowController
            Optional<UnfoldTransitionProgressProvider> unfoldTransitionProgressProvider,
            @Main Executor mainExecutor) {
        mContext = context;
        mWindowManager = viewCaptureAwareWindowManager;
        mWindowManager = windowManager;
        mStatusBarConfigurationController = statusBarConfigurationController;
        mIWindowManager = iWindowManager;
        mContentInsetsProvider = contentInsetsProvider;
@@ -406,7 +405,7 @@ public class StatusBarWindowControllerImpl implements StatusBarWindowController
        @Override
        StatusBarWindowControllerImpl create(
                @NonNull Context context,
                @NonNull ViewCaptureAwareWindowManager viewCaptureAwareWindowManager,
                @NonNull WindowManager windowManager,
                @NonNull StatusBarConfigurationController statusBarConfigurationController,
                @NonNull StatusBarContentInsetsProvider contentInsetsProvider);
    }
+3 −7
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ package com.android.systemui.statusbar.window

import android.content.Context
import android.view.WindowManager
import com.android.app.viewcapture.ViewCaptureAwareWindowManager
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.display.data.repository.DisplayRepository
@@ -42,7 +41,6 @@ constructor(
    @Background backgroundApplicationScope: CoroutineScope,
    private val controllerFactory: StatusBarWindowController.Factory,
    private val displayWindowPropertiesRepository: DisplayWindowPropertiesRepository,
    private val viewCaptureAwareWindowManagerFactory: ViewCaptureAwareWindowManager.Factory,
    private val statusBarConfigurationControllerStore: StatusBarConfigurationControllerStore,
    private val statusBarContentInsetsProviderStore: StatusBarContentInsetsProviderStore,
    displayRepository: DisplayRepository,
@@ -67,11 +65,9 @@ constructor(
            statusBarConfigurationControllerStore.forDisplay(displayId) ?: return null
        val contentInsetsProvider =
            statusBarContentInsetsProviderStore.forDisplay(displayId) ?: return null
        val viewCaptureAwareWindowManager =
            viewCaptureAwareWindowManagerFactory.create(statusBarDisplayContext.windowManager)
        return controllerFactory.create(
            statusBarDisplayContext.context,
            viewCaptureAwareWindowManager,
            statusBarDisplayContext.windowManager,
            statusBarConfigurationController,
            contentInsetsProvider,
        )
@@ -89,7 +85,7 @@ class SingleDisplayStatusBarWindowControllerStore
@Inject
constructor(
    context: Context,
    viewCaptureAwareWindowManager: ViewCaptureAwareWindowManager,
    windowManager: WindowManager,
    factory: StatusBarWindowControllerImpl.Factory,
    statusBarConfigurationControllerStore: StatusBarConfigurationControllerStore,
    statusBarContentInsetsProviderStore: StatusBarContentInsetsProviderStore,
@@ -98,7 +94,7 @@ constructor(
    PerDisplayStore<StatusBarWindowController> by SingleDisplayStore(
        factory.create(
            context,
            viewCaptureAwareWindowManager,
            windowManager,
            statusBarConfigurationControllerStore.defaultDisplay,
            statusBarContentInsetsProviderStore.defaultDisplay,
        )
Loading