Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2b96e8c0 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Dump list of saved resume components"

parents d2ae6601 c5bd0301
Loading
Loading
Loading
Loading
+14 −2
Original line number Diff line number Diff line
@@ -29,11 +29,15 @@ import android.provider.Settings
import android.service.media.MediaBrowserService
import android.util.Log
import com.android.internal.annotations.VisibleForTesting
import com.android.systemui.Dumpable
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.dump.DumpManager
import com.android.systemui.tuner.TunerService
import com.android.systemui.util.Utils
import java.io.FileDescriptor
import java.io.PrintWriter
import java.util.concurrent.ConcurrentLinkedQueue
import java.util.concurrent.Executor
import javax.inject.Inject
@@ -49,8 +53,9 @@ class MediaResumeListener @Inject constructor(
    private val broadcastDispatcher: BroadcastDispatcher,
    @Background private val backgroundExecutor: Executor,
    private val tunerService: TunerService,
    private val mediaBrowserFactory: ResumeMediaBrowserFactory
) : MediaDataManager.Listener {
    private val mediaBrowserFactory: ResumeMediaBrowserFactory,
    dumpManager: DumpManager
) : MediaDataManager.Listener, Dumpable {

    private var useMediaResumption: Boolean = Utils.useMediaResumption(context)
    private val resumeComponents: ConcurrentLinkedQueue<ComponentName> = ConcurrentLinkedQueue()
@@ -99,6 +104,7 @@ class MediaResumeListener @Inject constructor(

    init {
        if (useMediaResumption) {
            dumpManager.registerDumpable(TAG, this)
            val unlockFilter = IntentFilter()
            unlockFilter.addAction(Intent.ACTION_USER_UNLOCKED)
            unlockFilter.addAction(Intent.ACTION_USER_SWITCHED)
@@ -283,4 +289,10 @@ class MediaResumeListener @Inject constructor(
            mediaBrowser?.restart()
        }
    }

    override fun dump(fd: FileDescriptor, pw: PrintWriter, args: Array<out String>) {
        pw.apply {
            println("resumeComponents: $resumeComponents")
        }
    }
}
 No newline at end of file
+4 −2
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ import android.testing.TestableLooper
import androidx.test.filters.SmallTest
import com.android.systemui.SysuiTestCase
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.dump.DumpManager
import com.android.systemui.tuner.TunerService
import com.android.systemui.util.concurrency.FakeExecutor
import com.android.systemui.util.time.FakeSystemClock
@@ -85,6 +86,7 @@ class MediaResumeListenerTest : SysuiTestCase() {
    @Mock private lateinit var sharedPrefsEditor: SharedPreferences.Editor
    @Mock private lateinit var mockContext: Context
    @Mock private lateinit var pendingIntent: PendingIntent
    @Mock private lateinit var dumpManager: DumpManager

    @Captor lateinit var callbackCaptor: ArgumentCaptor<ResumeMediaBrowser.Callback>

@@ -120,7 +122,7 @@ class MediaResumeListenerTest : SysuiTestCase() {

        executor = FakeExecutor(FakeSystemClock())
        resumeListener = MediaResumeListener(mockContext, broadcastDispatcher, executor,
                tunerService, resumeBrowserFactory)
                tunerService, resumeBrowserFactory, dumpManager)
        resumeListener.setManager(mediaDataManager)
        mediaDataManager.addListener(resumeListener)

@@ -159,7 +161,7 @@ class MediaResumeListenerTest : SysuiTestCase() {

        // When listener is created, we do NOT register a user change listener
        val listener = MediaResumeListener(context, broadcastDispatcher, executor, tunerService,
                resumeBrowserFactory)
                resumeBrowserFactory, dumpManager)
        listener.setManager(mediaDataManager)
        verify(broadcastDispatcher, never()).registerReceiver(eq(listener.userChangeReceiver),
            any(), any(), any())