Adds a rate limiter to the HintSession.sendHint API for safety, and
update tests to reflect this.
Bug: b/243973548
Test: atest PerformanceHintNativeTestCases
Test: atest FrameworksCoreTests:android.os.PerformanceHintManagerTest
Change-Id: Ic68683bacf7df3e11efc3d59689b5470c3fa4274
Prepare for using std::array<> and std::span<> in headers included from
this library. Remove the AFont constructors to prevent that the build
fails as follows:
frameworks/base/native/android/system_fonts.cpp:265:35: error: no matching member function for call to 'insert'
fonts.insert(
~~~~~~^~~~~~
Removing these constructors is necessary because of the following rule:
"An aggregate is one of the following types [...] class type (struct or
union) that has [...] no user-declared or inherited constructors (since
C++20)". Source:
https://en.cppreference.com/w/cpp/language/aggregate_initialization.
Bug: 260725458
Change-Id: I384d05f5d3e471f8f58294119d04eb8ab16697ba
Signed-off-by: Bart Van Assche <bvanassche@google.com>
Skip rate limit when first hit target.
Also for 1st frame boost
Bug: 254293108
Test: Build
Signed-off-by: Wei Wang <wvw@google.com>
Change-Id: I0268de156ba2c34723c1593c76a64331016cc87c
* Add sendHint API to HintManagerService and PerformanceHintManager
* Plumb relevant calls through the existing implementation
* Extend existing tests to cover new API calls
* Update the relevant build files to use power API v4
Bug: b/243973548
Test: atest PerformanceHintNativeTestCases
Test: atest FrameworksCoreTests:android.os.PerformanceHintManagerTest
Test: atest HintManagerServiceTest
Change-Id: Ice7ed8f32e877bd845afad77fcc6ae16f1a1b78c
Dichen is taking over my image decoding responsibilities, so add him to
cc. Leave myself in cc so I can provide context when needed.
Bug: 257475598
Test: N/A
Change-Id: I2adf43d61d214b3f7352d528ba1af32c0ce4bf32
ASurfaceControl_fromSurfaceControl should acquire a reference before
returning.
Abort if the arguments are invalid, make the return code nonnull.
Test: ASurfaceControlTest#testSurfaceControl_fromSurfaceControl
and ASurfaceControlTest#testSurfaceTransaction_fromTransaction
Bug: 253053203
Change-Id: If48ff4a534c5765c4831e518e44f77d0429e8981
This creates a dependency edge between the ndk_library and its headers,
which should be a no-op in regular Soong builds. This dependency edge
will be used in the Multi-tree project to export the relevant .h files into a well
known location
The headers are in a different git project (frameworks/native)
Test: m nothing
Bug: 239044713
Change-Id: Ifd00d8d4d3771b2dbd924cea4f2ade0bafc15ed6
A BBQ changes requires adding an additional member to
SurfaceControlStats which requires updating this destructuring
assignment.
Bug: 247246160
Test: Existing tests pass
Change-Id: Ic485fe3ae97c4243ab9993717c674c66b28c7fee
This will be used to denote the single-finger touches that
TouchInputMapper creates to simulate scrolling when the user makes
two-finger swipes on the touchpad.
Bug: 246758376
Test: check new value is sent to a test app when scrolling on a touchpad
Change-Id: Id93cba764522e36d850f7013ab8a117f64716fac
This API is same as using setFrameRate with 0 as frame-rate value. But
this causes confusion, as the remaining two arguments are ignored, when
frame-rate is 0.
Bug: 241096917
Test: android.graphics.cts.SetFrameRateTest#testClearFrameRate
Change-Id: I1324c64ac75dacb78a733df2b91d7a5b46fc7455
Send the hint immediately when actual duration is longer than target
duration.
Test: boot
Bug: 198379880
Signed-off-by: Wei Wang <wvw@google.com>
Change-Id: I6c80940b27d65a1e34e40f61eef3f81990957711
ISurfaceComposerClient in libgui is migrated to AIDL interface.
Bug: 172002646
Test: atest libgui_test
Change-Id: I5301a710a84bcf90ca4a789e184748e889115045
- Fix comment in version script to say LL-NDK, not NDK
- Use uint32_t for tag
Bug: 223423155
Test: CtsNetTestCases:android.net.TrafficStatsTest
Test: CtsNativeNetPlatformTestCases
Change-Id: Ifb819ed0adeb8f173b98c3f131a4bf2e0715dd4e
service.
The camera service needs to know when individual process oom adj scores
are changed in order to address bug #124224342. When two separate
processes are displayed in split screen and focus is switched between
them, both proc states will remain the same while their oom scores
change. This is a problem if both have access to the camera - we want
only one owner of the camera stream at any given time and for the app
in focus to be the one to own it.
This patch adds a new IUidObserver registration level for individual
process oom score changes. In addition a new callback has been added to
IUidObserver to track these changes.
Change-Id: I68d964f474d20f819f54b614a4e314ce00aac8fb
Bug: 124224342
Test: -- ActivityManagerServiceTest
-- ActivityManagerProcessStateTest
-- ActivityManagerFgsBgStartTest
-- UidObserverControllerTest
-- NetworkPolicyManagerServiceTest
-- ShortcutManagerTest2
-- HintManagerServiceTest
-- VibrationSettingsTest
-- CameraEvictionTest#testCamera2AccessCallbackInSplitMode (x100)
In https://skia-review.googlesource.com/c/skia/+/512416,
we would like to decouple SkImage and SkImageEncoder. This CL
was created by searching for use of these objects:
- SkEncodedImageFormat
- SkStream
- SkData
- SkBitmap
- SkPixmap
and making sure those files followed the Include What You Use
(IWYU) guidelines.
Signed-off-by: Kevin Lubick <kjlubick@google.com>
Change-Id: I8edbcd1c9a526b8084d7e2c023895d1ad2f8c9b1
Mounting encrypted OBB files has never worked reliably across devices,
partly due to its reliance on Twofish encryption support in the kernel.
This is because Twofish support (CONFIG_CRYPTO_TWOFISH) has never been
required or even recommended for Android. It has never been enabled in
GKI, but even before GKI it wasn't required or recommended. Moreover,
this is now the only Android feature that still uses dm-crypt
(CONFIG_DM_CRYPT), and some devices don't have that enabled either.
Therefore, it appears that this feature is unused. That's perhaps not
surprising, considering that the documentation for OBBs
(https://developer.android.com/google/play/expansion-files) says that
they are deprecated, and also it explains OBBs as being app files that
are opaque to the platform; the ability of the platform to mount OBBs
that happen to be in a particular format is never mentioned. That means
that OBB mounting is probably rarely used even with unencrypted OBBs.
Finally, the usefulness of OBBs having their own encryption layer (in
addition to what the platform already provides via FBE) is not clear
either, especially with such an unusual choice of cipher.
To avoid the confusion that is being caused by having the broken code
for mounting encrypted OBBs still sitting around, let's remove it.
Test: atest StorageManagerTest # on Cuttlefish
Test: atest StorageManagerIntegrationTest # on Cuttlefish
Bug: 216475849
Change-Id: I6e6a6462ab8343299dc5e0145b87dc28b16b0bc1
So it doesn't leak when gc is delayed in service process.
Update HintManagerService to allow multiple sessions tied to the same
token.
Bug: 218129784
Test: chrome no longer gets killed
Change-Id: I67a66041cc67d01e4cfcd3ded303a1bed6050f60
Users of the API will see in the "Actual Timeline" the actual start time
rather than expected start time.
Bug: 210043506
Test: perfetto log of with & w/o CL, using Chromium apk, bug 198192946
Change-Id: I013bf6e28de32c82c9d645cc4cacf0cc01e0dd9f
Added new methods for getActionButton and getClassification in input.h.
In this CL we are adding implementations for the corresponding functions
Test: atest android.view.cts.MotionEventTest
Bug: 213266814
Change-Id: Ia7c7b83fe19bac7d5e5c7c107e86328e160ba2b5