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

Commit f867733d authored by Bryce Lee's avatar Bryce Lee Committed by Android (Google) Code Review
Browse files

Merge "Revert "Coordinate configuration changes and window frame size."" into oc-dev

parents 09d06437 46b01655
Loading
Loading
Loading
Loading
+3 −82
Original line number Diff line number Diff line
@@ -16,7 +16,10 @@

package android.content.res;

import android.graphics.Point;
import android.graphics.Rect;
import android.util.DisplayMetrics;
import android.view.Display;
import android.view.DisplayInfo;
import com.android.internal.util.XmlUtils;

@@ -42,12 +45,6 @@ import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.Locale;

import static android.view.Surface.ROTATION_UNDEFINED;
import static android.view.Surface.ROTATION_0;
import static android.view.Surface.ROTATION_90;
import static android.view.Surface.ROTATION_180;
import static android.view.Surface.ROTATION_270;

/**
 * This class describes all device configuration information that can
 * impact the resources the application retrieves.  This includes both
@@ -603,13 +600,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
     */
    public int orientation;

    /**
     * The rotation used at the time orientation was determined.
     * TODO(b/36812336): Move rotation out of {@link Configuration}.
     * {@hide}
     */
    private int rotation;

    /** Constant for {@link #uiMode}: bits that encode the mode type. */
    public static final int UI_MODE_TYPE_MASK = 0x0f;
    /** Constant for {@link #uiMode}: a {@link #UI_MODE_TYPE_MASK}
@@ -897,7 +887,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
        navigation = o.navigation;
        navigationHidden = o.navigationHidden;
        orientation = o.orientation;
        rotation = o.rotation;
        screenLayout = o.screenLayout;
        colorMode = o.colorMode;
        uiMode = o.uiMode;
@@ -1001,14 +990,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
            case ORIENTATION_PORTRAIT: sb.append(" port"); break;
            default: sb.append(" orien="); sb.append(orientation); break;
        }
        switch (rotation) {
            case ROTATION_UNDEFINED: sb.append(" ?rotation"); break;
            case ROTATION_0: sb.append(" rot0"); break;
            case ROTATION_90: sb.append(" rot90"); break;
            case ROTATION_180: sb.append(" rot180"); break;
            case ROTATION_270: sb.append(" rot270"); break;
            default: sb.append(" rot="); sb.append(rotation); break;
        }
        switch ((uiMode&UI_MODE_TYPE_MASK)) {
            case UI_MODE_TYPE_UNDEFINED: sb.append(" ?uimode"); break;
            case UI_MODE_TYPE_NORMAL: /* normal is not interesting to print */ break;
@@ -1096,7 +1077,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
        navigation = NAVIGATION_UNDEFINED;
        navigationHidden = NAVIGATIONHIDDEN_UNDEFINED;
        orientation = ORIENTATION_UNDEFINED;
        rotation = ROTATION_UNDEFINED;
        screenLayout = SCREENLAYOUT_UNDEFINED;
        colorMode = COLOR_MODE_UNDEFINED;
        uiMode = UI_MODE_TYPE_UNDEFINED;
