Commit Graph

316 Commits

Author SHA1 Message Date
Selim Gurun
b4f27c95bc Merge "Support for new gTLDs" 2014-03-28 23:35:10 +00:00
Selim Gurun
b080c3c54a Support for new gTLDs
Bug: 13006774

Add support for new generic Top-Level Domains (gTLDs) from ICANN
and deprecate the public APIs that depend on them. Due to the
fast profileration of gTLDs, it has become hard to keep this API
up-to-date. Further it already fails to recognize internal domains.
We thus replace them with simple "any letter sequence" regexps.

This CL is almost same as  Ib6cb5360bbb4a02b14bb34acb30d1cc8ddec771b.
The difference is that the values of the public gTLD strings are only
deprecated and not modified.

Change-Id: I37c130ace9068b80eeaec3282a77450517ed7794
2014-03-27 16:56:54 -07:00
Adam Lesinski
776abc24cd Uses VMRuntime.newUnpaddedArray for ideal array sizes
Bug:13028925

Change-Id: I0a9301248b10a339afbdc5e4ffe3310ac4fa1fb7
2014-03-27 11:42:10 -07:00
Selim Gurun
5632dc1cf0 Merge "Revert "Support for new gTLDs"" 2014-03-26 22:37:24 +00:00
Selim Gurun
a739994d60 Revert "Support for new gTLDs"
This reverts commit d3ff8bdf92.

Change-Id: I2006c4fcca54a4bc3b680ea0b0600b359cac6ca3
2014-03-26 22:33:49 +00:00
Selim Gurun
5579eb9b16 Merge "Support for new gTLDs" 2014-03-26 21:42:52 +00:00
Selim Gurun
d3ff8bdf92 Support for new gTLDs
Bug: 13006774

Add support for new generic Top-Level Domains (gTLDs) from ICANN
and deprecate the public APIs that depend on them. Due to the
fast profileration of gTLDs, it has become hard to keep this API
up-to-date. Further it already fails to recognize internal domains.
We thus replace them with simple "any letter sequence" regexps.

Change-Id: Ib6cb5360bbb4a02b14bb34acb30d1cc8ddec771b
2014-03-21 15:29:01 -07:00
Svetoslav
8e3feb15c5 Added accessibility APIs for introspecting interactive windows.
1. The old introspection model was allowing querying only the active window
   which is the one the user is touching or the focused one if no window is
   touched. This was limiting as auto completion drop downs were not inspectable,
   there was not way to know when the IME toggles, non-focusable windows were
   not inspectable if the user taps them as until a screen-reader starts
   introspecting the users finger is up, accessibility focus was limited to
   only one window and the user couldn't use gestures to visit the whole UI,
   and other things I can't remember right now.

   The new APIs allow getting all interactive windows, i.e. ones that a
   sighted user can interact with. This prevents an accessibility service
   from interacting with content a sighter user cannot. The list of windows
   can be obtained from an accessibility service or the host window from an
   accessibility node info. Introspecting windows obey the same rules for
   introspecting node, i.e. the service has to declare this capability
   in its manifest.

   When some windows change accessibility services receive a new type
   of event. Initially the types of windows is very limited. We provide
   the bounds in screen, layer, and some other properties which are
   enough for a client to determined the spacial and hierarchical
   relationship of the windows.

2. Update the documentation in AccessibilityService for newer event types.

3. LongArray was not removing elements properly.

4. Composite accessibility node ids were not properly constructed as they
   are composed of two ints, each taking 32 bits. However, the values for
   undefined were -1 so composing a 64 long from -1, -1 prevents from getting
   back these values when unpacking.

5. Some apps were generating inconsistent AccessibilityNodeInfo tree. Added
   a check that enforces such trees to be well formed on dev builds.

6. Removed an necessary code for piping the touch exploration state to
   the policy as it should just use the AccessibilityManager from context.

