Deletes LifecycleActivity.

LifecycleActivity seems to only be adding a Lifecycle to the framework
Activity class. The Jetpack ComponentActivity already does that and is
actively getting fixes whereas the Activity class is not.

This CL deletes LifecycleActivity and migrates existing subclasses to
subclass ComponentActivity from Jetpack, instead.

Bug: 243558484
Test: Opened and played with the home controls screens and the user
switcher screen. Did not test Wallet, but I have high
confidence that this change is safe given its nature and the manual test
for home controls.

Change-Id: I10f83c71d02e7218a0196b272006dbe6d17156dc
diff --git a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsEditingActivity.kt b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsEditingActivity.kt
index f611c3e..5e8ce6d 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsEditingActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsEditingActivity.kt
@@ -25,6 +25,7 @@
 import android.view.ViewStub
 import android.widget.Button
 import android.widget.TextView
+import androidx.activity.ComponentActivity
 import androidx.recyclerview.widget.GridLayoutManager
 import androidx.recyclerview.widget.ItemTouchHelper
 import androidx.recyclerview.widget.RecyclerView
@@ -36,7 +37,6 @@
 import com.android.systemui.controls.ui.ControlsActivity
 import com.android.systemui.controls.ui.ControlsUiController
 import com.android.systemui.settings.CurrentUserTracker