@@ -1205,11 +1185,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
            changed |= ActivityInfo.CONFIG_ORIENTATION;
            orientation = delta.orientation;
        }
        if (delta.rotation != ROTATION_UNDEFINED
                && rotation != delta.rotation) {
            changed |= ActivityInfo.CONFIG_ORIENTATION;
            rotation = delta.rotation;
        }

        if (((delta.screenLayout & SCREENLAYOUT_SIZE_MASK) != SCREENLAYOUT_SIZE_UNDEFINED)
                && (delta.screenLayout & SCREENLAYOUT_SIZE_MASK)
@@ -1404,10 +1379,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
                && orientation != delta.orientation) {
            changed |= ActivityInfo.CONFIG_ORIENTATION;
        }
        if ((compareUndefined || delta.rotation != ROTATION_UNDEFINED)
                && rotation != delta.rotation) {
            changed |= ActivityInfo.CONFIG_ORIENTATION;
        }
        if ((compareUndefined || getScreenLayoutNoDirection(delta.screenLayout) !=
                (SCREENLAYOUT_SIZE_UNDEFINED | SCREENLAYOUT_LONG_UNDEFINED))
                && getScreenLayoutNoDirection(screenLayout) !=
@@ -1544,7 +1515,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
        dest.writeInt(navigation);
        dest.writeInt(navigationHidden);
        dest.writeInt(orientation);
        dest.writeInt(rotation);
        dest.writeInt(screenLayout);
        dest.writeInt(colorMode);
        dest.writeInt(uiMode);
@@ -1581,7 +1551,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
        navigation = source.readInt();
        navigationHidden = source.readInt();
        orientation = source.readInt();
        rotation = source.readInt();
        screenLayout = source.readInt();
        colorMode = source.readInt();
        uiMode = source.readInt();
@@ -1666,8 +1635,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
        if (n != 0) return n;
        n = this.orientation - that.orientation;
        if (n != 0) return n;
        n = this.rotation - that.rotation;
        if (n != 0) return n;
        n = this.colorMode - that.colorMode;
        if (n != 0) return n;
        n = this.screenLayout - that.screenLayout;
@@ -1796,24 +1763,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
        appBounds.set(left, top, right, bottom);
    }

    /**
     * @hide
     *
     * Setter for orientation converts from {@link Surface} values to internal representation.
     */
    public void setRotation(int rotation) {
        this.rotation = rotation;
    }

    /**
     * @hide
     *
     * Getter for orientation. Converts from internal representation to  {@link Surface} values.
     */
    public int getRotation() {
        return rotation != ROTATION_UNDEFINED ? rotation : ROTATION_0;
    }

    /**
     * @hide
     *
@@ -2051,23 +2000,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
                break;
        }

        switch (config.rotation) {
            case ROTATION_0:
                parts.add("rot0");
                break;
            case ROTATION_90:
                parts.add("rot90");
                break;
            case ROTATION_180:
                parts.add("rot180");
                break;
            case ROTATION_270:
                parts.add("rot270");
                break;
            default:
                break;
        }

        switch (config.uiMode & Configuration.UI_MODE_TYPE_MASK) {
            case Configuration.UI_MODE_TYPE_APPLIANCE:
                parts.add("appliance");
@@ -2262,10 +2194,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
            delta.orientation = change.orientation;
        }

        if (base.rotation != change.rotation) {
            base.rotation = change.rotation;
        }

        if ((base.screenLayout & SCREENLAYOUT_SIZE_MASK) !=
                (change.screenLayout & SCREENLAYOUT_SIZE_MASK)) {
            delta.screenLayout |= change.screenLayout & SCREENLAYOUT_SIZE_MASK;
@@ -2337,7 +2265,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
    private static final String XML_ATTR_NAVIGATION = "nav";
    private static final String XML_ATTR_NAVIGATION_HIDDEN = "navHid";
    private static final String XML_ATTR_ORIENTATION = "ori";
    private static final String XML_ATTR_ROTATION = "rot";
    private static final String XML_ATTR_SCREEN_LAYOUT = "scrLay";
    private static final String XML_ATTR_COLOR_MODE = "clrMod";
    private static final String XML_ATTR_UI_MODE = "ui";
@@ -2397,8 +2324,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
                DENSITY_DPI_UNDEFINED);
        configOut.appBounds =
            Rect.unflattenFromString(XmlUtils.readStringAttribute(parser, XML_ATTR_APP_BOUNDS));
        configOut.rotation = XmlUtils.readIntAttribute(parser, XML_ATTR_ROTATION,
                ROTATION_UNDEFINED);

        // For persistence, we don't care about assetsSeq, so do not read it out.
    }
@@ -2475,10 +2400,6 @@ public final class Configuration implements Parcelable, Comparable<Configuration
                config.appBounds.flattenToString());
        }

        if (config.rotation != ROTATION_UNDEFINED) {
            XmlUtils.writeIntAttribute(xml, XML_ATTR_ROTATION, config.rotation);
        }

        // For persistence, we do not care about assetsSeq, so do not write it out.
    }
}
+1 −1
Original line number Diff line number Diff line
@@ -96,7 +96,7 @@ interface IWindowSession {
            int flags, out Rect outFrame, out Rect outOverscanInsets,
            out Rect outContentInsets, out Rect outVisibleInsets, out Rect outStableInsets,
            out Rect outOutsets, out Rect outBackdropFrame,
            inout MergedConfiguration mergedConfiguration, out Surface outSurface);
            out MergedConfiguration outMergedConfiguration, out Surface outSurface);

    /*
     * Notify the window manager that an application is relaunching and
+1 −7
Original line number Diff line number Diff line
@@ -129,16 +129,10 @@ public class Surface implements Parcelable {
    public static final int SCALING_MODE_NO_SCALE_CROP = 3;

    /** @hide */
    @IntDef({ROTATION_UNDEFINED, ROTATION_0, ROTATION_90, ROTATION_180, ROTATION_270})
    @IntDef({ROTATION_0, ROTATION_90, ROTATION_180, ROTATION_270})
    @Retention(RetentionPolicy.SOURCE)
    public @interface Rotation {}

    /**
     * Rotation constant: undefined
     * @hide
     */
    public static final int ROTATION_UNDEFINED = -1;

    /**
     * Rotation constant: 0 degree rotation (natural orientation)
     */
