3783 Commits

Author SHA1 Message Date
Andreas Huber
0d1ba15056 Merge "DRM errors signaled by the CryptoPlugin are now visible to MediaCodec clients" 2012-04-19 13:51:10 -07:00
Andreas Huber
bfc56f497d DRM errors signaled by the CryptoPlugin are now visible to MediaCodec clients
through a custom exception "MediaCodec.CryptoException".

Change-Id: I30215e9e13bab68abad23e27dcead7c1accd07f1
related-to-bug: 6365261
2012-04-19 13:42:14 -07:00
Jean-Michel Trivi
c9496495ba Merge "Unhide Visualizer scaling mode definitions and methods" 2012-04-19 10:52:25 -07:00
Jean-Michel Trivi
951794616f Unhide Visualizer scaling mode definitions and methods
Unhide Visualizer set/get methods, and associated constant
 definitions.

Change-Id: Iaafe5f7a2f1273f72c3f7f842b416b93614dfa65
2012-04-19 10:34:50 -07:00
Eric Laurent
6db653355b Merge "unhide API for synchronous audio capture." 2012-04-19 10:16:38 -07:00
Irfan Sheriff
75e91f7716 Merge "Add network service discovery broadcast" 2012-04-19 09:57:24 -07:00
Irfan Sheriff
6c07ba8183 Add network service discovery broadcast
Allows apps to know if user has the feature turned off

Change-Id: I2d2fecb148eb4e48eb4aea51d1d7643a82df5c52
2012-04-19 09:54:40 -07:00
Eric Laurent
ff2577da37 unhide API for synchronous audio capture.
unhide MediaSyncEvent class and AudioRecord.startRecording() method with synchronization
event allowing to start audio capture upon occurence of a specific event.
So far the only event defined is playback presentation complete but more events and synchronized
playback/capture methods could be defined in the future.

Change-Id: If05fc6cd125dd9afad451727f792a3fd9e916bef
2012-04-19 08:59:20 -07:00
Eric Laurent
5df19f0826 Merge "unhide audio pre processing API." 2012-04-19 08:42:40 -07:00
Wu-cheng Li
3c3b5b5e0b Merge "Unhide MediaColumns.WIDTH and MediaColumns.HEIGHT." 2012-04-18 23:13:10 -07:00
Wu-cheng Li
ac13cc06ee Unhide MediaColumns.WIDTH and MediaColumns.HEIGHT.
bug:5224359
Change-Id: I3dcaa2ed383e12ae308b28db45cbe8e503610cdc
2012-04-19 12:11:17 +08:00
Daniel Sandler
6b31880838 Remove intruder alert APIs from JB.
Change-Id: I27042d604fbe15879e7b7aaaac860db2d1efa47f
2012-04-18 20:53:24 -07:00
Eric Laurent
8dfc10571a unhide audio pre processing API.
Unhide APIs for Noise Suppressor(NS), Acoustic Echo Canceler (AEC) and
Automatic Gain Control (AGC) audio pre processings.

Also unhide getAudioSessionId() method on AudioRecord.

Change-Id: I788f7a0724b152cc98c8167d9434e64c12bada95
2012-04-18 20:26:43 -07:00
Svetoslav Ganov
2c23a14a3b Merge "Adding API for getting the root node info in the active window." 2012-04-18 18:55:24 -07:00
Svetoslav Ganov
0846e29d0b Adding API for getting the root node info in the active window.
1. This APIs is useful for accessibility services since very often
   they want to get access to the root node in the current window
   to determine where accessibility focus is and subsequently find
   a next view to take accessibility focus.

Change-Id: Ide5231f832d9ce2e9b14dc411dfd675f753a4edb
2012-04-18 18:50:57 -07:00
Svetoslav Ganov
f01d3dd710 Merge "Adding some more gestures and actions for accessibility." 2012-04-18 14:14:37 -07:00
Svetoslav Ganov
005b83b0c6 Adding some more gestures and actions for accessibility.
1. Added more gesture for accessibility. After a meeting
   with the access-eng team we have decided that the current
   set of gestures may be smaller than needed considering
   that we will use four gestures for home, back, recents,
   and notifications.

2. Adding actions for going back, home, opening the recents,
   and opening the notifications.

