639 Commits

Author SHA1 Message Date
Gabriel Peal
8ee4491dc8 am e05077d7: am 83da75d9: Added a private apis jar that includes explicitly supported APIs that are not useful for 3rd party developers.
* commit 'e05077d78c9abde054a754db53e71c647b9a705c':
  Added a private apis jar that includes explicitly supported APIs that are not useful for 3rd party developers.
2014-03-25 03:46:17 +00:00
Gabriel Peal
e05077d78c am 83da75d9: Added a private apis jar that includes explicitly supported APIs that are not useful for 3rd party developers.
* commit '83da75d938d519bbcffb9c3b52802fd2daad4aee':
  Added a private apis jar that includes explicitly supported APIs that are not useful for 3rd party developers.
2014-03-22 23:35:00 +00:00
Gabriel Peal
83da75d938 Added a private apis jar that includes explicitly supported APIs that are not useful for 3rd party developers.
The first set of these APIs is for telephony:

Added some APIs to ITelephony and created a first party framework for them

toggleHold()
merge()
mute(boolean mute)
playDtmfTone(char digit, boolean timedShortCode)
stopDtmfTone()
swap()
addListener(ITelephonyListener listener)
removeListener(ITelephonyListener listener)

Bug: 13302451
Change-Id: Iefec5688c26a1b4fe77f5643eba6e1690a057ee6
2014-03-22 13:33:43 -07:00
Jinsuk Kim
4f512fb451 Add HDMI-CEC service
This CL adds a system service handling HDMI-CEC protocol. The service
is equipped with the capability sending/receiving HDMI-CEC messages

Not all the messages are in place. Currently it has messages to support
a few features only, as follows:

- One touch play
- System information
- Routing control (partially - active source status maintenance only)
- Device OSD transfer
- Power status

It will be extended to cover the wider usages in the follow up CLs.

The CEC standard version referenced in the implementation is 1.3a.

Change-Id: Ifed0b02f52ebf098eddb3bd0987efbf353b7e8fe
2014-03-20 16:40:22 +09:00
Jeff Brown
2687550272 Add a new "doze mode" based on Dream components.
When a doze component has been specified in a config.xml resource
overlay, the power manager will try to start a preconfigured dream
whenever it would have otherwise gone to sleep and turned the
screen off.  The dream should render whatever it intends to show
then call startDozing() to tell the power manager to put the display
into a low power "doze" state and allow the application processor
to be suspended.  The dream may wake up periodically using the
alarm manager or other features to update the contents of the display.

Added several new config.xml resources related to dreams and dozing.
In particular for dozing there are two new resources that pertain to
decoupling auto-suspend mode and interactive mode from the display
state.  This is a requirement to enable the application processor
and other components to be suspended while dozing.  Most devices
do not support these features today.

Consolidated the power manager's NAPPING and DREAMING states into one
to simplify the logic.  The NAPPING state was mostly superfluous
and simply indicated that the power manager should attempt to start
a new dream.  This state is now tracked in the mSandmanSummoned field.

Added a new DOZING state which is analoguous to DREAMING.  The normal
state transition is now: AWAKE -> DREAMING -> DOZING -> ASLEEP.
The PowerManager.goToSleep() method now enters the DOZING state instead
of immediately going to sleep.

While in the doze state, the screen remains on.  However, we actually
tell the rest of the system that the screen is off.  This is somewhat
unfortunate but much of the system makes inappropriate assumptions
about what it means for the screen to be on or off.  In particular,
screen on is usually taken to indicate an interactive state where
the user is present but that's not at all true for dozing (and is
only sometimes true while dreaming).  We will probably need to add
some more precise externally visible states at some point.

The DozeHardware interface encapsulates a generic microcontroller
interface to allow a doze dream for off-loading rendering or other
functions while dozing.  If the device possesses an MCU HAL for dozing
then it is exposed to the DreamService here.

Removed a number of catch blocks in DreamService that caught Throwable
and attempted to cause the dream to finish itself.  We actually just
want to let the process crash.  Cleanup will happen automatically if
needed.  Catching these exceptions results in mysterious undefined
behavior and broken dreams.

