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

Commit 12989f76 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: 33158ac7

parents 1b00ddad 33158ac7
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;