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

Commit 2b310720 authored by Kriti Dang's avatar Kriti Dang Committed by Android (Google) Code Review
Browse files

Merge "Propagate user preferred mode to SurfaceControl, only if it has changed."

parents dbb79760 73a973b2
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2463,7 +2463,7 @@ public final class DisplayManagerService extends SystemService {
            pw.println("  mMinimumBrightnessCurve=" + mMinimumBrightnessCurve);

            if (mUserPreferredMode != null) {
                pw.println(mUserPreferredMode);
                pw.println(" mUserPreferredMode=" + mUserPreferredMode);
            }

            pw.println();
+12 −6
Original line number Diff line number Diff line
@@ -884,20 +884,26 @@ final class LocalDisplayAdapter extends DisplayAdapter {
        public void setUserPreferredDisplayModeLocked(Display.Mode mode) {
            final int oldModeId = getPreferredModeId();
            mUserPreferredMode = mode;
            if (mode != null && (mode.isRefreshRateSet() ^ mode.isResolutionSet())) {
                mUserPreferredMode = findMode(mode.getPhysicalWidth(),
            if (mode != null && (mode.isRefreshRateSet() || mode.isResolutionSet())) {
                Display.Mode matchingSupportedMode;
                matchingSupportedMode = findMode(mode.getPhysicalWidth(),
                        mode.getPhysicalHeight(), mode.getRefreshRate());
                if (matchingSupportedMode != null) {
                    mUserPreferredMode = matchingSupportedMode;
                }
            }
            mUserPreferredModeId = findUserPreferredModeIdLocked(mode);

            if (oldModeId != getPreferredModeId()) {
                updateDeviceInfoLocked();
            mUserPreferredModeId = findUserPreferredModeIdLocked(mUserPreferredMode);

            if (oldModeId == getPreferredModeId()) {
                return;
            }
            updateDeviceInfoLocked();

            if (!mSurfaceControlProxy.getBootDisplayModeSupport()) {
                return;
            }
            if (mUserPreferredMode == null) {
            if (mUserPreferredModeId == INVALID_MODE_ID) {
                mSurfaceControlProxy.clearBootDisplayMode(getDisplayTokenLocked());
            } else {
                int preferredSfDisplayModeId = findSfDisplayModeIdLocked(