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

Commit fe482e0b authored by Filip Gruszczynski's avatar Filip Gruszczynski Committed by Android (Google) Code Review
Browse files

Merge "Initialize DisplayContent base info when object is constructed" into cw-e-dev

parents d80d24f5 4ff84631
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -116,6 +116,7 @@ class DisplayContent {
        display.getDisplayInfo(mDisplayInfo);
        isDefaultDisplay = mDisplayId == Display.DEFAULT_DISPLAY;
        mService = service;
        initializeDisplayBaseInfo();
    }

    int getDisplayId() {
@@ -176,6 +177,21 @@ class DisplayContent {
        }
    }

    void initializeDisplayBaseInfo() {
        synchronized(mDisplaySizeLock) {
            // Bootstrap the default logical display from the display manager.
            final DisplayInfo newDisplayInfo =
                    mService.mDisplayManagerInternal.getDisplayInfo(mDisplayId);
            if (newDisplayInfo != null) {
                mDisplayInfo.copyFrom(newDisplayInfo);
            }
            mBaseDisplayWidth = mInitialDisplayWidth = mDisplayInfo.logicalWidth;
            mBaseDisplayHeight = mInitialDisplayHeight = mDisplayInfo.logicalHeight;
            mBaseDisplayDensity = mInitialDisplayDensity = mDisplayInfo.logicalDensityDpi;
            mBaseDisplayRect.set(0, 0, mBaseDisplayWidth, mBaseDisplayHeight);
        }
    }

    void getLogicalDisplayRect(Rect out) {
        // Uses same calculation as in LogicalDisplay#configureDisplayInTransactionLocked.
        final int orientation = mDisplayInfo.rotation;
+1 −16
Original line number Diff line number Diff line
@@ -7670,22 +7670,7 @@ public class WindowManagerService extends IWindowManager.Stub
            final DisplayContent displayContent = getDisplayContentLocked(displayId);
            if (displayContent != null) {
                mAnimator.addDisplayLocked(displayId);
                synchronized(displayContent.mDisplaySizeLock) {
                    // Bootstrap the default logical display from the display manager.
                    final DisplayInfo displayInfo = displayContent.getDisplayInfo();
                    DisplayInfo newDisplayInfo = mDisplayManagerInternal.getDisplayInfo(displayId);
                    if (newDisplayInfo != null) {
                        displayInfo.copyFrom(newDisplayInfo);
                    }
                    displayContent.mInitialDisplayWidth = displayInfo.logicalWidth;
                    displayContent.mInitialDisplayHeight = displayInfo.logicalHeight;
                    displayContent.mInitialDisplayDensity = displayInfo.logicalDensityDpi;
                    displayContent.mBaseDisplayWidth = displayContent.mInitialDisplayWidth;
                    displayContent.mBaseDisplayHeight = displayContent.mInitialDisplayHeight;
                    displayContent.mBaseDisplayDensity = displayContent.mInitialDisplayDensity;
                    displayContent.mBaseDisplayRect.set(0, 0,
                            displayContent.mBaseDisplayWidth, displayContent.mBaseDisplayHeight);
                }
                displayContent.initializeDisplayBaseInfo();
            }
        }
    }