Commit Graph

35789 Commits

Author SHA1 Message Date
Michael Kolb
4abbd0a685 Merge "Populate isRound from config.xml to WindowInsets" into klp-modular-dev 2014-04-18 00:44:35 +00:00
Michael Kolb
6642e51ac5 Populate isRound from config.xml to WindowInsets
Change-Id: I41b3aef1322a7cdccdcbc679eb753e0a1e561fad
2014-04-17 17:32:50 -07:00
Jeff Brown
92207df753 Add support for dynamically setting the virtual display surface.
Previously, the surface that backs a virtual display had to be set
at the time when the display was created.  This change now makes
it possible to set or remove the surface later.  The virtual display
is treated as if it were "off" while no surface is attached to it.

Change-Id: Ib4fdbbb8b4ee79f0fb9ceb648f9bda4a8fa6a2ca
2014-04-16 18:45:05 -07:00
Adam Powell
973ddaacae DO NOT MERGE Add isRound to WindowInsets
isRound allows a view to determine whether the window it is contained
within obscures the corners of the window content. This allows views
aware of this property to adapt their layout accordingly.

Switch ViewRootImpl to use dispatchApplyInsets instead of
fitSystemWindows.

Change-Id: Ic3e3936b73815b2593cb9720af1a309fbd18406e

Conflicts:
	core/java/android/view/ViewRootImpl.java
2014-04-16 14:59:16 -07:00
Jeff Brown
fa72a9eaae Merge "Declare VersionCodes.KITKAT_WATCH." into klp-modular-dev 2014-04-16 20:49:15 +00:00
Jeff Brown
1c3f332c3f Declare VersionCodes.KITKAT_WATCH.
The constant does not have a final value yet but is useful for
documentation purposes during development.

Change-Id: Iddd9b956eff822a9a25e9df483b5bd3979189023
2014-04-16 13:27:00 -07:00
Craig Mautner
2fd3cb9544 Merge "Fix ActivityContainer callback parcelling." into klp-modular-dev 2014-04-16 20:05:31 +00:00
Craig Mautner
e3a00d745f Fix ActivityContainer callback parcelling.
The Binder interface for passing a callback was not implemented
properly. Also the callback for ActivityContainer now has a new
API.

Change-Id: I6b719be0cb57542f022a3cc14e8f4efde60b1a50
2014-04-16 13:03:26 -07:00
Deepanshu Gupta
ec6676ddf6 am 86384880: am f1e71876: Fix theme/style resolution in Layoutlib [DO NOT MERGE]
* commit '863848808d005fe1d2fd84a2982adfc02a3fbb9f':
  Fix theme/style resolution in Layoutlib [DO NOT MERGE]
2014-04-16 18:40:55 +00:00
Deepanshu Gupta
863848808d am f1e71876: Fix theme/style resolution in Layoutlib [DO NOT MERGE]
* commit 'f1e7187645f0b0388f7b97d742395efd228b347a':
  Fix theme/style resolution in Layoutlib [DO NOT MERGE]
2014-04-16 18:37:10 +00:00
Deepanshu Gupta
d023360aa0 am 484c88c3: am 4ccc4bd5: Action bar rendering in layoutlib [DO NOT MERGE]
* commit '484c88c3655991759dc64276404d0cf7e33b455f':
  Action bar rendering in layoutlib [DO NOT MERGE]
2014-04-16 18:36:46 +00:00
Deepanshu Gupta
484c88c365 am 4ccc4bd5: Action bar rendering in layoutlib [DO NOT MERGE]
* commit '4ccc4bd54f85d86818f61d728c6361d2003ddd8e':
  Action bar rendering in layoutlib [DO NOT MERGE]
2014-04-16 18:33:00 +00:00
Deepanshu Gupta
f1e7187645 Fix theme/style resolution in Layoutlib [DO NOT MERGE]
Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit bfec73c2db)

Conflicts:
	core/java/android/content/res/Resources.java
	tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
2014-04-15 20:03:19 -07:00
Deepanshu Gupta
4ccc4bd54f Action bar rendering in layoutlib [DO NOT MERGE]
This also makes a couple of changes to the framework:
1. ShareActionProvider - Use edit mode to execute activity chooser code.
2. ActionBarImpl - add a new constructor for use by layoutlib.

This also relies on some changes to the plugin to pass the correct params.

Change-Id: Ia30fef816afd91ec1e439734d56b59b1323bfee2
(cherry-picked from 14bf0cef7e)
2014-04-15 20:02:48 -07:00
Adam Powell
50d7bfd822 DO NOT MERGE Refactoring of fitSystemWindows to applyWindowInsets for views
Applying insets is now handled by:

