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

Commit 5ed06e13 authored by Mike Schneider's avatar Mike Schneider Committed by Automerger Merge Worker
Browse files

Merge "Jank-Instrument all dialogs opened from the shade" into tm-qpr-dev am:...

Merge "Jank-Instrument all dialogs opened from the shade" into tm-qpr-dev am: d151838b am: 6513fb63

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18716126



Change-Id: I85d11f7c36128b923c4badde44f11a77ba499956
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 3e56ef4e 6513fb63
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -99,6 +99,7 @@ import com.android.internal.R;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.colorextraction.ColorExtractor;
import com.android.internal.colorextraction.ColorExtractor.GradientColors;
import com.android.internal.jank.InteractionJankMonitor;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.UiEvent;
import com.android.internal.logging.UiEventLogger;
@@ -110,6 +111,7 @@ import com.android.internal.widget.LockPatternUtils;
import com.android.keyguard.KeyguardUpdateMonitor;
import com.android.systemui.MultiListLayout;
import com.android.systemui.MultiListLayout.MultiListAdapter;
import com.android.systemui.animation.DialogCuj;
import com.android.systemui.animation.DialogLaunchAnimator;
import com.android.systemui.animation.Interpolators;
import com.android.systemui.broadcast.BroadcastDispatcher;
@@ -154,6 +156,8 @@ public class GlobalActionsDialogLite implements DialogInterface.OnDismissListene

    private static final String TAG = "GlobalActionsDialogLite";

    private static final String INTERACTION_JANK_TAG = "global_actions";

    private static final boolean SHOW_SILENT_TOGGLE = true;

    /* Valid settings for global actions keys.
@@ -499,7 +503,9 @@ public class GlobalActionsDialogLite implements DialogInterface.OnDismissListene
        mDialog.getWindow().addFlags(FLAG_ALT_FOCUSABLE_IM);

        if (view != null) {
            mDialogLaunchAnimator.showFromView(mDialog, view);
            mDialogLaunchAnimator.showFromView(mDialog, view,
                    new DialogCuj(InteractionJankMonitor.CUJ_SHADE_DIALOG_OPEN,
                            INTERACTION_JANK_TAG));
        } else {
            mDialog.show();
        }
+15 −4
Original line number Diff line number Diff line
@@ -20,8 +20,10 @@ import android.content.Context
import android.media.AudioManager
import android.media.session.MediaSessionManager
import android.view.View
import com.android.internal.jank.InteractionJankMonitor
import com.android.internal.logging.UiEventLogger
import com.android.settingslib.bluetooth.LocalBluetoothManager
import com.android.systemui.animation.DialogCuj
import com.android.systemui.animation.DialogLaunchAnimator
import com.android.systemui.broadcast.BroadcastSender
import com.android.systemui.media.nearby.NearbyMediaDevicesManager
@@ -46,6 +48,7 @@ class MediaOutputDialogFactory @Inject constructor(
    private val audioManager: AudioManager
) {
    companion object {
        private const val INTERACTION_JANK_TAG = "media_output"
        var mediaOutputDialog: MediaOutputDialog? = null
    }

@@ -54,16 +57,24 @@ class MediaOutputDialogFactory @Inject constructor(
        // Dismiss the previous dialog, if any.
        mediaOutputDialog?.dismiss()

        val controller = MediaOutputController(context, packageName,
        val controller = MediaOutputController(
            context, packageName,
            mediaSessionManager, lbm, starter, notifCollection,
                dialogLaunchAnimator, nearbyMediaDevicesManagerOptional, audioManager)
            dialogLaunchAnimator, nearbyMediaDevicesManagerOptional, audioManager
        )
        val dialog =
            MediaOutputDialog(context, aboveStatusBar, broadcastSender, controller, uiEventLogger)
        mediaOutputDialog = dialog

        // Show the dialog.
        if (view != null) {
            dialogLaunchAnimator.showFromView(dialog, view)
            dialogLaunchAnimator.showFromView(
                dialog, view,
                cuj = DialogCuj(
                    InteractionJankMonitor.CUJ_SHADE_DIALOG_OPEN,
                    INTERACTION_JANK_TAG
                )
            )
        } else {
            dialog.show()
        }
+7 −1
Original line number Diff line number Diff line
@@ -55,6 +55,7 @@ import android.view.WindowManager;

import androidx.annotation.VisibleForTesting;

import com.android.internal.jank.InteractionJankMonitor;
import com.android.internal.logging.UiEventLogger;
import com.android.internal.messages.nano.SystemMessageProto.SystemMessage;
import com.android.settingslib.Utils;
@@ -62,6 +63,7 @@ import com.android.settingslib.fuelgauge.BatterySaverUtils;
import com.android.settingslib.utils.PowerUtil;
import com.android.systemui.R;
import com.android.systemui.SystemUIApplication;
import com.android.systemui.animation.DialogCuj;
import com.android.systemui.animation.DialogLaunchAnimator;
import com.android.systemui.broadcast.BroadcastSender;
import com.android.systemui.dagger.SysUISingleton;
@@ -93,6 +95,8 @@ public class PowerNotificationWarnings implements PowerUI.WarningsUI {
    private static final String TAG_TEMPERATURE = "high_temp";
    private static final String TAG_AUTO_SAVER = "auto_saver";

    private static final String INTERACTION_JANK_TAG = "start_power_saver";

    private static final int SHOWING_NOTHING = 0;
    private static final int SHOWING_WARNING = 1;
    private static final int SHOWING_INVALID_CHARGER = 3;
@@ -707,7 +711,9 @@ public class PowerNotificationWarnings implements PowerUI.WarningsUI {
        });
        WeakReference<View> ref = mBatteryControllerLazy.get().getLastPowerSaverStartView();
        if (ref != null && ref.get() != null && ref.get().isAggregatedVisible()) {
            mDialogLaunchAnimator.showFromView(d, ref.get());
            mDialogLaunchAnimator.showFromView(d, ref.get(),
                    new DialogCuj(InteractionJankMonitor.CUJ_SHADE_DIALOG_OPEN,
                            INTERACTION_JANK_TAG));
        } else {
            d.show();
        }
+12 −1
Original line number Diff line number Diff line
@@ -45,8 +45,10 @@ import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.android.internal.config.sysui.SystemUiDeviceConfigFlags.TASK_MANAGER_ENABLED
import com.android.internal.config.sysui.SystemUiDeviceConfigFlags.TASK_MANAGER_SHOW_FOOTER_DOT
import com.android.internal.jank.InteractionJankMonitor
import com.android.systemui.Dumpable
import com.android.systemui.R
import com.android.systemui.animation.DialogCuj
import com.android.systemui.animation.DialogLaunchAnimator
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.dagger.SysUISingleton
@@ -81,6 +83,7 @@ class FgsManagerController @Inject constructor(
) : IForegroundServiceObserver.Stub(), Dumpable {

    companion object {
        private const val INTERACTION_JANK_TAG = "active_background_apps"
        private val LOG_TAG = FgsManagerController::class.java.simpleName
        private const val DEFAULT_TASK_MANAGER_ENABLED = true
        private const val DEFAULT_TASK_MANAGER_SHOW_FOOTER_DOT = false
@@ -311,7 +314,15 @@ class FgsManagerController @Inject constructor(

                mainExecutor.execute {
                    viewLaunchedFrom
                        ?.let { dialogLaunchAnimator.showFromView(dialog, it) } ?: dialog.show()
                        ?.let {
                            dialogLaunchAnimator.showFromView(
                                dialog, it,
                                cuj = DialogCuj(
                                    InteractionJankMonitor.CUJ_SHADE_DIALOG_OPEN,
                                    INTERACTION_JANK_TAG
                                )
                            )
                        } ?: dialog.show()
                }

                backgroundExecutor.execute {
+6 −1
Original line number Diff line number Diff line
@@ -80,9 +80,11 @@ import android.widget.TextView;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;

import com.android.internal.jank.InteractionJankMonitor;
import com.android.internal.util.FrameworkStatsLog;
import com.android.systemui.FontSizeUtils;
import com.android.systemui.R;
import com.android.systemui.animation.DialogCuj;
import com.android.systemui.animation.DialogLaunchAnimator;
import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.dagger.qualifiers.Background;
@@ -108,6 +110,8 @@ class QSSecurityFooter extends ViewController<View>
    protected static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
    private static final boolean DEBUG_FORCE_VISIBLE = false;

    private static final String INTERACTION_JANK_TAG = "managed_device_info";

    private final TextView mFooterText;
    private final ImageView mPrimaryFooterIcon;
    private Context mContext;
@@ -557,7 +561,8 @@ class QSSecurityFooter extends ViewController<View>

                mDialog.setView(view);
                if (mView.isAggregatedVisible()) {
                    mDialogLaunchAnimator.showFromView(mDialog, mView);
                    mDialogLaunchAnimator.showFromView(mDialog, mView, new DialogCuj(
                            InteractionJankMonitor.CUJ_SHADE_DIALOG_OPEN, INTERACTION_JANK_TAG));
                } else {
                    mDialog.show();
                }
Loading