Commit Graph

627 Commits

Author SHA1 Message Date
Jeff Brown
18a69b936a am 8e1e4006: Merge "Add support for dynamically setting the virtual display surface." into klp-modular-dev
* commit '8e1e40066bae030d6a6e8f3f3f8f69ccd6ec1848':
  Add support for dynamically setting the virtual display surface.
2014-04-17 21:53:34 +00: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
Aravind Akella
8ebd66c259 am cd4c1c71: Merge "Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor" into klp-modular-dev
* commit 'cd4c1c714c37a1bc7ba35ebd2509eca4f0f6a314':
  Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor
2014-04-11 19:34:51 +00: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
Jinsuk Kim
55dab4dd3b am b11f250e: Merge "Delegate HdmiCecService method impl to HdmiCecDevice subclass" into klp-modular-dev
* commit 'b11f250e09195d1ab250c93bfed0b31ed3a40f3d':
  Delegate HdmiCecService method impl to HdmiCecDevice subclass
2014-04-11 09:40:46 +00: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
337e764deb am f24687e2: Merge "Plumb display power state through display manager." into klp-modular-dev
* commit 'f24687e2731811fd0e3803b691fd47a659f89329':
  Plumb display power state through display manager.
2014-04-11 03:49:37 +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
Jeff Brown
7f9599d63c am ea72cdf2: Merge "Move display power controller to display manager service. (DO NOT MERGE)" into klp-modular-dev
* commit 'ea72cdf22f8efde4d3b872a60587e4b26bc93e43':
  Move display power controller to display manager service. (DO NOT MERGE)
2014-04-09 09:12:40 +00: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
acf395fd94 am 819239e5: Revert "Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor"
* commit '819239e5bec90ee3c861ac45fffac4a832a183a1':
  Revert "Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor"
2014-04-05 09:05:50 +00: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
bdfe384106 am fd53d835: Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor
* commit 'fd53d8352a4617941b0a0449390aa562a01ea1d3':
  Add stringType and requiredPermissions to SensorManager.java, as well as a permission for the heart rate sensor
2014-04-05 01:52:27 +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
Jinsuk Kim
f2fe3505da am 31518f74: Merge "Use build property for CEC device OSD name" into klp-modular-dev
* commit '31518f745ffa5e832274c332ac957a065948fdaf':
  Use build property for CEC device OSD name
2014-04-03 00:39:23 +00: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
4c963841db am b1dca162: Merge "Maintain display power status for playback device" into klp-modular-dev
* commit 'b1dca1624dc8d853a52d1918c7672173e9b79836':
  Maintain display power status for playback device
2014-04-02 22:43:52 +00: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
Eino-Ville Talvala
63d61640d4 am 55a1e78f: am 1555cec2: am ecad0541: Merge "DO NOT MERGE: camera: Fix setParameters for Preview FPS single/range values" into klp-dev
* commit '55a1e78fbd38955a5f5d0f09a517b392cc8199cb':
  DO NOT MERGE: camera: Fix setParameters for Preview FPS single/range values
2014-03-25 20:15:52 +00:00
Eino-Ville Talvala
55a1e78fbd am 1555cec2: am ecad0541: Merge "DO NOT MERGE: camera: Fix setParameters for Preview FPS single/range values" into klp-dev
* commit '1555cec2e5452c6d4583dfd3deffbb28ebd886fe':
  DO NOT MERGE: camera: Fix setParameters for Preview FPS single/range values
2014-03-25 20:11:12 +00:00
Eino-Ville Talvala
1555cec2e5 am ecad0541: Merge "DO NOT MERGE: camera: Fix setParameters for Preview FPS single/range values" into klp-dev
* commit 'ecad0541a6e90b98ad96456c4e6992121ee8a789':
  DO NOT MERGE: camera: Fix setParameters for Preview FPS single/range values
2014-03-25 19:01:45 +00:00
Jinsuk Kim
3c34e5dbbb am c01e1aeb: Merge "Add HdmiCecManager" into klp-modular-dev
* commit 'c01e1aeb0d86bd626684c97d709d4a8e995fddfb':
  Add HdmiCecManager
2014-03-24 12:26:51 +00:00
Jinsuk Kim
fbcd503645 Add HdmiCecManager
Introduces HdmiCecManager/HdmiCecClient to provide apps/system components
with the way to access HdmiCecService via Context.getSystemService(HDMI_CEC_SERVICE).

