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

Commit 24213321 authored by Nick Chameyev's avatar Nick Chameyev Committed by Gerrit Code Review
Browse files

Merge "Fix stuck screen from display change timeout"

parents ac189d4a 1e022839
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -114,10 +114,16 @@ public class RemoteDisplayChangeController {
        // timed-out, so run all continue callbacks and clear the list
        synchronized (mService.mGlobalLock) {
            for (int i = 0; i < mCallbacks.size(); ++i) {
                mCallbacks.get(i).onContinueRemoteDisplayChange(null /* transaction */);
            }
                final ContinueRemoteDisplayChangeCallback callback = mCallbacks.get(i);
                if (i == mCallbacks.size() - 1) {
                    // Clear all callbacks before calling the last one, so that if the callback
                    // itself calls {@link #isWaitingForRemoteDisplayChange()}, it will get
                    // {@code false}. After all, there is nothing pending after this one.
                    mCallbacks.clear();
                }
                callback.onContinueRemoteDisplayChange(null /* transaction */);
            }
        }
    }

    private void continueDisplayChange(@NonNull ContinueRemoteDisplayChangeCallback callback,