Inline image will consume 3x memory due to no cache implementation.
This patch apply cache mechanism to each ExpandableNotificationRow and
preloads images before inflation task.
Bug: 77956056
Test: runtest systemui, observe memory usage by AndroidProfiler
Change-Id: I2c488b1d98ddf2d4670904ed4b3e8028c0d0172e
Making this api a @SystemApi, protecting it with a permission and
changing boolean animation parameter to a long.
Change-Id: Ife6aac2806a5590288a801751f22d85c3cfd4622
Fixes: 116117810
Test: atest DozeWallpaperStateTest
Test: atest WallpaperServiceTest
Test: set image wallpaper
Test: set AOD wallpaper that holds permission
Test: set AOD wallpaper that doesn't hold permission
Owners source of truth is now in AOSP but has merge conflicts with
internal so submitting a separate CL here (AOSP change at
aosp/813915).
Test: N/A
Change-Id: I0e96914bb339874a30c80776596f2d84e508df85
It will allow to call this method in AndroidX Transition without reflection.
ChangeBounds#BOTTOM_RIGHT_ONLY_PROPERTY,POSITION_PROPERTY are restricted now as well as developers can just use setLeftTopRightBottom method instead (it was used as a performance optimization in third-party transitions backport)
Bug: 117521189
Bug: 117521197
Bug: 117521053
Test: new test added for the method
Change-Id: I0a29bc8cf0b3357e49f6be14270993a21a6dfeee
This CL starts a journey to discover a brave new inset world. The
path to get us there may be rocky, but it's going to be rocky.
One of the main pledges of the new API is that an app can retrieve
what is causing a certain inset easily. For that, we need to
dispatch metadata who is causing what inset, such that we can query
it from the client side.
Furthermore, the client will be able to manipulate insets directly,
but also listen to animation changes. We don't want to go through
window manager for that, thus, there needs to be a local codepath
from (global window state -> WindowInsets).
Because we have these two requirements, we dispatch the relevant
global window state for insets, represented by InsetsState, and
dispatch it to the client. On the client side we take the frame
and the InsetsState and generate WindowInsets out of it.
Bug: 118118435
Test: InsetsSourceTest, InsetsStateTest, InsetsSourceProviderTest,
InsetsStateControllerTest
Change-Id: I2bfe9dda376512916261823fc2ee35cbedeb6731
This is added to report clicks on actions buttons to NAS.
BUG: 119010281
Test: atest SystemUITests
Test: atest RemoteViewsTest
Test: atest NotificationManagerServiceTest
Test: Manual. Tapped on the action (both normal and contextual) and
observed the log.
Change-Id: I381994737d8c3185d3fabf9b6c481fd01a89a634
They were used via reflection in older versions of support transitions.
Starting from 26.0.0 it is not in use and there is no need to allow this usages.
Developers should update to the newer version of support libraries/androidx
Bug: 117521462
Bug: 117521646
Test: none
Change-Id: Ia1d5516a58c0deec68091d719065621fc588591b
DisplayViewport now contains the information about the physical port
that the corresponding display is connected to (for example, HDMI1,
HDMI2, etc).
This information is needed in order to determine which input device is
associated with which display.
Add a new config file to vendor directory that will contain the actual
associations.
Bug: 116239493
Test: atest ConfigurationProcessorTest
Change-Id: I679203747753803e9635a4eaf74287ce7e69dc3f
As an alternative to requiring developers
register/unregister ActivityLifecycleCallbacks
at the Application level, provide the same API
at the Activity level.
This allows you to get lifecycle callbacks scoped
to only a single Activity without overriding
each individual callback.
The callbacks are purposefully nested within
the Application scoped ActivityLifecycleCallbacks.
Test: new CTS test
BUG: 116118635
Change-Id: Iab6d841019010a0bf9d91fe889db82e0135b4b9c
This reverts commit 9c7b131996.
Reason for revert: Fixed build failures due to merge
Change-Id: I7d7bfed3a3234b966f3fe3fd6e0cbc63d2bedf83
Test: unit test
- Make a better distinction between surface bounds and buffer size by renaming setSize to
setBufferSize and removing setSize for all buffer-less surfaces.
- Adds an error check in SurfaceControl to ensure buffer size is only set for buffer-less surfaces.
- Updates color fade surface to use passed in transaction object.
Bug:114413815
Test: go/wm-smoke
Test: atest FrameworksServicesTests:DimmerTests
Test: atest FrameworksServicesTests:SurfaceAnimatorTest
Change-Id: I88bd1452d6b3b3009e73e26986027d6a5a9efebc
Applications will be able to add information to their uses-permission
elements about how the data protected by that permission is used.
Currently the system does not use this information, that will be done in
a follow up CL.
Test: atest PermissionUsageTest
Bug: 111207567
Change-Id: Ic168684cc800febc8fb3a3f807e1917f1f1585a4
Previously we were modifying the extras of a shared notification
during the notification creation, which breaks if multiple builders
are accessing the same notification. We're now passing these options
as parameters into the various functions.
Test: create low priority group / notification / observe normal behavior
Change-Id: I2aaa5632cff55a87937a2bb3f947f15555d2e897
Fixes: 117150727
* changes:
ScreenMagnifier: Track SurfaceFlinger Input
Forward SurfaceInsets to InputWindowInfo
Track native changes: Rework InputApplicationInfo
Replace InputWindowInfo#inputChannel with an IBinder token.
Fix name for canReceiveTouchInput
Fix pointer capture
Cleanup Input left-overs.
Port other InputWindowHandles to input surfaces.
Port InputConsumerImpl to SurfaceFlinger input.
Pass InputWindowInfo to SurfaceFlinger.