Commit Graph

356 Commits

Author SHA1 Message Date
vandwalle
c520aa89a3 add millisecond timestamp to locallog
Change-Id: I33d8672efd2747ed3f49dd8d5bcd5f47bf418053
2014-10-03 15:35:25 -07:00
Dianne Hackborn
8d05172112 More work on issue #17656716: Unhandled exception in Window Manager
Fix Slog.wtf to not acquire the activity manager lock in its code
path, so that it can never deadlock.  This was the original intention
of it, but part was missed.

Now we can put back in the code to detect when strict mode data is
getting large (a little more targeted now to the actual problem),
and use Slog.wtf to report it.  And as a bonus, when this happens
we will now clear all of the collected violations, to avoid getting
in to the bad case where IPCs start failing.  So this should be
good enough for L to fix the problem, with wtf reports for us to
see if the underlying issue is still happening.

Finally, switch a butch of stuff in the system process from Log.wtf
to Slog.wtf, since many of those are deadlocks waiting to happen.

Oh and fix a crash in the settings provider I noticed in APR.

Change-Id: I307d51b7a4db238fd1e5fe2f3f9bf1b9c6f1c041
2014-10-01 16:58:56 -07:00
Philip Nowell
d561913798 Corrects a typo that identified XXXHIGH as 560 dpi instead of 640.
Change-Id: I8b5ac84431d378f0e43be8d19920fd6ba335ebc6
2014-09-26 00:54:32 +00:00
Lajos Molnar
0f491d7513 add android.util.SizeF.parseSizeF()
Bug: 17190665
Change-Id: Ic1b0087dfd40b86aaeb4687a1a3024c1ab54018f
2014-09-09 21:16:03 -07:00
Jeff Sharkey
5ef33984d0 Move Size parceling to Bundle.
Size itself shouldn't be Parcelable, since that would be a layering
violation.

Bug: 17390381
Change-Id: Ica62709bd889db51c916c550a0146714b002baa3
2014-09-05 09:07:35 -07:00
Michael Wright
3e9a13438d Use a linear spline if there's a non-monotonic brightness curve
Some devices may contain things like transflective displays where
they actually want the backlight brightness to decrease in the face
of high ambient light scenarios. In the interest of time, just use a
linear interpolation based on the brightness control points for these
cases but in the future we should consider adding a non-monotonic
cubic spline.

Bug: 15611140
Change-Id: I8fcee061b18c8ae9cc9a1b38d8b850aaec4478ce
2014-08-29 14:39:12 -07:00
Jeff Sharkey
5b836f29a3 Define EXTRA_SIZE for ContentProviders.
Also make Size and SizeF parcelable.

Bug: 17205016
Change-Id: Ide397b84864f6cad7f8d89e66b6c8697a3ad335b
2014-08-27 15:13:57 -07:00
Dianne Hackborn
5232271a41 Fix issue #17146552: system anr
Add a safe path for Slog.wtf that doesn't acquire an activity manager
lock or block in any way.

Change-Id: I8fef8251a0cb85081442cae55d85063944248d15
2014-08-26 22:55:47 -07:00
Adam Lesinski
4e9c07c0de Add indexOf method to ArrayMap & ArraySet
Getting the indexOf is useful for doing compound operations
like:

int i = set.indexOf(key);
if (i >= 0) {
    Object o = set.valueAt(i);
    o.blah();
    set.removeAt(i);
}

Change-Id: I3d4b77d1461ba969fc6b4d332d52d4d084b5b53c
2014-08-26 11:53:32 -07:00
Dianne Hackborn
9c3e74f1f7 Fix issue #16794553: Duplicate ArrayMap entries in Bundle...
...can lead to launching of un-exported activities

We now validate the array map after unparcelling to make sure there
are no duplicate keys.

And to make up for the performance overhead this introduces, I switched
the parcelling/unparcelling code to write keys as explicit string
objects rather than generic values.  There was no reason to use generic
values since the write method itself only accepts an array map with
String keys.

Change-Id: I57bda9eb79ceaaa9c1b94ad49d9e462b52102149
2014-08-13 17:24:45 -07:00
Dianne Hackborn
a3fb40d5f4 Add 560dpi, and some other stuff.
Like new settings actions for some of the new settings panels.
And fix voice interaction services so they require a recognizer.
And tweak array map doc to be correct.

Blah blah blah.

Change-Id: Ib5e66b574b10e7b3fa39723b21046a74e6ead204
2014-08-12 15:38:19 -07:00
ztenghui
a95c8abb36 API REVIEW: VectorDrawable
- Merge <size> and <viewport> attributes all in to top-level <vector> tag
- Indent attributes under <group> in java doc.
- Updata android:stroke to be android:strokeColor, likewise android:fill
- Instead of android:clipToPath, make this a different clip-path tag.
- Document units of the various attributes
- Add example code for defining a VectorDrawable resource

