919 Commits

Author SHA1 Message Date
Glenn Kasten
7629a18a3f Revert "Expand install observer semantics"
This reverts commit ab8a501f255b272af887acb0e66eb71cdf24c755.

Change-Id: I4ab4ae1a96efa2adf9d5a513793d8b84eef38b4e
2014-03-26 19:59:48 +00:00
Christopher Tate
cfe34117bc am 9067dc03: Merge "Expand install observer semantics"
* commit '9067dc03ffc76c5210d26d5a53a211eff046d412':
  Expand install observer semantics
2014-03-26 12:29:19 -07:00
Christopher Tate
9067dc03ff Merge "Expand install observer semantics" 2014-03-26 19:24:09 +00:00
Christopher Tate
ab8a501f25 Expand install observer semantics
...and now fail conservatively when two apps both attempt to define
the same permission.

We also finally have a (hidden) interface class for observing package
installation so that we can now rev the interface without breaking
existing callers.

Bug 13551375

Change-Id: I3a286d024a30e812ee4b098f345401df3c00e178
2014-03-25 19:28:54 -07:00
Yuhao Zheng
10bf6354a5 Wifi hotspot stack initial hook up
Add a dummy wifi hotspot service for futher development use. This is to
resolve the different between master branch and kwd branch, such that future
development can go into kwd and being auto-merged to master.

bug: 5485670
Change-Id: Ica58de445dd050a9f0b817f8e4accaa2478299c5
2014-03-25 15:00:45 -07:00
Sailesh Nepal
00ffde305d resolved conflicts for merge of 2d72d000 to master-nova
Change-Id: Icfb617ffab2da2f8805e4628e75e006c620b479d
2014-03-25 13:02:59 -07:00
Gabriel Peal
f1e1e77143 resolved conflicts for merge of 74fb97de to master
Change-Id: If28dc21a2ea7e634da130f3c59c17cd63dd5336a
2014-03-25 11:08:19 -07:00
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
16578caea8 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-22 23:41:43 +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
Colin Cross
6418a7d30c am 8a60ded0: Merge "resolved conflicts for merge of a67e34c8 to master"
* commit '8a60ded02614bc8358f89aa9b7cf3f8e7b1383a2':
  Add HDMI-CEC service
2014-03-21 13:23:05 -07:00
Colin Cross
a42cb8b0e2 resolved conflicts for merge of a67e34c8 to master
Change-Id: I597525886260884c9b2dfc7945e01eb8138a58c2
2014-03-21 13:11:02 -07:00
Svetoslav
f76b62f19e am 8e3feb15: Added accessibility APIs for introspecting interactive windows.
* commit '8e3feb15c5aec2c72b0ef120a1da325e1e8f0dda':
  Added accessibility APIs for introspecting interactive windows.
2014-03-20 09:56:59 -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
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
Hui Shu
cdf01b1325 am 57ad97fb: Merge "Add removeApi commandline option for doclava and an empty removed.txt"
* commit '57ad97fb701876ecb87b76f29592a41731aeb487':
  Add removeApi commandline option for doclava and an empty removed.txt
2014-03-13 15:16:28 -07:00
Hui Shu
57ad97fb70 Merge "Add removeApi commandline option for doclava and an empty removed.txt" 2014-03-13 22:11:41 +00:00
Sailesh Nepal
ab5d282dd6 Add wrappers around telecomm interfaces
This CL adds wrappers for:
  CallServiceLookupResponse
  CallServiceAdapter
  IInCallAdapter
  IInCallService

This CL also moves all the aidl files into
com.android.internal.telecomm.

Change-Id: I840f023bc545643e8bb719825e7bc78344ee46ee
2014-03-11 16:38:50 -07:00
Dianne Hackborn
e76f7f7824 am 77b987f1: Hold a wake lock while dispatching network activity events.
* commit '77b987f1a1bb6028a871de01065b94c4cfff0b5c':
  Hold a wake lock while dispatching network activity events.
2014-02-28 17:13:31 -08:00
Dianne Hackborn
77b987f1a1 Hold a wake lock while dispatching network activity events.
Also add new API for determining whether the current data network
is active, and thus better scheduling network operations.  This
API is designed to not be tied to a mobile network -- regardless
of the network, apps can use it to determine whether they should
initiate activity or wait.  On non-mobile networks, it simply always
reports as the network being active.

This changed involved reworking how the idle timers are done so
that we only register an idle timer with the current default
network.  This way, we can know whether we currently expect to
get callbacks about the network being active, or should just always
report that it is active.  (Ultimately we need to be getting this
radio active data from the radio itself.)

Change-Id: Iaf6cc91a960d7542a70b72f87a7db26d12c4ea8e
2014-02-28 15:19:39 -08:00
RoboErik
e4f0fe586f resolved conflicts for merge of 8fb4cf1e to master-nova
Change-Id: I61a6fc192b0c2099af9bebdf8e9d8bbfaa4243a3
2014-02-26 10:37:45 -08:00
RoboErik
2f5b057da7 Move Session apis to android.media.session
This is to make it easier to distinguish the new apis from the old
ones.

Change-Id: Ic5eaf65e8bd054a844f87b9118c4bb18f30ac8a7
2014-02-25 16:01:55 -08:00
Hui Shu
06d37f716f Add removeApi commandline option for doclava and an empty removed.txt
BUG: b/11293324
Change-Id: Ief41ae23f3d6364260ce34ee9f3211130a6a83d7
2014-02-21 17:24:03 -08:00
Jeff Brown
dda12a9746 am ac8bdfe4: Merge "resolved conflicts for merge of baaa080b to master"
* commit 'ac8bdfe4f06367e06e43d8759b6009b483a5e668':
  Add a new "doze mode" based on Dream components.