7. When view's visibility changed it was not firing an event to notify
   clients it disappeared/appeared. Also ViewGroup was sending accessibility
   events for changes if the view is included for accessibility but this is
   wrong as there may be a service that want all nodes, hence events from them.
   The accessibility manager service takes care of delivering events from
   not important for accessibility nodes only to services that want such.

8. Several places were asking for prefetching of sibling but not predecessor
   nodes which resulted in prefetching of unconnected subtrees.

9. The local AccessibilityManager implementation was relying on the backing
   service being ready when it is created but it can be fetched from a context
   before that. If that happens the local manager was in a broken state forever.
   Now it is more robust and starts working properly once the backing service
   is up. Several places were lacking locking.

bug:13331285

Change-Id: Ie51166d4875d5f3def8d29d77973da4b9251f5c8
2014-03-20 16:52:59 +00:00
Narayan Kamath
2802c173d3 am ad35099a: am b485d8e1: am 194e77aa: am 0f3fd6c6: Merge "Remove stray logging statement."
* commit 'ad35099a87b52e1df86237911eecda5e12961ee4':
  Remove stray logging statement.
2014-03-11 12:11:39 +00:00
Narayan Kamath
b485d8e1e4 am 194e77aa: am 0f3fd6c6: Merge "Remove stray logging statement."
* commit '194e77aafe32cacc00f69b25bec6eeea67eb0205':
  Remove stray logging statement.
2014-03-11 12:06:00 +00:00
Narayan Kamath
c3955e7e5a Remove stray logging statement.
bug: https://code.google.com/p/android/issues/detail?id=66974
Change-Id: Ie34c102de143cf6aeb16c78778dda3ef5e928380
2014-03-11 11:08:41 +00:00
Narayan Kamath
a1226a7a8a Make LruCache.resize(int) public
bug: https://code.google.com/p/android/issues/detail?id=65062
bug: https://code.google.com/p/android/issues/detail?id=35349
Change-Id: Ia271bc45ba2b4c0f81b61b6147be5530ee2dfd67
2014-02-20 10:27:55 +00:00
Calin Juravle
2f825260f6 am fbd855cb: am 78f522d1: am 7a4172d1: am f11cc165: Merge "Fixed a possible infinite loop in JsonReader#skipValue()"
* commit 'fbd855cb60fc3b7e219ead013511a51d17a4482d':
  Fixed a possible infinite loop in JsonReader#skipValue()
2014-02-19 11:31:17 +00:00
Calin Juravle
78f522d16e am 7a4172d1: am f11cc165: Merge "Fixed a possible infinite loop in JsonReader#skipValue()"
* commit '7a4172d190871c6b17124bf86374304cef727984':
  Fixed a possible infinite loop in JsonReader#skipValue()
2014-02-19 11:21:58 +00:00
Calin Juravle
8fbcc6b4cd Fixed a possible infinite loop in JsonReader#skipValue()
Bug: https://code.google.com/p/android/issues/detail?id=65846

Change-Id: Idaa0e75fc5612550c4b9ccb9afa5535ea5b189df
2014-02-18 19:19:15 +00:00
Dianne Hackborn
eaf2ac464b Battery stats: more events, fixes.
Add new history events for top application package and
foreground application packages.

Doing this involved a fair amount of improvement to history
events.  The event code is now separated out to have "start"
and "finish" identifies, and we use that to now keep track
of which events are active.  With that, when resetting the
stats, we can spit out all of the currently active events at
the front of the new history.

Also fixed some problems when I re-arranged the history delta
int bits that were conflicting with the packing of the battery
status bits.  These packing structures are changed to work
together correctly.

Change-Id: Ic8b815060dd8a50ff4a0a209efc2e1044215cd88
2014-02-07 13:45:01 -08:00
Jeff Brown
d16c409e55 am 065d998a: Merge "Hide an old debug function." into klp-modular-dev
* commit '065d998a4c3d597e924f42635d1a3699a6fcf34b':
  Hide an old debug function.
