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

Commit 660e70e6 authored by Ivan Podogov's avatar Ivan Podogov Committed by android-build-merger
Browse files

Merge "Fix setRequestedOrientation() freeze on Android Wear." into oc-dev

am: a30fdcb6

Change-Id: I0046647f4f773acb06a1dcdb45d0499ee831ae2a
parents c56a0533 a30fdcb6
Loading
Loading
Loading
Loading
+16 −12
Original line number Diff line number Diff line
@@ -20180,6 +20180,11 @@ public class ActivityManagerService extends IActivityManager.Stub
        mTempConfig.setTo(getGlobalConfiguration());
        final int changes = mTempConfig.updateFrom(values);
        if (changes == 0) {
            // Since calling to Activity.setRequestedOrientation leads to freezing the window with
            // setting WindowManagerService.mWaitingForConfig to true, it is important that we call
            // performDisplayOverrideConfigUpdate in order to send the new display configuration
            // (even if there are no actual changes) to unfreeze the window.
            performDisplayOverrideConfigUpdate(values, deferResume, DEFAULT_DISPLAY);
            return 0;
        }
@@ -20368,12 +20373,9 @@ public class ActivityManagerService extends IActivityManager.Stub
            int displayId) {
        mTempConfig.setTo(mStackSupervisor.getDisplayOverrideConfiguration(displayId));
        final int changes = mTempConfig.updateFrom(values);
        if (changes == 0) {
            return 0;
        }
        Slog.i(TAG, "Override config changes=" + Integer.toHexString(changes) + " " + mTempConfig
                + " for displayId=" + displayId);
        if (changes != 0) {
            Slog.i(TAG, "Override config changes=" + Integer.toHexString(changes) + " "
                    + mTempConfig + " for displayId=" + displayId);
            mStackSupervisor.setDisplayOverrideConfiguration(mTempConfig, displayId);
            final boolean isDensityChange = (changes & ActivityInfo.CONFIG_DENSITY) != 0;
@@ -20381,7 +20383,9 @@ public class ActivityManagerService extends IActivityManager.Stub
                // Reset the unsupported display size dialog.
                mUiHandler.sendEmptyMessage(SHOW_UNSUPPORTED_DISPLAY_SIZE_DIALOG_MSG);
            killAllBackgroundProcessesExcept(N, ActivityManager.PROCESS_STATE_FOREGROUND_SERVICE);
                killAllBackgroundProcessesExcept(N,
                        ActivityManager.PROCESS_STATE_FOREGROUND_SERVICE);
            }
        }
        // Update the configuration with WM first and check if any of the stacks need to be resized