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

Commit 1774563e authored by Kriti Dang's avatar Kriti Dang Committed by Android (Google) Code Review
Browse files

Merge "Runtime resolution changes"

parents a805c7e5 ecf14412
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -1147,15 +1147,15 @@ package android.hardware.display {

  public final class DisplayManager {
    method public boolean areUserDisabledHdrTypesAllowed();
    method @RequiresPermission(android.Manifest.permission.MODIFY_USER_PREFERRED_DISPLAY_MODE) public void clearUserPreferredDisplayMode();
    method @RequiresPermission(android.Manifest.permission.MODIFY_USER_PREFERRED_DISPLAY_MODE) public void clearGlobalUserPreferredDisplayMode();
    method @Nullable public android.view.Display.Mode getGlobalUserPreferredDisplayMode();
    method @NonNull public int[] getUserDisabledHdrTypes();
    method @Nullable public android.view.Display.Mode getUserPreferredDisplayMode();
    method public boolean isMinimalPostProcessingRequested(int);
    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setAreUserDisabledHdrTypesAllowed(boolean);
    method @RequiresPermission(android.Manifest.permission.MODIFY_USER_PREFERRED_DISPLAY_MODE) public void setGlobalUserPreferredDisplayMode(@NonNull android.view.Display.Mode);
    method @RequiresPermission(android.Manifest.permission.MODIFY_REFRESH_RATE_SWITCHING_TYPE) public void setRefreshRateSwitchingType(int);
    method @RequiresPermission(android.Manifest.permission.OVERRIDE_DISPLAY_MODE_REQUESTS) public void setShouldAlwaysRespectAppRequestedMode(boolean);
    method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setUserDisabledHdrTypes(@NonNull int[]);
    method @RequiresPermission(android.Manifest.permission.MODIFY_USER_PREFERRED_DISPLAY_MODE) public void setUserPreferredDisplayMode(@NonNull android.view.Display.Mode);
    method @RequiresPermission(android.Manifest.permission.OVERRIDE_DISPLAY_MODE_REQUESTS) public boolean shouldAlwaysRespectAppRequestedMode();
    field public static final int SWITCHING_TYPE_ACROSS_AND_WITHIN_GROUPS = 2; // 0x2
    field public static final int SWITCHING_TYPE_NONE = 0; // 0x0
@@ -2714,11 +2714,14 @@ package android.view {
  }

  public final class Display {
    method @RequiresPermission(android.Manifest.permission.MODIFY_USER_PREFERRED_DISPLAY_MODE) public void clearUserPreferredDisplayMode();
    method @NonNull public android.view.Display.Mode getDefaultMode();
    method @NonNull public int[] getReportedHdrTypes();
    method @NonNull public android.graphics.ColorSpace[] getSupportedWideColorGamut();
    method public int getType();
    method @Nullable public android.view.Display.Mode getUserPreferredDisplayMode();
    method public boolean hasAccess(int);
    method @RequiresPermission(android.Manifest.permission.MODIFY_USER_PREFERRED_DISPLAY_MODE) public void setUserPreferredDisplayMode(@NonNull android.view.Display.Mode);
    field public static final int FLAG_TRUSTED = 128; // 0x80
    field public static final int TYPE_EXTERNAL = 2; // 0x2
    field public static final int TYPE_INTERNAL = 1; // 0x1
@@ -2733,6 +2736,13 @@ package android.view {
    method public boolean matches(int, int, float);
  }

  public static final class Display.Mode.Builder {
    ctor public Display.Mode.Builder();
    method @NonNull public android.view.Display.Mode build();
    method @NonNull public android.view.Display.Mode.Builder setRefreshRate(float);
    method @NonNull public android.view.Display.Mode.Builder setResolution(int, int);
  }

  public class FocusFinder {
    method public static void sort(android.view.View[], int, int, android.view.ViewGroup, boolean);
  }
+2 −0
Original line number Diff line number Diff line
@@ -737,6 +737,8 @@ MissingGetterMatchingBuilder: android.telephony.ims.stub.ImsFeatureConfiguration
    
MissingGetterMatchingBuilder: android.telephony.mbms.DownloadRequest.Builder#setServiceId(String):
    
MissingGetterMatchingBuilder: android.view.Display.Mode.Builder#setResolution(int, int):
    android.view.Display.Mode does not declare a `getResolution()` method matching method android.view.Display.Mode.Builder.setResolution(int,int)


MissingNullability: android.app.Activity#onMovedToDisplay(int, android.content.res.Configuration) parameter #1:
+18 −11
Original line number Diff line number Diff line
@@ -1132,41 +1132,48 @@ public final class DisplayManager {
    }

    /**
     * Sets the default display mode, according to the refresh rate and the resolution chosen by the
     * user.
     *
     * Sets the global default {@link Display.Mode}.  The display mode includes preference for
     * resolution and refresh rate. The mode change is applied globally, i.e. to all the connected
     * displays. If the mode specified is not supported by a connected display, then no mode change
     * occurs for that display.
     *
     * @param mode The {@link Display.Mode} to set, which can include resolution and/or
     * refresh-rate. It is created using {@link Display.Mode.Builder}.
     *`
     * @hide
     */
    @TestApi
    @RequiresPermission(Manifest.permission.MODIFY_USER_PREFERRED_DISPLAY_MODE)
    public void setUserPreferredDisplayMode(@NonNull Display.Mode mode) {
    public void setGlobalUserPreferredDisplayMode(@NonNull Display.Mode mode) {
        // Create a new object containing default values for the unused fields like mode ID and
        // alternative refresh rates.
        Display.Mode preferredMode = new Display.Mode(mode.getPhysicalWidth(),
                mode.getPhysicalHeight(), mode.getRefreshRate());
        mGlobal.setUserPreferredDisplayMode(preferredMode);
        mGlobal.setUserPreferredDisplayMode(Display.INVALID_DISPLAY, preferredMode);
    }

    /**
     * Removes the user preferred display mode.
     * Removes the global user preferred display mode.
     * User preferred display mode is cleared for all the connected displays.
     *
     * @hide
     */
    @TestApi
    @RequiresPermission(Manifest.permission.MODIFY_USER_PREFERRED_DISPLAY_MODE)
    public void clearUserPreferredDisplayMode() {
        mGlobal.setUserPreferredDisplayMode(null);
    public void clearGlobalUserPreferredDisplayMode() {
        mGlobal.setUserPreferredDisplayMode(Display.INVALID_DISPLAY, null);
    }

    /**
     * Returns the user preferred display mode.
     * Returns the global user preferred display mode.
     * If no user preferred mode has been set, or it has been cleared, this method returns null.
     *
     * @hide
     */
    @TestApi
    @Nullable
    public Display.Mode getUserPreferredDisplayMode() {
        return mGlobal.getUserPreferredDisplayMode();
    public Display.Mode getGlobalUserPreferredDisplayMode() {
        return mGlobal.getUserPreferredDisplayMode(Display.INVALID_DISPLAY);
    }

    /**
+4 −4
Original line number Diff line number Diff line
@@ -896,9 +896,9 @@ public final class DisplayManagerGlobal {
     * Sets the default display mode, according to the refresh rate and the resolution chosen by the
     * user.
     */
    public void setUserPreferredDisplayMode(Display.Mode mode) {
    public void setUserPreferredDisplayMode(int displayId, Display.Mode mode) {
        try {
            mDm.setUserPreferredDisplayMode(mode);
            mDm.setUserPreferredDisplayMode(displayId, mode);
        } catch (RemoteException ex) {
            throw ex.rethrowFromSystemServer();
        }
@@ -907,9 +907,9 @@ public final class DisplayManagerGlobal {
    /**
     * Returns the user preferred display mode.
     */
    public Display.Mode getUserPreferredDisplayMode() {
    public Display.Mode getUserPreferredDisplayMode(int displayId) {
        try {
            return mDm.getUserPreferredDisplayMode();
            return mDm.getUserPreferredDisplayMode(displayId);
        } catch (RemoteException ex) {
            throw ex.rethrowFromSystemServer();
        }
+2 −2
Original line number Diff line number Diff line
@@ -166,8 +166,8 @@ interface IDisplayManager {

    // Sets the user preferred display mode.
    // Requires MODIFY_USER_PREFERRED_DISPLAY_MODE permission.
    void setUserPreferredDisplayMode(in Mode mode);
    Mode getUserPreferredDisplayMode();
    void setUserPreferredDisplayMode(int displayId, in Mode mode);
    Mode getUserPreferredDisplayMode(int displayId);

    // When enabled the app requested display resolution and refresh rate is always selected
    // in DisplayModeDirector regardless of user settings and policies for low brightness, low
Loading