3. Added preliminary mapping from some of the new gestures
   to the new actions.

4. Fixed a bug in the accessibility interaction controller
   which was trying to create a handled on the main looper
   thread which may be null if the queried UI is in the
   system process. Now the context looper of the root view
   is used.

5. Fixed a bug of using an incorrect constant.

6. Added a missing locking in a couple of places.

7. Fixed view comparison for accessibilityt since it was
   not anisymmetric.

bug:5932640
bug:5605641

Change-Id: Icc983bf4eafefa42b65920b3782ed8a25518e94f
2012-04-18 13:43:55 -07:00
Andreas Huber
91befdc0c4 Information required to decrypt buffers is now packaged into MediaCodec.CryptoInfo
New API on MediaExtractor to retrieve a CryptoInfo structure where applicable.

Change-Id: I18edfc9ac56a4544c8f17cba24401b96dacbff7d
related-to-bug: 6275919
2012-04-18 12:19:51 -07:00
Daniel Sandler
b9a6d4d052 Merge "New InboxStyle template for expanded notifications." 2012-04-18 05:28:00 -07:00
Daniel Sandler
879c5e07c0 New InboxStyle template for expanded notifications.
Bug: 6336834
Change-Id: I67b273350b984673cbfb19267451a3782d0477fc
2012-04-17 23:41:58 -04:00
Michael Chan
37f1d29784 Added identity and namespace to Calendar Attendees
Bug: 6353721
Change-Id: I8cf7a5bbeb5380320b9bb11875168bef4e180b31
2012-04-17 19:03:38 -07:00
Chet Haase
7dd4a536a1 Adding new CHANGING transition to LayoutTransition.
LayoutTransition used to depend on child views being added/removed or
shown/hidden in the transition container. These evens would trigger animations
to fade the child view as well as those to animate the side-affected changes
to sibling views. This CL enables a new feature in LayoutTransition that
enables animating any changes to the layout of the children in the container
whenever a layout occurs. For example, you can change the LayoutParams of a
child view and call requestLayout() to automatically animate those changes.

This capability is not enabled by default. To enable, call the new
LayoutTransition.enableTransitionType(LayoutTransition.CHANGING) method.

Change-Id: I4d07a3b36245353b2151f0dca4f75080ab6a4592
2012-04-17 13:33:55 -07:00
Jean-Baptiste Queru
453d98fc70 fix build - new current.txt
Change-Id: Ia114d5f3fef2b84272237eded88c7908f65851f6
2012-04-17 12:46:15 -07:00
Andreas Huber
87459dbc59 Merge "MediaCrypto's constructor can throw RuntimeException." 2012-04-17 12:05:22 -07:00
Irfan Sheriff
1205054240 Merge "Open p2p pre-association service discovery API" 2012-04-17 11:40:03 -07:00
Irfan Sheriff
2e3dec5aeb Merge "Open network service discovery API" 2012-04-17 11:39:08 -07:00
Andreas Huber
2952c5d03c MediaCrypto's constructor can throw RuntimeException.
Change-Id: I5718e9abab0d1465882580e826747d6a78bdefb5
related-to-bug: 6275919
2012-04-17 11:24:11 -07:00
satok
fbf7e1f343 Merge "Get rid of "isSentenceLevelSpellCheckSupported"" 2012-04-16 22:07:45 -07:00
Dianne Hackborn
ac76e72272 Merge "Add new scale-up window manager animation." 2012-04-16 17:34:25 -07:00
Dianne Hackborn
eabfb3a36e Add new scale-up window manager animation.
Like zoom thumbnail, but without the thumbnail.

Change-Id: I9486dd204398b87c9e70ff0d05d03f4a22449cd6
2012-04-16 17:32:50 -07:00
Jeff Brown
9704e78418 Merge "Refactor SensorManager to move non-API bits into a subclass." 2012-04-16 15:46:47 -07:00
Andreas Huber
901cb6160d Merge "Unhide new media related java APIs." 2012-04-16 14:06:05 -07:00
Jamie Gennis
d1661dcc90 Merge "Unhide new SurfaceTexture & TextureView APIs" 2012-04-16 13:21:53 -07:00
Jeff Brown
25157e458d Refactor SensorManager to move non-API bits into a subclass.
Changed the SensorManager class so that it only contains API-related
bits including what's needed to support legacy sensors.  Mostly just
moved stuff around.  Making the class abstract is safe because
it does not have a visible constructor in the API.

