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

Commit 1f960d29 authored by Stefan Andonian's avatar Stefan Andonian Committed by Android (Google) Code Review
Browse files

Merge "Close the Notification Shade when starting/sharing traces." into main

parents 92f64e37 d8f5b522
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ import com.android.systemui.plugins.statusbar.StatusBarStateController
import com.android.systemui.qs.QSHost
import com.android.systemui.qs.QsEventLogger
import com.android.systemui.qs.logging.QSLogger
import com.android.systemui.qs.pipeline.domain.interactor.PanelInteractor
import com.android.systemui.qs.tileimpl.QSTileImpl
import com.android.systemui.recordissue.IssueRecordingService
import com.android.systemui.recordissue.RecordIssueDialogDelegate
@@ -66,6 +67,7 @@ constructor(
    private val keyguardDismissUtil: KeyguardDismissUtil,
    private val keyguardStateController: KeyguardStateController,
    private val dialogTransitionAnimator: DialogTransitionAnimator,
    private val panelInteractor: PanelInteractor,
    private val userContextProvider: UserContextProvider,
    private val delegateFactory: RecordIssueDialogDelegate.Factory,
) :
@@ -138,6 +140,8 @@ constructor(
                .create {
                    isRecording = true
                    startIssueRecordingService(it.screenRecord, it.winscopeTracing)
                    dialogTransitionAnimator.disableAllCurrentDialogsExitAnimations()
                    panelInteractor.collapsePanels()
                    refreshState()
                }
                .createDialog()
+12 −8
Original line number Diff line number Diff line
@@ -27,8 +27,10 @@ import android.os.UserHandle
import android.util.Log
import androidx.core.content.FileProvider
import com.android.internal.logging.UiEventLogger
import com.android.systemui.animation.DialogTransitionAnimator
import com.android.systemui.dagger.qualifiers.LongRunning
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.qs.pipeline.domain.interactor.PanelInteractor
import com.android.systemui.res.R
import com.android.systemui.screenrecord.RecordingController
import com.android.systemui.screenrecord.RecordingService
@@ -54,7 +56,9 @@ constructor(
    uiEventLogger: UiEventLogger,
    notificationManager: NotificationManager,
    userContextProvider: UserContextProvider,
    keyguardDismissUtil: KeyguardDismissUtil
    keyguardDismissUtil: KeyguardDismissUtil,
    private val dialogTransitionAnimator: DialogTransitionAnimator,
    private val panelInteractor: PanelInteractor,
) :
    RecordingService(
        controller,
@@ -102,6 +106,8 @@ constructor(
            }
            ACTION_SHARE -> {
                shareRecording(intent)
                dialogTransitionAnimator.disableAllCurrentDialogsExitAnimations()
                panelInteractor.collapsePanels()

                // Unlike all other actions, action_share has different behavior for the screen
                // recording qs tile than it does for the record issue qs tile. Return sticky to
@@ -124,13 +130,11 @@ constructor(
            FileSender.buildSendIntent(this, listOf(sharableUri))
                .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)

        if (mNotificationId != NOTIF_BASE_ID) {
        mNotificationManager.cancelAsUser(
            null,
            mNotificationId,
            UserHandle(mUserContextTracker.userContext.userId)
        )
        }

        // TODO: Debug why the notification shade isn't closing upon starting the BetterBug activity
        mKeyguardDismissUtil.executeWhenUnlocked(
+3 −0
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ import com.android.systemui.plugins.statusbar.StatusBarStateController
import com.android.systemui.qs.QSHost
import com.android.systemui.qs.QsEventLogger
import com.android.systemui.qs.logging.QSLogger
import com.android.systemui.qs.pipeline.domain.interactor.PanelInteractor
import com.android.systemui.recordissue.RecordIssueDialogDelegate
import com.android.systemui.res.R
import com.android.systemui.settings.UserContextProvider
@@ -66,6 +67,7 @@ class RecordIssueTileTest : SysuiTestCase() {
    @Mock private lateinit var keyguardDismissUtil: KeyguardDismissUtil
    @Mock private lateinit var keyguardStateController: KeyguardStateController
    @Mock private lateinit var dialogLauncherAnimator: DialogTransitionAnimator
    @Mock private lateinit var panelInteractor: PanelInteractor
    @Mock private lateinit var userContextProvider: UserContextProvider
    @Mock private lateinit var delegateFactory: RecordIssueDialogDelegate.Factory
    @Mock private lateinit var dialogDelegate: RecordIssueDialogDelegate
@@ -96,6 +98,7 @@ class RecordIssueTileTest : SysuiTestCase() {
                keyguardDismissUtil,
                keyguardStateController,
                dialogLauncherAnimator,
                panelInteractor,
                userContextProvider,
                delegateFactory,
            )