diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/power/PowerUI.java | 34 |
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); } |