Create new device state auto rotate setting manager

As part of auto-rotate setting refactor, create a new manager to be used between sysui and settings.
This manager will replace the current DeviceStateRotationLockManager.
Next CL: Integrate this manager to be used when auto-rotate refactor flag is ON.
For more info:go/auto-rotate-refactor
Bug: 394303723
Flag: com.android.window.flags.enable_device_state_auto_rotate_setting_refactor
Test: atest DeviceStateAutoRotateSettingManagerImplTest

Change-Id: Id1e09174fa3fb094f3aaf635b622b4bb9610f7f2
This commit is contained in:
Shivangi Dubey
2025-02-20 08:29:24 -08:00
committed by dshivangi
parent 305a8e0ea7
commit e077c9632b
3 changed files with 11 additions and 9 deletions

View File

@@ -34,6 +34,7 @@ import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController; import com.android.settings.core.TogglePreferenceController;
import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.devicestate.DeviceStateAutoRotateSettingManager;
import com.android.settingslib.devicestate.DeviceStateRotationLockSettingsManager; import com.android.settingslib.devicestate.DeviceStateRotationLockSettingsManager;
import com.android.settingslib.search.SearchIndexableRaw; import com.android.settingslib.search.SearchIndexableRaw;
@@ -47,8 +48,8 @@ public class DeviceStateAutoRotateSettingController extends TogglePreferenceCont
private final DeviceStateRotationLockSettingsManager mAutoRotateSettingsManager; private final DeviceStateRotationLockSettingsManager mAutoRotateSettingsManager;
private final int mOrder; private final int mOrder;
private final DeviceStateRotationLockSettingsManager.DeviceStateRotationLockSettingsListener private final DeviceStateAutoRotateSettingManager.DeviceStateAutoRotateSettingListener
mDeviceStateRotationLockSettingsListener = () -> updateState(mPreference); mDeviceStateAutoRotateSettingListener = () -> updateState(mPreference);
private final int mDeviceState; private final int mDeviceState;
private final String mDeviceStateDescription; private final String mDeviceStateDescription;
private final MetricsFeatureProvider mMetricsFeatureProvider; private final MetricsFeatureProvider mMetricsFeatureProvider;
@@ -77,12 +78,12 @@ public class DeviceStateAutoRotateSettingController extends TogglePreferenceCont
@OnLifecycleEvent(ON_START) @OnLifecycleEvent(ON_START)
void onStart() { void onStart() {
mAutoRotateSettingsManager.registerListener(mDeviceStateRotationLockSettingsListener); mAutoRotateSettingsManager.registerListener(mDeviceStateAutoRotateSettingListener);
} }
@OnLifecycleEvent(ON_STOP) @OnLifecycleEvent(ON_STOP)
void onStop() { void onStop() {
mAutoRotateSettingsManager.unregisterListener(mDeviceStateRotationLockSettingsListener); mAutoRotateSettingsManager.unregisterListener(mDeviceStateAutoRotateSettingListener);
} }
@Override @Override

View File

@@ -26,7 +26,7 @@ import com.android.settings.R;
import com.android.settings.core.BasePreferenceController; import com.android.settings.core.BasePreferenceController;
import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.devicestate.DeviceStateRotationLockSettingsManager; import com.android.settingslib.devicestate.DeviceStateRotationLockSettingsManager;
import com.android.settingslib.devicestate.DeviceStateRotationLockSettingsManager.SettableDeviceState; import com.android.settingslib.devicestate.SettableDeviceState;
import com.android.settingslib.search.SearchIndexableRaw; import com.android.settingslib.search.SearchIndexableRaw;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;

View File

@@ -46,6 +46,7 @@ import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController; import com.android.settings.core.TogglePreferenceController;
import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.devicestate.DeviceStateAutoRotateSettingManager;
import com.android.settingslib.devicestate.DeviceStateRotationLockSettingsManager; import com.android.settingslib.devicestate.DeviceStateRotationLockSettingsManager;
/** /**
@@ -75,8 +76,8 @@ public class SmartAutoRotateController extends TogglePreferenceController implem
}; };
private final DeviceStateRotationLockSettingsManager mDeviceStateAutoRotateSettingsManager; private final DeviceStateRotationLockSettingsManager mDeviceStateAutoRotateSettingsManager;
private final DeviceStateRotationLockSettingsManager.DeviceStateRotationLockSettingsListener private final DeviceStateAutoRotateSettingManager.DeviceStateAutoRotateSettingListener
mDeviceStateRotationLockSettingsListener = () -> updateState(mPreference); mDeviceStateAutoRotateSettingListener = () -> updateState(mPreference);
private RotationPolicy.RotationPolicyListener mRotationPolicyListener; private RotationPolicy.RotationPolicyListener mRotationPolicyListener;
public SmartAutoRotateController(Context context, String preferenceKey) { public SmartAutoRotateController(Context context, String preferenceKey) {
@@ -140,7 +141,7 @@ public class SmartAutoRotateController extends TogglePreferenceController implem
} }
RotationPolicy.registerRotationPolicyListener(mContext, mRotationPolicyListener); RotationPolicy.registerRotationPolicyListener(mContext, mRotationPolicyListener);
mDeviceStateAutoRotateSettingsManager.registerListener( mDeviceStateAutoRotateSettingsManager.registerListener(
mDeviceStateRotationLockSettingsListener); mDeviceStateAutoRotateSettingListener);
mPrivacyManager.addSensorPrivacyListener(CAMERA, mPrivacyChangedListener); mPrivacyManager.addSensorPrivacyListener(CAMERA, mPrivacyChangedListener);
} }
@@ -152,7 +153,7 @@ public class SmartAutoRotateController extends TogglePreferenceController implem
mRotationPolicyListener = null; mRotationPolicyListener = null;
} }
mDeviceStateAutoRotateSettingsManager.unregisterListener( mDeviceStateAutoRotateSettingsManager.unregisterListener(
mDeviceStateRotationLockSettingsListener); mDeviceStateAutoRotateSettingListener);
mPrivacyManager.removeSensorPrivacyListener(CAMERA, mPrivacyChangedListener); mPrivacyManager.removeSensorPrivacyListener(CAMERA, mPrivacyChangedListener);
} }