2014-02-20 20:59:08 -08:00
Jeff Brown
10102e4c0e resolved conflicts for merge of baaa080b to master
Change-Id: I3ee12321e298f7a2ea577a99f30c49f3bb497fae
2014-02-20 18:05:03 -08:00
Santos Cordon
8f3fd30a60 Add interfaces between Telecomm and InCall.
Change-Id: Ie0e8c5e6626e1db33eb1142b302bf415785cfe47
2014-02-20 15:12:53 -08:00
Ben Gilad
f042a3f067 Following up on our discussion offline to introduce response objects for isSwitchable.
Change-Id: Ic1385d9b67ed0a859128845574d48ad90d6152a2
2014-02-20 15:12:51 -08:00
Ben Gilad
0f7dac1741 Adding the CallServiceSelector skeleton (AIDL) files.
Change-Id: I55ca3bed6e1b964602a9291bd388a10c99729da7
2014-02-20 15:12:50 -08:00
Santos Cordon
4939ccf786 Remove CallServiceProviderAdapter and replace with CallServiceLookupResponse.
Change-Id: I55a574784162e3cc4a88b2889f1d14a07116f937
2014-02-20 15:12:49 -08:00
Santos Cordon
6fee2ea8f8 Revert "Remove CallServiceProviderAdapter and replace with CallServiceLookupResponse."
This reverts commit 753fc58932e976086069bacb3e5252332960644b.

Change-Id: Ie17b4918fa404eb768c0f3ce5109d6cc8b2d1da8
2014-02-20 15:12:49 -08:00
Santos Cordon
6fbb1b73f8 Remove CallServiceProviderAdapter and replace with CallServiceLookupResponse.
Change-Id: I4d1c007bd46b804ecbb80163fc26de199cdbb2eb
2014-02-20 15:12:48 -08:00
Santos Cordon
3784133b95 Additional fixes to aidl files.
Change-Id: I24e5ae0ff65c3049d735cd4c6e1d79a0c406d92b
2014-02-20 15:12:47 -08:00
Santos Cordon
b3e51b7918 Fixing typos and a build break.
Change-Id: I74ac6da8a9943b3b2cc76a4fc75027b7717b1bb3
2014-02-20 15:12:46 -08:00
Ben Gilad
e57944dd55 Add the CallService base class and the necessary call-service-provider
AIDL interfaces.

Change-Id: Ic0aab1245d259f1148d403033647d795e07ab015
2014-02-20 15:12:45 -08:00
Ben Gilad
bb69b0c2d8 Adding the frameworks/base code from https://googleplex-android-review.git.corp.google.com/#/c/391028
Change-Id: I6fe7aae52a7ff52da1a1e009e8361810fcaddd1e
2014-02-20 15:12:44 -08:00
Ben Gilad
d13e1d2bab Remove the telecomm entries now that we have https://googleplex-android-review.git.corp.google.com/#/c/398927
DO NOT SUBMIT until the above CL is uploaded.

Change-Id: I4e4f19175b502ba81c882d1379d1d225b0e6ba67
2014-02-20 15:12:43 -08: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
RoboErik
3df1380d14 am 33288685: Merge "Initial round of MediaSession APIs"
* commit '332886854438809e956fb232b69879e33b5dc2bb':
  Initial round of MediaSession APIs
2014-02-19 16:27:14 -08:00
RoboErik
3328868544 Merge "Initial round of MediaSession APIs" 2014-02-20 00:25:10 +00:00
RoboErik
01fe661ae5 Initial round of MediaSession APIs
This is far from complete but puts the basic components in place
for an app to interact with media sessions.

Change-Id: Icfe313f90ad76ae56badbe42b0e43fc5f68db36f
2014-02-19 13:41:37 -08:00
Sailesh Nepal
f86a9221a4 Delete Third Party Call APIs
Change-Id: I6121c53362804a228e0316a1666b5032817530ab
2014-02-18 17:04:10 -08:00
Dirk Dougherty
78d659870f am 5da502a5: am b9378d81: am 321cd18a: am 820bb4bd: am 9c50271d: am 257f6724: am 35cb4e49: Doc change: add new samples TOC groups and landing pages.
* commit '5da502a5b2a6eed6cf667c5d609818442a838c8a':
  Doc change: add new samples TOC groups and landing pages.
2014-02-13 03:34:06 -08:00
Dirk Dougherty
5da502a5b2 am b9378d81: am 321cd18a: am 820bb4bd: am 9c50271d: am 257f6724: am 35cb4e49: Doc change: add new samples TOC groups and landing pages.
* commit 'b9378d8108555c920880d7ec7ec4122b04fb2960':
  Doc change: add new samples TOC groups and landing pages.
2014-02-13 11:27:30 +00: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
Sailesh Nepal
eaeb071a17 Add interface definitions for CallService/PhoneService
Interfaces are meant to replace ThirdParty*.aidl/java files in same
directory long term.  The differences in methods are on purpose and
reflect more recent design directions.

Change-Id: Ia98603a1d0b6d07a3393c5f7c5aa040f9e3916e4
2014-02-11 22:36:26 -08:00
Sailesh Nepal
512b28309d DO NOT MERGE ThirdPartyCallSendDtmfCallBack API
This API is needed to implement post dial.

Change-Id: Iefdeae81d0eae6be86e7ee1e8ab0251ae43ed079
2014-02-11 22:22:42 -08:00