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

Commit 3e0b6d9a authored by Jiaming Cheng's avatar Jiaming Cheng Committed by Android (Google) Code Review
Browse files

Merge "[Dual Shade] Show qs panel when adjust brightness for desktop." into main

parents 07a1a036 676e3f97
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -39,6 +39,7 @@ import androidx.compose.material3.IconButtonDefaults
import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
import androidx.compose.runtime.ReadOnlyComposable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.Alignment
@@ -49,6 +50,7 @@ import androidx.compose.ui.geometry.Size
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.graphicsLayer
import androidx.compose.ui.platform.LocalDensity
import androidx.compose.ui.platform.LocalResources
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
@@ -132,9 +134,12 @@ constructor(
            rememberViewModel("QuickSettingsShadeOverlayContent", key = coroutineScope) {
                contentViewModelFactory.create(coroutineScope)
            }
        val useBrightnessMirrorInOverlay = useBrightnessMirrorInOverlay()
        val quickSettingsContainerViewModel =
            rememberViewModel("QuickSettingsShadeOverlayContainer") {
                quickSettingsContainerViewModelFactory.create(supportsBrightnessMirroring = true)
                quickSettingsContainerViewModelFactory.create(
                    supportsBrightnessMirroring = useBrightnessMirrorInOverlay
                )
            }
        val hunPlaceholderViewModel =
            rememberViewModel("QuickSettingsShadeOverlayPlaceholder") {
@@ -201,6 +206,14 @@ private sealed interface ShadeBodyState {
    data object Default : ShadeBodyState
}

@Composable
@ReadOnlyComposable
private fun useBrightnessMirrorInOverlay(): Boolean {
    // The `config_useBrightnessMirrorInOverlay` config is true by default. If false, the Quick
    // Settings shade overlay will remain visible during brightness adjustments.
    return LocalResources.current.getBoolean(R.bool.config_useBrightnessMirrorInOverlay)
}

@Composable
private fun ContentScope.QuickSettingsContainer(
    contentViewModel: QuickSettingsShadeOverlayContentViewModel,
+11 −0
Original line number Diff line number Diff line
@@ -1178,6 +1178,17 @@
    <!-- Indicates post recording flow to use flat bottom bar to save vertical space -->
    <bool name="screen_record_post_recording_flat_bottom_bar">false</bool>

    <!--
    Whether to enable use brightness mirror in the QuickSettings shade overlay.

    By default, when a user interacts with the brightness slider, the rest of the
    Quick Settings shade overlay fades out to reduce distraction.
    -If true (default), the Quick Settings shade overlay will fade out when the brightness slider
     is used.
    -If false, the Quick Settings shade overlay will remain visible during brightness adjustments.
    -->
    <bool name="config_useBrightnessMirrorInOverlay">true</bool>

    <!-- List of allowed tiles for headless system user's quick settings.

         Some example values are 'alarm', 'internet', 'bt' (bluetooth),