Bug: 12494706
Change-Id: Ie78336b37dde7250d1ce65b3d367879e3bfb2b8b
2014-02-20 13:39:13 -08:00
Dirk Dougherty
820bb4bdd3 am 9c50271d: am 257f6724: am 35cb4e49: Doc change: add new samples TOC groups and landing pages.
* commit '9c50271dc34e48d527db7da85c3b3474574faee2':
  Doc change: add new samples TOC groups and landing pages.
2014-02-13 03:50:08 +00:00
Dirk Dougherty
9c50271dc3 am 257f6724: am 35cb4e49: Doc change: add new samples TOC groups and landing pages.
* commit '257f67249afb017c9a3d0a79e545da567aa5bd02':
  Doc change: add new samples TOC groups and landing pages.
2014-02-13 03:47:02 +00:00
Dirk Dougherty
257f67249a am 35cb4e49: Doc change: add new samples TOC groups and landing pages.
* commit '35cb4e49365a8a8da0607c2659399aaad9ea5a1c':
  Doc change: add new samples TOC groups and landing pages.
2014-02-13 03:44:38 +00:00
Dirk Dougherty
35cb4e4936 Doc change: add new samples TOC groups and landing pages.
Change-Id: I2f39e82fb79d4f19362d9fe2deafdde5d87873a7
2014-02-12 19:38:51 -08:00
Craig Mautner
4a1cb22056 Pair ActivityStacks with Displays
- Introduce concept of ActivityStacks residing on Displays and able
to be decoupled and moved around.
- Add a new interface, IActivityContainer for clients to handle
ActivityStacks.
- Abandon ordering of stacks based on mStackState and instead use
ActivityDisplayInfo.stacks<ActivityStack> ordering.

Progress towards closing bug 12078972.

Change-Id: I7785b61c26dc17f432a4803eebee07c7415fcc1f
2013-12-18 15:08:15 -08:00
Ying Wang
b33fe50a63 am dcbde1b0: Merge "libcore_to_document and junit_to_document are no longer functions."
* commit 'dcbde1b02ad69c18509afd87974c72c3a22f45dd':
  libcore_to_document and junit_to_document are no longer functions.
2013-12-05 09:47:04 -08:00
Ying Wang
50a0fd50f7 libcore_to_document and junit_to_document are no longer functions.
They are evaluated only once in the corresponding export .mk file.
This fixes build log spam reported in:
https://code.google.com/p/android/issues/detail?id=63184

Change-Id: I549eb052272bbdebef8fca697822f5eaa0fe5764
2013-12-04 16:58:59 -08:00
Dirk Dougherty
0b492138c7 am 6000f1ed: Re-enable samples browser.
* commit '6000f1ed3d402e3136df173d987c901cc3cc1ff2':
  Re-enable samples browser.
2013-11-23 20:28:04 +00:00
Dirk Dougherty
6000f1ed3d Re-enable samples browser.
Change-Id: I9d0c5966422ba0cf8bca576895f30679d40a19ab
2013-11-22 14:01:48 -08:00
Dirk Dougherty
a050110572 am 9eaa9443: Disable samples browsing temporarily.
* commit '9eaa94439121f6cb03bff8ecf0acbcbc74442f2d':
  Disable samples browsing temporarily.
2013-11-22 18:55:28 +00:00
Dirk Dougherty
9eaa944391 Disable samples browsing temporarily.
Change-Id: I65fe533f1b43903d6605d17691ec142d062b6b5e
2013-11-22 10:46:22 -08:00
Dirk Dougherty
8b5da35670 am 1448d3cd: Merge "Pass a new samplesdir param to doclava as the starting point for generating samples browsing files. Removes older project-based configuration." into klp-docs
* commit '1448d3cd81a685c68b0102e8303c0db4e6e5668f':
  Pass a new samplesdir param to doclava as the starting point for generating samples browsing files. Removes older project-based configuration.
