Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f119f977 authored by Dhavalkumar Chaudhary's avatar Dhavalkumar Chaudhary
Browse files

Update atom after calculating all available displays

This change will update state of the disaply from all available displays.

Bug: 416368479

Test: atest UidAtomTests
Flag: EXEMPT bugfix
Change-Id: I3ac3ebd54d49b9c850a2358806294579fbaf9181
parent 3bf9f89b
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -1805,7 +1805,6 @@ public final class BatteryStatsService extends IBatteryStats.Stub
                if (DBG) Slog.d(TAG, "end noteScreenState");
            });
        }
        FrameworkStatsLog.write(FrameworkStatsLog.SCREEN_STATE_CHANGED, state);
    }

    @Override
@@ -1823,7 +1822,6 @@ public final class BatteryStatsService extends IBatteryStats.Stub
                }
            });
        }
        FrameworkStatsLog.write(FrameworkStatsLog.SCREEN_BRIGHTNESS_CHANGED, brightness);
    }

    @Override
+31 −2
Original line number Diff line number Diff line
@@ -1211,6 +1211,10 @@ public class BatteryStatsImpl extends BatteryStats {
         * Per display screen brightness bins.
         */
        public int screenBrightnessBin = -1;
        /**
         * Per display screen brightness.
         */
        public int screenBrightness = -1;
        /**
         * Per display screen brightness timers.
         */
@@ -5644,6 +5648,7 @@ public class BatteryStatsImpl extends BatteryStats {
                    state = Display.STATE_OFF;
                }
            }
            FrameworkStatsLog.write(FrameworkStatsLog.SCREEN_STATE_CHANGED, state);
        }
        final boolean batteryRunning = mOnBatteryTimeBase.isRunning();
@@ -5759,7 +5764,6 @@ public class BatteryStatsImpl extends BatteryStats {
        else if (bin >= NUM_SCREEN_BRIGHTNESS_BINS) bin = NUM_SCREEN_BRIGHTNESS_BINS-1;
        final int overallBin;
        final int numDisplays = mPerDisplayBatteryStats.length;
        if (display < 0 || display >= numDisplays) {
            Slog.wtf(TAG, "Unexpected note screen brightness for display " + display + " (only "
@@ -5784,8 +5788,33 @@ public class BatteryStatsImpl extends BatteryStats {
            }
            overallBin = evaluateOverallScreenBrightnessBinLocked();
        }
        maybeUpdateOverallScreenBrightness(overallBin, elapsedRealtimeMs, uptimeMs);
        // Calulcating overall brightness among all display
        final int oldBrightness = displayStats.screenBrightness;
        if (brightness != oldBrightness) {
            displayStats.screenBrightness = brightness;
            int overallBrightness = evaluateOverallScreenBrightnessLocked();
            FrameworkStatsLog.write(FrameworkStatsLog.SCREEN_BRIGHTNESS_CHANGED, overallBrightness);
        }
    }
    @GuardedBy("this")
    private int evaluateOverallScreenBrightnessLocked() {
        int overallBrightness = -1;
        final int numDisplays = getDisplayCount();
        for (int display = 0; display < numDisplays; display++) {
            final int displayBrightness;
            if (mPerDisplayBatteryStats[display].screenState == Display.STATE_ON) {
                displayBrightness = mPerDisplayBatteryStats[display].screenBrightness;
            } else {
                displayBrightness = -1;
            }
            if (displayBrightness > overallBrightness) {
                overallBrightness = displayBrightness;
            }
        }
        return overallBrightness;
    }
    @GuardedBy("this")