We are caching the window data in the accessibility service process.
When windows change we were sending the dalta of the windows the
service knows about. To make this work when the app asked for all
windows we had to call into the system as new windows may have
appeared. This was slow.
Now we are telling the service some windows change and if it gets
the windows we cache them. We call into the system only on a cache
miss and evict all windows from the cache on window change event.
We do not evict the nodes of the window as the former may have
just moved. If views in a window change they fire accessibility
events that trigger the correct eviction.
Change-Id: I586a72a2497b0d44a75288fa758e7e88817f3300
LayoutParams without a specified layout_width value automatically
get a default of 0. This works in most cases, when the view is pinned by
various constraints (such as alignParentLeft and alignParentRight),
but breaks down when the child lies in negative coordinates.
Negative coordinates are supposed to be a signal, in RelativeLayout, that
that coordinate is variable. However, negative margins can cause a negative
value to be calculated, at which point it should be used as a concrete value,
not a behavior trigger.
The fix is to use Integer.MIN_VALUe as the tirgger instead, to distinguish that
impossible value from negative values which could reasonably have been computed
during measurement.
Also, removes dead code from earlier attempt at rtl.
Issue #10606777 Time picker can't display 10, 11, or 12 oclock when font size is huge
Issue #16516577 resolveLayoutDirection doesn't act as intended
Change-Id: Ia564603012f3c45636e69cd3776205fb544fda48
Bug: 16403458
Address API review. This change updates the FileChooser api. The
largest change is, as requested by API council, providing a helper
to reduce the code app developers need to implement. This
change does not include the CookieManager changes that was requested.
Change-Id: I30d75f36df6bc96d9842b63fdd25c4ff62aee5bb
It was calling into dead ConnectivityService code rather than using
the new ConnectivityManager shim code.
bug:15221541
Change-Id: I1e3eea8a658a162ce36673ed1cf7b1e7e4372c42
We have an accessibiliy node info cache in the process of each
accessibility service. Sometimes the cached node changes and
in this case we have evict from the cache the sub-trees rooted
at children that are no longer present. There was bug where if
none of the children is present anymore we did not evict their
sub-trees.
Also the verification logic was not stopping if a duplicate
node is seen potentially getting into an infinite loop.
bug:15729762
Change-Id: I7adf4f0a1bde07b385556d9acdded5059231f1f3
bug:15859361
Moves lighting info out of StatefulBaseRenderer, since it's not useful
at record time, and only used by OGLR.
Change-Id: I7ab065d02d9304afad1dc4c48597a7a621366f8e
* commit '39572996f25d4b4ce744d9d04080e33b687ab03b':
cherrypick from klp-docs docs: formatting for html Change-Id: I1451615c09cc003a03d7585176036c4d695408f1
Dialer needs access to the TRANSCRIPTION column via the CallLog to
show voicemail transcriptions inline.
Change-Id: Id1807923a07af9e9e34783e6be2e39485eee7795
A <feature-group> represents a set of features required
for an app to be compatible with a device. Multiple
<feature-group> elements represent a logical 'or'
of required features.
Features defined in the old way with <uses-feature> tags
under the <manifest> tag are automatically added to each
feature-group defined.
Defining a <feature-group> means that any default
features are not included (such as android.hardware.touchscreen)
and declared permissions do not imply any features.
Change-Id: I45626f0fdc546e47bcf2aead7ef05ebcca12b023
* commit '1903bbb88d8e2e1921b0441911cb73966d3bca4a':
cherrypick from klp-docs docs: formatting for html Change-Id: I1451615c09cc003a03d7585176036c4d695408f1
When copying from the parent: the ClipData can be pasted in the managed profile.
When copying from a managed profile: it can be pasted in the parent,
unless the policies says it's disabled. In which case, the clipboard of the parent becomes empty.
Supporting content uris.
BUG: 15186236
Change-Id: I522564a7c07ff21df137adcda980bb52e5739964
If an activity in one profile starts an activity in another profile
without any user interaction - such as operating the chooser - a toast
appears, saying something like 'you are using this app in your work
space'.
@bug 14375080
Change-Id: Id2dc5973a9b68ee29d0227947c19b78f021fb6ac
In addition to it, add api for clearTimerRecording as well.
Separately, I will replace logic for notifying message with callback
interface.
Bug: 16160962
Change-Id: I2368f7c697eb44ed4542c0ec4412c63a6ae41a5c
As requested by API council, the following were changed
- Changed the PermissionRequest to abstract.
- Used String for resources instead of long.
- Also remove the WebView.preauthorizePermission() which we didn't think
BUG: 15432556
Change-Id: I900a98b4e0288d2bcd8faf0bbcd84970600548a5
- Remove CloseableLock use; looks to be incompatible with invocations during callbacks
- Replace with basic interface lock to be thread-safe
- Add intermediate callback thread to legacy mode to match cross-process one-way Binder
semantics
Change-Id: Iecd4ff6cf260c5a13bd11b850177ccea93e25933
ConnectivityManager.requestNetwork pass TYPE_NONE to
sendRequestForNetwork which prevents it from being used with legacy API
requestRouteToHostAddress. This CL infers the legacy network type
automatically from the network capabilities.
b/16324360
Change-Id: I591d38f875f42f56e8cfc157db2069c9eee0ee26