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

Commit de6a41b7 authored by Evan Severson's avatar Evan Severson
Browse files

Add broadcast receiver for FGS manager dialog

Test: adb shell am broadcast \
      -a android.intent.action.SHOW_FOREGROUND_SERVICE_MANAGER \
      --receiver-include-background
Fixes: 223224237
Change-Id: I1b0dfe05e4cc94411cc7c4532447ea837f8924ec
parent ba688138
Loading
Loading
Loading
Loading
+17 −0
Original line number Original line Diff line number Diff line
@@ -18,7 +18,10 @@ package com.android.systemui.qs


import android.app.IActivityManager
import android.app.IActivityManager
import android.app.IForegroundServiceObserver
import android.app.IForegroundServiceObserver
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Context
import android.content.Intent
import android.content.IntentFilter
import android.content.pm.PackageManager
import android.content.pm.PackageManager
import android.graphics.drawable.Drawable
import android.graphics.drawable.Drawable
import android.os.IBinder
import android.os.IBinder
@@ -42,6 +45,7 @@ import com.android.internal.config.sysui.SystemUiDeviceConfigFlags.TASK_MANAGER_
import com.android.systemui.Dumpable
import com.android.systemui.Dumpable
import com.android.systemui.R
import com.android.systemui.R
import com.android.systemui.animation.DialogLaunchAnimator
import com.android.systemui.animation.DialogLaunchAnimator
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.dagger.qualifiers.Main
@@ -67,6 +71,7 @@ class FgsManagerController @Inject constructor(
    private val packageManager: PackageManager,
    private val packageManager: PackageManager,
    private val deviceConfigProxy: DeviceConfigProxy,
    private val deviceConfigProxy: DeviceConfigProxy,
    private val dialogLaunchAnimator: DialogLaunchAnimator,
    private val dialogLaunchAnimator: DialogLaunchAnimator,
    private val broadcastDispatcher: BroadcastDispatcher,
    private val dumpManager: DumpManager
    private val dumpManager: DumpManager
) : IForegroundServiceObserver.Stub(), Dumpable {
) : IForegroundServiceObserver.Stub(), Dumpable {


@@ -125,6 +130,18 @@ class FgsManagerController @Inject constructor(


            dumpManager.registerDumpable(this)
            dumpManager.registerDumpable(this)


            broadcastDispatcher.registerReceiver(
                    object : BroadcastReceiver() {
                        override fun onReceive(context: Context, intent: Intent) {
                            if (intent.action == Intent.ACTION_SHOW_FOREGROUND_SERVICE_MANAGER) {
                                showDialog(null)
                            }
                        }
                    },
                    IntentFilter(Intent.ACTION_SHOW_FOREGROUND_SERVICE_MANAGER),
                    executor = mainExecutor,
                    flags = Context.RECEIVER_NOT_EXPORTED)

            initialized = true
            initialized = true
        }
        }
    }
    }