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

Commit 1c101906 authored by Riddle Hsu's avatar Riddle Hsu
Browse files

RESTRICT AUTOMERGE Force screen freezing timeout to unfreeze

To avoid problematical app keeps relaunching that may block
removing the screenshot.

Also sync event log from [1] to clarify app behavior.

[1]: I7dd937f7e56cd6229801b385456fccb9a73791b8

Bug: 271674690
Test: Enter split screen with a sample app. It will call
      setRequestedOrientation with different orientations in a loop.
      Rotate device. The animation should still play after 2s.
Change-Id: I8c79bcc753d1d5c62b867259f670abfba1c6fb46
parent 9f724554
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -696,6 +696,8 @@ class ActivityClientController extends IActivityClientController.Stub {
            synchronized (mGlobalLock) {
                final ActivityRecord r = ActivityRecord.isInRootTaskLocked(token);
                if (r != null) {
                    EventLogTags.writeWmSetRequestedOrientation(requestedOrientation,
                            r.shortComponentName);
                    r.setRequestedOrientation(requestedOrientation);
                }
            }
+5 −1
Original line number Diff line number Diff line
# See system/core/logcat/event.logtags for a description of the format of this file.
# See system/logging/logcat/event.logtags for a description of the format of this file.

option java_package com.android.server.wm

@@ -62,6 +62,10 @@ option java_package com.android.server.wm
31002 wm_task_moved (TaskId|1|5),(ToTop|1),(Index|1)
# Task removed with source explanation.
31003 wm_task_removed (TaskId|1|5),(Reason|3)

# Set the requested orientation of an activity.
31006 wm_set_requested_orientation (Orientation|1|5),(Component Name|3)

# bootanim finished:
31007 wm_boot_animation_done (time|2|3)

+4 −3
Original line number Diff line number Diff line
@@ -6198,9 +6198,10 @@ public class WindowManagerService extends IWindowManager.Stub
            waitingForConfig = waitingForRemoteDisplayChange = false;
            numOpeningApps = 0;
        }
        if (waitingForConfig || waitingForRemoteDisplayChange || mAppsFreezingScreen > 0
                || mWindowsFreezingScreen == WINDOWS_FREEZING_SCREENS_ACTIVE
                || mClientFreezingScreen || numOpeningApps > 0) {
        final boolean waitingForApps = mWindowsFreezingScreen != WINDOWS_FREEZING_SCREENS_TIMEOUT
                && (mAppsFreezingScreen > 0 || numOpeningApps > 0);
        if (waitingForConfig || waitingForRemoteDisplayChange || waitingForApps
                || mClientFreezingScreen) {
            ProtoLog.d(WM_DEBUG_ORIENTATION, "stopFreezingDisplayLocked: Returning "
                    + "waitingForConfig=%b, waitingForRemoteDisplayChange=%b, "
                    + "mAppsFreezingScreen=%d, mWindowsFreezingScreen=%d, "