A lot of calling framework code expects a null value on failure,
and didn't catch the previous exception. There were some strange
corner cases where previously a null value was not checked for
in framework code, allowing the null Resources object to be
returned to the caller. Introducing an exception changed the
semantics and can crash certain apps.
Bug:30422475
Change-Id: I51d34ae43c9ec605a8790989c56cf85b815ff5b8
* changes:
Remove lock contention when unlocking users
Only get trace name if tracing is enabled
Fix multi-window drag jank if vsync-app is before vsync-sf
Prior to N, our widgets were not converting MarginLayoutParams
properly between ViewGroups. The fix intrudced some issues in
older apps as the broken conversion code would hide developer
errors. This CL guards the change with a target API check so
that we don't affect older apps.
Bug: 30378230
Change-Id: I215281d261b553c3b4cedcd29ea0a861df809471
Bug: 30587465
Someday maybe the technology will exist to
allow sharing a simple constant between
Java and C++, but today is not that day.
Change-Id: I17694746cb8712058133cd5ea10c47b9909f740b
Changes in alpha only matter if they affect visibility,
so only 0 <-> nonzero changes are worth reporting. Report
them as subtree changes, as visibility affects subviews.
Not reporting every change greatly reduces the number of
event reported when alpha is animated.
Bug: 30183085
Change-Id: I905d53aa81ca8248b3aed86a91842ef499f303a8
Previously AbsSeekBar always rounded up, which resulted in poor handling
of touches near the edge of a progress value. We fixed this but forgot
to adjust RatingBar for the new behavior.
Bug: 30558586
Change-Id: I634fa7a0b98568093e16279ef5a80abe08d2e2fe
It was possible for apps to put toast type windows
that overlay other apps which toast winodws aren't
removed after a timeout.
Now for apps targeting SDK greater than N MR1 to add a
toast window one needs to have a special token. The token
is added by the notificatoion manager service only for
the lifetime of the shown toast and is then removed
including all windows associated with this token. This
prevents apps to add arbitrary toast windows.
Since legacy apps may rely on the ability to directly
add toasts we mitigate by allowing these apps to still
add such windows for unlimited duration if this app is
the currently focused one, i.e. the user interacts with
it then it can overlay itself, otherwise we make sure
these toast windows are removed after a timeout like
a toast would be.
We don't allow more that one toast window per UID being
added at a time which prevents 1) legacy apps to put the
same toast after a timeout to go around our new policy
of hiding toasts after a while; 2) modern apps to reuse
the passed token to add more than one window; Note that
the notification manager shows toasts one at a time.
bug:30150688
Change-Id: Icc8f8dbd060762ae1a7b1720e96c5afdb8aff3fd
The IpConnectivityLog class looks up MetricsLoggerService once only
at creation. If a IpConnectivityLog user instantiates this class too
early during the boot process, the MetricsLoggerService is not found
and no event can be recorded.
This patch makes IpConnectivityLog attempt to look up
MetricsLoggerService as long as it hasn't found it yet.
This allows IpManager and ConnectivityService to upload
android.net.metrics events.
Bug: 30490301
Change-Id: I97102b95a775ea9e90351b9887ae4661fddc2af9
There is a known issue in the kernel uidcputime module that triggers
the WTF, which has a cost to the system. Convert to a regular log
instead.
Bug:28950306
Change-Id: I7cbb3138f644075f0d9d65ce8b52bd835eb270fd
This change is needed to correctly cope eg. with list views
which introduce header and footer view through additional
list view padding.
See ag/1221005 for details.
Bug:30420573
Change-Id: I7c9c0ce2b5ba85429b7921c42e4f97e139814e17
Happens because CascadingMenuPopup calls setWidth() rather
than setContentWidth() like StandardMenuPopup does.
BUG: 30365568
Change-Id: Id850baaf1d9c5664220766e5e37869e2ec361a2d
- Log when hasTopUi state changes
- Add hasTopUi to dumpstate
- Only allow persistent processes to honor this flag
Bug: 30292998
Change-Id: Ifb481c8d50b102ea4cac3078ea3eb39e45c08259
DecorCaptionView is used in app view hierarchy in freeform mode
and it inherits default ViewGroup#shouldDelayChildPressedState
implementation, which returns true by default for compatibility
reasons.
This results in touch not delivered to child views in some cases
until there is movement or up action. E.g. touch on SeekBar will
not change the position of control instantly in freeform, while
it does in other modes.
This CL disables delaying child pressed state for DecorCaptionView.
Bug: 30037893
Change-Id: I4917143610b6c0d404d2395670de9525c10f2a6c
Bug 30230667
Ensure that pre-N applications initialize in the proper order,
but allow N and above applications to be created prior to
asking for a Transition.
Change-Id: I859f22a7c5518e4b496cbd7ee58ef1d3206a5c86
(cherry picked from commit 78d38fc839)