| Age | Commit message (Collapse) | Author |
|
This is more robust then existing new/delete. In particular, current
code has a leak in AChoreographer_create in case initialize() is not
successful.
Bug: 393217449
Test: presubmit
Flag: EXEMPT_refactor
Change-Id: Ib3d84ee58d953a332b14fd852b53b3507defe74f
|
|
The instance consructed in this way is passed to call sites expecting
sp<>, so it must be constructed as such.
Bug: 393217449
Test: presubmit
Flag: EXEMPT_refactor
Change-Id: I34d5be7c6abf5b37472a79be80ac10cd07dd731c
|
|
There are very few if any real clients (i.e. non goldfish) that use
these fences with bufferqueues. We can simplify the overall API by just
removing it and doing explicit sync (which is what would happen anyway)
where we would have passed them into the bufferqueue.
Bug: 339705065
Flag: com.android.graphics.libgui.flags.bq_gl_fence_cleanup
Test: old tests
Change-Id: I1f3973c78aafe278708f203ef46a2b91b138eba7
|
|
We wanna get rid of this API, and we can simplify all these calls to
just avoid the argument.
Bug: 339705065
Flag: EXEMPT refactor
Test: old tests
Change-Id: I4e94e66003cdcdc197254435e5a815dd53e67a20
|
|
Some types in loops were misasligned.
Bug: n/a
Flag: EXEMPT refactor
Test: presubmits
Change-Id: I2701966df15064b32ae60c9d7b0e586face711f4
|
|
Using ConsumerBase-based classes is now the recommended way to create
BufferQueues.
This is an important step for go/warren-buffers, because it consolidates
usages of BufferQueues to supported APIs and reduces the libgui API
surface that exposes IGBP/IGBC.
BYPASS_IGBP_IGBC_API_REASON: this CL is part of the migration.
Bug: 340933754
Flag: com.android.graphics.libgui.flags.wb_consumer_base_owns_bq
Test: atest, presubmit, compiles
Change-Id: I7592bec02a7fd7b1712dfd3bf47a61852136438f
|
|
|
|
For now, added type CALLBACK_INPUT and CALLBACK_ANIMATION. The default
callback type will be CALLBACK_ANIMATION for the public APIs.
CALLBACK_INPUT will always run before CALLBACK_ANIMATION.
Test: ChoreographerTest
Bug: 324271765
Change-Id: I25c92b788bb83778d5b0608a47efe9756d42e32f
|
|
The host build of libhwui requires access to the headers of
nativedisplay and nativewindow.
Bug: 322360037
Test: N/A
Change-Id: I1deefdaa42c8756914451c8642fff83199d25e70
|
|
Test: n/a
Change-Id: I6c2426303194df4b94f6181f4b5c71970bc5f7fd
|
|
Bug: 281695725
Test: presubmit
Change-Id: I644dadbfc72cd50d80c50d36da96078253bbc009
|
|
Peak refresh rate is a more clear name
Bug: 301462354
Test: builds, boots
Test: dumpsys display
Change-Id: I2f7f98859ae2a1d9191b1e377921eb7a04e784bf
|
|
Bug: 281695725
Test: manual using a test app
Change-Id: I2d18c843d9e0771cef4378f58f1197f974163fa0
|
|
This is a tiny refactoting needed for the next CL.
Bug: 281695725
Test: manual using a test app
Change-Id: I0635325717073b528dadb712a843aabb4efddd3b
|
|
Bug: 295394788
Test: make checkbuild
Change-Id: I69aa06b109c2f40ecf40441cbbb0dfa3e1aa99a1
|
|
From `kFrameTimelinesLength`.
Bug: 270612751
Test: build
Change-Id: I83e61a19254ab4a63479a2004124cfd2c082da35
|
|
Fixes `testSurfaceTransaction_setFrameTimeline_notPreferredIndex` case
on devices that do not have high refresh rates (e.g. max 60Hz). This
occurred because the transaction-ready logic in SF does not consider
transactions to be too early if the expected presentation time is over
100ms in the future, so the frame would just be deemed ready and
presented asap. Thus, no longer provide frame timelines that are far
into the future, which are not useful as well.
Test: atest ASurfaceControlTest
Test: atest ChoreographerTest
Test: atest ChoreographerNativeTest
Test: atest DisplayEventStructLayoutTest
Test: atest ParcelableVsyncEventData
Test: atest libsurfacefligner_unittest
Fixes: 270612751
Change-Id: Ic05717bc153a9b07409b8d7912a1c40e1e31a57e
|
|
For Attached Choreographer, we want to store, access, and set attributes
on a Choreographer from the SurfaceControl it is attached to.
SurfaceControl is in libgui, so move Choreographer from libnativedisplay
into libgui as well.
The Android.bp dep chain: libandroid includes< libhwui <
libnativedisplay < libgui
Bug: 255838011
Test: atest ChoreographerNativeTest (no regression)
Test: make and flash
Test: presubmit
Change-Id: Ie9f8cac93a888127ffa48d7061a467649e0ca694
|
|
- There is a possible way to take over the screen display and swap the
display content due to a missing permission check.
- Add a short-term fix for WCG checking failure because of new
permission check added to SF::getPhysicalDisplayToken: change two
function signatures (getStaticDisplayInfo and getDynamicDisplayInfo).
- To make short-term fix workable, split getDynamicDisplayInfo binder
call into two, one is to take display id, one is to take display token
as old codes show to avoid huge modification on other callees.
Bug: 248031255
Test: test using displaytoken app manually on the phone, test shell
screenrecord during using displaytoken; atest
android.hardware.camera2.cts.FastBasicsTest
Change-Id: Id9d9012d4ede9c8330f0ce1096bcb78e51b7c5df
|
|
Separates implementation from the API so it is neater.
Bug: 255838011
Test: make, flash, atest ChoreographerNativeTest
Change-Id: I8ac97ed4ebc1a4ed9d6315a473e178bf3d655252
|
|
SurfaceFlinger and SurfaceComposerClient simply return the first
connected display as internal display, which is not really correct.
In particular,in the case of dual display for foldable devices, both
displays are marked as Internal determined by calling into HWC2
IComposerClient::getDisplayConnectionType().
Therefore, the concept of internal/external/primary displays is removed
from SurfaceFlinger, and the display manager is the better place to
handle the logics.
flatland is modified to take an extra argument to specify display id,
and error occurs if no display is specified in case of multi-display.
Bug: 241285477
Bug: 242763577
Bug: 74619554
Test: atest libgui_test libsurfaceflinger_unittest SurfaceFlinger_test
Change-Id: Ib6c7e502ef3269c2c60a4e5388e5ac75275f87ed
|
|
Currently, for an API symbol to be accessible to APEXes, it needs to be
marked as either # systemapi or # apex. It was originally just # apex,
but we added # systemapi to clearly identify the origin of the APIs.
The intended use is
* #apex is for APEX-visible symbols that are defined in an APEX
* #systemapi is for APEX-visible symbols that are defined in the
platform (the non-updatable part)
This intention is documented build/soong/docs/map_files.md, but isn't
enforced at all.
With b/239274367, this is now enforced and therefore the #apex tags in
the platform library are replaced with `#systemapi`
This change does not alter any functionality.
Bug: 239274367
Test: m
Change-Id: I14d0586223c24c302bb4d5a81a8240da77fb947a
|
|
ba82cddd67 am: 432b5ce247 am: 79846ae39a am: d126fe2b6b
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2105444
Change-Id: I2ce89ed4d480306db791a373bd45a4b30e1b2fa7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
ba82cddd67
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2105444
Change-Id: Ifa81121be2dd65451d0d72b0f29284d91c086e60
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2086623
Change-Id: Ic7314cbe3efa3e9ceb9b06777bc13e5f26b4c7dc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Bug: 208980553
Test: treehugger
Change-Id: Ia081e8db56d261f9075d6df339ca453bf588d8d7
|
|
Test: Treehugger
Change-Id: Iecf537174dd17032355a28166cf4a04822931621
|
|
And createDisplayEventConnection is migrated too.
Bug: 221898546
Bug: 211009610
Test: atest libsurfaceflinger_unittest libgui_test SurfaceFlinger_test
Change-Id: I2d0968262b86829b4cce13158446f1c85a4e55e4
|
|
Note that FrameEvent is converted to AIDL enum and some external
projects are updated to reflect the changes, refer to the topic for
other CLs.
Bug: 220935835
Test: atest libgui_test
Change-Id: I576360ad0684b1b010b773a2287050c9ba2f62f
|
|
Currently store the start times globally.
Bug: 210043506
Test: perfetto log of with & w/o CL, using Chromium apk, bug 198192946
Change-Id: I33bd31adf72e3cb6c9979bf9e9a5518a03a03237
|
|
Bug: 217370454
Test: atest ChoreographerNativeTest
Change-Id: Id26497b0f94845e392778954039996b9bbab834f
|
|
Clean-up that re-uses VsyncEventData so it's easier to maintain.
The ParcelableVsyncEventData is used in AIDL. It is separated from
VsyncEventData because of the union in
DisplayEventReceiver::Event and Parcelable has non-trivial
constructors.
Bug: 218563993
Test: atest ChoreographerNativeTest
Test: atest libsurfaceflinger_unittest
Test: atest libgui_test
Change-Id: I3ebeb1c7826300c27c4a12d4dba6fbd16305e9e1
|
|
Bug: 214455710
Merged-In: I10fd54544bee940313f3987247c1841101a9d03a
Change-Id: Iec868d5230dbcf81bb6f4af7cf3bc42d57d6b84d
|
|
Bug: 205721584
Test: atest libsurfaceflinger_unittest
Change-Id: I51b18ed356ae7a29f8a88634346c0025321dbe08
|
|
4334485270 am: 20934502e7 am: 5838e98c61 am: d1347913f1
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1956042
Change-Id: I0b5448aff4c4578b72dff6a209babba1180974b3
|
|
4334485270 am: 20934502e7 am: 5838e98c61
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1956042
Change-Id: I81da86d18bf68b9656d2ab950b28bba981b6dad7
|
|
|
|
|
|
|
|
[Description]
Add test patch to release current texture image when freeing the
corresponding buffer, in order to prevent EglImage reference leak
which would result in destructor not called.
Bug: 214353180
[Test Report]
Test Platform: palmer
1. AC ON/OFF: PASS
2. Launcher UI: PASS
3. CTS: PASS
4. CTS Command:
run cts -m CtsMediaTestCases -t android.media.cts.DecodeEditEncodeTest
run cts -m CtsMediaTestCases -t android.media.cts.EncodeDecodeTest
Change-Id: I4a02d62fe72e2b3013e7c352b77977a3b6b515ae
|
|
Test: presubmit passed
Bug: 207331905
Change-Id: Idf30898141172596b62f53d2b02786cff7a57b01
|
|
Also use a new typedef AVsyncId shared in AChoreographer and
ASurfaceControl.
Test: atest ASurfaceControlTest; atest ChoreographerNativeTest
Bug: 214063411
Change-Id: If24f144404038064de2ba72cca44572aca507e44
|
|
Test: atest ChoreographerNativeTest
Bug: 214303753
Change-Id: Id7c6ddcf7e0d46fb0b6eff35e46b4f937b59a058
|
|
This is just used for hwui's usage - HDR metadata on SurfaceTexture is
not publicly exposed.
Bug: 200309590
Test: builds, boots
Change-Id: I373e50ee2d2000cb46c6a73d01e58b965c168311
|
|
* changes:
Send multiple scheduler frame timelines (fix).
Revert "Revert "Send multiple scheduler frame timelines.""
|
|
This reverts commit caaa47d60b83670206dcd3c34382719b1f247ab5.
Reason for revert: Fix the reverted CL in 2nd CL.
Bug: 198192508
Bug: 204941507
Test: See 2nd CL.
Change-Id: I15c693c2e0a82ef81a490319da11871bd74298b3
|
|
am: 14c911b484 am: 5ebe49f0b4 am: f1c39b6e99 am: fbd70a162e
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1842093
Change-Id: Ic859f5498f0a32c43b125b9b5a7dcb46d071bf21
|
|
am: 14c911b484 am: 5ebe49f0b4 am: f1c39b6e99
Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1842093
Change-Id: Ie32009e70d65aca53967ff4e536bbe6a36be2143
|
|
|
|
This reverts commit 6b1807002ebd198f51cdb70c3fee79645bd25fe8.
Reason for revert: b/204492891
Change-Id: I292c11a0c54c57d97d112d9cec16b27acaa7b6a6
|