2014-01-28 00:13:12 +00:00
Jeff Brown
8aca9e335f Hide an old debug function.
Change-Id: If12b967955847d257dac0431dabe0dca41865b58
2014-01-24 13:10:19 -08:00
Alan Viverette
db24d142f5 Fix LongArray.addAll() to use correct arraycopy argument order
BUG: 11709513
Change-Id: I831e74ccb008739ab315c68618c04f870f9a36a5
2013-11-27 17:38:24 -08:00
Newton Allen
1f57ad47b5 am 27bd4440: am 28029658: Fix javadoc typo in SparseArray.
* commit '27bd44401e48b5b676a1ce5e4940aff3200fb536':
  Fix javadoc typo in SparseArray.
2013-11-21 15:32:42 -08:00
Newton Allen
27bd44401e am 28029658: Fix javadoc typo in SparseArray.
* commit '2802965888566244d8642ba32775b7b2a3cec655':
  Fix javadoc typo in SparseArray.
2013-11-21 23:28:28 +00:00
Newton Allen
2802965888 Fix javadoc typo in SparseArray.
Change-Id: Ie69b2cf96dae95b6ebe7b7797d3755749aec9f35
(cherry picked from commit ebb47950f2)
2013-11-21 23:12:32 +00:00
Newton Allen
ebb47950f2 Fix javadoc typo in SparseArray.
Change-Id: Ie69b2cf96dae95b6ebe7b7797d3755749aec9f35
2013-11-21 13:43:01 -08:00
John Spurlock
6090995951 Remove unused imports from frameworks/base.
Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
2013-11-20 11:31:47 -05:00
Alan Viverette
fe2737282f Merge "Add methods for removing children and actions from A11y nodes" 2013-11-07 23:34:08 +00:00
Alan Viverette
f0aed09ed8 Add methods for removing children and actions from A11y nodes
BUG: 11421730
Change-Id: Ide396e6a0fec871395a9cadf8880c16d0de08294
2013-11-06 15:33:03 -08:00
Adam Lesinski
9aaf4e13f0 am 35040fdc: am 1aac29c3: Merge "Fix off-by-one issue when removing from Iterator" into klp-dev
* commit '35040fdc428669bf7e3a1ec9ea388fb49ede32df':
  Fix off-by-one issue when removing from Iterator
2013-11-06 09:54:46 -08:00
Adam Lesinski
83c7ac3b8e Fix off-by-one issue when removing from Iterator
MapCollections' iterator removes the preceding element
which causes IndexOutOfBoundsExceptions to be thrown
when removing the first element while iterating.

bug:11477476
Change-Id: Ifc8fcf0ca1651e759f3b2ab8356404564e9f7d0b
2013-11-01 12:00:53 -07:00
Dianne Hackborn
9039b9a7ef am 63a16e0e: am 6834ae69: Merge "Fix issue #11256132: Add density bucket for all real numbers between 0 and ∞..." into klp-dev
* commit '63a16e0e0c4a9691a35f815d5422bdf0fa72efda':
  Fix issue #11256132: Add density bucket for all real numbers between 0 and ∞...
2013-10-17 18:29:17 -07:00
Dianne Hackborn
09acb7ca89 Fix issue #11256132: Add density bucket for all real numbers between 0 and ∞...
Well, how about 400.  400 is a real number.

Change-Id: I29ac61b7d629d582c7b68367365a7f81fcf679a2
2013-10-17 17:28:09 -07:00
Dianne Hackborn
9aded5abd6 am 827c5af0: am e49a107a: Merge "Fix issue #11223335: APR: Lots of failures in procstats due to..." into klp-dev
* commit '827c5af02de29424ea80f1ccfe525e681d0b74f0':
  Fix issue #11223335: APR: Lots of failures in procstats due to...