+3 −17
Original line number Diff line number Diff line
@@ -1845,12 +1845,8 @@ public final class ViewRootImpl implements ViewParent,

        final boolean isViewVisible = viewVisibility == View.VISIBLE;
        final boolean windowRelayoutWasForced = mForceNextWindowRelayout;
        final int contextConfigSeq = mContext.getResources().getConfiguration().seq;
        final int lastConfigSeq = mLastReportedMergedConfiguration.getMergedConfiguration().seq;
        final boolean staleConfig = lastConfigSeq != 0 && contextConfigSeq != lastConfigSeq;

        if (mFirst || windowShouldResize || insetsChanged || staleConfig || viewVisibilityChanged
                || params != null || mForceNextWindowRelayout) {
        if (mFirst || windowShouldResize || insetsChanged ||
                viewVisibilityChanged || params != null || mForceNextWindowRelayout) {
            mForceNextWindowRelayout = false;

            if (isViewVisible) {
@@ -6087,13 +6083,7 @@ public final class ViewRootImpl implements ViewParent,
        if (params != null) {
            if (DBG) Log.d(mTag, "WindowLayout in layoutWindow:" + params);
        }

        if (mPendingMergedConfiguration.getMergedConfiguration().seq == 0) {
            mPendingMergedConfiguration.setTo(mLastReportedMergedConfiguration);
        }

        int initialConfigSeq = mPendingMergedConfiguration.getMergedConfiguration().seq;

        mPendingMergedConfiguration.getMergedConfiguration().seq = 0;
        //Log.d(mTag, ">>>>>> CALLING relayout");
        if (params != null && mOrigWindowType != params.type) {
            // For compatibility with old apps, don't crash here.
@@ -6112,10 +6102,6 @@ public final class ViewRootImpl implements ViewParent,
                mPendingStableInsets, mPendingOutsets, mPendingBackDropFrame,
                mPendingMergedConfiguration, mSurface);

        if (initialConfigSeq == mPendingMergedConfiguration.getMergedConfiguration().seq) {
            mPendingMergedConfiguration.getMergedConfiguration().seq = 0;
        }

        mPendingAlwaysConsumeNavBar =
                (relayoutResult & WindowManagerGlobal.RELAYOUT_RES_CONSUME_ALWAYS_NAV_BAR) != 0;

+0 −2
Original line number Diff line number Diff line
@@ -1162,8 +1162,6 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo
        final int dh = displayInfo.logicalHeight;
        config.orientation = (dw <= dh) ? Configuration.ORIENTATION_PORTRAIT :
                Configuration.ORIENTATION_LANDSCAPE;
        config.setRotation(displayInfo.rotation);

        config.screenWidthDp =
                (int)(mService.mPolicy.getConfigDisplayWidth(dw, dh, displayInfo.rotation,
                        config.uiMode, mDisplayId) / mDisplayMetrics.density);
Loading