* WindowInsets class - Encapsulate system insets and local decor
  insets into a single object, written specifically so that new inset
  categories may be added later. Apps cannot construct their own
  WindowInsets, only clone with optional modifications. This is to
  prevent losing data in the event of new insets added in the future.

* onApplyWindowInsets - Actually perform the application of insets.

* OnApplyWindowInsetsListener - Allow an app to use a separate
  Listener object to apply insets to a View. This allows for things
  like support lib integration in custom views written for older
  versions where the verifier would otherwise complain about the use
  of the new WindowInsets class as a method parameter. It also allows
  for applying insets in a custom way without writing a custom view.

* dispatchApplyWindowInsets - Dispatch the call to self and children
  in turn, if applicable. An OnApplyWindowInsetsListener will override
  the behavior of the view's default onApplyWindowInsets method; a
  listener wishing to call down to the 'superclass' implementation as
  part of its own operation should call view.onApplyWindowInsets. App
  code should generally not override this method and instead override
  onApplyWindowInsets or provide a listener.

Compatibility support with the existing fitSystemWindows method has
been provided in both directions: for code that previously called
fitSystemWindows on arbitrary views and also for code that overrode
the fitSystemWindows method in custom views. A view that supports the
newer onApplyWindowInsets mechanism should not mix that behavior with
other calls to fitSystemWindows or vice versa. Support lib-style code
should take care to consistently use one mechanism or the other at
runtime.

Change-Id: Ie88b96e0382beb5d3c3f6cd013f7043acbc0a105
2014-04-15 10:30:25 -07:00
Christopher Lane
62538940de Merge "Add support for custom TXT records in NSD" into klp-modular-dev 2014-04-14 21:13:09 +00:00
Christopher Lane
b72d8b4091 Add support for custom TXT records in NSD
Change-Id: I8e6dc9852ad4d273c71ad6a63a7fbd28a206806d
2014-04-14 14:10:36 -07:00
Raph Levien
202d1ec753 Fix text shadow attributes in textAppearance
The various text shadow attributes were not being properly applied
because they were being retrieved from the wrong TypedArray.

This is the proper fix for bug 13525033 Shadow* attributes in a style
not being applied in textAppearance.

Change-Id: I57a8f498bf6059c5c5c74c1072edb277a24ea053
2014-04-14 18:27:30 +00:00
Jeff Brown
d912e1f6a1 Use the display's actual state in the view hierarchy.
Previously, the view hierarchy would suppress drawing whenever the
PowerManager.isScreenOn() method returned false.  However, this method
really describes the interactive state of the device rather than the
actual display state.  This is especially a problem when there are
multiple displays but it also breaks drawing while in doze mode.

This change makes the view hierarchy consider the actual state of the
display instead on an individual basis.

Bug: 13133142
Change-Id: I69870b6b14a3504607a30562aa48c3452f777c1f
2014-04-11 18:46:22 -07:00
Aravind Akella
cd4c1c714c Merge "Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor" into klp-modular-dev 2014-04-11 19:32:38 +00:00
Jose Lima
970417c7d3 Added getLeanbackLaunchIntentForPackage()
Change-Id: I23be3bfa59be812a915adc37e08fdf59be8ad90f
2014-04-11 10:54:39 -07:00
Jinsuk Kim
b11f250e09 Merge "Delegate HdmiCecService method impl to HdmiCecDevice subclass" into klp-modular-dev 2014-04-11 09:38:23 +00:00
Jinsuk Kim
61791075f4 Delegate HdmiCecService method impl to HdmiCecDevice subclass
Most of the methods in the interface IHdmiCecService should be implemented
based on the device type. This CL makes a change such that the HdmiCecDevice
just has stub methods that should be overriden by subclasses.

Other changes:
  - Fixed a bug of <Inactive Source> not sending its physical address
    in its message body. Also the command should have been sent to TV
    only rather than broadcast.

  - Put back sendGiveDevicePowerStatus interface method. It allows the client
    to keep track of the other device(like TV) power status more closely.
    Devices goes through the status from standby -> transient to on -> on
    but the CEC spec doesn't require that they broacast it actively.

    The restored method can be used to let the playback device to get
    up-to-date power status of TV/display when it is booting up.

    This method should work the same across all the device types. So it was
    implemented in the service, not delegated to HdmiCecDevice.

  - Send <Report Physical Address> when a new logical device is registered,
    which is required by CEC spec: "it should report the association between
    its logical and physical address by broadcasting <Report Physical
    Address>

Change-Id: Iac1d2cf5783d947f2dcd6965a54670fbdb8e6a63
2014-04-11 18:35:01 +09:00
Jeff Brown
f24687e273 Merge "Plumb display power state through display manager." into klp-modular-dev 2014-04-11 03:47:08 +00:00
Jeff Brown
037c33eae7 Plumb display power state through display manager.
Declare a new method, Display.getState() to retrieve the actual
power state of a display.

