summaryrefslogtreecommitdiff
path: root/native/android/surface_control.cpp
AgeCommit message (Collapse)Author
2020-02-17Add compatibility param to setFrameRate() apiSteven Thomas
Add a compatiblity param to the setFrameRate() api, so the system has more info to decide the device frame rate when there are multiple competing preferences. I also changed the plumbing for setFrameRate() to go directly to surface flinger, instead of through buffer queue. We're trying to avoid changes to buffer queue code, to avoid disturbing the prebuilts. Bug: 137287430 Test: Added new cts tests to verify behavior of the compatibility param. cts-tradefed run commandAndExit cts-dev --module CtsGraphicsTestCases --test android.graphics.cts.SetFrameRateTest Test: /data/nativetest64/SurfaceFlinger_test/SurfaceFlinger_test --gtest_filter='SetFrameRateTest.*' Change-Id: I9123afee2ba63d01ff35fb2b257a1ee0e4928ddd
2020-01-29Pass back frame event statsValerie Hau
Adding frame event stats to SurfaceControlStats Not exposing to ASurfaceControlStats Bug: 141939081 Test: build, boot Change-Id: If64056514be6b5161d52f5e8c2cc499bd8389099
2020-01-22Add setFrameRate() apiSteven Thomas
setFrameRate() is a new api in Android 11 that will enable apps to specify their intended frame rate. Bug: 143912624 Bug: 137287430 Test: Added a new CTS test - android.graphics.cts.SetFrameRateTest. Change-Id: I922573c0d704e2e0ce4cfc2a462f14dce8cb7a79
2019-10-21Adding transformHint to callbacksValerie Hau
Bug: 141939598, 133512804 Test: build, boot, manual Change-Id: I58411368e5187b3a23eb9e8ac9abbf1cb1a5d97e
2019-08-26Do not crash on invalid dataspaceValerie Hau
Prior logic caused device to crash when setting the dataspace for a layer to hdr on a non-hdr device. Update to log the failure and perform a no-op to match framework APIs. Bug: 140029823 Test: build, boot, CtsViewTestCases:android.view.cts.ASurfaceControlTest Change-Id: I9baf88a6d787e043b440ad4c2ebeb4c7a1fd90a2
2019-05-23Handle NATIVE_WINDOW_TRANSFORM_INVERSE_DISPLAY flag in ASurfaceTransactionVishnu Nair
BufferStateLayer ignores NATIVE_WINDOW_TRANSFORM_INVERSE_DISPLAY flag if its set as part of the transform. Fix this by calling Transaction::setTransformToDisplayInverse when calling ASurfaceTransaction_setGeometry. Bug: 133330435 Test: Test landscape orientation in test app Test: go/wm-smoke Change-Id: Id499448d822425e5b7be4efed7f448c4e4378b87
2019-04-23ASurfaceControl: fix surface damageMarissa Wall
There are two problems with surface control. 1) By merging the rects, the Region turned into 0,0,0,0 instead of an or of the Rects. 2) In the case where an app intends to have a region of 0,0,0,0, we should treat it the same as a region of 0,0,-1,-1. Bug: 131175047 Test: ASurfaceControl Change-Id: Ib2e3b90ac215e069d3d3c2eca81ff1013b4287aa
2019-02-11Merge "ASurfaceControl: dataspace (1/2)"TreeHugger Robot
2019-02-08ASurfaceControl: dataspace (1/2)Marissa Wall
Allow dataspace to be set on the SurfaceControl. Test: atest CtsViewTestCases:android.view.cts.ASurfaceControlTest Bug: 80477568 Change-Id: Idc12d0a4024fc21d570c5190af33559b818b4b08
2019-02-06Merge "Generalize physical display management"Dominik Laskowski
2019-02-04Generalize physical display managementDominik Laskowski
This CL enables the framework to manage an arbitrary number of physical displays. It also surfaces physical display IDs, which are stable across reboots and encode (model, port) information that will be propagated further up in a follow-up CL. Bug: 116025192 Test: Boot with more than two displays Test: Hotplug works with any number of displays Test: Verify stable display IDs with "dumpsys display" Change-Id: Idb2eaff66b2e0873be6ad27d337ff18b730d1331
2019-02-01Combining background color transactionsValerie Hau
Bug: 122326454 Test: ASurfaceControlTest cts test Change-Id: Ie6d6c5d4d8a27cbf936936200d1c81619d83ca87
2019-01-24Eliminate the usage of ConfigStore.Peiyong Lin
Ideally modules above SurfaceFlinger should query ConfigStore through ISurfaceComposer APIs. Previously getWideColorSupport directly evaluate wide color support for built-in display, we don't want that, we should align it with SurfaceFlinger. BUG: 123312783 Test: Build, flash and boot. Verify in logcat. Change-Id: I6299fe1a5483075a98adbb903d3bb68255afb699
2019-01-23Add setColor, setColorAlpha, and setColorDataspace to ASurfaceControlValerie Hau
Bug:122326454 Test: atest CtsViewTestCases:android.view.cts.ASurfaceControlTests Change-Id: If41f0a6b736315dbdb829cf3f8fefc654ede9bcf
2019-01-18ASurfaceControl: add more support to NDK (1/2)Marissa Wall
Adds several new functions and updates existing functions. - release fences - desired present time - alpha - hdr metadata Test: atest CtsViewTestCases:android.view.cts.ASurfaceControlTest Bug: 80477568 Change-Id: Iabda5936a51030bebabc4328dbd83108401603c2
2019-01-14ASurfaceControl: add SurfaceControl to NDK (1/2)Marissa Wall
Add the NDK API for apps to use SurfaceControl for low level compositing using SurfaceFlinger. Test: atest CtsViewTestCases:android.view.cts.ASurfaceControlTest Bug: 80477568, 111656650 Change-Id: If2c85a4427f422e41feeadbee0b64de7eb5c925e