More than that:
= Refactor the code to better support clipPath as a sub-class.
= Update all the xml files to use the new attributes and clip-path tag.

TODO:
-- Remove clipToPath, since that should happen on build break Friday.

bug:16488254

Change-Id: I6db5680ef83cb26c8f064a60fc7d6e7142974b0f
2014-07-25 23:26:41 +00:00
Neil Fuller
3b852e3489 Rewriting android.text.format.Time without the native _tz functions
(cherry picked from commit d7f0849b8c)
Bug: 15765976

Change-Id: I00f72bd1043ef20f22d25559206b2f741334ba9c
2014-07-24 11:37:20 +01:00
ztenghui
5a836f74df Add negative sign separation support in the pathData
bug:14585171

Change-Id: I61dec27856be09c44bb1d32ff61b3c3cd458cc34
2014-07-23 21:46:16 +00:00
Adam Lesinski
0debc9aff4 First iteration of a public UsageStats API
UsageStats API that allows apps to get a list of packages that have been
recently used, along with basic stats like how long they have been in
the foreground and the most recent time they were running.

Bug: 15165667

Change-Id: I2a2d1ff69bd0b5703ac3d9de1780df42ad90d439
2014-07-18 15:24:20 -07:00
Jeff Davidson
61a5a3f2c3 Remove obsolete remark from XXHDPI comment.
XXHDPI screens now make up 15% of all Android devices, so developers
should be encouraged to include assets at this density.

Change-Id: I9d845769233a71dd954b5f35246aabb774a1c40d
2014-07-16 13:10:18 -07:00
Jeff Sharkey
78a130144b Mark resource-only splits as hasCode=false.
PackageManagerService now skips dexopt for split APKs that don't
declare they have code.  Also surface more detailed error messages
in logs.

Bug: 14975160
Change-Id: Ie6078dba724815020cee59b7fc52317e88ca097a
2014-07-15 20:18:39 -07:00
Jeff Sharkey
a103114347 Package installation listener events.
Flesh out implementation of install session observers.  Carve out 20%
of published install progress for final system operations such as
dexopt, etc.

Add dumpsys output for active install sessions.  Create explicit
fsync() instead of overriding meaning of flush().  Hack to throw
IOExceptions over Binder calls.

Bug: 14975160, 15348430
Change-Id: I874457e40c45d2661bc0a526df9285ffea4bb77c
2014-07-12 21:12:25 -07:00
Lajos Molnar
b1a236b85f add utility methods to util.Range, Rational and Size
Bug: 12065651
Bug: 11990470
Change-Id: I0d0929ea0289ac5de5c17cca90f25abc4e9dfd7a
2014-07-12 14:12:27 -07:00
Dianne Hackborn
497175beff Rework network stats to use proc state for fg/bg.
Switch to using the process state to determine whether a
process should be foreground or background, instead of the
boolean foreground given by the activity manager.

This is for battery save mode, where we can now allow more apps
to havenetwork access: everything whose process state is at
least IMPORTANT_FOREGROUND, which allows music playback
and other use-visible things to continue to have network
access.

Note this also impact the traditional background data disabled
state, where now we allow anything top or better to have
network access.  This automatically includes all persistent
processes, the current top activity, and any other processes
hosting the top activity or being used by the top activity.
So it broadens the set of apps that get network access, but I
think this increases it to a reasonable set of things that may
actually be needed for the foreground app to work correctly.

Change-Id: Icb609a2cea280dc3fa3e83417f478ed77f3685aa
2014-07-01 18:34:58 -07:00
ztenghui
eb034fbca4 AVD now support path morphing.
Basically extended the ValueAnimator to support a new type: pathType.
Add the PathDataEvaluator internally to interpolate path data.
Update test to show the path morphing.

Change-Id: I89db0199cbc12e3041790a6115f3f50b80213cdb
2014-06-20 15:16:47 -07:00
ztenghui
cf4832f69c Add path support into xml files for PathInterpolator and ObjectAnimator.
The test case is showing that AnimatedVectorDrawable is able to use path to
define time interpolator and object movement now.

Change-Id: If3c0418265d0fd762c8f5f0bb8c39cce3ad34ef3
2014-06-19 10:56:28 -07:00
Narayan Kamath
5af1edc4bb am 5a44bdc8: am 8382b0d3: am ab9a19e3: Merge "Remove some pointless code."
* commit '5a44bdc828cba61aa055e2d71b3af62f39100179':
  Remove some pointless code.
2014-06-16 10:03:19 +00:00
Narayan Kamath
5a44bdc828 am 8382b0d3: am ab9a19e3: Merge "Remove some pointless code."
* commit '8382b0d3c6639ee0eeadec02983bfceaf5ba0a32':
  Remove some pointless code.
2014-06-16 09:54:49 +00:00
Narayan Kamath
d9d0bb64e7 Remove some pointless code.
Unnecessary disk reads for values that are never
used (and cached elsewhere, so that optimization is
rendered pointless).

