- Deferring widget host listening to speed up startup
- Ensuring that we animate to the right task position in the stack and not just the front-most
- Removing assumption that we can only get screenshots for the most recent task
But only if the two users are in the same profile. Also
apply the same rule for the recently allowed interaction
across content providers.
The activity manager now keeps track of which users are in
the same profile group, and the handleIncomingUser function has
an option to allow a non-full caller to do the interaction
if the two users are in the same profile group.
Spread this joy all over the place.
Also turn off multi-user on Svelte devices.
Change-Id: I231484ea2a6bfccbb3cd51357d7a387bd75039ea
The logic was incorrect in the presence of multiple paths
(cluster installs) or multiple instruction sets (multi arch)
because of an early return in the case of sucessful dexopt.
- Rewrite this logic to make it (hopefully) clearer.
- Fix a related bug in getAppDexInstructionSets.
- Add instruction set to the dexopt logs.
bug: 16013931
Change-Id: I18c9755583f0a6f8be70469ec2062269564f0f41
When a user turns hdmi cec on from system settings or other possible way,
hdmi control service should start over from logical address allocation.
As device discovery action from bootup is slightly different from
one from enabling hdmi cec, added additional params to all notification
method which is called when logical address allocation is done.
Bug: 16222082
Change-Id: Ib73be5f642646918b470d769dc563753c4ff48d3
Use Settings for storing several flags/values to keep the data persistent
across power cycle, and also to make them configurable via system Settings UI.
Bug: 16185931
Change-Id: I98650863e4237fd91c1b35717f14a570e049427c
Put in one place some constants used in HdmiControlService that
may need customization. This makes it easy to do the job.
Bug: 16160911
Change-Id: I59786a48d336cfca722daa82c1f0dceb88c5e5e4
In previous change we use setForceUse(FORCE_MEDIA, XXX) method
in order to set specific audio output type, such as LINE, HDMI_ARC,
and SPDIF. But it turns out that it conflicts with bluetooth
a2dp which uses the same setForceUse(FORCE_MEDIA, yyy).
This change is based on several conditions.
1. When other non-speaker devices are on, prevent system audio
from turing on.
2. In order to keep track of other devices' connectivity and to
turn off system audio if other device like bluetooth or
headphone preempts current output, register OnAudioPortChangeListner
to audio manager.
3. All possible system audio outputs can be merged with other
outputs without priority.
Change-Id: Id4e47d99db64b9f77a17c2c28c47787ab8980bf7
Instead of producing Ranking objects, RankingMap just populates
them now, allowing developers to re-use objects and avoid
unnecessary allocations.
Also rename isInterceptedByDnd() to meetsInterruptionFilter(),
since DND is not a concept anymore.
Bug: 15415840
Bug: 16099064
Change-Id: If9861cbdf14593e641a4d4ffd1b967647eb8e2b8
Will resubmit tomorrow for Build Breakage Friday as this change needs new SDK prebuilts for unbundled app branches.
This reverts commit aa746b27610680a2c0fbdf7d81a6455c4597f05e.
Change-Id: I28ba7e1b09234a5eb1b725aed043b9de98e1bc16
Added another parameter deviceType for HdmiControlService to
run the specified local device for sendKeyEvent.
Bug: 15844076
Change-Id: I598ef320ae94bba0ace38701ae0ca12fd0625559
Over time, we've unpacked native libraries at various places with
respect to their source APK. Persisting this path in PackageSettings
has caused more pain recently with the switch to supporting multiArch
and cluster installs.
This change switches us to always derive the native library paths at
runtime based on the type of install. This also ensures that
transitioning between a bundled system app and an upgraded system
app will always build the right path.
We still persist the last generated path into PackageSettings to make
cleanup at uninstall time easier.
Bug: 16208505, 16206748, 16212206
Change-Id: Ieb82a424ca4a92b5674983453c50ba4b695abfb0
Separate definition of public keys and keysets in the manifest to better
represent their relationship. The 'key-set' tags should have nested additional
'public-key' tags that indicate which of the defined 'public-key' tags are
associated with them. The first use of a given 'public-key' name should define
its value; subsequent uses may refer to it only by name. 'key-set' and
'public-key' names may not intersect.
Also, change 'keys' tag to 'key-sets' to avoid issues with previous keysets
implementation.
Bug: 6967056
Change-Id: I7534e4a42326e97b67b55509187c0d3c21a2bb32
Add model management API skeleton to VoiceInteractionManagerService
Add an "interactor" for all always-on APIs
- The VoiceInteractionService will get an interactor for the given
keyphrase and locale.
- It can then check the availability and call methods to start and
stop recognition on this interactor.
- Add a common class to deal with SoundTrigger APIs
- Cleanup the keyphrase representation:
We now have separate representations for the keyphrase metadata and
a keyphrase being used for recognition.
This'll also help us to handle custom keyphrases in the
future easily.
This also ensures that for use within the framework,
we rely on the ID of the KeyphraseInfo rather than comparing the
text everytime.
Add a callback for the AlwaysOnHotwordDetector
This callback should be passed in by the VoiceInteractionService and is used to notify it
of recognition events.
Change-Id: I26252298773024f53a10cdd2af4404a4e6d74aae
Also fixes an infinite recursion bug in the WindowManagerService
implementation of WindowManagerInternal.
BUG: 16129909
Change-Id: I4f9d32f4e6c3ad460652c5e5271540fa5032a1f5
When a cec deivce turns into disabled mode such as power off, standby,
and cec feature disabled, cec service should execute cleanup tasks.
Including cleaning up all feature actions, each device should run
their own cleanup.
It should stop system audio mode and arc for tv, while it should
send inactive source for for playback device.
Along with this, to prevent stale feature action, added timeout
to local device so that if there is stale action, it enforce to
finish it.
Bug: 16118520
Change-Id: I5ce30ab0f4459b6e2834f8d31b6a7ff789b35d07
Remove disable_device_timeout message when all pending
actions are cleared, PendingActionClearedCallback#onCleared
is called.
Change-Id: I32e37c94c6a6dfc149da3bb0553d2a3238bae479
Whenever new volume change is notified from system audio,
hdmi control service should delegate it to AudioManager.
Note that, it should set FLAG_HDMI_SYSTEM_AUDIO_VOLUME,
which prevents audio manager from notifying volume-
change event back to hdmi control service.
Change-Id: I6621f517a4d20226aea9159bbae6b699e2c2ffd0
copyNativeBinariesIfNeededLI returns an index into the list
it was handed, so using Build.SUPPORTED_ABIS here is incorrect.
bug: 16013931
Change-Id: I35e0dad4b5e0c1dc1199f381d8b99cd228719092
This CL addresses feedbacks from internal customers for new
input method APIs that are mainly used for physical keyboard
support in L.
For performance reasons, #onUpdateCursorAnchorInfo is not called
back by default and each input method has to enable this
event notification explicitly whenever fine-grained character
locations are needed.
In L-preview, InputMethodSession#setCursorAnchorMonitorMode was
introduced for this purpose. However, we got several feedbacks
to be addressed.
- The effect of #setCursorAnchorMonitorMode is not preserved
during focus change. IMEs need to call
#setCursorAnchorMonitorMode every time when #onStartInput is
called. This is tricky and hard to understand.
- As #onUpdateCursorAnchorInfo is a new API, not all
applications/text editors have supported it. Therefore IMEs
can't always rely on it. However, there is no way to query
if the attached target is supporting this new API or not.
It would helpful for IME authors if we can provide a
reliable way to query if the attached input target is
supporting the new API or not.
In order to address these issues, the triggering method has
moved from InputMethodSession to InputConnection in this CL,
as an analogy of existing InputConnection#getExtractedText API,
which has provided similar functionality including optional
reactive event callbacks from the application to the IME.
BUG: 15812658
BUG: 16118603
Change-Id: I3c6b69bd9d79b199afe68d838f25effa6048e5cc
Once verified that caller is device owner just calls through to
the activity manager and acts like that call.
Change-Id: I34023313cd6742b73d2105655ec6b631879aa37a
Calling setBundledAppAbisAndRoots will end up
setting a path that points to /system/ if it's called
on a system app that was subsequently updated.
bug: 16208505
Change-Id: I0bf85e0341029b3d4d209a402d30c2ce357daaf2
This eliminates the need for the ConnectivityService.VpnCallback class.
This requires shifting VPNs to the new "network" netd API.
VpnService.protect() is modified to no longer go through ConnectivityService.
NetworkCapabilities is extended to add a transport type for VPNs and a
capability requiring a non-VPN (so the default NetworkRequest isn't satisfied
by a VPN).
bug:15409918
Change-Id: Ic4498f1961582208add6f375ad16ce376ee9eb95