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

Commit fcf9d086 authored by Mina Granic's avatar Mina Granic Committed by Android (Google) Code Review
Browse files

Merge changes from topic "cc-devopt" into main

* changes:
  Enable ENABLE_CAMERA_COMPAT_SIMULATE_REQUESTED_ORIENTATION in devoptions.
  Add enableCameraCompatForDesktopWindowing to devoptions.
parents 7a1805ad 1fdf373d
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -79,6 +79,7 @@ import android.util.Log;
import android.util.Pair;
import android.util.Size;
import android.view.Display;
import android.window.DesktopModeFlags;

import com.android.internal.camera.flags.Flags;
import com.android.internal.util.ArrayUtils;
@@ -1685,7 +1686,7 @@ public final class CameraManager {
     */
    public static int getRotationOverride(@Nullable Context context,
            @Nullable PackageManager packageManager, @Nullable String packageName) {
        if (com.android.window.flags.Flags.enableCameraCompatForDesktopWindowing()) {
        if (DesktopModeFlags.ENABLE_CAMERA_COMPAT_SIMULATE_REQUESTED_ORIENTATION.isTrue()) {
            return getRotationOverrideInternal(context, packageManager, packageName);
        } else {
            return shouldOverrideToPortrait(packageManager, packageName)
+5 −5
Original line number Diff line number Diff line
@@ -26,8 +26,7 @@ import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.util.Log;

import com.android.window.flags.Flags;
import android.window.DesktopModeFlags;

/**
 * Helper class for receiving notifications from the SensorManager when
@@ -77,7 +76,8 @@ public abstract class OrientationEventListener {
        mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
        if (mSensor != null) {
            // Create listener only if sensors do exist.
            mSensorEventListener = Flags.enableCameraCompatForDesktopWindowing()
            mSensorEventListener =
                    DesktopModeFlags.ENABLE_CAMERA_COMPAT_SIMULATE_REQUESTED_ORIENTATION.isTrue()
                            ? new CompatSensorEventListenerImpl(new SensorEventListenerImpl())
                            : new SensorEventListenerImpl();
        }
+2 −0
Original line number Diff line number Diff line
@@ -48,6 +48,8 @@ public enum DesktopModeFlags {
    DISABLE_NON_RESIZABLE_APP_SNAP_RESIZE(Flags::disableNonResizableAppSnapResizing, true),
    ENABLE_ACCESSIBLE_CUSTOM_HEADERS(Flags::enableAccessibleCustomHeaders, true),
    ENABLE_APP_HEADER_WITH_TASK_DENSITY(Flags::enableAppHeaderWithTaskDensity, true),
    ENABLE_CAMERA_COMPAT_SIMULATE_REQUESTED_ORIENTATION(
            Flags::enableCameraCompatForDesktopWindowing, true),
    ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION(Flags::enableCaptionCompatInsetForceConsumption,
            true),
    ENABLE_CAPTION_COMPAT_INSET_FORCE_CONSUMPTION_ALWAYS(
+2 −1
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ import static com.android.server.wm.AppCompatUtils.isChangeEnabled;

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.window.DesktopModeFlags;

import com.android.server.wm.utils.OptPropFactory;
import com.android.window.flags.Flags;
@@ -177,7 +178,7 @@ class AppCompatCameraOverrides {
     * </ul>
     */
    boolean shouldApplyFreeformTreatmentForCameraCompat() {
        return Flags.enableCameraCompatForDesktopWindowing()
        return DesktopModeFlags.ENABLE_CAMERA_COMPAT_SIMULATE_REQUESTED_ORIENTATION.isTrue()
                && (shouldEnableCameraCompatFreeformTreatmentForApp()
                || shouldEnableCameraCompatFreeformTreatmentForAllApps());
    }
+2 −2
Original line number Diff line number Diff line
@@ -26,9 +26,9 @@ import android.app.CameraCompatTaskInfo;
import android.content.pm.ActivityInfo.ScreenOrientation;
import android.content.res.Configuration;
import android.widget.Toast;
import android.window.DesktopModeFlags;

import com.android.internal.annotations.VisibleForTesting;
import com.android.window.flags.Flags;

/**
 * Encapsulate policy logic related to app compat display rotation.
@@ -53,7 +53,7 @@ class AppCompatCameraPolicy {
        final boolean needsDisplayRotationCompatPolicy =
                wmService.mAppCompatConfiguration.isCameraCompatTreatmentEnabledAtBuildTime();
        final boolean needsCameraCompatFreeformPolicy =
                Flags.enableCameraCompatForDesktopWindowing()
                DesktopModeFlags.ENABLE_CAMERA_COMPAT_SIMULATE_REQUESTED_ORIENTATION.isTrue()
                        && DesktopModeHelper.canEnterDesktopMode(wmService.mContext);
        if (needsDisplayRotationCompatPolicy || needsCameraCompatFreeformPolicy) {
            mCameraStateMonitor = new CameraStateMonitor(displayContent, wmService.mH);