Improved documentation for Intent.ACTION_SCREEN_ON and
Intent.ACTION_SCREEN_OFF to clarify what they really mean in
terms of the interactive state of the device.

Deprecated PowerManager.isScreenOn() and replaced it with
PowerManager.isInteractive() with a more suggestive name and
better documentation.

Redirect display power state changes to go through the display
manager first and only then head over to the power manager for
legacy compatibility.

Eliminated the bright here and woke here policy flags since they
were unused.  Simplified the input dispatch policy somewhat.

Ensure that screen wake locks are respected up until the point
when dozing really begins.

Fixed a regression in DreamService where onDreamingStarted
might be called before onWindowAttached.

Bug: 13133142
Bug: 13472578
Bug: 13929355
Bug: 13760290
Change-Id: Iabef96921dd554ce3768fb18619cefc3230b5fb0
2014-04-10 20:46:14 -07:00
Aravind Akella
cd9a7bb3ba Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor
This reverts commit 819239e5be.

Change-Id: I4bbb222e5c9dc65aed03aa28fd9e0f00fe335819
2014-04-11 00:05:24 +00:00
Zhihai Xu
2e8a2d207f Merge "LE: Return false if an attribute read/write is in progress" into klp-modular-dev 2014-04-09 18:19:04 +00:00
Andre Eisenbach
cc68cc962d LE: Return false if an attribute read/write is in progress
bug:12109128
Change-Id: I0155fcddc850aba47a1bf3e174d4ee582d50b187
2014-04-09 10:59:44 -07:00
Jeff Brown
13014b5fe5 Move certain internal activity manager methods to new class.
This is a little bit of refactoring in preparation for changing how
the power manager notifies system components about changes in power
state.

Deleted the startRunning method since it is no longer useful.

Bug: 13133142
Change-Id: I7f845c61ecc7ee890154ed0cbd90795de609b7ea
2014-04-08 20:51:07 -07:00
Jeff Brown
ad9ef191f5 Move display power controller to display manager service. (DO NOT MERGE)
This refactoring is in preparation for enabling the display manager
to have more control over the blanking state of individual displays.
There are no functional changes.  Some bits will be cleaned up in
a subsequent patch.

Bug: 13133142
Change-Id: Ib811835e8757449c7899ac61807029baaf998161
2014-04-08 20:41:46 -07:00
Etienne Le Grand
819239e5be Revert "Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor"
This reverts commit fd53d8352a.

Change-Id: I1c6322d1d992147bb5ef201238374966128c1a61
2014-04-05 04:47:14 +00:00
Etienne Le Grand
fd53d8352a Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor
Change-Id: I16e5da68f860494e24cca64075be76fad02617bc
2014-04-04 16:31:08 -07:00
John Spurlock
5c31e487c4 Merge "Introduce new UI_MODE_TYPE_WATCH and qualifier." into klp-modular-dev 2014-04-04 19:24:09 +00:00
John Spurlock
6c191299a7 Introduce new UI_MODE_TYPE_WATCH and qualifier.
Default ui mode to watch if we have FEATURE_WATCH.

Bug:13395758
Change-Id: Ie5ff95de60e69e91ad3612c7d2f1fca7f49061bd
2014-04-04 15:21:53 -04:00
Ricardo Cervera
d10b654315 am 5df82523: am ff3d89c0: Merge "docs: Added permissions note for Context.getFilesDir. Bug: 13716053" into klp-docs
* commit '5df825237afd016c48dd3577d839825e5161d3e7':
  docs: Added permissions note for Context.getFilesDir. Bug: 13716053
2014-04-04 17:42:44 +00:00
Ricardo Cervera
90a5f9851a docs: Added permissions note for Context.getFilesDir. Bug: 13716053
Change-Id: I02e17c358630ab298bb99731723405cdeae701fc
2014-04-04 10:26:05 -07:00
Jeff Brown
8db6d9af58 Merge "Clean up certain state transitions in DreamService." into klp-modular-dev 2014-04-03 03:20:01 +00:00
Jeff Brown
344812d2f3 Clean up certain state transitions in DreamService.
Instead of posting onDreamingStarted() to a handler from attach(), do
the work immediately.  This ensures that the dream is actually in the
expected state when the callback runs.  Previously it was possible
for the callback to run after detach() occurred which could cause
exceptions and unexpected behavior.  As it happens, there's no need
to post this callback since attach() already runs on the UI thread.