2013-11-22 18:38:20 +00:00
Dirk Dougherty
5c678cedb5 Pass a new samplesdir param to doclava as the starting point for generating samples browsing files. Removes older project-based configuration.
Change-Id: If59372a92f0572d54af0f2ed7f9f9e401fbce067
2013-11-21 18:39:57 -08:00
Dirk Dougherty
a9a39d6ca2 am acca12fa: Merge "Doc change: move localized files into an intl dir. Build output remains the same for online, offline, and ds docs." into klp-docs
* commit 'acca12faea5fc1c9de63fdc08ae4d6bc0bad864a':
  Doc change: move localized files into an intl dir. Build output remains the same for online, offline, and ds docs.
2013-11-20 02:16:21 +00:00
Dirk Dougherty
5f0462a4f5 Doc change: move localized files into an intl dir. Build output remains the same for online, offline, and ds docs.
Change-Id: Ia75712323563cf56f0224822cb7977f3421f8527
2013-11-19 17:55:49 -08:00
Jeff Brown
5182ea4bb2 am d40a4d74: Merge "Add media router service and integrate with remote displays." into klp-dev
* commit 'd40a4d74c623175c96a2e9d865a99826e56d1132':
  Add media router service and integrate with remote displays.
2013-11-07 17:41:44 -08:00
Jeff Brown
eb223425e3 am 1f7a8a06: Merge "Add a platform library for remote display providers." into klp-dev
* commit '1f7a8a06256907e03405f89108f081289c23e97a':
  Add a platform library for remote display providers.
2013-11-07 17:41:41 -08:00
Jeff Brown
d40a4d74c6 Merge "Add media router service and integrate with remote displays." into klp-dev 2013-11-08 01:36:55 +00:00
Jeff Brown
1f7a8a0625 Merge "Add a platform library for remote display providers." into klp-dev 2013-11-08 01:36:41 +00:00
Jeff Brown
69b07161be Add media router service and integrate with remote displays.
This change adds a new media router service whose purpose is to track
global state information associated with media routes.  This service
publishes routes to the media router instance in application processes
and handles requested state changes such as selecting or unselecting
global routes.  The service also binds to remote display provider
services which can offer new remote display routes to the system.

Includes a test application for manually verifying certain aspects
of the operation of the media router service.

The remote display provider interface is essentially a stripped down
media route provider interface as defined in the support library
media router implementation.  For now, it is designed to be used only
by first parties to publish remote display routes to the system so
it is not exposed as public API in the SDK.  In the future, the remote
display provider interface will most likely be deprecated and replaced
with a more featureful media route provider interface for third
party integration, similar to what is in the support library today.

Further patch sets integrate these new capabilities into the System UI
and Settings for connecting remote displays.

Bug: 11257292
Change-Id: I31109f23f17b474d17534d0f5f4503e388b081c2
2013-11-07 03:25:37 -08:00
Jeff Brown
f3c99e883f Add a platform library for remote display providers.
This interface allows applications to register services that offer
remote displays to the system.  The system will then provide UI
to allow user to connect to these displays and enable mirroring.

Bug: 11257292
Change-Id: I34da5b9dfdaf71267bd3450c505bc1b7368d1b40
2013-11-07 01:58:15 -08:00
Scott Main
03ec3428c9 fix build
Change-Id: I9916113fde67afa04789f451355da215f9b015f7
2013-11-01 17:54:38 -07:00
Scott Main
4cf4f5213e add storage provider sample to build
Change-Id: I76f1e64f68b9db7c39ab3ec9bbbe0ecdd7729ae6
2013-11-01 17:53:46 -07:00
Dirk Dougherty
3626569831 Enable samples browsing in builds.
Change-Id: Ic47ef693dd5b2cd4010e68a600cae3b88d426bd2
(cherry picked from commit e8b32feb72bf4347c1bd98e6b21b18a506d2c5e3)
2013-10-31 16:59:42 +00:00
Dirk Dougherty
e8b32feb72 Enable samples browsing in builds.
Change-Id: Ic47ef693dd5b2cd4010e68a600cae3b88d426bd2
2013-10-30 23:04:38 -07:00
Dirk Dougherty
c5f168a694 Doc change: add new list of browseable samples and sample groups.
Change-Id: I5f0c6899a34ada9f8dfc492f849c9e03203bc920
2013-10-29 20:59:20 -07:00
Svetoslav Ganov
858a1850e2 Hide the print dialog if the printing activity is destroyed.
1. For an app to print it creates a PrintDocumentAdapter implementation
   which is passed to the print dialog activity. If the activity that
   created the adapter is destroyed then the adapter, which may rely on
   the activity state, may be in an invalid state. For example, an app
   creates an adapter and calls print resuting in the app activity and
   the print dialog activity being stacked. Now the user rotates the
   device which triggers the recreating of the activity stack (assume the
   app does not handle rotation). The recreated print dialog activity
   receives the intent that originally created it with containing the
   adapter that was constructed in the context of the old, now destroyed,
   app activity instance.

   To handle this we are limiting an app to be able to print only from
   and activity and when this activity is destroyed we mark the adapter
   as invalid which will result in hiding the print dialog activity. Note
   that if the app process is killed we already handle this in the print
   dialog activiy by registering a death recipient on the adapter binder.

