Hdr format settings [UX]
Adding new APIs in display manager to get the user disabled formats, to get the formats supported by device and get formats reported by display. Bug: 172905239 Test: N/A Change-Id: I58a7714f03a3e165bbd22f2fa7a021ad90b41b39
This commit is contained in:
@@ -1138,6 +1138,7 @@ package android.hardware.display {
|
|||||||
public final class DisplayManager {
|
public final class DisplayManager {
|
||||||
method public boolean areUserDisabledHdrTypesAllowed();
|
method public boolean areUserDisabledHdrTypesAllowed();
|
||||||
method @RequiresPermission(android.Manifest.permission.MODIFY_REFRESH_RATE_SWITCHING_TYPE) public int getRefreshRateSwitchingType();
|
method @RequiresPermission(android.Manifest.permission.MODIFY_REFRESH_RATE_SWITCHING_TYPE) public int getRefreshRateSwitchingType();
|
||||||
|
method @NonNull public int[] getUserDisabledHdrTypes();
|
||||||
method public boolean isMinimalPostProcessingRequested(int);
|
method public boolean isMinimalPostProcessingRequested(int);
|
||||||
method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setAreUserDisabledHdrTypesAllowed(boolean);
|
method @RequiresPermission(android.Manifest.permission.WRITE_SECURE_SETTINGS) public void setAreUserDisabledHdrTypesAllowed(boolean);
|
||||||
method @RequiresPermission(android.Manifest.permission.MODIFY_REFRESH_RATE_SWITCHING_TYPE) public void setRefreshRateSwitchingType(int);
|
method @RequiresPermission(android.Manifest.permission.MODIFY_REFRESH_RATE_SWITCHING_TYPE) public void setRefreshRateSwitchingType(int);
|
||||||
@@ -2595,6 +2596,7 @@ package android.view {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public final class Display {
|
public final class Display {
|
||||||
|
method @NonNull public int[] getReportedHdrTypes();
|
||||||
method @NonNull public android.graphics.ColorSpace[] getSupportedWideColorGamut();
|
method @NonNull public android.graphics.ColorSpace[] getSupportedWideColorGamut();
|
||||||
method public int getType();
|
method public int getType();
|
||||||
method public boolean hasAccess(int);
|
method public boolean hasAccess(int);
|
||||||
|
|||||||
@@ -747,6 +747,17 @@ public final class DisplayManager {
|
|||||||
return mGlobal.areUserDisabledHdrTypesAllowed();
|
return mGlobal.areUserDisabledHdrTypesAllowed();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the HDR formats disabled by the user.
|
||||||
|
*
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
@TestApi
|
||||||
|
public @NonNull int[] getUserDisabledHdrTypes() {
|
||||||
|
return mGlobal.getUserDisabledHdrTypes();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a virtual display.
|
* Creates a virtual display.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -551,6 +551,18 @@ public final class DisplayManagerGlobal {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the HDR formats disabled by the user.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public int[] getUserDisabledHdrTypes() {
|
||||||
|
try {
|
||||||
|
return mDm.getUserDisabledHdrTypes();
|
||||||
|
} catch (RemoteException ex) {
|
||||||
|
throw ex.rethrowFromSystemServer();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void requestColorMode(int displayId, int colorMode) {
|
public void requestColorMode(int displayId, int colorMode) {
|
||||||
try {
|
try {
|
||||||
mDm.requestColorMode(displayId, colorMode);
|
mDm.requestColorMode(displayId, colorMode);
|
||||||
|
|||||||
@@ -77,6 +77,9 @@ interface IDisplayManager {
|
|||||||
// No permissions required.
|
// No permissions required.
|
||||||
boolean areUserDisabledHdrTypesAllowed();
|
boolean areUserDisabledHdrTypesAllowed();
|
||||||
|
|
||||||
|
// No permissions required.
|
||||||
|
int[] getUserDisabledHdrTypes();
|
||||||
|
|
||||||
// Requires CONFIGURE_DISPLAY_COLOR_MODE
|
// Requires CONFIGURE_DISPLAY_COLOR_MODE
|
||||||
void requestColorMode(int displayId, int colorMode);
|
void requestColorMode(int displayId, int colorMode);
|
||||||
|
|
||||||
|
|||||||
@@ -1095,6 +1095,22 @@ public final class Display {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @hide
|
||||||
|
* Returns the display's HDR supported types.
|
||||||
|
*
|
||||||
|
* @see #isHdr()
|
||||||
|
* @see HdrCapabilities#getSupportedHdrTypes()
|
||||||
|
*/
|
||||||
|
@TestApi
|
||||||
|
@NonNull
|
||||||
|
public int[] getReportedHdrTypes() {
|
||||||
|
synchronized (mLock) {
|
||||||
|
updateDisplayInfoLocked();
|
||||||
|
return mDisplayInfo.hdrCapabilities.getSupportedHdrTypes();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns whether this display supports any HDR type.
|
* Returns whether this display supports any HDR type.
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -2479,6 +2479,11 @@ public final class DisplayManagerService extends SystemService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override // Binder call
|
||||||
|
public int[] getUserDisabledHdrTypes() {
|
||||||
|
return mUserDisabledHdrTypes;
|
||||||
|
}
|
||||||
|
|
||||||
@Override // Binder call
|
@Override // Binder call
|
||||||
public void requestColorMode(int displayId, int colorMode) {
|
public void requestColorMode(int displayId, int colorMode) {
|
||||||
mContext.enforceCallingOrSelfPermission(
|
mContext.enforceCallingOrSelfPermission(
|
||||||
|
|||||||
Reference in New Issue
Block a user