Change comparison of Task.mUserId from comparing with only the
current user id to comparing with all current profile user ids.
Fixes bug 14930145.
Change-Id: Ibbae08da6f4eaa31b171becdd8957293758f527b
Usually TV initiates Device Discovery sequence after logical address
allocation of local devices. For that added new callback interface
to AddressAllocationCallback to HdmiCecDevice.
Along with this, add onAddressAllocated to HdmiLocalDevice so that
start sending local device information once logical allocation is done.
Change-Id: I4cdc5dd7770674a17a0f23c383a6c1ca221e3104
HdmiCecService will soon be deprecated and replaced with HdmiControlService.
Stopped publishing the service, and turned the corresponding manager to
stub so that it will do nothing but print out a warning msg instead.
Will help the app transition to the new service in the meantime. Once
the migration is finished, will gut out all the HdmiCecService/
HdmiCecManager stuff.
Change-Id: Ic34a69c4fb99f4e5a2c8323538195204ab16a545
Broadcast message is not targeted to a specific device but for
announcement. Individual reponse with <Feature Abort> is neither
necessary nor useful. Changed to send the message back only for
direct messages.
Change-Id: I927aa8e58a9868e158ed945c753492207e7c97f6
When device discover is launched it goes through the following step
1. clear all existing devices
2. send <Polling Message> of all logical addresses
excecpt one of local device
3. Once got all allocated logical addresses, gather physical address of
them
4. Once got physical address of them, gather display name of them
5. Once got display names, gather vendor id of them
5. Once got vendor id of them, register all gathered info to
internal device info list.
Change-Id: Ic9aca3b15d88ac7650f10b6d0bfa9c97923975e8
- Correct conversion for byte to int for cec opcode
- Use the right Handler.obtainMessage() to pass an integer variable
Change-Id: Ie3e86225f1702decce454aeb197911a371f51c17
Notification for incoming cec message can be issued
from any thread but jni can call java method
in the thread that jni knows like service thread.
So this change delegates incoming message to
jni-friendly thread, service thread by exploit
looper of service thread.
Change-Id: If3b141d917df3e209912af1778eb509777199969
This change enables CEC playback API (oneTouchPlay, queryDisplayStatus).
Also updated local device list type to SparseArray to make it easy
to get one based on device type.
Change-Id: I6f88b2dac2d873c493a90411549a4e5719a5e460
When Device Discovery is launched or Hot-plug detection is
launched, the first step of it is to send <Polling Message>
to all remote devices. According to type of feature,
it may have different retry count for sending <Polling Message>.
As <Polling Message> to all devices should be serialized operation
it runs on io thread as single operation.
Along with this, added assertRunOnIoThread and
assertRunOnServiceThread used to make sure that all methods are
called in proper thread.
Change-Id: I2d2df0216867c188e99ba24b216ec73f3396eeae
- Move the send failure warning messages into HdmiCecController.sendCommand()
from each Actions.
- Stringfy with more detail messages for some opcodes.
Change-Id: Ib7ce24dd2a1f290e6c3a0b26738772ef1d4a9630
CEC initialization may vary from device type to type. Changed logical address
map to HdmiCecLocalDevice map to handle it. These per-type classes for local
device will be extended also to take care of incoming CEC commands that should
require different action based on device type.
Change-Id: Ia59a464607b14e942fcf83e63aa1d6310ca6a575
As we have separate IO thread, we should have async callback
mechanism to get result of send request.
For that, I added SendMessageCallback interface to HdmiControl
Service
Along with this, replace message-based IO handling with
post Runnable based one for consistency
Change-Id: I61cf5b751b4f2af3b34956060869f3512f161d11
This also introduces a startTime which gets sent from window manager
to SystemUI, which tells when the animation should start, to allow
for a more synchronized animation with fading out the scrim and
fading in the activity behind.
Bug: 15163546
Change-Id: I16212b1ef9eb76f1f98734da1d14fc5b7e626937
This change defines per-app directories on external storage that
will be scanned and included in MediaStore. This gives apps a way
to write content to secondary shared storage in a way that can
easily be surfaced to other apps.
Bug: 14382377
Change-Id: I4cb367c870509e76f0c2c598f01e2f699780030a
This is the minimum change to make adjusting volume work with
MediaSessions. This only affects adjusting the volume and adjusting
the volume with a suggested stream. Adjusting a specific stream or
setting a specific stream will still use the same code.
This does not fix existing remote volume handling in RCC, which
will require a separate change to MediaController.
Change-Id: I5b957ff4bece1ee11e2364e1f216e1c08343c983
This requires the record to be present in makeRankingUpdateForListener,
however, if the ranking object is created before the post to the handler,
then no cloning is necessary.
Depends-On: I907a1ff28123219db1c08889d723ad1b70b191ab
Change-Id: I51fcf689ddbee7715e3387b865f18a715887c943
There is now a special theme for voice interaction activities
to use, so they can be a panel that is better intergrated with
the rest of the voice interaction experience. This is still
not completely working, I have some hacks in the demo app to
get it right; I'll fix that in a future change.
Also improve VoiceInteractor to be retained across activity
instances, for things like rotation.
And bump up the number of concurrent broadcasts that are allowed
on non-svelte devices, since they can handle more and this makes
the boot experience better when dispatching BOOT_COMPLETED.
Change-Id: Ie86b5fd09b928da20d645ec2200577dee3e6889d
Changes requested by API Council review. A second CL will refactor
TransportController and TransportPerformer based on feedback.
Change-Id: Ie26a7d01d7021232a66c2edf1eb58120437fdfde
Currently, if a network goes from CONNECTED to some other "live"
state (e.g., CONNECTING, because it's VERIFYING_POOR_LINK) and
back, ConnectivityService treats it as if a new network had
connected. This causes it to attempt to create the network
(which fails, since a network with that netid already exists), to
trigger verification, and if the verification succeeds, to tear
down the network because the request it's satisfying is already
satisfied by the network itself.
Instead, if creating the network fails, assume it's because the
network had already been created, and bail out.
Also, when validation completes, ignore NetworkRequests that were
being served by the same NetworkAgent as before.
Bug: 15244052
(cherry picked from commit cfff026ec47afc7e31f60f80e3deea7f4e2f9be5)
Change-Id: I52c2220e8f1d98fca765880be3040593e92722ed
Issues here:
"Reschedule" of an idle-mode task is not well-defined. In the
API I throw an error if you try to set a back-off policy on
an idle mode task.
Implementation-wise, i add a delay for a reschedule request of an
idle mode task. This means that if the phone's still in idle mode
after the delay they app will get a call back, but otherwise it'll
have to wait til the next one.
Implemented all API functions
New window layer that voice interaction service windows
go in to. Includes a new voice-specific content rectangle
that voice activities are placed in to.
Add specific animations for this layer, sliding down from
the top (though this can be customized by the voice interaction
service).
Also add the concept of activities running for voice interaction
services for purposes of adjusting the animation used for them,
again sliding from the top, but not (yet?) customizable by the
voice interaction service.
Change-Id: Ic9e0e8c843c2e2972d6abb4087dce0019326155d
- For Leanback only devices we will force all activities to
live in the same app stack. This is a design decision for the
shy/gregarious changes we are planning to implement for
leanback devices.
Change-Id: I5e65f9b079830a9485b5a136700993755c3f555f