This change adds a game mode in the Layer metadata that gets updated every
time a game app comes to the foreground. The gameMode is then set on the
Layer based on the metadata and reparenting.
The game mode will then be
updated in TimeStats as a dimension (Part 2, in a separate CL later).
Bug: 186025682
Test: libsurfaceflinger_unittest:GameModeTest
Change-Id: I09deffc01d1b318cc08d0475611289dec055c190
Revert "Changes in tvsystem/ DeviceProductInfo to mirror changes..."
Revert "Adding new CTS test for the API display#getDeviceProductInfo"
Revert submission 13552775-expose DisplayInfo.deviceProductInfo
Reason for revert: broken test android.compat.sjp.cts.StrictJavaPackagesTest#testBootClassPathAndSystemServerClasspath_nonDuplicateClasses
on git_sc-dev on cf_x86_64_phone-userdebug at 7162420
Bug: 181021245
Reverted Changes:
Id6767127f:Adding aidl file to share deviceProductInfo consta...
I6959d2829:Adding public API to expose DisplayInfo.deviceProd...
I720dbfe84:Adding new CTS test for the API display#getDeviceP...
I6c726e12c:Changes in tvsystem/ DeviceProductInfo to mirror c...
Change-Id: I6f4997ec3ff2ee540fe3466d5ef25aace4224a36
SF keeps track of client dequeue, queue, acquire etc. timestamps to
construct frame rendering timelines for developers. With BBQ, SF no
longer has access to this data, so pass the dequeue time along with
the buffers.
Ideally this data should flow to the perfetto trace directly from the client
but this is a temp solution while some perf issues with client logging
is sorted out.
Bug: 176931912
Test: manual tests
Change-Id: Ic88170c1fb20850662cb99325ac42b7232a02817
For shared timeline visualization, the pid of the process owning the
layer is needed to show the information in the respective process
tracks. This change stores the newly added METADATA_OWNER_PID
information sent as a part of the Layer creation args
Bug: 170911969
Test: pid section of `adb shell dumpsys SurfaceFlinger --frametimeline -<all/jank>`
Change-Id: Ib1cd9b6239501b0b92283dca19d7de3916fff604
PersistableBundle is updated to declare the @JavaOnlyStableParcelable
annotation, which allows it to be used in stable aidl interfaces.
Bug: 143187964
Test: compiles
Change-Id: I8b3fa9746cc7694b18c285c8b7f646e23759ddb3
it’s moved into a new view/Surface.cpp, header in
gui/view/Surface.h
their entanglement also meant that code that needs
only view::Surface ended up with all of Surface
dependencies.
Test: built and booted device
Bug: treble
Change-Id: I1a350d258f124fbe0a7bc5a2ca165311dcb0d8e3
- Move android/view/Surface.aidl parcelable definition from frameworks/base
- Implement matching native behavior to android.view.Surface parceling,
to enable use of android.view.Surface in generated native AIDL interfaces
Bug: 25091611
Change-Id: I87ffbb9a19c27a99ce0749d0ca1f17aaa6b3fe74
Add the PersistableBundle.aidl into the new /aidl/binder/
subdirectory (along with the necessary 'android' and 'os'
subdirectories) so that the aidl file will live alongside
its native implementation in libbinder. This change will
allow native-only Android checkouts (e.g. Brillo) to use
PersistableBundle.
The /aidl/ subdirectory should henceforth contain any
aidl files that live with native code.
BUG: 26292234
Change-Id: I07b49dad8afd679f33e41fa9044dffc02ec25e3e