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

Commit eaabfabd authored by Wale Ogunwale's avatar Wale Ogunwale
Browse files

Switched RootWindowContainer to use WindowContainer.

This completes the first pass of defining a hierarchy in
window manager :)

WindowManagerService is now less than 10,000 line \o/

Bug: 30060889
Test: Manual testing and existing tests still pass.
Change-Id: Ib349220e9355d1894bd62294e7696827f033887f
parent e05f5014
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -1055,7 +1055,7 @@ class AppWindowToken extends WindowToken implements WindowManagerService.AppFree


    @Override
    @Override
    void updateAllDrawn(int displayId) {
    void updateAllDrawn(int displayId) {
        final DisplayContent displayContent = mService.mRoot.getDisplayContent(displayId);
        final DisplayContent displayContent = mService.mRoot.getDisplayContentOrCreate(displayId);


        if (!allDrawn) {
        if (!allDrawn) {
            final int numInteresting = numInterestingWindows;
            final int numInteresting = numInterestingWindows;
+0 −2
Original line number Original line Diff line number Diff line
@@ -485,8 +485,6 @@ class DisplayContent extends WindowContainer<TaskStack> {
    void removeImmediately() {
    void removeImmediately() {
        super.removeImmediately();
        super.removeImmediately();
        if (DEBUG_DISPLAY) Slog.v(TAG_WM, "Removing display=" + this);
        if (DEBUG_DISPLAY) Slog.v(TAG_WM, "Removing display=" + this);
        // TODO: remove this line once RootWindowContainer is online.
        mService.mRoot.mDisplayContents.delete(mDisplayId);
        mDimLayerController.close();
        mDimLayerController.close();
        if (mDisplayId == Display.DEFAULT_DISPLAY) {
        if (mDisplayId == Display.DEFAULT_DISPLAY) {
            mService.unregisterPointerEventListener(mTapDetector);
            mService.unregisterPointerEventListener(mTapDetector);
+79 −70

File changed.

Preview size limit exceeded, changes collapsed.

+7 −6
Original line number Original line Diff line number Diff line
@@ -40,7 +40,6 @@ import static com.android.server.wm.WindowStateAnimator.STACK_CLIP_BEFORE_ANIM;
import static com.android.server.wm.WindowSurfacePlacer.SET_FORCE_HIDING_CHANGED;
import static com.android.server.wm.WindowSurfacePlacer.SET_FORCE_HIDING_CHANGED;
import static com.android.server.wm.WindowSurfacePlacer.SET_ORIENTATION_CHANGE_COMPLETE;
import static com.android.server.wm.WindowSurfacePlacer.SET_ORIENTATION_CHANGE_COMPLETE;
import static com.android.server.wm.WindowSurfacePlacer.SET_UPDATE_ROTATION;
import static com.android.server.wm.WindowSurfacePlacer.SET_UPDATE_ROTATION;
import static com.android.server.wm.WindowSurfacePlacer.SET_WALLPAPER_ACTION_PENDING;
import static com.android.server.wm.WindowSurfacePlacer.SET_WALLPAPER_MAY_CHANGE;
import static com.android.server.wm.WindowSurfacePlacer.SET_WALLPAPER_MAY_CHANGE;


import android.content.Context;
import android.content.Context;
@@ -528,7 +527,7 @@ public class WindowAnimator {
    }
    }


    private void updateWallpaperLocked(int displayId) {
    private void updateWallpaperLocked(int displayId) {
        mService.mRoot.getDisplayContent(displayId).resetAnimationBackgroundAnimator();
        mService.mRoot.getDisplayContentOrCreate(displayId).resetAnimationBackgroundAnimator();


        final WindowList windows = mService.getWindowListLocked(displayId);
        final WindowList windows = mService.getWindowListLocked(displayId);
        WindowState detachedWallpaper = null;
        WindowState detachedWallpaper = null;
@@ -615,7 +614,8 @@ public class WindowAnimator {
            final int numDisplays = mDisplayContentsAnimators.size();
            final int numDisplays = mDisplayContentsAnimators.size();
            for (int i = 0; i < numDisplays; i++) {
            for (int i = 0; i < numDisplays; i++) {
                final int displayId = mDisplayContentsAnimators.keyAt(i);
                final int displayId = mDisplayContentsAnimators.keyAt(i);
                final DisplayContent displayContent = mService.mRoot.getDisplayContent(displayId);
                final DisplayContent displayContent = mService.mRoot.getDisplayContentOrCreate(
                        displayId);
                displayContent.stepAppWindowsAnimation(mCurrentTime);
                displayContent.stepAppWindowsAnimation(mCurrentTime);
                DisplayContentsAnimator displayAnimator = mDisplayContentsAnimators.valueAt(i);
                DisplayContentsAnimator displayAnimator = mDisplayContentsAnimators.valueAt(i);


@@ -654,7 +654,8 @@ public class WindowAnimator {


            for (int i = 0; i < numDisplays; i++) {
            for (int i = 0; i < numDisplays; i++) {
                final int displayId = mDisplayContentsAnimators.keyAt(i);
                final int displayId = mDisplayContentsAnimators.keyAt(i);
                final DisplayContent displayContent = mService.mRoot.getDisplayContent(displayId);
                final DisplayContent displayContent = mService.mRoot.getDisplayContentOrCreate(
                        displayId);


                displayContent.checkAppWindowsReadyToShow();
                displayContent.checkAppWindowsReadyToShow();


@@ -799,7 +800,7 @@ public class WindowAnimator {
        if (displayId < 0) {
        if (displayId < 0) {
            return 0;
            return 0;
        }
        }
        final DisplayContent displayContent = mService.mRoot.getDisplayContent(displayId);
        final DisplayContent displayContent = mService.mRoot.getDisplayContentOrCreate(displayId);
        return (displayContent != null) ? displayContent.pendingLayoutChanges : 0;
        return (displayContent != null) ? displayContent.pendingLayoutChanges : 0;
    }
    }


@@ -807,7 +808,7 @@ public class WindowAnimator {
        if (displayId < 0) {
        if (displayId < 0) {
            return;
            return;
        }
        }
        final DisplayContent displayContent = mService.mRoot.getDisplayContent(displayId);
        final DisplayContent displayContent = mService.mRoot.getDisplayContentOrCreate(displayId);
        if (displayContent != null) {
        if (displayContent != null) {
            displayContent.pendingLayoutChanges |= changes;
            displayContent.pendingLayoutChanges |= changes;
        }
        }
+18 −18

File changed.

Preview size limit exceeded, changes collapsed.