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

Commit 4c38f88e authored by Chris Göllner's avatar Chris Göllner
Browse files

Improve toString readability in StatusBarModePerDisplayRepository

This will help to better read bug reports.

Bug: 325143113
Test: Dumpsys
Flag: NONE
Change-Id: I581759978a0f498a3bcfde797fcccf5150f3826a
parent cb9fa698
Loading
Loading
Loading
Loading
+41 −4
Original line number Diff line number Diff line
@@ -17,6 +17,8 @@
package com.android.systemui.statusbar.data.repository

import android.graphics.Rect
import android.view.InsetsFlags
import android.view.ViewDebug
import android.view.WindowInsets
import android.view.WindowInsetsController
import android.view.WindowInsetsController.APPEARANCE_LOW_PROFILE_BARS
@@ -305,8 +307,8 @@ constructor(
        letterboxDetails.isNotEmpty()

    override fun dump(pw: PrintWriter, args: Array<out String>) {
        pw.println("originalStatusBarAttributes: ${_originalStatusBarAttributes.value}")
        pw.println("modifiedStatusBarAttributes: ${modifiedStatusBarAttributes.value}")
        pw.println("${_originalStatusBarAttributes.value}")
        pw.println("${modifiedStatusBarAttributes.value}")
        pw.println("statusBarMode: ${statusBarMode.value}")
    }

@@ -320,7 +322,20 @@ constructor(
        val navbarColorManagedByIme: Boolean,
        @WindowInsets.Type.InsetsType val requestedVisibleTypes: Int,
        val letterboxDetails: List<LetterboxDetails>,
    ) {
        override fun toString(): String {
            return """
                StatusBarAttributes(
                    appearance=${appearance.toAppearanceString()},
                    appearanceRegions=$appearanceRegions,
                    navbarColorManagedByIme=$navbarColorManagedByIme,
                    requestedVisibleTypes=${requestedVisibleTypes.toWindowInsetsString()},
                    letterboxDetails=$letterboxDetails
                    )
                    """
                .trimIndent()
        }
    }

    /**
     * Internal class keeping track of how [StatusBarAttributes] were transformed into new
@@ -331,7 +346,29 @@ constructor(
        val appearanceRegions: List<AppearanceRegion>,
        val navbarColorManagedByIme: Boolean,
        val statusBarBounds: BoundsPair,
    ) {
        override fun toString(): String {
            return """
                ModifiedStatusBarAttributes(
                    appearance=${appearance.toAppearanceString()},
                    appearanceRegions=$appearanceRegions,
                    navbarColorManagedByIme=$navbarColorManagedByIme,
                    statusBarBounds=$statusBarBounds
                    )
                    """
                .trimIndent()
        }
    }
}

private fun @receiver:WindowInsets.Type.InsetsType Int.toWindowInsetsString() =
    "[${WindowInsets.Type.toString(this).replace(" ", ", ")}]"

private fun @receiver:Appearance Int.toAppearanceString() =
    if (this == 0) {
        "NONE"
    } else {
        ViewDebug.flagsToString(InsetsFlags::class.java, "appearance", this)
    }

@AssistedFactory