Change-Id: I39da071a328074a4b7b049947943688bd7779c26
2014-03-24 08:19:39 +09:00
Igor Murashkin
965bed1c2c DO NOT MERGE: camera: Fix setParameters for Preview FPS single/range values
Bug: 12609188
Change-Id: I82ea6f5de2183dd046d4bf5683600c97f37ab4da
2014-03-22 01:36:54 +00:00
Jinsuk Kim
f2fecf48f7 am c61f4dd7: Merge "Add HDMI-CEC service" into klp-modular-dev
* commit 'c61f4dd744b1b0396703aa58eb22fc31d2b7050e':
  Add HDMI-CEC service
2014-03-21 02:37:00 +00:00
Jinsuk Kim
c61f4dd744 Merge "Add HDMI-CEC service" into klp-modular-dev 2014-03-21 02:32:38 +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
RoboErik
306c46884e am ca9eef62: b/12068020 Make kb layouts only unique to vendor/product. Do not merge
* commit 'ca9eef6203b7cfb0084f8305d4dcc5d70a7a25cd':
  b/12068020 Make kb layouts only unique to vendor/product. Do not merge
2014-03-12 21:12:26 +00:00
RoboErik
ca9eef6203 b/12068020 Make kb layouts only unique to vendor/product. Do not merge
This is a cherry-pick of https://googleplex-android-review.git.corp.google.com/#/c/399886/

Instead of storing a kb layout per device descriptor (which is expected
to be unique), store it for each vendor/product. This way we can keep
a consistent layout between identical but physically different keyboards.

There are some corner cases this is expected to fail on, namely devices
that incorrectly have the same vendor/product id. Devices that don't
define a vendor/product id will continue to use the descriptor to store
layout files.

Change-Id: I1f2508561992080459310d5a644dad65a9c24f1a
2014-03-12 13:21:08 -07:00
Jeff Brown
f2e837e579 am e7f7af96: am 35c8ebab: Merge "take account of RotationVector\'s new extra parameter"
* commit 'e7f7af964baa3c5d36abd163e33ad139310049d2':
  take account of RotationVector's new extra parameter
2014-03-11 00:11:05 +00:00
Jeff Brown
35c8ebab0a Merge "take account of RotationVector's new extra parameter" 2014-03-11 00:04:49 +00:00
Jeff Brown
38f96e5020 Add support for injecting events into ActivityContainers. (DO NOT MERGE)
Modified ActivityView to inject touch events it receives back into
its activity container.  The container then injects the event into
the input system along with the display id of the underlying virtual
display.

Enhanced the input system to support concurrent dispatch of touch
events on multiple displays which is required for this to work.

Change-Id: I9cf1870db3be6f99a52ed9a1e3ceafe42c940093
2014-02-11 14:43:04 -08:00
Jeff Brown
4ccb823a9f Refactor display manager service to new pattern.
Transform DisplayManagerService into a SystemService and start cleaning
up other local services that it uses from window manager and input manager.

Clean up service thread initialization.

Remove unnecessary static variables from ActivityManagerService.

It's starting to become clear that we really need a better way to manage
service dependencies.  Boot phases don't quite cut it.

Change-Id: If319dbd7cbfbd4812fe55ece969e818d4b20755b
2014-01-16 22:16:42 -08:00
Jeff Brown
b6d9eb875a Merge "Add flag to force public virtual display to show own content." into klp-modular-dev 2014-01-09 02:12:59 +00:00
Mike Lockwood
12ec2e6d71 am 99206593: am 9607d78f: Merge "Added missing USB device descriptor fields needed for intent filters"
* commit '992065938a95e5273b22dea009b8581bcc693e61':
  Added missing USB device descriptor fields needed for intent filters
2014-01-08 08:01:42 -08:00
Mike Lockwood
9607d78f51 Merge "Added missing USB device descriptor fields needed for intent filters" 2014-01-08 15:56:13 +00:00
Narayan Kamath
71cdc73d28 am 53acc7ae: am f5598210: Merge "AArch64: Use long for pointers in hardware classes"
* commit '53acc7ae00ba921e8c7afb9415dbf473785a3be6':
  AArch64: Use long for pointers in hardware classes
