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

Commit d2542fcd authored by Liana Kazanova (xWF)'s avatar Liana Kazanova (xWF) Committed by Android (Google) Code Review
Browse files

Merge "Revert "Use DesktopModeStatus#canEnterDesktopMode instead of just Flag check."" into main

parents 51983793 687817eb
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -19,6 +19,8 @@ package com.android.wm.shell.compatui;
import static android.view.WindowManager.LARGE_SCREEN_SMALLEST_SCREEN_WIDTH_DP;
import static android.window.TaskConstants.TASK_CHILD_LAYER_COMPAT_UI;

import static com.android.wm.shell.shared.desktopmode.DesktopModeFlags.DESKTOP_WINDOWING_MODE;

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.app.TaskInfo;
@@ -38,7 +40,6 @@ import com.android.wm.shell.compatui.CompatUIController.CompatUIHintsState;
import com.android.wm.shell.compatui.api.CompatUIEvent;
import com.android.wm.shell.compatui.impl.CompatUIEvents.SizeCompatRestartButtonAppeared;
import com.android.wm.shell.shared.desktopmode.DesktopModeFlags;
import com.android.wm.shell.shared.desktopmode.DesktopModeStatus;

import java.util.function.Consumer;

@@ -82,7 +83,7 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract {
        super(context, taskInfo, syncQueue, taskListener, displayLayout);
        mCallback = callback;
        mHasSizeCompat = taskInfo.appCompatTaskInfo.topActivityInSizeCompat;
        if (DesktopModeStatus.canEnterDesktopMode(context)
        if (DESKTOP_WINDOWING_MODE.isEnabled(mContext)
                && DesktopModeFlags.DYNAMIC_INITIAL_BOUNDS.isEnabled(context)) {
            // Don't show the SCM button for freeform tasks
            mHasSizeCompat &= !taskInfo.isFreeform();
@@ -138,7 +139,7 @@ class CompatUIWindowManager extends CompatUIWindowManagerAbstract {
            boolean canShow) {
        final boolean prevHasSizeCompat = mHasSizeCompat;
        mHasSizeCompat = taskInfo.appCompatTaskInfo.topActivityInSizeCompat;
        if (DesktopModeStatus.canEnterDesktopMode(mContext)
        if (DESKTOP_WINDOWING_MODE.isEnabled(mContext)
                && DesktopModeFlags.DYNAMIC_INITIAL_BOUNDS.isEnabled(mContext)) {
            // Don't show the SCM button for freeform tasks
            mHasSizeCompat &= !taskInfo.isFreeform();
+2 −2
Original line number Diff line number Diff line
@@ -26,7 +26,7 @@ import com.android.systemui.screenshot.data.repository.ProfileTypeRepository
import com.android.systemui.screenshot.policy.CapturePolicy.PolicyResult
import com.android.systemui.screenshot.policy.CapturePolicy.PolicyResult.NotMatched
import com.android.systemui.screenshot.policy.CaptureType.IsolatedTask
import com.android.wm.shell.shared.desktopmode.DesktopModeStatus
import com.android.wm.shell.shared.desktopmode.DesktopModeFlags
import javax.inject.Inject
import kotlinx.coroutines.flow.first

@@ -48,7 +48,7 @@ constructor(
            return NotMatched(policy = NAME, reason = SHADE_EXPANDED)
        }

        if (DesktopModeStatus.canEnterDesktopMode(context)) {
        if (DesktopModeFlags.DESKTOP_WINDOWING_MODE.isEnabled(context)) {
            content.rootTasks.firstOrNull()?.also {
                if (it.windowingMode == WINDOWING_MODE_FREEFORM) {
                    return NotMatched(policy = NAME, reason = DESKTOP_MODE_ENABLED)
+0 −11
Original line number Diff line number Diff line
@@ -18,13 +18,11 @@ package com.android.systemui.screenshot.policy

import android.content.ComponentName
import android.content.Context
import android.content.res.Resources
import android.os.UserHandle
import android.platform.test.annotations.DisableFlags
import android.platform.test.annotations.EnableFlags
import android.platform.test.flag.junit.SetFlagsRule
import androidx.test.ext.junit.runners.AndroidJUnit4
import com.android.internal.R
import com.android.systemui.kosmos.Kosmos
import com.android.systemui.screenshot.data.model.DisplayContentModel
import com.android.systemui.screenshot.data.model.DisplayContentScenarios.ActivityNames.FILES
@@ -49,7 +47,6 @@ import com.android.systemui.screenshot.policy.WorkProfilePolicy.Companion.DESKTO
import com.android.systemui.screenshot.policy.WorkProfilePolicy.Companion.SHADE_EXPANDED
import com.android.systemui.screenshot.policy.WorkProfilePolicy.Companion.WORK_TASK_IS_TOP
import com.android.systemui.screenshot.policy.WorkProfilePolicy.Companion.WORK_TASK_NOT_TOP
import com.android.systemui.util.mockito.whenever
import com.android.window.flags.Flags
import com.google.common.truth.Truth.assertThat
import kotlinx.coroutines.test.runTest
@@ -58,7 +55,6 @@ import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
import org.mockito.Mock
import org.mockito.MockitoAnnotations
import org.mockito.junit.MockitoJUnit
import org.mockito.junit.MockitoRule

@@ -70,19 +66,12 @@ class WorkProfilePolicyTest {
    @JvmField @Rule(order = 2) val mockitoRule: MockitoRule = MockitoJUnit.rule()

    @Mock lateinit var mContext: Context
    @Mock lateinit var mResources: Resources

    private val kosmos = Kosmos()
    private lateinit var policy: WorkProfilePolicy

    @Before
    fun setUp() {
        MockitoAnnotations.initMocks(this)

        // Set desktop mode supported
        whenever(mContext.resources).thenReturn(mResources)
        whenever(mResources.getBoolean(R.bool.config_isDesktopModeSupported)).thenReturn(true)

        policy = WorkProfilePolicy(kosmos.profileTypeRepository, mContext)
    }