We would like to make relayoutWindow a non-blocking call,
and of course why not, who likes blocking. However it functions
as a critical path of BLASTSync. To understand why examine the
Guarantee described in BLASTSync.md.
In order to implement this guarantee we need to know
“Which frame has the client finished drawing” when it calls
finishDrawing. The current answer to this question is
“The frame reflecting the state observed in the last call
to relayoutWindow”. The comments on mPending and mCurrentDrawHandlers
also have a lot more context on how this works currently. Since
relayoutWindow has a critical section, it also ensures that changes
to syncable state and preparation of sync will be observed atomically
(since they are both observed over relayoutWindow, which is always
called before any frame drawing updated syncable state).
We design a new protocol described in BLASTSync.md, which uses a seqId
to track which call to finishDrawing reflects which syncable state.
We implement this seqId based system. Unfortunately the WindowManager
doesn’t quite conform to the requirements specified by the protocol,
and a follow up CL ensures that syncable state changes will
always be sent with the seqId.
This CL simply adds the protocol specification and makes some required
interface changes. It can be seen to be a no-op.
Bug: 161810301
Bug: 175861051
Bug: 175861127
Bug: 200285149
Change-Id: If2dea07121fe7de5d2524c5b63678dddf955d4b7
This adds a new hidden API in StatusBarManager for active
TileService#requestListeningState. That way, we can verify that the
calling package is the same as the one belonging to the tile.
This is enforced using CompatChange for apps that target T+.
Test: atest StatusBarManagerServiceTest
Test: atest TileServicesTest
Test: atest CtsSystemUiHostTestCases
Test: sample app targetting T
Fixes: 172251878
Change-Id: Ic9b8aca55dcfc2b32b018a5308f19e49a933c4c9
This makes sure existing behaviors don't change, and only dreams that
specify show dream overlay complications get them.
Change-Id: Ic5f440d0519432e6158c5aa64409abd402d48139
Test: atest DreamOverlayServiceTest
Bug: 214456383
Fix: 214456383
This changelist clears the reference to the DreamActivity window once
the activity is cleared in DreamService. Holding onto the reference
will lead to a DreamActivity instance leak.
Test: verified leak no longer present through hprof
Bug: 221285764
Change-Id: I1494bcdeaa1b23c0006867ff8eb1806bd5206eba
* Move the BitmapUtil to com.android.internal package
* Remove bitmap result from GameSession#takeScreenshot API
Bug: 219992742
Test: atest GameServiceProviderInstanceImplTest
Change-Id: I4bf29d623f781434ec7ffe4443e658880c31e619
Move the BitmapUtil to com.android.internal package
This reverts commit ae8b96964c.
Reason for revert: causes overlay elements to not appear.
Test: manual
Bug: 222307681
Change-Id: I2d1f55227774a39f4b2dbe927ddd3aa1a5178351
This makes sure existing behaviors don't change, and only dreams that
specify show dream overlay complications get them.
Test: atest DreamOverlayServiceTest
Bug: 214456383
Fix: 214456383
Change-Id: I5c94484d5af592159a07257137a138e41d0c6b53
The preview overlay needs access to the user-facing label for the dream,
to show the user which dream they are previewing.
Test: atest DreamOverlayServiceTest
Bug: 219747041
Change-Id: I26362ce1fefcd5c9557e99ad2f44374f04017c29
This will allow us to change which complications are shown based on if
we are in preview mode.
Test: atest DreamOverlayServiceTest
Test: locally on device
Bug: 219747041
Change-Id: I4ec34b990fec5e09114a71719c0271da7758aac7
Dump toolbar information to help debug.
Bug: 219664390
Test: dumpsys activity service DefaultSelectionToolbarRenderService
Change-Id: I332d3289dc2533a7583453853f1ec9324b67d088
Adds a new API to VoiceInteractor to allow apps to query
the package name of the Voice Interactor associated with
this the current voice interaction
BUG: 192061561
CTS-Coverage-Bug: 218687104
Test: Manual validation from personal and work profiles
Change-Id: If381c38498535bf94d13c0b5ad5f6c4fa5495117
The active AlwaysOnHotwordDetector and SoftwareHotwordDetector is always
maintained in memory regardless if the client is using it or not.
This added API allows an active VoiceInteractionService to indicate that
they will no longer use the detector, and it can be cleaned up.
Test: atest HotwordDetectionServiceBasicTest
Bug: 193232191
Change-Id: I47c6c64c5c85c01e75ddc6bc504664883a57730b
The SoundTrigger HAL can deliver additional context about the kephrase
that was triggered along with the trigger audio. This change moves to
expose the information which was previously suppressed by the Android
framework.
Data exposed:
- Keyphrase extras providing details on what phrase was interpreted by
the voice engine
Extra keyphrase information provided by the SoundTrigger HAL which was
previously suppressed is also exposed.
Test: atest AlwaysOnHotwordDetectorEventPayloadTest
CTS-Coverage-Bug: 215375531
Bug: 215066299
Change-Id: I3b20fd3692c3f9c86181f87d66622c77778b9ab2
The SoundTrigger HAL can deliver additional context about the kephrase
that was triggered along with the trigger audio. This change moves to
expose the information which was previously suppressed by the Android
framework.
Data exposed:
- Raw data field
Previously raw data was only exposed when the data was of a specific
audio format. This change allows the raw data to be retrieved regardless
of format.
Test: atest AlwaysOnHotwordDetectorEventPayloadTest
CTS-Coverage-Bug: 215375531
Bug: 215066299
Change-Id: Ie75773853d3b338e092dfbf3bd6ccef61a1420c9
Read "showClockAndComplications" from dream metadata when binding to
DreamOverlayService, and pass in the value in intent extra.
Test: atest DreamServiceTest
Test: manually on device
Bug: 211519550
Change-Id: Ie8780834eb438897191c3545acff49f82f1350a9
Bug: 214117287
Test: atest com.android.server.dreams.DreamServiceTest
Test: manually on device by opening Screensaver settings because it
calls into the metadata parsing from DreamBackend
Change-Id: I252f634dd10297ba7dcd91fae6289a85a2904e3d
wallpaper is dimmed
When dimming is applied on live wallpapers, remove
HINT_SUPPORTS_DARK_TEXT/_THEME hints from the color hints to disable
dark text by default.
Test: manual, atest WallpaperManagerServiceTest
Bug: 217367978
Change-Id: Ia614c0b36f84c707a7eb3dabdc7a1eb90992bf3c