2014-01-08 03:58:17 -08:00
Ashok Bhat
4838e33812 AArch64: Use long for pointers in hardware classes
For storing pointers, long is used in hardware classes,
as native pointers can be 64-bit.

In addition, some minor changes have been done
to conform with standard JNI practice (e.g. use
of jint instead of int in JNI function prototypes)

Change-Id: Icdeb67f9273fb2d8f6d88ca68d7f7d0950796fc1
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-08 10:17:21 +00:00
Jeff Brown
d14c8c9039 Add flag to force public virtual display to show own content.
Change-Id: I1039f2ef3154169ec90411a4c7ba2c94629f72c4
2014-01-07 19:30:07 -08:00
Balint Ureczky
12d39b9ccd take account of RotationVector's new extra parameter
Rotation vector has a new 5th parameter introduced in API 18. But the code classified the 5 parameter the same as it would be 3 and overriden the 4th parameter which is unnecessary and also caused an unexpected behavior.

Issue #63268:
https://code.google.com/p/android/issues/detail?id=63268
Signed-off-by: Balint Ureczky <ubalint@gmail.com>

Change-Id: I6f9a5fc401da655695ab03694b4a74dc5be936ed
2013-12-06 14:25:17 +00:00
Katie McCormick
484b57a565 am 9d0a88bd: Merge "Doc updates: Javadoc fixes" into klp-docs
* commit '9d0a88bd4e07deac01d7759b70cdf160456be1c0':
  Doc updates: Javadoc fixes
2013-11-26 21:58:18 +00:00
Katie McCormick
f2ef28d840 Doc updates: Javadoc fixes
Change-Id: I82381056f9f13e53ab8a0525f5a53bf98674c052
2013-11-26 13:52:48 -08:00
Jeff Brown
ce468a35b3 Stop wifi display discovery when no longer needed.
Keep track of how many clients are requesting scans and scan
continuously until all of them are gone then explicitly terminate the
scan instead of letting it time out as before.

Suspend wifi display scans while connecting or connected to a remote
display.  This is handled by both the display manager and media router
since neither has complete information about what is happening.
Much of this code will no longer be needed once wifi display support
is integrated directly into the media router service.

Ensure that we don't attempt to scan or connect to wifi displays
while the wifi display feature is off.

Infer when a connection attempt fails and unselect the wifi display
route automatically so it doesn't appear to be connecting forever.

Fix issues around correctly canceling and retrying connection attempts.
Often we would cancel but not retry.

Improved connection reliability somewhat.  It seems that discovery must
already be in progress in order for a connection attempt to succeed.

Ensure QuickSettings uses exactly the same logic as the MediaRouteButton
to determine when the remote display tile should be made visible.

Bug: 11717053
Change-Id: I18afc977b0e8c26204b8c96adaa79f05225f7b6e
2013-11-21 19:32:59 -08:00
Jeff Brown
af574183c2 Disallow applications from initiating cast screen.
Only allow the system ui and settings to connect to a remote display.
To do this, we essentially hide the remote displays from applications
by using the ROUTE_TYPE_REMOTE_DISPLAY then add permission checks
around the operations that connect to them.

As a bonus, this may actually save power on devices since applications
that use MediaRouter will not longer be performing discover on
remote display routes at all.

Bug: 11257292
Change-Id: I9ea8c568df4df5a0f0cf3d0f11b39c87e2110795
2013-11-15 00:29:43 -08:00
Eino-Ville Talvala
7a31310439 Camera2: Add support for partial result metadata quirk
- Add new CaptureListener.onCapturePartial() callback for receiving
  partial result metadata sooner than the full result metadata will be sent
  in onCaptureComplete().
- Add hidden keys for the partial result quirk
- Dispatch results to onCapturePartial based on the partial result quirk

All additions are hidden for now.

Bug: 11115603
Change-Id: Ie9a3be640f147257ae22e5b5edf0974bddc1cb85
2013-11-11 13:47:46 -08:00
Ruben Brunk
e73b41b27f camera2: Remove prior repeating request when setting.
Bug: 11579778
Change-Id: Idb10662413ff5ee939adbdeab68a97cb34750fac
2013-11-07 19:30:43 -08:00
Ruben Brunk
decfe95fce gcam: Avoid leaking repeating CaptureRequests.
Bug: 11352359
Change-Id: I598416c08c0a7c3e5a8054a4d80ed29d82870bd2
2013-10-31 15:33:46 -07:00