Loading packages/SystemUI/compose/features/src/com/android/systemui/communal/ui/compose/section/CommunalPopupSection.kt +22 −2 Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ import androidx.compose.animation.core.tween import androidx.compose.animation.fadeIn import androidx.compose.animation.fadeOut import androidx.compose.foundation.background import androidx.compose.foundation.focusable import androidx.compose.foundation.interaction.MutableInteractionSource import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer Loading @@ -39,11 +41,16 @@ import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.focus.FocusRequester import androidx.compose.ui.focus.focusRequester import androidx.compose.ui.graphics.TransformOrigin import androidx.compose.ui.graphics.graphicsLayer import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.IntOffset import androidx.compose.ui.unit.dp Loading @@ -54,6 +61,7 @@ import com.android.systemui.communal.ui.viewmodel.CommunalViewModel import com.android.systemui.communal.ui.viewmodel.PopupType import com.android.systemui.res.R import javax.inject.Inject import kotlinx.coroutines.delay class CommunalPopupSection @Inject Loading Loading @@ -91,6 +99,17 @@ constructor( onClick: () -> Unit, onDismissRequest: () -> Unit, ) { val interactionSource = remember { MutableInteractionSource() } val focusRequester = remember { FocusRequester() } val context = LocalContext.current LaunchedEffect(Unit) { // Adding a delay to ensure the animation completes before requesting focus delay(250) focusRequester.requestFocus() } Popup( alignment = Alignment.TopCenter, offset = IntOffset(0, 40), Loading @@ -100,6 +119,8 @@ constructor( Button( modifier = Modifier.height(56.dp) .focusRequester(focusRequester) .focusable(interactionSource = interactionSource) .graphicsLayer { transformOrigin = TransformOrigin(0f, 0f) } .animateEnterExit( enter = Loading Loading @@ -142,8 +163,7 @@ constructor( ) { Icon( imageVector = Icons.Outlined.Widgets, contentDescription = stringResource(R.string.button_to_configure_widgets_text), contentDescription = null, tint = colors.onSecondary, modifier = Modifier.size(20.dp) ) Loading Loading
packages/SystemUI/compose/features/src/com/android/systemui/communal/ui/compose/section/CommunalPopupSection.kt +22 −2 Original line number Diff line number Diff line Loading @@ -23,6 +23,8 @@ import androidx.compose.animation.core.tween import androidx.compose.animation.fadeIn import androidx.compose.animation.fadeOut import androidx.compose.foundation.background import androidx.compose.foundation.focusable import androidx.compose.foundation.interaction.MutableInteractionSource import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer Loading @@ -39,11 +41,16 @@ import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.focus.FocusRequester import androidx.compose.ui.focus.focusRequester import androidx.compose.ui.graphics.TransformOrigin import androidx.compose.ui.graphics.graphicsLayer import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.IntOffset import androidx.compose.ui.unit.dp Loading @@ -54,6 +61,7 @@ import com.android.systemui.communal.ui.viewmodel.CommunalViewModel import com.android.systemui.communal.ui.viewmodel.PopupType import com.android.systemui.res.R import javax.inject.Inject import kotlinx.coroutines.delay class CommunalPopupSection @Inject Loading Loading @@ -91,6 +99,17 @@ constructor( onClick: () -> Unit, onDismissRequest: () -> Unit, ) { val interactionSource = remember { MutableInteractionSource() } val focusRequester = remember { FocusRequester() } val context = LocalContext.current LaunchedEffect(Unit) { // Adding a delay to ensure the animation completes before requesting focus delay(250) focusRequester.requestFocus() } Popup( alignment = Alignment.TopCenter, offset = IntOffset(0, 40), Loading @@ -100,6 +119,8 @@ constructor( Button( modifier = Modifier.height(56.dp) .focusRequester(focusRequester) .focusable(interactionSource = interactionSource) .graphicsLayer { transformOrigin = TransformOrigin(0f, 0f) } .animateEnterExit( enter = Loading Loading @@ -142,8 +163,7 @@ constructor( ) { Icon( imageVector = Icons.Outlined.Widgets, contentDescription = stringResource(R.string.button_to_configure_widgets_text), contentDescription = null, tint = colors.onSecondary, modifier = Modifier.size(20.dp) ) Loading