2. In the PrintManager.PrintDocumentAdapterDelegate some of the state is
   accessed only on the main thread and some from miltiple threads. The
   code was trying to avoid locking for state that is not accessed by
   multiple threads but this is error prone and the benefit does not
   justify the complexity and added fragility. Now grabbing a lock all
   the time.

3. The PrintJobConfigActivity waits for it to bind to the print spooler
   service before instantiating its print controller and editor. However,
   these can be accessed by invoking some of the activity cycle callbacks.
   This change is adding null checks for the case where the activity
   callbacks are called before the binding to the spooler is completed.

bug:11242661

Change-Id: Id906b3170e4f0a0553772dfa62686f06fdca0eaf
2013-10-18 13:12:06 -07:00
Svetoslav
7bfbbcb04b Refactor how the print dialog activity is started.
1. Before the print job activity was started asyncronously with
   respect to the print call on to the print manager. This was
   creating a situation where the starting activity may finish
   before the print dialog appears which may lead to an orphaned
   print document adapter with no data to print (as the UI is
   is gone), or strange behaviors where the print dialog starts
   on as a separate task.

   To address this the pending intent for starting the print
   dialog is not started by the print spooler since we cannot
   call into it synchronously as we have to start its process
   and bind to the spooler service which leads to jankyness in
   the client app. Now the pending intent is created by the
   print manager service in the synchronous print call so
   from an app's perspective calling print starts the activity.

   The side effect of this design is that the print dialog
   activity may start before the system is bound to the spooler
   service. In such a case the print activity cannot start
   poking the print spooler state as the system registers
   callback to observe the spooler state. To address this
   the print spooler activity disables the UI and also binds
   to the spooler service which happenes immediately after it
   is started. As soon as the print dialog binds to the
   service it starts the UI.

2. Fixed an bug in the printer adapter of the print dialog that
   was leading to a crash if the only item in the adater is the
   all pritners option and it is selected.

3. Piping the package name that started the printing so we can
   pass it to the storage UI as a hint to open the last location
   the app used.

bug:11127269

Change-Id: Ia93820bdae0b0e7600a0930b1f10d9708bd86b68
2013-10-11 09:11:24 -07:00
Scott Main
332408f862 update version number for doc stamp
Change-Id: I881510209a56204a464df082840d2dde56312303
2013-10-04 16:17:50 -07:00
Scott Main
49551ad60b add -since flag for api level 19 to filter javadocs
Change-Id: I96e7e31f93b1e3c3877a342b84fb069bda5d92e3
2013-10-03 16:46:53 -07:00
Jake Hamby
65cacb3c51 Merge "Add android.provider.Telephony to public API." into klp-dev 2013-09-30 17:18:51 +00:00
Svetoslav Ganov
704697b619 Adding hidden APIs for observing the print jobs state.
This is needed for implementing the print job settigns UI.

bug:10935736