2013-10-14 19:01:55 -07:00
Dianne Hackborn
878deb3c7b Fix issue #11223335: APR: Lots of failures in procstats due to...
...bad cleanup of crashing processes

We now have a special path for crashing processes, to silently
clean up their state.

Also some tweaks to Log/Slog.wtf to get better stack crawl
summaries in APR.

Change-Id: Ieced26989907a6e7615b6fa033813fced78d7474
2013-10-14 17:15:40 -07:00
Dianne Hackborn
495fe22d68 am 2d3f995a: am d585f954: Merge "Fix issue #10921903: CTS: android.os.cts.ParcelTest#testReadBundle..." into klp-dev
* commit '2d3f995a65f2acd60559b1db57ae3ab2346a1df0':
  Fix issue #10921903: CTS: android.os.cts.ParcelTest#testReadBundle...
2013-10-03 15:39:27 -07:00
Dianne Hackborn
4a7d824c3b Fix issue #10921903: CTS: android.os.cts.ParcelTest#testReadBundle...
...fails from KRS84 across all platforms

My fix for issue #10807048 was wrong, wrong, wrong.  The problem was
actually just a stupid mistake in ArrayMap.erase().  This makes it
all right.

Change-Id: I762f7a2d5100bceb86a091ab3d6368edc21b4266
2013-10-03 10:19:20 -07:00
Dianne Hackborn
1d536848af am 239dc099: am 164371fb: Fix issue #11005453: [SUW] G+ profile creation for new user broken
* commit '239dc099a0d56eba3c7a537df23ef3c5046b2667':
  Fix issue #11005453: [SUW] G+ profile creation for new user broken
2013-10-02 09:37:26 -07:00
Dianne Hackborn
164371fb75 Fix issue #11005453: [SUW] G+ profile creation for new user broken
The main problem here was a mistake when turning a single process
structure to a multi-package-process structure with a common
process.  When we cloned the original process state, if there were
any services already created for the process for that package, they
would be left with their process pointer still referencing the
original now common process instead of the package-specific process,
allowing the active counts to get bad.  Now we switch any of those
processes over to the new package-specific process.

There was also another smaller issue with how ServiceRecord is
associated with a ServiceState -- we could be waiting for an
old ServiceRecord to be destroyed while at the same time creating
a new ServiceRecord for that same service class.  These would share
the same ServiceState, so when the old record finally finished
destroying itself it would trample over whatever the new service
is doing.

This is fixed by changing the model to instead of using an "active"
reference count, we have an object identifying the current owner
of the ServiceState.  Then when the old ServiceRecord is cleaning
up, we know if it is still the owner at that point.

Also some other small things along the way -- new Log.wtfStack()
method that is convenient, new suite of Slog.wtf methods, fixed
some services to use Slog.wtf when catching exceptions being
returned to the caller so that we actually know about them.

Change-Id: I75674ce38050b6423fd3c6f43d1be172b470741f
2013-10-01 20:51:12 -07:00
Elliott Hughes
e713f57a6e am d82b1c3b: am 9d8721f8: Merge "Remove dead code."
* commit 'd82b1c3bf2abbc1582c90362267650cf05d38cd5':
  Remove dead code.
2013-09-24 17:54:42 -07:00
Elliott Hughes
4b395a3625 Remove dead code.
This hasn't been used since at least 2011, and we're no longer
shipping the data supporting it either.

Change-Id: Ibe42057650b49794c65d6f0d54ed7a492f3b594b
2013-09-24 17:22:11 -07:00
Flavio Lerda
5771302ca1 Document the order of values returned by keyAt().
The values returned by keyAt() are currently guaranteed to be in
ascending order. This is helpful to users of the API to be able to make
assumptions about the keys and values when iterating over one of the
sparse array implementations.

This commit adds documentation about this.

