diff options
author | timhypeng <timhypeng@google.com> | 2020-09-14 15:58:44 +0800 |
---|---|---|
committer | tim peng <timhypeng@google.com> | 2020-12-02 03:28:26 +0000 |
commit | 03e5417ec45174295acc9795029a9a15ce97ddc9 (patch) | |
tree | e31432661d1ac7bcaa306aa88f788fb8ebd6cf2a /packages/SystemUI/src | |
parent | 3e5de04302633a1def9047798f64aecfc0c7efce (diff) |
Add MediaOutputDialogFactory to create MediaOutputDialog
Bug: 155822415
Test: build pass
Merged-In: Idbfc558bcecc66f6f3b984a0d6f09634db2b2002
Change-Id: Idbfc558bcecc66f6f3b984a0d6f09634db2b2002
Diffstat (limited to 'packages/SystemUI/src')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialogFactory.kt | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialogFactory.kt b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialogFactory.kt new file mode 100644 index 000000000000..bc1dca58990d --- /dev/null +++ b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialogFactory.kt @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2020 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.systemui.media.dialog + +import android.content.Context +import android.media.session.MediaSessionManager +import com.android.settingslib.bluetooth.LocalBluetoothManager +import com.android.systemui.plugins.ActivityStarter +import com.android.systemui.statusbar.phone.ShadeController +import javax.inject.Inject + +/** + * Factory to create [MediaOutputDialog] objects. + */ +class MediaOutputDialogFactory @Inject constructor( + private val context: Context, + private val mediaSessionManager: MediaSessionManager, + private val lbm: LocalBluetoothManager?, + private val shadeController: ShadeController, + private val starter: ActivityStarter +) { + /** Creates a [MediaOutputDialog] for the given package. */ + fun create(packageName: String, aboveStatusBar: Boolean) { + MediaOutputController(context, packageName, mediaSessionManager, lbm, shadeController, + starter).run { + MediaOutputDialog(context, aboveStatusBar, this) } + } +} |