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

Commit c6d44788 authored by Eghosa Ewansiha-Vlachavas's avatar Eghosa Ewansiha-Vlachavas Committed by Android (Google) Code Review
Browse files

Merge changes from topics "removeDesktopMode2", "replaceDesktopWindowingFlag" into main

* changes:
  [1/n] Remove use of `persist.wm.debug.desktop_mode_2`
  [1/n] Replace read-only desktop windowing flag with runtime flag
parents 5d839fd0 2676b932
Loading
Loading
Loading
Loading
+0 −8
Original line number Diff line number Diff line
@@ -7,14 +7,6 @@ flag {
    bug: "274835596"
}

flag {
    name: "enable_desktop_windowing"
    namespace: "multitasking"
    description: "Enables desktop windowing"
    bug: "304778354"
    is_fixed_read_only: true
}

flag {
    name: "enable_split_contextual"
    namespace: "multitasking"
+3 −17
Original line number Diff line number Diff line
@@ -18,21 +18,13 @@ package com.android.wm.shell.desktopmode;

import android.os.SystemProperties;

import com.android.wm.shell.Flags;
import com.android.window.flags.Flags;

/**
 * Constants for desktop mode feature
 */
public class DesktopModeStatus {

    private static final boolean ENABLE_DESKTOP_WINDOWING = Flags.enableDesktopWindowing();

    /**
     * Flag to indicate whether desktop mode proto is available on the device
     */
    private static final boolean IS_PROTO2_ENABLED = SystemProperties.getBoolean(
            "persist.wm.debug.desktop_mode_2", false);

    /**
     * Flag to indicate whether task resizing is veiled.
     */
@@ -75,16 +67,10 @@ public class DesktopModeStatus {
            "persist.wm.debug.desktop_use_rounded_corners", true);

    /**
     * Return {@code true} is desktop windowing proto 2 is enabled
     * Return {@code true} if desktop windowing is enabled
     */
    public static boolean isEnabled() {
        // Check for aconfig flag first
        if (ENABLE_DESKTOP_WINDOWING) {
            return true;
        }
        // Fall back to sysprop flag
        // TODO(b/304778354): remove sysprop once desktop aconfig flag supports dynamic overriding
        return IS_PROTO2_ENABLED;
        return Flags.enableDesktopWindowingMode();
    }

    /**
+0 −6
Original line number Diff line number Diff line
@@ -369,12 +369,6 @@ object Flags {
    @Keep
    val WM_BUBBLE_BAR = sysPropBooleanFlag("persist.wm.debug.bubble_bar", default = false)

    // TODO(b/260271148): Tracking bug
    @Keep
    @JvmField
    val WM_DESKTOP_WINDOWING_2 =
        sysPropBooleanFlag("persist.wm.debug.desktop_mode_2", default = false)

    // TODO(b/254513207): Tracking Bug to delete
    @Keep
    @JvmField
+10 −13
Original line number Diff line number Diff line
@@ -27,7 +27,7 @@ import android.os.SystemProperties;
import android.util.Slog;

import com.android.server.wm.LaunchParamsController.LaunchParamsModifier;
import com.android.wm.shell.Flags;
import com.android.window.flags.Flags;
/**
 * The class that defines default launch params for tasks in desktop mode
 */
@@ -37,8 +37,6 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
            TAG_WITH_CLASS_NAME ? "DesktopModeLaunchParamsModifier" : TAG_ATM;
    private static final boolean DEBUG = false;

    // Desktop mode feature flags.
    private static final boolean ENABLE_DESKTOP_WINDOWING = Flags.enableDesktopWindowing();
    private static final boolean DESKTOP_MODE_PROTO2_SUPPORTED =
            SystemProperties.getBoolean("persist.wm.debug.desktop_mode_2", false);
    public static final float DESKTOP_MODE_INITIAL_BOUNDS_SCALE =
@@ -67,6 +65,11 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
            LaunchParamsController.LaunchParams currentParams,
            LaunchParamsController.LaunchParams outParams) {

        if (!isDesktopModeEnabled()) {
            appendLog("desktop mode is not enabled, continuing");
            return RESULT_CONTINUE;
        }

        if (task == null) {
            appendLog("task null, skipping");
            return RESULT_SKIP;
@@ -87,7 +90,7 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
        // previous windowing mode to be restored even if the desktop mode state has changed.
        // Let task launches inherit the windowing mode from the source task if available, which
        // should have the desired windowing mode set by WM Shell. See b/286929122.
        if (isDesktopModeSupported() && source != null && source.getTask() != null) {
        if (isDesktopModeEnabled() && source != null && source.getTask() != null) {
            final Task sourceTask = source.getTask();
            outParams.mWindowingMode = sourceTask.getWindowingMode();
            appendLog("inherit-from-source=" + outParams.mWindowingMode);
@@ -140,14 +143,8 @@ public class DesktopModeLaunchParamsModifier implements LaunchParamsModifier {
        if (DEBUG) Slog.d(TAG, mLogBuilder.toString());
    }

    /** Whether desktop mode is supported. */
    static boolean isDesktopModeSupported() {
        // Check for aconfig flag first
        if (ENABLE_DESKTOP_WINDOWING) {
            return true;
        }
        // Fall back to sysprop flag
        // TODO(b/304778354): remove sysprop once desktop aconfig flag supports dynamic overriding
        return DESKTOP_MODE_PROTO2_SUPPORTED;
    /** Whether desktop mode is enabled. */
    static boolean isDesktopModeEnabled() {
        return Flags.enableDesktopWindowingMode();
    }
}
+1 −4
Original line number Diff line number Diff line
@@ -64,11 +64,8 @@ class LaunchParamsController {
    void registerDefaultModifiers(ActivityTaskSupervisor supervisor) {
        // {@link TaskLaunchParamsModifier} handles window layout preferences.
        registerModifier(new TaskLaunchParamsModifier(supervisor));
        if (DesktopModeLaunchParamsModifier.isDesktopModeSupported()) {
            // {@link DesktopModeLaunchParamsModifier} handles default task size changes
        registerModifier(new DesktopModeLaunchParamsModifier());
    }
    }

    /**
     * Returns the {@link LaunchParams} calculated by the registered modifiers
Loading