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

Commit c84c7053 authored by Massimo Carli's avatar Massimo Carli Committed by Automerger Merge Worker
Browse files

Merge "Remove possible memory leak on compat ui layer" into udc-qpr-dev am:...

Merge "Remove possible memory leak on compat ui layer" into udc-qpr-dev am: 33158ac7 am: 12989f76

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/24405056



Change-Id: I067ca816a9dc2e9d00a7edd926d108436759ad27
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 41e93ddc 12989f76
Loading
Loading
Loading
Loading
+5 −9
Original line number Diff line number Diff line
@@ -342,6 +342,7 @@ public class CompatUIController implements OnDisplaysChangedListener,
                if (!mActiveLetterboxEduLayout.updateCompatInfo(taskInfo, taskListener,
                        showOnDisplay(mActiveLetterboxEduLayout.getDisplayId()))) {
                    // The layout is no longer eligible to be shown, clear active layout.
                    mActiveLetterboxEduLayout.release();
                    mActiveLetterboxEduLayout = null;
                }
                return;
@@ -371,15 +372,9 @@ public class CompatUIController implements OnDisplaysChangedListener,
            ShellTaskOrganizer.TaskListener taskListener) {
        return new LetterboxEduWindowManager(context, taskInfo,
                mSyncQueue, taskListener, mDisplayController.getDisplayLayout(taskInfo.displayId),
                mTransitionsLazy.get(), this::onLetterboxEduDismissed, mDockStateReader,
                mCompatUIConfiguration);
    }

    private void onLetterboxEduDismissed(
            Pair<TaskInfo, ShellTaskOrganizer.TaskListener> stateInfo) {
        mActiveLetterboxEduLayout = null;
        // We need to update the UI
        createOrUpdateReachabilityEduLayout(stateInfo.first, stateInfo.second);
                mTransitionsLazy.get(),
                stateInfo -> createOrUpdateReachabilityEduLayout(stateInfo.first, stateInfo.second),
                mDockStateReader, mCompatUIConfiguration);
    }

    private void createOrUpdateRestartDialogLayout(TaskInfo taskInfo,
@@ -448,6 +443,7 @@ public class CompatUIController implements OnDisplaysChangedListener,
                if (!mActiveReachabilityEduLayout.updateCompatInfo(taskInfo, taskListener,
                        showOnDisplay(mActiveReachabilityEduLayout.getDisplayId()))) {
                    // The layout is no longer eligible to be shown, remove from active layouts.
                    mActiveReachabilityEduLayout.release();
                    mActiveReachabilityEduLayout = null;
                }
                return;