Merge "Prevent the thread unsafe operation during the user switching" into tm-qpr-dev am: ed37dc9b05

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21447325

Change-Id: I8977c00cf28541a155644885281fcc7dc3477649
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Piotr Wilczyński
2023-02-16 10:44:30 +00:00
committed by Automerger Merge Worker

View File

@@ -132,6 +132,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
private static final int MSG_UPDATE_RBC = 11;
private static final int MSG_BRIGHTNESS_RAMP_DONE = 12;
private static final int MSG_STATSD_HBM_BRIGHTNESS = 13;
private static final int MSG_SWITCH_USER = 14;
private static final int PROXIMITY_UNKNOWN = -1;
private static final int PROXIMITY_NEGATIVE = 0;
@@ -703,6 +704,11 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
}
public void onSwitchUser(@UserIdInt int newUserId) {
Message msg = mHandler.obtainMessage(MSG_SWITCH_USER, newUserId);
mHandler.sendMessage(msg);
}
private void handleOnSwitchUser(@UserIdInt int newUserId) {
handleSettingsChange(true /* userSwitch */);
handleBrightnessModeChange();
if (mBrightnessTracker != null) {
@@ -3167,6 +3173,10 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call
case MSG_STATSD_HBM_BRIGHTNESS:
logHbmBrightnessStats(Float.intBitsToFloat(msg.arg1), msg.arg2);
break;
case MSG_SWITCH_USER:
handleOnSwitchUser(msg.arg1);
break;
}
}
}