Change-Id: I3d7eb78e115ce174f1167b83904b44bf5120b223
2013-09-08 22:29:44 +01:00
Dianne Hackborn
a6c767b2d8 Merge "Fix issue #10491028: iabv2 test apps that contain subscription SKUs..." into klp-dev 2013-09-05 22:20:55 +00:00
Dianne Hackborn
8fd3751be2 Fix issue #10491028: iabv2 test apps that contain subscription SKUs...
...crash on launch

You got some values in my keys!

Change-Id: I2636c72843e0c0900ccdd9acba771c1b61e70b39
2013-09-05 15:10:20 -07:00
Adam Powell
1487466dc2 Add View#cancelPendingInputEvents API
This API allows an application to cancel deferred high-level input
events already in flight. It forms one tool of several to help apps
debounce input events and prevent things like multiple startActivity
calls, FragmentTransactions, etc. from executing when only one was
desired since it's otherwise not desirable for things like click
events to fire synchronously.

Change-Id: I60b12cd5350898065f0019d616e24d779eb8cff9
2013-09-05 00:55:20 +00:00
Fabrice Di Meglio
253fb7f6c3 Fix bug #10549094 KLP API Review: android.util.LayoutDirection
- use constant class instead of an interface
- make it final

Change-Id: I1bde76eb84cd92427e4e1fc2483cdecec429ae99
2013-08-29 18:13:28 -07:00
Elliott Hughes
89a8250e24 am 710f3e2c: am 60ae2617: Merge "If frameworks wants ASCII casing, it should explicity ask for it."
* commit '710f3e2cc6bc2cdc2f2cddb2190823ea31efd52a':
  If frameworks wants ASCII casing, it should explicity ask for it.
2013-08-02 17:58:33 -07:00
Elliott Hughes
cb64d43062 If frameworks wants ASCII casing, it should explicity ask for it.
http://elliotth.blogspot.com/2012/01/beware-convenience-methods.html

Bug: https://code.google.com/p/android/issues/detail?id=58359
Change-Id: Iaab02e718a7be7bda22e626dca05d79bfd2a8fc4
2013-08-02 15:12:32 -07:00
Fabrice Di Meglio
3f5a90b2fb Add automatic Drawable mirroring capability when in RTL layout direction
- default value is "no mirroring"
- introduce android:autoMirrored as a new attribute for Drawable,
BitmapDrawable, LayerDrawable, StateListDrawable and NinePatchDrawable
- setting android:autoMirrored="true" means that the drawable will
be mirrored when the layout direction is RTL (right-to-left)
- also fix an issue with ImageView drawable layout direction not
updated correctly when RTL properties were changed

See bug #7034321 Need Drawable RTL support

Change-Id: If595ee5106c786f38e786d3a032e182f784a9d97
2013-08-01 15:15:10 -07:00
Dianne Hackborn
8b7bc13e21 Fix issue #10115327: MapCollections need to implement equals
Change-Id: I8e7b6dd092442f3870aa1a36bd2a7cd974177146
2013-07-31 17:52:07 -07:00
Dianne Hackborn
62d708f4dd Okay, I give in, add null key support to ArrayMap and ArraySet.
Change-Id: Iac5035f9c5884a9f9d5acb38132bb128d7a55249
2013-07-25 16:53:09 -07:00
Dianne Hackborn
450d8c5b7c Fix issue #9940105: IllegalArgumentException in ArrayMap
Try to deal with unmarshalling old parcels.  Turns out someone
was writing a parcel to disk storing a Bundle.  Naughty, naughty.
This helps us not completely keel over.

Change-Id: Id343da2690b7bab89f6c3cb6fad1b92f270dad03
2013-07-19 17:05:30 -07:00
Dianne Hackborn
b87655b3e5 Switch Bundle's implementation over to ArrayMap.
That was...  um...  easier than I thought it was going to be.

Change-Id: Id8f2211c1d5f8145e0bb009dca0f62a590f2b860
2013-07-18 11:10:29 -07:00