summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/power/PowerUI.java34
1 files changed, 20 insertions, 14 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/power/PowerUI.java b/packages/SystemUI/src/com/android/systemui/power/PowerUI.java
index 7cc94a2bff54..a7cbb3d94557 100644
--- a/packages/SystemUI/src/com/android/systemui/power/PowerUI.java
+++ b/packages/SystemUI/src/com/android/systemui/power/PowerUI.java
@@ -243,23 +243,29 @@ public class PowerUI extends SystemUI {
}
private void updateTemperatureWarning() {
- // TODO: Add VR mode check
- float[] temps = mHardwarePropertiesManager.getDeviceTemperatures(
- HardwarePropertiesManager.DEVICE_TEMPERATURE_SKIN,
- HardwarePropertiesManager.TEMPERATURE_CURRENT);
- boolean shouldShowTempWarning = false;
- for (float temp : temps) {
- if (temp >= mThrottlingTemp) {
- shouldShowTempWarning = true;
- break;
- }
- }
- if (shouldShowTempWarning) {
- mWarnings.showTemperatureWarning();
- } else {
+ PhoneStatusBar phoneStatusBar = getComponent(PhoneStatusBar.class);
+ if (phoneStatusBar != null && phoneStatusBar.isDeviceInVrMode()) {
+ // ensure the warning isn't showing, since VR shows its own warning
mWarnings.dismissTemperatureWarning();
+ } else {
+ float[] temps = mHardwarePropertiesManager.getDeviceTemperatures(
+ HardwarePropertiesManager.DEVICE_TEMPERATURE_SKIN,
+ HardwarePropertiesManager.TEMPERATURE_CURRENT);
+ boolean shouldShowTempWarning = false;
+ for (float temp : temps) {
+ if (temp >= mThrottlingTemp) {
+ shouldShowTempWarning = true;
+ break;
+ }
+ }
+ if (shouldShowTempWarning) {
+ mWarnings.showTemperatureWarning();
+ } else {
+ mWarnings.dismissTemperatureWarning();
+ }
}
+ // TODO: skip this when in VR mode since we already get a callback
mHandler.postDelayed(this::updateTemperatureWarning, TEMPERATURE_INTERVAL);
}