One minor change is that the cache of sensor type to sensor lists
is now per instance of SensorManager instead of being static.
We can fix this if desired.

Another small change is that we bail out early from registerListener
if the listener has already been registered for the particular
sensor.  This happened for both legacy and standard listeners.
The problem is that the ListenerDelegate maintains two lists of
sensors, one is a Map and the other is a List.  Adding a sensor
twice causes one entry to be added to the Map and two entries to be
added to the List, but when the sensor is removed the next time, only
one entry is removed from the List, leaving it in an inconsistent
state.

Removed Sensor.getLegacyType() since the value it provides is only
needed in LegacyListener and we don't really save any significant
computation by caching it.  Removing the field makes support for
legacy sensors a little more self-contained.

Bug: 6339552
Change-Id: I50d41ac97cf535924f2bfa2026d28547a4d00286
2012-04-16 13:03:55 -07:00
Jeff Sharkey
c0e5b8c7fa Merge "DownloadManager and metered networks." 2012-04-16 12:03:43 -07:00
Jeff Sharkey
792e091045 DownloadManager and metered networks.
API to control whether a download is allowed to use metered networks.

Bug: 3001465
Change-Id: I29153d2a7495a2e9f76ef5be0a77696a85823839
2012-04-16 12:00:43 -07:00
Jeff Sharkey
7bf8fba6f0 Merge "API to report if active network is metered." 2012-04-16 11:22:22 -07:00
Jeff Sharkey
9f7cbf0e50 API to report if active network is metered.
Report to developers if active network is "metered" and define it
as the user being sensitive to heavy data usage.

Bug: 3001465
Change-Id: I855ca3cd3eb1de3c4814148d70ccf24957af898a
2012-04-16 11:20:27 -07:00
Andreas Huber
07ea426e3a Unhide new media related java APIs.
Change-Id: If0b8201eaca74f51f3499b6ecdfb73088586ee24
2012-04-16 10:14:05 -07:00
Philip Milne
4e1cb3b794 Merge "Fix for bug 6110465." 2012-04-16 10:03:17 -07:00
satok
c7ee1b9369 Get rid of "isSentenceLevelSpellCheckSupported"
Bug: 6320351
Change-Id: I0e931b7248f8c65268b60af599c07432d58d2f1f
2012-04-16 20:02:37 +09:00
Jonathan Dixon
caf97c7db9 Merge "Two WebView API cleanups" 2012-04-16 01:05:06 -07:00
Irfan Sheriff
92784670c4 Open network service discovery API
Add support for DNS based network service discovery API. This
allows applications to discover and resolve applications on a
local network such as Wi-Fi

Change-Id: Ie89895edd35d12b7f7a23fb5fed36cb2b2079f7a
2012-04-15 17:09:48 -07:00
Irfan Sheriff
8bf825f48f Open p2p pre-association service discovery API
This allows applications to filter out the devices by the
services supported for the purpose of establishing a
connection.

so, a game app can connect to devices that support the game,
and a media streaming app can filter and connect only to
the available media display devices

Change-Id: Ia792e292d2ca771beeb4ca3b007a047527c19229
2012-04-14 14:41:45 -07:00
Svetoslav Ganov
4213804541 Accessibility focus - framework
Usefulness: Keep track of the current user location in the screen when
            traversing the it. Enabling structural and directional
            navigation over all elements on the screen. This enables
            blind users that know the application layout to efficiently
            locate desired elements as opposed to try touch exploring the
            region where the the element should be - very tedious.

