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

Commit 97a92f23 authored by Caitlin Shkuratov's avatar Caitlin Shkuratov Committed by Automerger Merge Worker
Browse files

Merge "[Chipbar] Enable chipbar to handle chipbars with different priorities."...

Merge "[Chipbar] Enable chipbar to handle chipbars with different priorities." into tm-qpr-dev am: 1970e1b9 am: 7bdb93e6

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



Change-Id: Ic88436749a0fb5663124171de0c8ec1c282d8770
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 95c7f332 7bdb93e6
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -30,9 +30,11 @@ import com.android.systemui.media.nearby.NearbyMediaDevicesManager;
import com.android.systemui.media.taptotransfer.MediaTttCommandLineHelper;
import com.android.systemui.media.taptotransfer.MediaTttFlags;
import com.android.systemui.media.taptotransfer.common.MediaTttLogger;
import com.android.systemui.media.taptotransfer.receiver.ChipReceiverInfo;
import com.android.systemui.media.taptotransfer.receiver.MediaTttReceiverLogger;
import com.android.systemui.media.taptotransfer.sender.MediaTttSenderLogger;
import com.android.systemui.plugins.log.LogBuffer;
import com.android.systemui.temporarydisplay.chipbar.ChipbarInfo;

import java.util.Optional;

@@ -95,19 +97,19 @@ public interface MediaModule {
    @Provides
    @SysUISingleton
    @MediaTttSenderLogger
    static MediaTttLogger providesMediaTttSenderLogger(
    static MediaTttLogger<ChipbarInfo> providesMediaTttSenderLogger(
            @MediaTttSenderLogBuffer LogBuffer buffer
    ) {
        return new MediaTttLogger("Sender", buffer);
        return new MediaTttLogger<>("Sender", buffer);
    }

    @Provides
    @SysUISingleton
    @MediaTttReceiverLogger
    static MediaTttLogger providesMediaTttReceiverLogger(
    static MediaTttLogger<ChipReceiverInfo> providesMediaTttReceiverLogger(
            @MediaTttReceiverLogBuffer LogBuffer buffer
    ) {
        return new MediaTttLogger("Receiver", buffer);
        return new MediaTttLogger<>("Receiver", buffer);
    }

    /** */
+6 −2
Original line number Diff line number Diff line
@@ -18,17 +18,21 @@ package com.android.systemui.media.taptotransfer.common

import com.android.systemui.plugins.log.LogBuffer
import com.android.systemui.plugins.log.LogLevel
import com.android.systemui.temporarydisplay.TemporaryViewInfo
import com.android.systemui.temporarydisplay.TemporaryViewLogger

/**
 * A logger for media tap-to-transfer events.
 *
 * @param deviceTypeTag the type of device triggering the logs -- "Sender" or "Receiver".
 *
 * TODO(b/245610654): We should de-couple the sender and receiver loggers, since they're vastly
 * different experiences.
 */
class MediaTttLogger(
class MediaTttLogger<T : TemporaryViewInfo>(
    deviceTypeTag: String,
    buffer: LogBuffer
) : TemporaryViewLogger(buffer, BASE_TAG + deviceTypeTag) {
) : TemporaryViewLogger<T>(buffer, BASE_TAG + deviceTypeTag) {
    /** Logs a change in the chip state for the given [mediaRouteId]. */
    fun logStateChange(stateName: String, mediaRouteId: String, packageName: String?) {
        buffer.log(
+2 −1
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import com.android.systemui.R
import com.android.systemui.common.shared.model.ContentDescription
import com.android.systemui.common.shared.model.Icon
import com.android.systemui.common.shared.model.TintedIcon
import com.android.systemui.temporarydisplay.TemporaryViewInfo

/** Utility methods for media tap-to-transfer. */
class MediaTttUtils {
@@ -47,7 +48,7 @@ class MediaTttUtils {
        fun getIconInfoFromPackageName(
            context: Context,
            appPackageName: String?,
            logger: MediaTttLogger
            logger: MediaTttLogger<out TemporaryViewInfo>
        ): IconInfo {
            if (appPackageName != null) {
                val packageManager = context.packageManager
+7 −2
Original line number Diff line number Diff line
@@ -45,8 +45,10 @@ import com.android.systemui.statusbar.CommandQueue
import com.android.systemui.statusbar.policy.ConfigurationController
import com.android.systemui.temporarydisplay.TemporaryViewDisplayController
import com.android.systemui.temporarydisplay.TemporaryViewInfo
import com.android.systemui.temporarydisplay.ViewPriority
import com.android.systemui.util.animation.AnimationUtil.Companion.frames
import com.android.systemui.util.concurrency.DelayableExecutor
import com.android.systemui.util.time.SystemClock
import com.android.systemui.util.view.ViewUtil
import com.android.systemui.util.wakelock.WakeLock
import javax.inject.Inject
@@ -62,7 +64,7 @@ import javax.inject.Inject
open class MediaTttChipControllerReceiver @Inject constructor(
        private val commandQueue: CommandQueue,
        context: Context,
        @MediaTttReceiverLogger logger: MediaTttLogger,
        @MediaTttReceiverLogger logger: MediaTttLogger<ChipReceiverInfo>,
        windowManager: WindowManager,
        mainExecutor: DelayableExecutor,
        accessibilityManager: AccessibilityManager,
@@ -73,7 +75,8 @@ open class MediaTttChipControllerReceiver @Inject constructor(
        private val uiEventLogger: MediaTttReceiverUiEventLogger,
        private val viewUtil: ViewUtil,
        wakeLockBuilder: WakeLock.Builder,
) : TemporaryViewDisplayController<ChipReceiverInfo, MediaTttLogger>(
        systemClock: SystemClock,
) : TemporaryViewDisplayController<ChipReceiverInfo, MediaTttLogger<ChipReceiverInfo>>(
        context,
        logger,
        windowManager,
@@ -83,6 +86,7 @@ open class MediaTttChipControllerReceiver @Inject constructor(
        powerManager,
        R.layout.media_ttt_chip_receiver,
        wakeLockBuilder,
        systemClock,
) {
    @SuppressLint("WrongConstant") // We're allowed to use LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS
    override val windowLayoutParams = commonWindowLayoutParams.apply {
@@ -290,4 +294,5 @@ data class ChipReceiverInfo(
    override val windowTitle: String = MediaTttUtils.WINDOW_TITLE_RECEIVER,
    override val wakeReason: String = MediaTttUtils.WAKE_REASON_RECEIVER,
    override val id: String,
    override val priority: ViewPriority = ViewPriority.NORMAL,
) : TemporaryViewInfo()
+4 −2
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ import com.android.systemui.media.taptotransfer.MediaTttFlags
import com.android.systemui.media.taptotransfer.common.MediaTttLogger
import com.android.systemui.media.taptotransfer.common.MediaTttUtils
import com.android.systemui.statusbar.CommandQueue
import com.android.systemui.temporarydisplay.ViewPriority
import com.android.systemui.temporarydisplay.chipbar.ChipbarCoordinator
import com.android.systemui.temporarydisplay.chipbar.ChipbarEndItem
import com.android.systemui.temporarydisplay.chipbar.ChipbarInfo
@@ -46,7 +47,7 @@ constructor(
    private val chipbarCoordinator: ChipbarCoordinator,
    private val commandQueue: CommandQueue,
    private val context: Context,
    @MediaTttSenderLogger private val logger: MediaTttLogger,
    @MediaTttSenderLogger private val logger: MediaTttLogger<ChipbarInfo>,
    private val mediaTttFlags: MediaTttFlags,
    private val uiEventLogger: MediaTttSenderUiEventLogger,
) : CoreStartable {
@@ -146,7 +147,7 @@ constructor(
        routeInfo: MediaRoute2Info,
        undoCallback: IUndoMediaTransferCallback?,
        context: Context,
        logger: MediaTttLogger,
        logger: MediaTttLogger<ChipbarInfo>,
    ): ChipbarInfo {
        val packageName = routeInfo.clientPackageName
        val otherDeviceName = routeInfo.name.toString()
@@ -180,6 +181,7 @@ constructor(
            wakeReason = MediaTttUtils.WAKE_REASON_SENDER,
            timeoutMs = chipStateSender.timeout,
            id = routeInfo.id,
            priority = ViewPriority.NORMAL,
        )
    }

Loading