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

Commit 954a3dd0 authored by Sunny Goyal's avatar Sunny Goyal Committed by Android (Google) Code Review
Browse files

Merge "Ignoring display size change when display is off" into sc-v2-dev

parents bfb69964 807de418
Loading
Loading
Loading
Loading
+1 −11
Original line number Diff line number Diff line
@@ -24,7 +24,6 @@ import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCH
import android.content.Context;
import android.content.SharedPreferences;
import android.text.TextUtils;
import android.util.Log;

import androidx.annotation.IntDef;

@@ -135,17 +134,8 @@ public class DeviceGridState {
    public boolean isCompatible(DeviceGridState other) {
        if (this == other) return true;
        if (other == null) return false;
        boolean isCompatible = mNumHotseat == other.mNumHotseat
        return mNumHotseat == other.mNumHotseat
                && deviceTypeCompatible(mDeviceType, other.mDeviceType)
                && Objects.equals(mGridSizeString, other.mGridSizeString);
        // TODO(b/198965093): Temporary fix for multi-display devices, ignore hotseat size changes
        //  and type compatibility.
        if ((mDeviceType == TYPE_MULTI_DISPLAY || other.mDeviceType == TYPE_MULTI_DISPLAY)
                && !isCompatible && Objects.equals(mGridSizeString, other.mGridSizeString)) {
            Log.d("b/198965093", "Hotseat and deice type compatibility ignored: " + this
                    + ", other: " + other);
            isCompatible = true;
        }
        return isCompatible;
    }
}
+8 −0
Original line number Diff line number Diff line
@@ -257,6 +257,14 @@ public class DisplayController implements DisplayListener, ComponentCallbacks, S
        }
        if (!newInfo.supportedBounds.equals(oldInfo.supportedBounds)) {
            change |= CHANGE_SUPPORTED_BOUNDS;

            PortraitSize realSize = new PortraitSize(newInfo.currentSize.x, newInfo.currentSize.y);
            PortraitSize expectedSize = oldInfo.mInternalDisplays.get(
                    ApiWrapper.getUniqueId(display));
            if (!realSize.equals(expectedSize) && display.getState() == Display.STATE_OFF) {
                Log.e("b/198965093", "Display size changed while display is off, ignoring change");
                return;
            }
        }

        if (change != 0) {