Rationale: There are two ways to implement accessibility focus One is
           to let accessibility services keep track of it since they
           have access to the screen content, and another to let the view
           hierarchy keep track of it. While the first approach would
           require almost no work on our part it poses several challenges
           which make it a sub-optimal choice. Having the accessibility focus
           in the accessibility service would require that service to scrape
           the window content every time it changes to sync the view tree
           state and the accessibility focus location. Pretty much the service
           will have to keep an off screen model of the screen content. This
           could be quite challenging to get right and would incur performance
           cost for the multiple IPCs to repeatedly fetch the screen content.
           Further, keeping virtual accessibility focus (i.e. in the service)
           would require sync of the input and accessibility focus. This could
           be challenging to implement right as well. Also, having an unlimited
           number of accessibility services we cannot guarantee that they will
           have a proper implementation, if any, to allow users to perform structural
           navigation of the screen content. Assuming two accessibility
           services implement structural navigation via accessibility focus,
           there is not guarantee that they will behave similarly by default,
           i.e. provide some standard way to navigate the screen content.
           Also feedback from experienced accessibility researchers, specifically
           T.V Raman, provides evidence that having virtual accessibility focus
           creates many issues and it is very hard to get right.
           Therefore, keeping accessibility focus in the system will avoid
           keeping an off-screen model in accessibility services, it will always
           be in sync with the state of the view hierarchy and the input focus.
           Also this will allow having a default behavior for traversing the
           screen via this accessibility focus that is consistent in all
           accessibility services. We provide accessibility services with APIs to
           override this behavior but all of them will perform screen traversal
           in a consistent way by default.

Behavior:  If accessibility is enabled the accessibility focus is the leading one
           and the input follows it. Putting accessibility focus on a view moves
           the input focus there. Clearing the accessibility focus of a view, clears
           the input focus of this view. If accessibility focus is on a view that
           cannot take input focus, then no other view should have input focus.
           In accessibility mode we initially give accessibility focus to the topmost
           view and no view has input focus. This ensures consistent behavior accross
           all apps. Note that accessibility focus can move hierarchically in the
           view tree and having it at the root is better than putting it where the
           input focus would be - at the first input focusable which could be at
           an arbitrary depth in the view tree. By default not all views are reported
           for accessibility, only the important ones. A view may be explicitly labeled
           as important or not for accessibility, or the system determines which one
           is such - default. Important views for accessibility are all views that are
           not dumb layout managers used only to arrange their chidren. Since the same
           content arrangement can be obtained via different combintation of layout
           managers, such managers cannot be used to reliably determine the application
           structure. For example, a user should see a list as a list view with several
           list items and each list item as a text view and a button as opposed to seeing
           all the layout managers used to arrange the list item's content.
           By default only important for accessibility views are regared for accessibility
           purposes. View not regarded for accessibility neither fire accessibility events,
           nor are reported being on the screen. An accessibility service may request the
           system to regard all views. If the target SDK of an accessibility services is
           less than JellyBean, then all views are regarded for accessibility.
           Note that an accessibility service that requires all view to be ragarded for
           accessibility may put accessibility focus on any view. Hence, it may implement
           any navigational paradigm if desired. Especially considering the fact that
           the system is detecting some standard gestures and delegates their processing
           to an accessibility service. The default implementation of an accessibility
           services performs the defualt navigation.

bug:5932640
bug:5605641

Change-Id: Ieac461d480579d706a847b9325720cb254736ebe
2012-04-13 19:05:24 -07:00
Jamie Gennis
33efb231cb Unhide new SurfaceTexture & TextureView APIs
This change unhides the new SurfaceTexture and TextureView APIs that were added
to allow transferring ownership of the SurfaceTexture from the UI framework to
the application.

Change-Id: Ic4b781d907a59e99ff1a5974009305c1f9aee36a
2012-04-13 18:33:38 -07:00
Jeff Brown
90aba7caac Merge "Add support for input devices that have vibrators." 2012-04-13 17:34:20 -07:00
Jeff Brown
75e0dcbca1 Merge "Extract Vibrator implementation from interface." 2012-04-13 17:03:05 -07:00
Jeff Brown
a47425a13c Add support for input devices that have vibrators.
Added a getVibrator() method to InputDevice which returns a Vibrator
associated with that input device.  Its uses the same API as the
system vibrator which makes it easy for applications to be modified
to use one or the other.

Bug: 6334179
Change-Id: Ifc7f13dbcb778670f3f1c07ccc562334e6109d2e
2012-04-13 17:01:15 -07:00
Dianne Hackborn
2a07308ed2 Merge "Add direct support for HTML formatted text in ClipData etc." 2012-04-13 16:47:38 -07:00