Merge "Creates new FLAG_APP_INACCESSIBLE flag for DeviceState" into tm-dev

This commit is contained in:
TreeHugger Robot
2022-06-18 04:17:07 +00:00
committed by Android (Google) Code Review
2 changed files with 14 additions and 1 deletions

View File

@@ -18,6 +18,7 @@ package com.android.server.devicestate;
import static android.hardware.devicestate.DeviceStateManager.MAXIMUM_DEVICE_STATE;
import static android.hardware.devicestate.DeviceStateManager.MINIMUM_DEVICE_STATE;
import static android.view.Display.DEFAULT_DISPLAY;
import android.annotation.IntDef;
import android.annotation.IntRange;
@@ -48,9 +49,16 @@ public final class DeviceState {
*/
public static final int FLAG_CANCEL_OVERRIDE_REQUESTS = 1 << 0;
/**
* Flag that indicates this device state is inaccessible for applications to be placed in. This
* could be a device-state where the {@link DEFAULT_DISPLAY} is not enabled.
*/
public static final int FLAG_APP_INACCESSIBLE = 1 << 1;
/** @hide */
@IntDef(prefix = {"FLAG_"}, flag = true, value = {
FLAG_CANCEL_OVERRIDE_REQUESTS,
FLAG_APP_INACCESSIBLE
})
@Retention(RetentionPolicy.SOURCE)
public @interface DeviceStateFlags {}
@@ -97,7 +105,8 @@ public final class DeviceState {
@Override
public String toString() {
return "DeviceState{" + "identifier=" + mIdentifier + ", name='" + mName + '\'' + '}';
return "DeviceState{" + "identifier=" + mIdentifier + ", name='" + mName + '\''
+ ", app_accessible=" + !hasFlag(FLAG_APP_INACCESSIBLE) + "}";
}
@Override

View File

@@ -95,6 +95,7 @@ public final class DeviceStateProviderImpl implements DeviceStateProvider,
private static final String DATA_CONFIG_FILE_PATH = "system/devicestate/";
private static final String CONFIG_FILE_NAME = "device_state_configuration.xml";
private static final String FLAG_CANCEL_OVERRIDE_REQUESTS = "FLAG_CANCEL_OVERRIDE_REQUESTS";
private static final String FLAG_APP_INACCESSIBLE = "FLAG_APP_INACCESSIBLE";
/** Interface that allows reading the device state configuration. */
interface ReadableConfig {
@@ -145,6 +146,9 @@ public final class DeviceStateProviderImpl implements DeviceStateProvider,
case FLAG_CANCEL_OVERRIDE_REQUESTS:
flags |= DeviceState.FLAG_CANCEL_OVERRIDE_REQUESTS;
break;
case FLAG_APP_INACCESSIBLE:
flags |= DeviceState.FLAG_APP_INACCESSIBLE;
break;
default:
Slog.w(TAG, "Parsed unknown flag with name: "
+ configFlagString);