-import com.android.systemui.util.LifecycleActivity
 import javax.inject.Inject
 
 /**
@@ -47,7 +47,7 @@
     private val broadcastDispatcher: BroadcastDispatcher,
     private val customIconCache: CustomIconCache,
     private val uiController: ControlsUiController
-) : LifecycleActivity() {
+) : ComponentActivity() {
 
     companion object {
         private const val TAG = "ControlsEditingActivity"
diff --git a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsFavoritingActivity.kt b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsFavoritingActivity.kt
index dca52a9..be572c5 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsFavoritingActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsFavoritingActivity.kt
@@ -32,6 +32,7 @@
 import android.widget.FrameLayout
 import android.widget.TextView
 import android.widget.Toast
+import androidx.activity.ComponentActivity
 import androidx.viewpager2.widget.ViewPager2
 import com.android.systemui.Prefs
 import com.android.systemui.R
@@ -44,7 +45,6 @@
 import com.android.systemui.controls.ui.ControlsUiController
 import com.android.systemui.dagger.qualifiers.Main
 import com.android.systemui.settings.CurrentUserTracker
-import com.android.systemui.util.LifecycleActivity
 import java.text.Collator
 import java.util.concurrent.Executor
 import java.util.function.Consumer
@@ -56,7 +56,7 @@
     private val listingController: ControlsListingController,
     private val broadcastDispatcher: BroadcastDispatcher,
     private val uiController: ControlsUiController
-) : LifecycleActivity() {
+) : ComponentActivity() {
 
     companion object {
         private const val TAG = "ControlsFavoritingActivity"
diff --git a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsProviderSelectorActivity.kt b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsProviderSelectorActivity.kt
index 8ad5099..b26615f 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsProviderSelectorActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsProviderSelectorActivity.kt
@@ -26,6 +26,7 @@
 import android.view.ViewStub
 import android.widget.Button
 import android.widget.TextView
+import androidx.activity.ComponentActivity
 import androidx.recyclerview.widget.LinearLayoutManager
 import androidx.recyclerview.widget.RecyclerView
 import androidx.recyclerview.widget.RecyclerView.AdapterDataObserver
@@ -37,7 +38,6 @@
 import com.android.systemui.dagger.qualifiers.Background
 import com.android.systemui.dagger.qualifiers.Main
 import com.android.systemui.settings.CurrentUserTracker
-import com.android.systemui.util.LifecycleActivity
 import java.util.concurrent.Executor
 import javax.inject.Inject
 
@@ -51,7 +51,7 @@
     private val controlsController: ControlsController,
     private val broadcastDispatcher: BroadcastDispatcher,
     private val uiController: ControlsUiController
-) : LifecycleActivity() {
+) : ComponentActivity() {
 
     companion object {
         private const val TAG = "ControlsProviderSelectorActivity"
diff --git a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsRequestDialog.kt b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsRequestDialog.kt
index f9e7f0e..b376455 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/management/ControlsRequestDialog.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/management/ControlsRequestDialog.kt
@@ -30,6 +30,7 @@
 import android.view.View
 import android.widget.ImageView
 import android.widget.TextView
+import androidx.activity.ComponentActivity
 import com.android.systemui.R
 import com.android.systemui.broadcast.BroadcastDispatcher
 import com.android.systemui.controls.ControlsServiceInfo
@@ -38,14 +39,13 @@
 import com.android.systemui.controls.ui.RenderInfo
 import com.android.systemui.settings.CurrentUserTracker
 import com.android.systemui.statusbar.phone.SystemUIDialog
-import com.android.systemui.util.LifecycleActivity
 import javax.inject.Inject
 
 open class ControlsRequestDialog @Inject constructor(
     private val controller: ControlsController,
     private val broadcastDispatcher: BroadcastDispatcher,
     private val controlsListingController: ControlsListingController
-) : LifecycleActivity(), DialogInterface.OnClickListener, DialogInterface.OnCancelListener {
+) : ComponentActivity(), DialogInterface.OnClickListener, DialogInterface.OnCancelListener {
 
     companion object {
         private const val TAG = "ControlsRequestDialog"
diff --git a/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsActivity.kt b/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsActivity.kt
index 49f7584..77b6523 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/ui/ControlsActivity.kt
@@ -25,11 +25,10 @@
 import android.view.ViewGroup
 import android.view.WindowInsets
 import android.view.WindowInsets.Type
-
+import androidx.activity.ComponentActivity
 import com.android.systemui.R
 import com.android.systemui.broadcast.BroadcastDispatcher
 import com.android.systemui.controls.management.ControlsAnimations
-import com.android.systemui.util.LifecycleActivity
 import javax.inject.Inject
 
 /**
@@ -42,7 +41,7 @@
 class ControlsActivity @Inject constructor(
     private val uiController: ControlsUiController,
     private val broadcastDispatcher: BroadcastDispatcher
-) : LifecycleActivity() {
+) : ComponentActivity() {
 
     private lateinit var parent: ViewGroup
     private lateinit var broadcastReceiver: BroadcastReceiver
diff --git a/packages/SystemUI/src/com/android/systemui/user/UserSwitcherActivity.kt b/packages/SystemUI/src/com/android/systemui/user/UserSwitcherActivity.kt
index 74d5111..80c55c0 100644
--- a/packages/SystemUI/src/com/android/systemui/user/UserSwitcherActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/user/UserSwitcherActivity.kt
@@ -35,6 +35,7 @@
 import android.widget.ArrayAdapter
 import android.widget.ImageView
 import android.widget.TextView
+import androidx.activity.ComponentActivity
 import androidx.constraintlayout.helper.widget.Flow
 import com.android.internal.annotations.VisibleForTesting
 import com.android.internal.util.UserIcons
@@ -51,7 +52,6 @@
 import com.android.systemui.statusbar.policy.UserSwitcherController.USER_SWITCH_DISABLED_ALPHA
 import com.android.systemui.statusbar.policy.UserSwitcherController.USER_SWITCH_ENABLED_ALPHA
 import com.android.systemui.statusbar.policy.UserSwitcherController.UserRecord
-import com.android.systemui.util.LifecycleActivity
 import javax.inject.Inject
 import kotlin.math.ceil
 
@@ -68,7 +68,7 @@
     private val falsingManager: FalsingManager,
     private val userManager: UserManager,
     private val userTracker: UserTracker
-) : LifecycleActivity() {
+) : ComponentActivity() {
 
     private lateinit var parent: UserSwitcherRootView
     private lateinit var broadcastReceiver: BroadcastReceiver
diff --git a/packages/SystemUI/src/com/android/systemui/util/LifecycleActivity.kt b/packages/SystemUI/src/com/android/systemui/util/LifecycleActivity.kt
deleted file mode 100644
index e4b7a20..0000000
--- a/packages/SystemUI/src/com/android/systemui/util/LifecycleActivity.kt
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright (C) 2019 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.util
-
-import android.app.Activity
-import android.os.Bundle
-import android.os.PersistableBundle
-import androidx.lifecycle.LifecycleOwner
-import com.android.settingslib.core.lifecycle.Lifecycle
-
-open class LifecycleActivity : Activity(), LifecycleOwner {
-
-    private val lifecycle = Lifecycle(this)
-
-    override fun getLifecycle() = lifecycle
-
-    override fun onCreate(savedInstanceState: Bundle?) {
-        lifecycle.onAttach(this)
-        lifecycle.onCreate(savedInstanceState)
-        lifecycle.handleLifecycleEvent(androidx.lifecycle.Lifecycle.Event.ON_CREATE)
-        super.onCreate(savedInstanceState)
-    }
-
-    override fun onCreate(
-        savedInstanceState: Bundle?,
-        persistentState: PersistableBundle?
-    ) {
-        lifecycle.onAttach(this)
-        lifecycle.onCreate(savedInstanceState)
-        lifecycle.handleLifecycleEvent(androidx.lifecycle.Lifecycle.Event.ON_CREATE)
-        super.onCreate(savedInstanceState, persistentState)
-    }
-
-    override fun onStart() {
-        lifecycle.handleLifecycleEvent(androidx.lifecycle.Lifecycle.Event.ON_START)
-        super.onStart()
-    }
-
-    override fun onResume() {
-        lifecycle.handleLifecycleEvent(androidx.lifecycle.Lifecycle.Event.ON_RESUME)
-        super.onResume()
-    }
-
-    override fun onPause() {
-        lifecycle.handleLifecycleEvent(androidx.lifecycle.Lifecycle.Event.ON_PAUSE)
-        super.onPause()
-    }
-
-    override fun onStop() {
-        lifecycle.handleLifecycleEvent(androidx.lifecycle.Lifecycle.Event.ON_STOP)
-        super.onStop()
-    }
-
-    override fun onDestroy() {
-        lifecycle.handleLifecycleEvent(androidx.lifecycle.Lifecycle.Event.ON_DESTROY)
-        super.onDestroy()
-    }
-}
\ No newline at end of file
diff --git a/packages/SystemUI/src/com/android/systemui/wallet/ui/WalletActivity.java b/packages/SystemUI/src/com/android/systemui/wallet/ui/WalletActivity.java
index e3cd9899..d03148c 100644
--- a/packages/SystemUI/src/com/android/systemui/wallet/ui/WalletActivity.java
+++ b/packages/SystemUI/src/com/android/systemui/wallet/ui/WalletActivity.java
@@ -32,7 +32,9 @@
 import android.view.WindowManager;
 import android.widget.Toolbar;
 
+import androidx.activity.ComponentActivity;
 import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
 
 import com.android.internal.logging.UiEventLogger;
 import com.android.keyguard.KeyguardUpdateMonitor;
@@ -48,7 +50,6 @@
 import com.android.systemui.statusbar.phone.KeyguardDismissUtil;
 import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
 import com.android.systemui.statusbar.policy.KeyguardStateController;
-import com.android.systemui.util.LifecycleActivity;
 
 import java.util.concurrent.Executor;
 
@@ -57,7 +58,7 @@
 /**
  * Displays Wallet carousel screen inside an activity.
  */
-public class WalletActivity extends LifecycleActivity implements
+public class WalletActivity extends ComponentActivity implements
         QuickAccessWalletClient.WalletServiceEventListener {
 
     private static final String TAG = "WalletActivity";
@@ -105,7 +106,7 @@
     }
 
     @Override
-    protected void onCreate(Bundle savedInstanceState) {
+    protected void onCreate(@Nullable Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
 
         getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);