Add dismiss intent and method for MediaOutputDialog

-Add filter in Manifest
-Add dismiss method in MediaOutputDialogFactory

Bug: 155822415
Test: build pass
Merged-In: Ica5b5a22e0fa20ffec5ab9ea291f72c06e39c2fe
Change-Id: Ica5b5a22e0fa20ffec5ab9ea291f72c06e39c2fe
This commit is contained in:
timhypeng
2020-09-21 17:14:04 +08:00
committed by tim peng
parent 5fc4c2883d
commit 1747dbbc40
2 changed files with 15 additions and 2 deletions

View File

@@ -785,6 +785,7 @@
android:exported="true">
<intent-filter>
<action android:name="com.android.systemui.action.LAUNCH_MEDIA_OUTPUT_DIALOG" />
<action android:name="com.android.systemui.action.DISMISS_MEDIA_OUTPUT_DIALOG" />
</intent-filter>
</receiver>

View File

@@ -33,10 +33,22 @@ class MediaOutputDialogFactory @Inject constructor(
private val shadeController: ShadeController,
private val starter: ActivityStarter
) {
companion object {
var mediaOutputDialog: MediaOutputDialog? = null
}
/** Creates a [MediaOutputDialog] for the given package. */
fun create(packageName: String, aboveStatusBar: Boolean) {
MediaOutputController(context, packageName, mediaSessionManager, lbm, shadeController,
starter).run {
mediaOutputDialog?.dismiss()
mediaOutputDialog = MediaOutputController(context, packageName, mediaSessionManager, lbm,
shadeController, starter).run {
MediaOutputDialog(context, aboveStatusBar, this) }
}
/** dismiss [MediaOutputDialog] if exist. */
fun dismiss() {
mediaOutputDialog?.dismiss()
mediaOutputDialog = null
}
}