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

Commit 7167f566 authored by Ahmed Mehfooz's avatar Ahmed Mehfooz
Browse files

[SB][ComposeIcons] Set tint in CompositionLocalProvider

Allows all child composables to automatically get the
tint color.

Bug: 436803036
Test: manual
Flag: com.android.systemui.status_bar_system_status_icons_in_compose
Change-Id: I3d77f31c6506a6ddba7cd03fd638b9e94b36fbe6
parent 16c68f2d
Loading
Loading
Loading
Loading
+23 −22
Original line number Diff line number Diff line
@@ -20,7 +20,9 @@ import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.material3.LocalContentColor
import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.runtime.getValue
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
@@ -49,6 +51,7 @@ fun SystemStatusIcons(
    val viewModel =
        rememberViewModel(traceName = "SystemStatusIcons") { viewModelFactory.create(context) }

    CompositionLocalProvider(LocalContentColor provides tint) {
        Row(
            verticalAlignment = Alignment.CenterVertically,
            horizontalArrangement = Arrangement.spacedBy(6.dp),
@@ -61,12 +64,9 @@ fun SystemStatusIcons(
                    when (iconViewModel) {
                        is SystemStatusIconViewModel.Default ->
                            iconViewModel.icon?.let {
                            Icon(
                                icon = it,
                                modifier = Modifier.size(20.dp).padding(1.dp),
                                tint = tint,
                            )
                                Icon(icon = it, modifier = Modifier.size(20.dp).padding(1.dp))
                            }

                        is SystemStatusIconViewModel.MobileIcons -> {
                            MobileIcons(
                                iconViewModel.mobileIconsViewModel,
@@ -77,3 +77,4 @@ fun SystemStatusIcons(
                }
        }
    }
}