Handle certain races involving the window token lifecycle a little
better.  When the dream manager shuts down a dream, it removes the
window token.  This can happen before the dream completes its attach()
phase in which case a BadTokenException is thrown.  We now handle this
exception and abort the dream in anticipation of receiving a request
to finish it immediately.

Add a safeguard to getDozeHardware() to handle the case where it
might inadvertently be called at the wrong point in the lifecycle.

Bug: 13475612
Bug: 13760290
Change-Id: I9bc9c154370d08d7727b568d398c460a38592099
2014-04-02 20:17:32 -07:00
Jinsuk Kim
60b17cc094 Use build property for CEC device OSD name
Previously OSD name was based on device type. This CL makes it
independent of device type. CEC spec says "A device that implements
more than one type of CEC functionality should respond with the same
OSD name for each logical address. It is recommended that the name
refers to the complete physical product rather than the individual
CEC functionality".

Now the default name comes from system build property. I removed
setOsdName() from aidl for now since it won't be in use.

Change-Id: I3c9fb877fad4bc5efef56268d155a3f37a865fc2
2014-04-03 07:59:27 +09:00
Jinsuk Kim
b1dca1624d Merge "Maintain display power status for playback device" into klp-modular-dev 2014-04-02 22:39:41 +00:00
Jinsuk Kim
4e90fcd190 Maintain display power status for playback device
With this CL, the power status of TV/display is keep tracked of
by hdmi cec server part, specfically HdmiCecDevicePlayback.
Turned the HdmiCecDevice to abstract class from which classes of
concrete device type(HdmiCecDevicePlayback, HdmiCecDeviceTV) are
inherited. The display power status code is put in HdmiCecDevicePlayback
only. HdmiCecDeviceTv will have its own logic that manages power status of
devices connected to it. For now it only has a bare minimum code.
Will be worked on in follow up CLs.

Other changes:

    - Replaced sendGiveDevicePowerStatus() with isTvOn() so that the status
      can be queried by clients.

    - Defensively check the availability of HdmiCecService so that
      HdmiCecManager.getClient() returns null in case the service couldn't
      be initialized. This ensures clients of the service gets the nulled-out
      HdmiCecClient when called in the state/configuration where the service
      is not available, thus proceed accordingly.

Change-Id: Idaf69e73cfbd639c0b40b1bd4b6146f011246180
2014-04-02 14:46:14 +09:00
Katie McCormick
905a5b1477 am 87d9d1a0: Doc Update: revert PendingIntent fix.
* commit '87d9d1a0405e6cdbcd7c87cfebee04b622100753':
  Doc Update: revert PendingIntent fix.
2014-04-01 00:15:52 +00:00
Katie McCormick
87d9d1a040 Doc Update: revert PendingIntent fix.
Original fix was in error. Reverting. See:

b/10641568

Change-Id: I471157388b2d55aa99bd16813c07607b8a0a7046
2014-03-31 16:18:15 -07:00
Zhihai Xu
ae1b763cde Merge "LE: Add API to configure MTU for a given connection (3/4)" into klp-modular-dev 2014-03-31 21:21:54 +00:00
Wei Wang
4447405d76 Merge "Callback on correct method when status is unsuccessful." into klp-modular-dev 2014-03-29 01:53:33 +00:00
Wei Wang
c07a5dd709 Callback on correct method when status is unsuccessful.
Change-Id: I63c07bbae559765af1aecb492379ab18268336d8
2014-03-29 01:42:41 +00:00
Michael Wright
e9eb58c9a0 Merge "Add InputDevice#supportsSource(int)." into klp-modular-dev 2014-03-29 00:56:17 +00:00
Michael Wright
d020fd33d1 Merge changes Ib18c99b9,I9f42eeb9 into klp-modular-dev
* changes:
  Generate and respect ACTION_CANCEL for joystick fallbacks. DO NOT MERGE
  Adds API for determining confirm and cancel keys.
2014-03-29 00:56:00 +00:00
Michael Wright
d08c864784 Add InputDevice#supportsSource(int).
This mirrors the InputEvent#isFromSource API.

Change-Id: Ie4869cc52d22d49a71d4d3e22f1ae38b16367395
2014-03-28 12:59:34 -07:00
John Spurlock
5579ec33eb DO NOT MERGE Enhance the NotificationListenerService api.
Add to NotificationListenerService:
 - getActiveNotificationKeys() : String[]
 - getActiveNotifications(String[] keys) : StatusBarNotification[]
 - cancelNotifications(String[] keys) : void
 - onListenerConnected(String[] keys) : void

Add to StatusBarNotification:
 - getKey() : String

Bug:13562828
Change-Id: I9da222cb4af22864bc0ecdecc3f121bced0723d6
2014-03-28 10:19:00 -04:00