Listen to ACTION_SCREEN_ON/OFF if DisplayManager is not available.

Test: Performing tilt/untilt gestures on Pixel watch and verify
      SetParameters is called when screen is on/off.
Bug: 292477293
Change-Id: I9b1fd806a030ea5b5208256ea7eef32b5f12acad
Signed-off-by: Ziyang Cheng <ziyangch@google.com>
This commit is contained in:
Ziyang Cheng
2023-07-25 00:16:54 +00:00
parent 7382dcb32c
commit 0563f2971b

View File

@@ -1386,6 +1386,10 @@ public class AudioService extends IAudioService.Stub
new IntentFilter(BluetoothHeadset.ACTION_AUDIO_STATE_CHANGED);
intentFilter.addAction(BluetoothHeadset.ACTION_ACTIVE_DEVICE_CHANGED);
intentFilter.addAction(Intent.ACTION_DOCK_EVENT);
if (mDisplayManager == null) {
intentFilter.addAction(Intent.ACTION_SCREEN_ON);
intentFilter.addAction(Intent.ACTION_SCREEN_OFF);
}
intentFilter.addAction(Intent.ACTION_USER_SWITCHED);
intentFilter.addAction(Intent.ACTION_USER_BACKGROUND);
intentFilter.addAction(Intent.ACTION_USER_FOREGROUND);
@@ -1416,7 +1420,9 @@ public class AudioService extends IAudioService.Stub
subscriptionManager.addOnSubscriptionsChangedListener(mSubscriptionChangedListener);
}
mDisplayManager.registerDisplayListener(mDisplayListener, mAudioHandler);
if (mDisplayManager != null) {
mDisplayManager.registerDisplayListener(mDisplayListener, mAudioHandler);
}
}
public void systemReady() {
@@ -9587,6 +9593,17 @@ public class AudioService extends IAudioService.Stub
} else if (action.equals(BluetoothHeadset.ACTION_ACTIVE_DEVICE_CHANGED)
|| action.equals(BluetoothHeadset.ACTION_AUDIO_STATE_CHANGED)) {
mDeviceBroker.receiveBtEvent(intent);
} else if (action.equals(Intent.ACTION_SCREEN_ON)) {
if (mMonitorRotation) {
RotationHelper.enable();
}
AudioSystem.setParameters("screen_state=on");
} else if (action.equals(Intent.ACTION_SCREEN_OFF)) {
if (mMonitorRotation) {
//reduce wakeups (save current) by only listening when display is on
RotationHelper.disable();
}
AudioSystem.setParameters("screen_state=off");
} else if (action.equals(Intent.ACTION_CONFIGURATION_CHANGED)) {
sendMsg(mAudioHandler,
MSG_CONFIGURATION_CHANGED,