summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Ram Indani <ramindani@google.com> 2024-12-17 16:59:49 -0800
committer Android (Google) Code Review <android-gerrit@google.com> 2024-12-17 16:59:49 -0800
commit61bf4eb0481dc6cfa57f1b41c60573d338ffedb9 (patch)
tree8f17395b13be9810e16ea39e14291da762cc6932
parent3336c5faeb404adfef1fd298df76f7e7e914f573 (diff)
parent01ef8b4b33b5d6f63f92ffb7c74e3e6cc11d32d6 (diff)
Merge "FRAME_RATE_COMPATIBILITY_GTE renamed to FRAME_RATE_COMPATIBILITY_AT_LEAST" into main
-rw-r--r--core/api/current.txt2
-rw-r--r--core/java/android/view/Surface.java9
-rw-r--r--core/java/android/view/View.java4
-rw-r--r--core/java/android/view/ViewRootImpl.java6
-rw-r--r--core/tests/coretests/src/android/view/ViewRootImplTest.java12
-rw-r--r--tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/GraphicsActivity.java2
-rw-r--r--tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/SurfaceControlTest.java3
7 files changed, 20 insertions, 18 deletions
diff --git a/core/api/current.txt b/core/api/current.txt
index 91b53fc77e6e..144536219d43 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -53482,9 +53482,9 @@ package android.view {
field public static final int CHANGE_FRAME_RATE_ALWAYS = 1; // 0x1
field public static final int CHANGE_FRAME_RATE_ONLY_IF_SEAMLESS = 0; // 0x0
field @NonNull public static final android.os.Parcelable.Creator<android.view.Surface> CREATOR;
+ field @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_gte_enum") public static final int FRAME_RATE_COMPATIBILITY_AT_LEAST = 2; // 0x2
field public static final int FRAME_RATE_COMPATIBILITY_DEFAULT = 0; // 0x0
field public static final int FRAME_RATE_COMPATIBILITY_FIXED_SOURCE = 1; // 0x1
- field @FlaggedApi("com.android.graphics.surfaceflinger.flags.arr_setframerate_gte_enum") public static final int FRAME_RATE_COMPATIBILITY_GTE = 2; // 0x2
field public static final int ROTATION_0 = 0; // 0x0
field public static final int ROTATION_180 = 2; // 0x2
field public static final int ROTATION_270 = 3; // 0x3
diff --git a/core/java/android/view/Surface.java b/core/java/android/view/Surface.java
index 6e6e87bb9403..4fc1cfc0ca82 100644
--- a/core/java/android/view/Surface.java
+++ b/core/java/android/view/Surface.java
@@ -206,7 +206,8 @@ public class Surface implements Parcelable {
@Retention(RetentionPolicy.SOURCE)
@IntDef(prefix = {"FRAME_RATE_COMPATIBILITY_"},
value = {FRAME_RATE_COMPATIBILITY_DEFAULT, FRAME_RATE_COMPATIBILITY_FIXED_SOURCE,
- FRAME_RATE_COMPATIBILITY_GTE})
+ FRAME_RATE_COMPATIBILITY_AT_LEAST, FRAME_RATE_COMPATIBILITY_EXACT,
+ FRAME_RATE_COMPATIBILITY_MIN})
public @interface FrameRateCompatibility {}
// From native_window.h. Keep these in sync.
@@ -219,7 +220,7 @@ public class Surface implements Parcelable {
* In Android version {@link Build.VERSION_CODES#BAKLAVA} and above, use
* {@link FRAME_RATE_COMPATIBILITY_DEFAULT} for game content.
* For other cases, see {@link FRAME_RATE_COMPATIBILITY_FIXED_SOURCE} and
- * {@link FRAME_RATE_COMPATIBILITY_GTE}.
+ * {@link FRAME_RATE_COMPATIBILITY_AT_LEAST}.
*/
public static final int FRAME_RATE_COMPATIBILITY_DEFAULT = 0;
@@ -234,7 +235,7 @@ public class Surface implements Parcelable {
public static final int FRAME_RATE_COMPATIBILITY_FIXED_SOURCE = 1;
/**
- * The surface requests a frame rate that is greater than or equal to the specified frame rate.
+ * The surface requests a frame rate that is at least the specified frame rate.
* This value should be used for UIs, animations, scrolling and fling, and anything that is not
* a game or video.
*
@@ -242,7 +243,7 @@ public class Surface implements Parcelable {
* {@link FRAME_RATE_COMPATIBILITY_DEFAULT}.
*/
@FlaggedApi(com.android.graphics.surfaceflinger.flags.Flags.FLAG_ARR_SETFRAMERATE_GTE_ENUM)
- public static final int FRAME_RATE_COMPATIBILITY_GTE = 2;
+ public static final int FRAME_RATE_COMPATIBILITY_AT_LEAST = 2;
/**
* This surface belongs to an app on the High Refresh Rate Deny list, and needs the display
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index d13f0e21bf80..8f8bfe2865a9 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -27,7 +27,7 @@ import static android.view.Surface.FRAME_RATE_CATEGORY_LOW;
import static android.view.Surface.FRAME_RATE_CATEGORY_NORMAL;
import static android.view.Surface.FRAME_RATE_CATEGORY_NO_PREFERENCE;
import static android.view.Surface.FRAME_RATE_COMPATIBILITY_FIXED_SOURCE;
-import static android.view.Surface.FRAME_RATE_COMPATIBILITY_GTE;
+import static android.view.Surface.FRAME_RATE_COMPATIBILITY_AT_LEAST;
import static android.view.WindowManager.LayoutParams.TYPE_INPUT_METHOD;
import static android.view.accessibility.AccessibilityEvent.CONTENT_CHANGE_TYPE_UNDEFINED;
import static android.view.accessibility.Flags.FLAG_DEPRECATE_ACCESSIBILITY_ANNOUNCEMENT_APIS;
@@ -34251,7 +34251,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
compatibility = FRAME_RATE_COMPATIBILITY_FIXED_SOURCE;
frameRateToSet = frameRate;
} else {
- compatibility = FRAME_RATE_COMPATIBILITY_GTE;
+ compatibility = FRAME_RATE_COMPATIBILITY_AT_LEAST;
frameRateToSet = velocityFrameRate;
}
viewRootImpl.votePreferredFrameRate(frameRateToSet, compatibility);
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index ec1650947aec..16cdb64f62cc 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -38,7 +38,7 @@ import static android.view.Surface.FRAME_RATE_CATEGORY_LOW;
import static android.view.Surface.FRAME_RATE_CATEGORY_NORMAL;
import static android.view.Surface.FRAME_RATE_CATEGORY_NO_PREFERENCE;
import static android.view.Surface.FRAME_RATE_COMPATIBILITY_FIXED_SOURCE;
-import static android.view.Surface.FRAME_RATE_COMPATIBILITY_GTE;
+import static android.view.Surface.FRAME_RATE_COMPATIBILITY_AT_LEAST;
import static android.view.View.FRAME_RATE_CATEGORY_REASON_BOOST;
import static android.view.View.FRAME_RATE_CATEGORY_REASON_CONFLICTED;
import static android.view.View.FRAME_RATE_CATEGORY_REASON_INTERMITTENT;
@@ -13272,7 +13272,7 @@ public final class ViewRootImpl implements ViewParent,
* We set category to HIGH if the maximum frame rate is greater than 60.
* Otherwise, we set category to NORMAL.
*
- * Use FRAME_RATE_COMPATIBILITY_GTE for velocity and FRAME_RATE_COMPATIBILITY_FIXED_SOURCE
+ * Use FRAME_RATE_COMPATIBILITY_AT_LEAST for velocity and FRAME_RATE_COMPATIBILITY_FIXED_SOURCE
* for TextureView video play and user requested frame rate.
*
* @param frameRate the preferred frame rate of a View
@@ -13283,7 +13283,7 @@ public final class ViewRootImpl implements ViewParent,
if (frameRate <= 0) {
return;
}
- if (frameRateCompatibility == FRAME_RATE_COMPATIBILITY_GTE && !mIsPressedGesture) {
+ if (frameRateCompatibility == FRAME_RATE_COMPATIBILITY_AT_LEAST && !mIsPressedGesture) {
mIsTouchBoosting = false;
mIsFrameRateBoosting = false;
if (!sToolkitFrameRateVelocityMappingReadOnlyFlagValue) {
diff --git a/core/tests/coretests/src/android/view/ViewRootImplTest.java b/core/tests/coretests/src/android/view/ViewRootImplTest.java
index ed9fc1c9e547..18ab52dba8f3 100644
--- a/core/tests/coretests/src/android/view/ViewRootImplTest.java
+++ b/core/tests/coretests/src/android/view/ViewRootImplTest.java
@@ -25,7 +25,7 @@ import static android.view.Surface.FRAME_RATE_CATEGORY_HIGH_HINT;
import static android.view.Surface.FRAME_RATE_CATEGORY_LOW;
import static android.view.Surface.FRAME_RATE_CATEGORY_NORMAL;
import static android.view.Surface.FRAME_RATE_COMPATIBILITY_FIXED_SOURCE;
-import static android.view.Surface.FRAME_RATE_COMPATIBILITY_GTE;
+import static android.view.Surface.FRAME_RATE_COMPATIBILITY_AT_LEAST;
import static android.view.View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
import static android.view.View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN;
import static android.view.View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION;
@@ -861,10 +861,10 @@ public class ViewRootImplTest {
assertEquals(mViewRootImpl.getFrameRateCompatibility(),
FRAME_RATE_COMPATIBILITY_FIXED_SOURCE);
assertFalse(mViewRootImpl.isFrameRateConflicted());
- mViewRootImpl.votePreferredFrameRate(24, FRAME_RATE_COMPATIBILITY_GTE);
+ mViewRootImpl.votePreferredFrameRate(24, FRAME_RATE_COMPATIBILITY_AT_LEAST);
if (toolkitFrameRateVelocityMappingReadOnly()) {
assertEquals(24, mViewRootImpl.getPreferredFrameRate(), 0.1);
- assertEquals(FRAME_RATE_COMPATIBILITY_GTE,
+ assertEquals(FRAME_RATE_COMPATIBILITY_AT_LEAST,
mViewRootImpl.getFrameRateCompatibility());
assertFalse(mViewRootImpl.isFrameRateConflicted());
} else {
@@ -888,10 +888,10 @@ public class ViewRootImplTest {
sInstrumentation.runOnMainSync(() -> {
assertFalse(mViewRootImpl.isFrameRateConflicted());
- mViewRootImpl.votePreferredFrameRate(60, FRAME_RATE_COMPATIBILITY_GTE);
+ mViewRootImpl.votePreferredFrameRate(60, FRAME_RATE_COMPATIBILITY_AT_LEAST);
if (toolkitFrameRateVelocityMappingReadOnly()) {
assertEquals(60, mViewRootImpl.getPreferredFrameRate(), 0.1);
- assertEquals(FRAME_RATE_COMPATIBILITY_GTE,
+ assertEquals(FRAME_RATE_COMPATIBILITY_AT_LEAST,
mViewRootImpl.getFrameRateCompatibility());
} else {
assertEquals(FRAME_RATE_CATEGORY_HIGH,
@@ -904,7 +904,7 @@ public class ViewRootImplTest {
mViewRootImpl.getFrameRateCompatibility());
// Should be false since 60 is a divisor of 120.
assertFalse(mViewRootImpl.isFrameRateConflicted());
- mViewRootImpl.votePreferredFrameRate(60, FRAME_RATE_COMPATIBILITY_GTE);
+ mViewRootImpl.votePreferredFrameRate(60, FRAME_RATE_COMPATIBILITY_AT_LEAST);
assertEquals(120, mViewRootImpl.getPreferredFrameRate(), 0.1);
// compatibility should be remained the same (FRAME_RATE_COMPATIBILITY_FIXED_SOURCE)
// since the frame rate 60 is smaller than 120.
diff --git a/tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/GraphicsActivity.java b/tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/GraphicsActivity.java
index 700856c50bae..14c8de8db5fc 100644
--- a/tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/GraphicsActivity.java
+++ b/tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/GraphicsActivity.java
@@ -819,7 +819,7 @@ public class GraphicsActivity extends Activity {
private List<Float> getExpectedFrameRateForCompatibility(int compatibility) {
assumeTrue("**** testSurfaceControlFrameRateCompatibility SKIPPED for compatibility "
+ compatibility,
- compatibility == Surface.FRAME_RATE_COMPATIBILITY_GTE);
+ compatibility == Surface.FRAME_RATE_COMPATIBILITY_AT_LEAST);
Display display = getDisplay();
List<Float> expectedFrameRates = getRefreshRates(display.getMode(), display)
diff --git a/tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/SurfaceControlTest.java b/tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/SurfaceControlTest.java
index 4d4827676c74..f1d4dc6b8faf 100644
--- a/tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/SurfaceControlTest.java
+++ b/tests/CtsSurfaceControlTestsStaging/src/main/java/android/view/surfacecontroltests/SurfaceControlTest.java
@@ -85,7 +85,8 @@ public class SurfaceControlTest {
@Test
public void testSurfaceControlFrameRateCompatibilityGte() throws InterruptedException {
GraphicsActivity activity = mActivityRule.getActivity();
- activity.testSurfaceControlFrameRateCompatibility(Surface.FRAME_RATE_COMPATIBILITY_GTE);
+ activity.testSurfaceControlFrameRateCompatibility(
+ Surface.FRAME_RATE_COMPATIBILITY_AT_LEAST);
}
@Test