Loading core/java/android/view/DisplayInfo.java +16 −1 Original line number Diff line number Diff line Loading @@ -360,6 +360,14 @@ public final class DisplayInfo implements Parcelable { public SparseArray<SurfaceControl.RefreshRateRange> thermalRefreshRateThrottling = new SparseArray<>(); /** * The ID of the brightness throttling data that should be used. This can change e.g. in * concurrent displays mode in which a stricter brightness throttling policy might need to be * used. */ @Nullable public String thermalBrightnessThrottlingDataId; public static final @android.annotation.NonNull Creator<DisplayInfo> CREATOR = new Creator<DisplayInfo>() { @Override public DisplayInfo createFromParcel(Parcel source) { Loading Loading @@ -437,7 +445,9 @@ public final class DisplayInfo implements Parcelable { && Objects.equals(displayShape, other.displayShape) && Objects.equals(layoutLimitedRefreshRate, other.layoutLimitedRefreshRate) && BrightnessSynchronizer.floatEquals(hdrSdrRatio, other.hdrSdrRatio) && thermalRefreshRateThrottling.contentEquals(other.thermalRefreshRateThrottling); && thermalRefreshRateThrottling.contentEquals(other.thermalRefreshRateThrottling) && Objects.equals( thermalBrightnessThrottlingDataId, other.thermalBrightnessThrottlingDataId); } @Override Loading Loading @@ -495,6 +505,7 @@ public final class DisplayInfo implements Parcelable { layoutLimitedRefreshRate = other.layoutLimitedRefreshRate; hdrSdrRatio = other.hdrSdrRatio; thermalRefreshRateThrottling = other.thermalRefreshRateThrottling; thermalBrightnessThrottlingDataId = other.thermalBrightnessThrottlingDataId; } public void readFromParcel(Parcel source) { Loading Loading @@ -559,6 +570,7 @@ public final class DisplayInfo implements Parcelable { hdrSdrRatio = source.readFloat(); thermalRefreshRateThrottling = source.readSparseArray(null, SurfaceControl.RefreshRateRange.class); thermalBrightnessThrottlingDataId = source.readString8(); } @Override Loading Loading @@ -620,6 +632,7 @@ public final class DisplayInfo implements Parcelable { dest.writeTypedObject(layoutLimitedRefreshRate, flags); dest.writeFloat(hdrSdrRatio); dest.writeSparseArray(thermalRefreshRateThrottling); dest.writeString8(thermalBrightnessThrottlingDataId); } @Override Loading Loading @@ -889,6 +902,8 @@ public final class DisplayInfo implements Parcelable { } sb.append(", thermalRefreshRateThrottling "); sb.append(thermalRefreshRateThrottling); sb.append(", thermalBrightnessThrottlingDataId "); sb.append(thermalBrightnessThrottlingDataId); sb.append("}"); return sb.toString(); } Loading services/core/java/com/android/server/display/DisplayPowerController.java +7 −5 Original line number Diff line number Diff line Loading @@ -83,6 +83,7 @@ import com.android.server.display.whitebalance.DisplayWhiteBalanceSettings; import com.android.server.policy.WindowManagerPolicy; import java.io.PrintWriter; import java.util.Objects; /** * Controls the power state of the display. Loading Loading @@ -605,7 +606,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call mLastBrightnessEvent = new BrightnessEvent(mDisplayId); mTempBrightnessEvent = new BrightnessEvent(mDisplayId); mThermalBrightnessThrottlingDataId = logicalDisplay.getThermalBrightnessThrottlingDataIdLocked(); logicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId; if (mDisplayId == Display.DEFAULT_DISPLAY) { mBatteryStats = BatteryStatsService.getService(); Loading Loading @@ -955,7 +956,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call && mLogicalDisplay.getPrimaryDisplayDeviceLocked() .getDisplayDeviceInfoLocked().type == Display.TYPE_INTERNAL; final String thermalBrightnessThrottlingDataId = mLogicalDisplay.getThermalBrightnessThrottlingDataIdLocked(); mLogicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId; mHandler.postAtTime(() -> { boolean changed = false; if (mDisplayDevice != device) { Loading @@ -972,8 +973,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call // last command that was sent to change it's state. Let's assume it is unknown so // that we trigger a change immediately. mPowerState.resetScreenState(); } else if ( !mThermalBrightnessThrottlingDataId.equals(thermalBrightnessThrottlingDataId)) { } else if (!Objects.equals(mThermalBrightnessThrottlingDataId, thermalBrightnessThrottlingDataId)) { changed = true; mThermalBrightnessThrottlingDataId = thermalBrightnessThrottlingDataId; mBrightnessThrottler.loadThermalBrightnessThrottlingDataFromDisplayDeviceConfig( Loading Loading @@ -2189,7 +2190,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call () -> { sendUpdatePowerState(); postBrightnessChangeRunnable(); }, mUniqueDisplayId, mLogicalDisplay.getThermalBrightnessThrottlingDataIdLocked(), }, mUniqueDisplayId, mLogicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId, ddConfig.getThermalBrightnessThrottlingDataMapByThrottlingId()); } Loading services/core/java/com/android/server/display/DisplayPowerController2.java +7 −5 Original line number Diff line number Diff line Loading @@ -85,6 +85,7 @@ import com.android.server.display.whitebalance.DisplayWhiteBalanceSettings; import com.android.server.policy.WindowManagerPolicy; import java.io.PrintWriter; import java.util.Objects; /** * Controls the power state of the display. Loading Loading @@ -488,7 +489,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal mAutomaticBrightnessStrategy = new AutomaticBrightnessStrategy(context, mDisplayId); mTag = "DisplayPowerController2[" + mDisplayId + "]"; mThermalBrightnessThrottlingDataId = logicalDisplay.getThermalBrightnessThrottlingDataIdLocked(); logicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId; mDisplayDevice = mLogicalDisplay.getPrimaryDisplayDeviceLocked(); mUniqueDisplayId = logicalDisplay.getPrimaryDisplayDeviceLocked().getUniqueId(); Loading Loading @@ -760,7 +761,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal && mLogicalDisplay.getPrimaryDisplayDeviceLocked() .getDisplayDeviceInfoLocked().type == Display.TYPE_INTERNAL; final String thermalBrightnessThrottlingDataId = mLogicalDisplay.getThermalBrightnessThrottlingDataIdLocked(); mLogicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId; mHandler.postAtTime(() -> { boolean changed = false; Loading @@ -778,8 +779,8 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal // last command that was sent to change it's state. Let's assume it is unknown so // that we trigger a change immediately. mPowerState.resetScreenState(); } else if ( !mThermalBrightnessThrottlingDataId.equals(thermalBrightnessThrottlingDataId)) { } else if (!Objects.equals(mThermalBrightnessThrottlingDataId, thermalBrightnessThrottlingDataId)) { changed = true; mThermalBrightnessThrottlingDataId = thermalBrightnessThrottlingDataId; mBrightnessThrottler.loadThermalBrightnessThrottlingDataFromDisplayDeviceConfig( Loading Loading @@ -1820,7 +1821,8 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal () -> { sendUpdatePowerState(); postBrightnessChangeRunnable(); }, mUniqueDisplayId, mLogicalDisplay.getThermalBrightnessThrottlingDataIdLocked(), }, mUniqueDisplayId, mLogicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId, ddConfig.getThermalBrightnessThrottlingDataMapByThrottlingId()); } Loading services/core/java/com/android/server/display/LogicalDisplay.java +6 −9 Original line number Diff line number Diff line Loading @@ -203,6 +203,7 @@ final class LogicalDisplay { mIsEnabled = true; mIsInTransition = false; mThermalBrightnessThrottlingDataId = DisplayDeviceConfig.DEFAULT_ID; mBaseDisplayInfo.thermalBrightnessThrottlingDataId = mThermalBrightnessThrottlingDataId; } public void setDevicePositionLocked(int position) { Loading Loading @@ -514,6 +515,7 @@ final class LogicalDisplay { mBaseDisplayInfo.layoutLimitedRefreshRate = mLayoutLimitedRefreshRate; mBaseDisplayInfo.thermalRefreshRateThrottling = mThermalRefreshRateThrottling; mBaseDisplayInfo.thermalBrightnessThrottlingDataId = mThermalBrightnessThrottlingDataId; mPrimaryDisplayDeviceInfo = deviceInfo; mInfo.set(null); Loading Loading @@ -885,20 +887,15 @@ final class LogicalDisplay { mIsInTransition = isInTransition; } /** * @return The ID of the brightness throttling data that this display should use. */ public String getThermalBrightnessThrottlingDataIdLocked() { return mThermalBrightnessThrottlingDataId; } /** * @param brightnessThrottlingDataId The ID of the brightness throttling data that this * display should use. */ public void setThermalBrightnessThrottlingDataIdLocked(String brightnessThrottlingDataId) { mThermalBrightnessThrottlingDataId = brightnessThrottlingDataId; if (!Objects.equals(brightnessThrottlingDataId, mThermalBrightnessThrottlingDataId)) { mThermalBrightnessThrottlingDataId = brightnessThrottlingDataId; mDirty = true; } } /** Loading services/tests/mockingservicestests/src/com/android/server/display/DisplayPowerController2Test.java +18 −5 Original line number Diff line number Diff line Loading @@ -596,17 +596,17 @@ public final class DisplayPowerController2Test { // We should still set screen state for the default display DisplayPowerRequest dpr = new DisplayPowerRequest(); mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); advanceTime(1); advanceTime(1); // Run updatePowerState verify(mHolder.displayPowerState, times(2)).setScreenState(anyInt()); mHolder = createDisplayPowerController(42, UNIQUE_ID); mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); advanceTime(1); advanceTime(1); // Run updatePowerState verify(mHolder.displayPowerState, never()).setScreenState(anyInt()); mHolder.dpc.onBootCompleted(); advanceTime(1); advanceTime(1); // Run updatePowerState verify(mHolder.displayPowerState).setScreenState(anyInt()); } Loading Loading @@ -822,6 +822,21 @@ public final class DisplayPowerController2Test { ); } @Test public void testUpdateBrightnessThrottlingDataId() { mHolder.display.getDisplayInfoLocked().thermalBrightnessThrottlingDataId = "throttling-data-id"; clearInvocations(mHolder.display.getPrimaryDisplayDeviceLocked().getDisplayDeviceConfig()); mHolder.dpc.onDisplayChanged(mHolder.hbmMetadata, Layout.NO_LEAD_DISPLAY); DisplayPowerRequest dpr = new DisplayPowerRequest(); mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); advanceTime(1); // Run updatePowerState verify(mHolder.display.getPrimaryDisplayDeviceLocked().getDisplayDeviceConfig()) .getThermalBrightnessThrottlingDataMapByThrottlingId(); } /** * Creates a mock and registers it to {@link LocalServices}. */ Loading Loading @@ -862,8 +877,6 @@ public final class DisplayPowerController2Test { when(logicalDisplayMock.getDisplayInfoLocked()).thenReturn(info); when(logicalDisplayMock.isEnabledLocked()).thenReturn(isEnabled); when(logicalDisplayMock.isInTransitionLocked()).thenReturn(false); when(logicalDisplayMock.getThermalBrightnessThrottlingDataIdLocked()).thenReturn( DisplayDeviceConfig.DEFAULT_ID); when(displayDeviceMock.getDisplayDeviceInfoLocked()).thenReturn(deviceInfo); when(displayDeviceMock.getUniqueId()).thenReturn(uniqueId); when(displayDeviceMock.getDisplayDeviceConfig()).thenReturn(displayDeviceConfigMock); Loading Loading
core/java/android/view/DisplayInfo.java +16 −1 Original line number Diff line number Diff line Loading @@ -360,6 +360,14 @@ public final class DisplayInfo implements Parcelable { public SparseArray<SurfaceControl.RefreshRateRange> thermalRefreshRateThrottling = new SparseArray<>(); /** * The ID of the brightness throttling data that should be used. This can change e.g. in * concurrent displays mode in which a stricter brightness throttling policy might need to be * used. */ @Nullable public String thermalBrightnessThrottlingDataId; public static final @android.annotation.NonNull Creator<DisplayInfo> CREATOR = new Creator<DisplayInfo>() { @Override public DisplayInfo createFromParcel(Parcel source) { Loading Loading @@ -437,7 +445,9 @@ public final class DisplayInfo implements Parcelable { && Objects.equals(displayShape, other.displayShape) && Objects.equals(layoutLimitedRefreshRate, other.layoutLimitedRefreshRate) && BrightnessSynchronizer.floatEquals(hdrSdrRatio, other.hdrSdrRatio) && thermalRefreshRateThrottling.contentEquals(other.thermalRefreshRateThrottling); && thermalRefreshRateThrottling.contentEquals(other.thermalRefreshRateThrottling) && Objects.equals( thermalBrightnessThrottlingDataId, other.thermalBrightnessThrottlingDataId); } @Override Loading Loading @@ -495,6 +505,7 @@ public final class DisplayInfo implements Parcelable { layoutLimitedRefreshRate = other.layoutLimitedRefreshRate; hdrSdrRatio = other.hdrSdrRatio; thermalRefreshRateThrottling = other.thermalRefreshRateThrottling; thermalBrightnessThrottlingDataId = other.thermalBrightnessThrottlingDataId; } public void readFromParcel(Parcel source) { Loading Loading @@ -559,6 +570,7 @@ public final class DisplayInfo implements Parcelable { hdrSdrRatio = source.readFloat(); thermalRefreshRateThrottling = source.readSparseArray(null, SurfaceControl.RefreshRateRange.class); thermalBrightnessThrottlingDataId = source.readString8(); } @Override Loading Loading @@ -620,6 +632,7 @@ public final class DisplayInfo implements Parcelable { dest.writeTypedObject(layoutLimitedRefreshRate, flags); dest.writeFloat(hdrSdrRatio); dest.writeSparseArray(thermalRefreshRateThrottling); dest.writeString8(thermalBrightnessThrottlingDataId); } @Override Loading Loading @@ -889,6 +902,8 @@ public final class DisplayInfo implements Parcelable { } sb.append(", thermalRefreshRateThrottling "); sb.append(thermalRefreshRateThrottling); sb.append(", thermalBrightnessThrottlingDataId "); sb.append(thermalBrightnessThrottlingDataId); sb.append("}"); return sb.toString(); } Loading
services/core/java/com/android/server/display/DisplayPowerController.java +7 −5 Original line number Diff line number Diff line Loading @@ -83,6 +83,7 @@ import com.android.server.display.whitebalance.DisplayWhiteBalanceSettings; import com.android.server.policy.WindowManagerPolicy; import java.io.PrintWriter; import java.util.Objects; /** * Controls the power state of the display. Loading Loading @@ -605,7 +606,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call mLastBrightnessEvent = new BrightnessEvent(mDisplayId); mTempBrightnessEvent = new BrightnessEvent(mDisplayId); mThermalBrightnessThrottlingDataId = logicalDisplay.getThermalBrightnessThrottlingDataIdLocked(); logicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId; if (mDisplayId == Display.DEFAULT_DISPLAY) { mBatteryStats = BatteryStatsService.getService(); Loading Loading @@ -955,7 +956,7 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call && mLogicalDisplay.getPrimaryDisplayDeviceLocked() .getDisplayDeviceInfoLocked().type == Display.TYPE_INTERNAL; final String thermalBrightnessThrottlingDataId = mLogicalDisplay.getThermalBrightnessThrottlingDataIdLocked(); mLogicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId; mHandler.postAtTime(() -> { boolean changed = false; if (mDisplayDevice != device) { Loading @@ -972,8 +973,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call // last command that was sent to change it's state. Let's assume it is unknown so // that we trigger a change immediately. mPowerState.resetScreenState(); } else if ( !mThermalBrightnessThrottlingDataId.equals(thermalBrightnessThrottlingDataId)) { } else if (!Objects.equals(mThermalBrightnessThrottlingDataId, thermalBrightnessThrottlingDataId)) { changed = true; mThermalBrightnessThrottlingDataId = thermalBrightnessThrottlingDataId; mBrightnessThrottler.loadThermalBrightnessThrottlingDataFromDisplayDeviceConfig( Loading Loading @@ -2189,7 +2190,8 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call () -> { sendUpdatePowerState(); postBrightnessChangeRunnable(); }, mUniqueDisplayId, mLogicalDisplay.getThermalBrightnessThrottlingDataIdLocked(), }, mUniqueDisplayId, mLogicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId, ddConfig.getThermalBrightnessThrottlingDataMapByThrottlingId()); } Loading
services/core/java/com/android/server/display/DisplayPowerController2.java +7 −5 Original line number Diff line number Diff line Loading @@ -85,6 +85,7 @@ import com.android.server.display.whitebalance.DisplayWhiteBalanceSettings; import com.android.server.policy.WindowManagerPolicy; import java.io.PrintWriter; import java.util.Objects; /** * Controls the power state of the display. Loading Loading @@ -488,7 +489,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal mAutomaticBrightnessStrategy = new AutomaticBrightnessStrategy(context, mDisplayId); mTag = "DisplayPowerController2[" + mDisplayId + "]"; mThermalBrightnessThrottlingDataId = logicalDisplay.getThermalBrightnessThrottlingDataIdLocked(); logicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId; mDisplayDevice = mLogicalDisplay.getPrimaryDisplayDeviceLocked(); mUniqueDisplayId = logicalDisplay.getPrimaryDisplayDeviceLocked().getUniqueId(); Loading Loading @@ -760,7 +761,7 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal && mLogicalDisplay.getPrimaryDisplayDeviceLocked() .getDisplayDeviceInfoLocked().type == Display.TYPE_INTERNAL; final String thermalBrightnessThrottlingDataId = mLogicalDisplay.getThermalBrightnessThrottlingDataIdLocked(); mLogicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId; mHandler.postAtTime(() -> { boolean changed = false; Loading @@ -778,8 +779,8 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal // last command that was sent to change it's state. Let's assume it is unknown so // that we trigger a change immediately. mPowerState.resetScreenState(); } else if ( !mThermalBrightnessThrottlingDataId.equals(thermalBrightnessThrottlingDataId)) { } else if (!Objects.equals(mThermalBrightnessThrottlingDataId, thermalBrightnessThrottlingDataId)) { changed = true; mThermalBrightnessThrottlingDataId = thermalBrightnessThrottlingDataId; mBrightnessThrottler.loadThermalBrightnessThrottlingDataFromDisplayDeviceConfig( Loading Loading @@ -1820,7 +1821,8 @@ final class DisplayPowerController2 implements AutomaticBrightnessController.Cal () -> { sendUpdatePowerState(); postBrightnessChangeRunnable(); }, mUniqueDisplayId, mLogicalDisplay.getThermalBrightnessThrottlingDataIdLocked(), }, mUniqueDisplayId, mLogicalDisplay.getDisplayInfoLocked().thermalBrightnessThrottlingDataId, ddConfig.getThermalBrightnessThrottlingDataMapByThrottlingId()); } Loading
services/core/java/com/android/server/display/LogicalDisplay.java +6 −9 Original line number Diff line number Diff line Loading @@ -203,6 +203,7 @@ final class LogicalDisplay { mIsEnabled = true; mIsInTransition = false; mThermalBrightnessThrottlingDataId = DisplayDeviceConfig.DEFAULT_ID; mBaseDisplayInfo.thermalBrightnessThrottlingDataId = mThermalBrightnessThrottlingDataId; } public void setDevicePositionLocked(int position) { Loading Loading @@ -514,6 +515,7 @@ final class LogicalDisplay { mBaseDisplayInfo.layoutLimitedRefreshRate = mLayoutLimitedRefreshRate; mBaseDisplayInfo.thermalRefreshRateThrottling = mThermalRefreshRateThrottling; mBaseDisplayInfo.thermalBrightnessThrottlingDataId = mThermalBrightnessThrottlingDataId; mPrimaryDisplayDeviceInfo = deviceInfo; mInfo.set(null); Loading Loading @@ -885,20 +887,15 @@ final class LogicalDisplay { mIsInTransition = isInTransition; } /** * @return The ID of the brightness throttling data that this display should use. */ public String getThermalBrightnessThrottlingDataIdLocked() { return mThermalBrightnessThrottlingDataId; } /** * @param brightnessThrottlingDataId The ID of the brightness throttling data that this * display should use. */ public void setThermalBrightnessThrottlingDataIdLocked(String brightnessThrottlingDataId) { mThermalBrightnessThrottlingDataId = brightnessThrottlingDataId; if (!Objects.equals(brightnessThrottlingDataId, mThermalBrightnessThrottlingDataId)) { mThermalBrightnessThrottlingDataId = brightnessThrottlingDataId; mDirty = true; } } /** Loading
services/tests/mockingservicestests/src/com/android/server/display/DisplayPowerController2Test.java +18 −5 Original line number Diff line number Diff line Loading @@ -596,17 +596,17 @@ public final class DisplayPowerController2Test { // We should still set screen state for the default display DisplayPowerRequest dpr = new DisplayPowerRequest(); mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); advanceTime(1); advanceTime(1); // Run updatePowerState verify(mHolder.displayPowerState, times(2)).setScreenState(anyInt()); mHolder = createDisplayPowerController(42, UNIQUE_ID); mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); advanceTime(1); advanceTime(1); // Run updatePowerState verify(mHolder.displayPowerState, never()).setScreenState(anyInt()); mHolder.dpc.onBootCompleted(); advanceTime(1); advanceTime(1); // Run updatePowerState verify(mHolder.displayPowerState).setScreenState(anyInt()); } Loading Loading @@ -822,6 +822,21 @@ public final class DisplayPowerController2Test { ); } @Test public void testUpdateBrightnessThrottlingDataId() { mHolder.display.getDisplayInfoLocked().thermalBrightnessThrottlingDataId = "throttling-data-id"; clearInvocations(mHolder.display.getPrimaryDisplayDeviceLocked().getDisplayDeviceConfig()); mHolder.dpc.onDisplayChanged(mHolder.hbmMetadata, Layout.NO_LEAD_DISPLAY); DisplayPowerRequest dpr = new DisplayPowerRequest(); mHolder.dpc.requestPowerState(dpr, /* waitForNegativeProximity= */ false); advanceTime(1); // Run updatePowerState verify(mHolder.display.getPrimaryDisplayDeviceLocked().getDisplayDeviceConfig()) .getThermalBrightnessThrottlingDataMapByThrottlingId(); } /** * Creates a mock and registers it to {@link LocalServices}. */ Loading Loading @@ -862,8 +877,6 @@ public final class DisplayPowerController2Test { when(logicalDisplayMock.getDisplayInfoLocked()).thenReturn(info); when(logicalDisplayMock.isEnabledLocked()).thenReturn(isEnabled); when(logicalDisplayMock.isInTransitionLocked()).thenReturn(false); when(logicalDisplayMock.getThermalBrightnessThrottlingDataIdLocked()).thenReturn( DisplayDeviceConfig.DEFAULT_ID); when(displayDeviceMock.getDisplayDeviceInfoLocked()).thenReturn(deviceInfo); when(displayDeviceMock.getUniqueId()).thenReturn(uniqueId); when(displayDeviceMock.getDisplayDeviceConfig()).thenReturn(displayDeviceConfigMock); Loading