Change-Id: Ic14a8b53a96908bb03eae28759d7be2c217e8125
2014-06-13 17:46:47 +01:00
Igor Murashkin
007bfb14d2 util: Make Rational a Number/Comparable; add Range#inRange
* Also changes Rational to reduce the numerator/denominator by
its greatest common divisor at construction time (e.g. (2/4 -> 1/2)).

Bug: 15432042
Change-Id: Ib827abccf44a040667e5931cf9442afc86b57e2d
2014-06-06 16:38:09 -07:00
Igor Murashkin
72f9f0a96e camera2: Move parameters around to different packages
* Camera-specific params to android.hardware.camera2.params
* Remove android.hardware.camera2.Size
* Move Rational to android.util

Bug: 14628001
Change-Id: Ie7a82bf9f4a0d8c18e0dc3a1581123c0d95da3f0
2014-05-14 18:24:58 -07:00
Igor Murashkin
3c40a046cf camera2: Update native<->managed camera metadata marshalers
* Improve existing marshalers:
 - each managed/native type combination can be queried marshal support
 - marshalers can recursively call other marshalers for nested types
 - support marshaling/unmarshaling generic classes by using super type tokens

* Add new marshalers for:
 - ColorSpaceTransform
 - MeteringRectangle
 - Parcelable
 - Range<T>
 - ReprocessFormatsMap
 - RggbChannelVector
 - SizeF
 - StreamConfiguration
 - StreamConfigurationDuration

Batteries included; so are unit tests.

Bug: 14628001
Change-Id: I38d3e646ccfb3953898cd6f750c33e4097328482
2014-05-13 15:28:24 -07:00
John Reck
315c329544 Add TimeInterpolator support to RNA
Bug: 14678626

Change-Id: I6554e7fcd42c49fac3618ca792083bb68e358f55
2014-05-12 14:41:06 -07:00
Igor Murashkin
b3a78b2ca9 camera2: Add re-usable data types for camera metadata key/values
Adds new types to public API:
* ColorSpaceTransform
* Range<T>
* SizeF (android.util)
* MeteringRectangle

Minor changes to:
* Size (docs and move to android.util)
* Preconditions (@hide)

Adds helper class:
* HashCodeHelpers

Change-Id: Ied6749a19234f3af9da838f365f8d68d90251aaf
2014-05-02 15:55:29 -07:00
Bill Yi
293513a59d Merge commit '0b62467b142b61ee1e449ba958ba37dfd961ef56' into HEAD 2014-04-29 16:07:29 -07:00
Mark Salyzyn
95df2024ed am a19b9c41: am dfdeabf9: am ac732708: Merge "EventLog: event log translation errors"
* commit 'a19b9c413b3e7f3b6038b06c51d01bab1e0bfda9':
  EventLog: event log translation errors
2014-04-25 22:52:09 +00:00
Mark Salyzyn
a19b9c413b am dfdeabf9: am ac732708: Merge "EventLog: event log translation errors"
* commit 'dfdeabf9ba40ea7f082acf7eba6fe086d2e643fb':
  EventLog: event log translation errors
2014-04-25 22:07:07 +00:00
Mark Salyzyn
747802f8aa EventLog: event log translation errors
- Deal with L using v3 event log format, or K using v1 or v2 event log format

Change-Id: Id4fb205f51b7e506135888d565acf1604497b91f
2014-04-25 13:45:03 -07:00
Selim Gurun
a3bb66a75e Tune down the linkify false positive rate
Bug: 14066316

Tune down the false positive rate by restricting gTLD pattern a little bit.

Change-Id: I7bd39633d3267930593bd7231f764c110293301f
2014-04-23 11:17:20 -07:00
Mark Salyzyn
c726f6b537 am b90e504e: am 649da9b5: am 5a47a9f6: Merge "Native Runtime: Add LOG_ID_CRASH"
* commit 'b90e504ec17a7f509521c21f2b937a2ebefaf6ab':
  Native Runtime: Add LOG_ID_CRASH
2014-04-18 16:25:59 +00:00
Mark Salyzyn
b90e504ec1 am 649da9b5: am 5a47a9f6: Merge "Native Runtime: Add LOG_ID_CRASH"
* commit '649da9b505498ff87d75da56d376d46c22e50782':
  Native Runtime: Add LOG_ID_CRASH
2014-04-18 15:08:56 +00:00
Mark Salyzyn
69eb6f57e3 Native Runtime: Add LOG_ID_CRASH
Change-Id: I4e3a82636901c5169cc6b714a4fec815cd757c58
2014-04-15 15:22:23 -07:00
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
6934a16517 am 194e77aa: am 0f3fd6c6: Merge "Remove stray logging statement."
* commit '194e77aafe32cacc00f69b25bec6eeea67eb0205':
  Remove stray logging statement.
2014-03-13 01:55:20 +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