The current invalidation logic does not take into account the clipChildren
flag. When this flag is set to false on a container (an uncommon but
possible case), it is possible for views in the child hierarchy of
the container to be draw outside of the container's bounds. But invalidations
on that view hiearrchy can be clipped to the container's bounds, causing us to
not redraw views outside of those bounds.
Fix is to expand the dirty rect of an invalidation to encompass the complete
bounds of any container with clipChildren==false.
Issue #680037 Some transform combinations can leave old pixel values on the screen
Change-Id: I426beee15d04145fac2f6b4203748ae309e392b4
Fixed b/8276827
Vendor might want to provide their own implementation of "network
location", "fused location" and "geocoder" service. Location manager now
allows those service to be replaced by packages that have the same
signature as one of the packages in config_locationProviderPackageNames.
Such behavior might not be desirable on some devices. This change
make this behavior configurable by 3 boolean flags.
Details:
- Added three boolean flags in core/res/res/values/config.xml to enable
or disable NLP/FLP/Geocoder overlay
- Added 3 package name for the stock NLP/FLP/Geocoder. They are needed
only when overlay is disabled because LocationManagerService need to
know which package is preferred when searching for
NLP/FLP/Geocoder service.
- Made ServiceWatcher able to handle non-overlayable services.
- Fixed an NPE isue in ServiceWatcher. mPm.queryIntentServicesAsUser
might return null.
- Fixed an bug: justCheckThisPackage in bindBestPackageLocked is always
ignored.
Change-Id: Id221961ac7c3aa8ad44b894f9523f04f770ae237
Fixes the problem where Settings->Display->Brightness for secondary users stopped
working after the reorganization of brightness dialog.
Bug: 8666220
Change-Id: I893954810f80383090733fc677266bfcad490703
Several issues have been identified that will need to be
resolved carefully before we attempt to make similar changes.
1. Some applications make assumptions about the fact that all
Runnables posted with queueEvent() will be executed before
the next draw. Because the Choreographer may post messages
in the past (due at the frame time), these Runnables were
not always running at the expected time.
2. Some applications apparently hijack the GLThread and try
to run their own Looper on it. This obviously won't work
if we are already running one of our own.
We may need to add new rendering modes or target API checks
to provide an opportunity for applications to opt-in to the
changes in the future.
Bug: 8649804
Change-Id: I6289c3392a98cdbfaf28c7f4f7a8040f2138a3b4
API change in f0d4777473f25847d67fc17fc082fada08cf678d didn't update a
comment to match which caused doc build failures.
Bug: 8603279
Change-Id: I475dc569747ae5d34b4267537370f18446386bb9
Clearly identify in the logs when AudioService starts one of
the following two intents in response to long-press on
the KEYCODE_HEADSETHOOK key: ACTION_WEB_SEARCH and
ACTION_VOICE_SEARCH_HANDS_FREE.
Bug 8095981
Change-Id: I14ca99533dfb011cdc530c0bafd8104ff2436c7d
The rendering code optimizes by rejecting drawing operations that
lie outside of the bounds of their views. This works in most
situations, but breaks down when containers have called
setClipChildren(false), because we reject drawing that is outside
of that container, but which should be drawn anyway.
Fix is to pass in the value of that flag to the DisplayList drawing
routines which take that flag into account when deciding whether
to quickReject any particular operation.
Issue #8659277 animation clipping
Change-Id: Ief568e4db01b533a97b3c5ea5ad777c03c0eea71
Only allow through changing direction configs for drawables.
Explicitly map layout direction values to an index in the
preload arrays.
Drawables that don't vary by configuration should go in to both
the rtl and ltr preloads.
Change-Id: Ib92dd11738082a795e02d1d4191adb54702d651c