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

Commit df99c779 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

am: 660e70e6

Change-Id: I6926799fd8fb526ba423d6b1df7842c1a33fea2a
parents 92d89fd7 660e70e6
Loading
Loading
Loading
Loading
+16 −12
Original line number Diff line number Diff line
@@ -20159,6 +20159,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;
        }
@@ -20347,12 +20352,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;
@@ -20360,7 +20362,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