Change-Id: I63b42cbf4ce6a259fa1af47fa368b148ca5621c1
2013-09-25 17:57:07 -07:00
Jake Hamby
43e51a3580 Add android.provider.Telephony to public API.
Add directory containing android/provider/Telephony.java to build.
Add unhidden Telephony fields and classes to api/current.txt.

Bug: 10653081
Change-Id: Ib4ba66e09be5320d35257fcf481db58f840fdc53
2013-09-24 15:54:00 -07:00
Jason Monk
312c495f4b Merge "Guarantee that PAC Local Proxy owns Port" into klp-dev 2013-09-13 20:31:54 +00:00
Jason Monk
6f8a68f49a Guarantee that PAC Local Proxy owns Port
This changes the PAC support to not broadcast the Proxy information until
the Local Proxy has started up and successfully bound to a port so that
the local proxy information can be guaranteed to be owned by the proxy.

Bug: 10459877
Change-Id: I175cd3388c758c55e341115e4a8241884b90d633
2013-09-13 09:53:26 -04:00
Dirk Dougherty
16dae5997b am 834ba474: am 4c6cde54: am 89579294: Merge "Pass whitelist of sample groups to doclava." into jb-mr2-docs
* commit '834ba47485a5fb55c89d8f22b826bdb26049f6d6':
  Pass whitelist of sample groups to doclava.
2013-09-12 09:28:18 -07:00
Dirk Dougherty
834ba47485 am 4c6cde54: am 89579294: Merge "Pass whitelist of sample groups to doclava." into jb-mr2-docs
* commit '4c6cde545c5d2e76d9ba8ef926399463369da7e7':
  Pass whitelist of sample groups to doclava.
2013-09-12 09:22:20 -07:00
Dirk Dougherty
a6c02679e1 Pass whitelist of sample groups to doclava.
Change-Id: I36f3e3426115cc296531cf41d20ab07a4d429b19
2013-09-12 00:37:50 -07:00
Alexander Ray
7563d42331 Merge "Add consumer IR framework" into klp-dev 2013-09-11 19:05:38 +00:00
Sandeep Siddhartha
65a6ba3478 Remove HotwordRecognition APIs
- and its usage from Keyguard

Bug: 10708010
Change-Id: Ic4a695a1d0e9312706a3b4ff01e59e2567b6ad9c
2013-09-11 11:01:13 -07:00
Erik Gilling
51e95df8f2 Add consumer IR framework
Change-Id: I786c00db0cce61ef75e4edc24e90f2cdcba6dbfb
2013-09-11 09:52:47 -07:00
Dirk Dougherty
2069b00416 am 76fcf6c7: am 07c9bcc3: am 4ef51c3c: Merge "Add a few more samples to browser." into jb-mr2-docs
* commit '76fcf6c73e7dda99ec80e6da616bee26c2a088e6':
  Add a few more samples to browser.
2013-09-04 22:29:02 -07:00
Dirk Dougherty
76fcf6c73e am 07c9bcc3: am 4ef51c3c: Merge "Add a few more samples to browser." into jb-mr2-docs
* commit '07c9bcc3a60a8860b65aa43badd8ab1f1858522b':
  Add a few more samples to browser.
2013-09-04 22:26:54 -07:00
Dirk Dougherty
2826df3f3d Add a few more samples to browser.
Change-Id: Iac7acc22a8dd71950b32e2c35c82f53abc34168a
2013-09-04 21:55:47 -07:00
Martijn Coenen
5b1e032ea7 Reader mode NFC API: move to callback model.
Using intents for reader mode doesn't work well for 2 reasons:
1) Intents are used to resolve, but in reader mode we already
   know where to resolve to. Additionally, dispatching an intent
   causes additional latency.
2) Using intents with foreground dispatch was tricky; for every
   call to onNewIntent() with a new tag, there was a call to
   onPause(), which effectively disabled reader mode again,
   causing a discovery loop.

Instead, let the app register a callback, and call that when
we discover a new tag. Also, add new flag to disable platform
sounds, and to change the presence check delay.

Bug: 10360259
Change-Id: I8373543d6cf2f7ca73c9b3e42bb8b51e3ac48cac
2013-09-02 20:43:57 -07:00