File tree Expand file tree Collapse file tree
stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -40,6 +40,8 @@ import androidx.compose.ui.Alignment
4040import androidx.compose.ui.Modifier
4141import androidx.compose.ui.res.painterResource
4242import androidx.compose.ui.res.stringResource
43+ import androidx.compose.ui.semantics.paneTitle
44+ import androidx.compose.ui.semantics.semantics
4345import androidx.compose.ui.text.style.TextAlign
4446import androidx.compose.ui.text.style.TextOverflow
4547import androidx.compose.ui.tooling.preview.Preview
@@ -101,11 +103,13 @@ internal fun AddMembersScreen(
101103 onDismiss : () -> Unit ,
102104 onConfirm : () -> Unit ,
103105) {
106+ val paneTitleText = stringResource(id = R .string.stream_compose_add_members_title)
104107 Column (
105108 modifier = Modifier
106109 .fillMaxSize()
107110 .background(ChatTheme .colors.backgroundCoreApp)
108- .systemBarsPadding(),
111+ .systemBarsPadding()
112+ .semantics { paneTitle = paneTitleText },
109113 ) {
110114 AddMembersHeader (
111115 hasSelection = state.selectedUserIds.isNotEmpty(),
Original file line number Diff line number Diff line change @@ -42,6 +42,8 @@ import androidx.compose.ui.Alignment
4242import androidx.compose.ui.Modifier
4343import androidx.compose.ui.platform.LocalContext
4444import androidx.compose.ui.res.stringResource
45+ import androidx.compose.ui.semantics.paneTitle
46+ import androidx.compose.ui.semantics.semantics
4547import androidx.compose.ui.text.style.TextOverflow
4648import androidx.compose.ui.tooling.preview.Preview
4749import androidx.lifecycle.compose.collectAsStateWithLifecycle
@@ -113,8 +115,9 @@ private fun DirectChannelInfoScaffold(
113115 onViewAction : (action: ChannelInfoViewAction ) -> Unit = {},
114116) {
115117 val listState = rememberLazyListState()
118+ val paneTitleText = stringResource(id = UiCommonR .string.stream_ui_channel_info_contact_title)
116119 Scaffold (
117- modifier = modifier,
120+ modifier = modifier.semantics { paneTitle = paneTitleText } ,
118121 topBar = {
119122 ChatTheme .componentFactory.DirectChannelInfoTopBar (
120123 params = DirectChannelInfoTopBarParams (
Original file line number Diff line number Diff line change @@ -54,6 +54,8 @@ import androidx.compose.ui.platform.LocalContext
5454import androidx.compose.ui.platform.LocalInspectionMode
5555import androidx.compose.ui.res.painterResource
5656import androidx.compose.ui.res.stringResource
57+ import androidx.compose.ui.semantics.paneTitle
58+ import androidx.compose.ui.semantics.semantics
5759import androidx.compose.ui.text.TextRange
5860import androidx.compose.ui.text.input.TextFieldValue
5961import androidx.compose.ui.text.style.TextOverflow
@@ -206,7 +208,9 @@ private fun GroupChannelEditContent(
206208 onSaveActionClick : () -> Unit = {},
207209 onUploadPictureClick : () -> Unit = {},
208210) {
211+ val paneTitleText = stringResource(id = UiCommonR .string.stream_ui_channel_info_edit_title)
209212 Scaffold (
213+ modifier = Modifier .semantics { paneTitle = paneTitleText },
210214 topBar = {
211215 GroupChannelEditTopBar (
212216 isBusy = isBusy,
Original file line number Diff line number Diff line change @@ -50,6 +50,8 @@ import androidx.compose.ui.Modifier
5050import androidx.compose.ui.platform.LocalContext
5151import androidx.compose.ui.res.pluralStringResource
5252import androidx.compose.ui.res.stringResource
53+ import androidx.compose.ui.semantics.paneTitle
54+ import androidx.compose.ui.semantics.semantics
5355import androidx.compose.ui.text.style.TextOverflow
5456import androidx.compose.ui.tooling.preview.Preview
5557import androidx.lifecycle.compose.collectAsStateWithLifecycle
@@ -174,8 +176,9 @@ private fun GroupChannelInfoScaffold(
174176 onViewAction : (action: ChannelInfoViewAction ) -> Unit = {},
175177) {
176178 val listState = rememberLazyListState()
179+ val paneTitleText = stringResource(id = UiCommonR .string.stream_ui_channel_info_group_title)
177180 Scaffold (
178- modifier = modifier,
181+ modifier = modifier.semantics { paneTitle = paneTitleText } ,
179182 topBar = {
180183 ChatTheme .componentFactory.GroupChannelInfoTopBar (
181184 params = GroupChannelInfoTopBarParams (
Original file line number Diff line number Diff line change @@ -41,6 +41,8 @@ import androidx.compose.runtime.setValue
4141import androidx.compose.ui.Alignment
4242import androidx.compose.ui.Modifier
4343import androidx.compose.ui.platform.testTag
44+ import androidx.compose.ui.semantics.paneTitle
45+ import androidx.compose.ui.semantics.semantics
4446import androidx.compose.ui.unit.dp
4547import androidx.lifecycle.viewmodel.compose.viewModel
4648import io.getstream.chat.android.compose.state.channels.list.SearchQuery
@@ -123,7 +125,9 @@ public fun ChannelsScreen(
123125 .testTag(" Stream_ChannelsScreen" ),
124126 ) {
125127 Scaffold (
126- modifier = Modifier .fillMaxSize(),
128+ modifier = Modifier
129+ .fillMaxSize()
130+ .semantics { paneTitle = title },
127131 topBar = {
128132 if (isShowingHeader) {
129133 ChatTheme .componentFactory.ChannelListHeader (
Original file line number Diff line number Diff line change @@ -44,6 +44,8 @@ import androidx.compose.runtime.setValue
4444import androidx.compose.ui.Modifier
4545import androidx.compose.ui.layout.onSizeChanged
4646import androidx.compose.ui.platform.LocalContext
47+ import androidx.compose.ui.semantics.paneTitle
48+ import androidx.compose.ui.semantics.semantics
4749import androidx.compose.ui.unit.IntOffset
4850import androidx.compose.ui.unit.IntSize
4951import androidx.lifecycle.viewmodel.compose.viewModel
@@ -179,10 +181,12 @@ public fun ChatsScreen(
179181 onDispose { navigator.popUpTo(ThreePaneRole .List ) }
180182 }
181183
182- val listPane = remember(listContentMode) {
184+ val listPane = remember(listContentMode, title ) {
183185 movableContentOf { modifier: Modifier ->
184186 Scaffold (
185- modifier = modifier.safeDrawingPadding(),
187+ modifier = modifier
188+ .safeDrawingPadding()
189+ .semantics { paneTitle = title },
186190 containerColor = ChatTheme .colors.backgroundCoreApp,
187191 topBar = { listTopBarContent() },
188192 bottomBar = { listBottomBarContent() },
Original file line number Diff line number Diff line change @@ -23,6 +23,8 @@ import androidx.compose.runtime.collectAsState
2323import androidx.compose.runtime.getValue
2424import androidx.compose.ui.Modifier
2525import androidx.compose.ui.res.stringResource
26+ import androidx.compose.ui.semantics.paneTitle
27+ import androidx.compose.ui.semantics.semantics
2628import androidx.lifecycle.viewmodel.compose.viewModel
2729import io.getstream.chat.android.client.api.models.QueryThreadsRequest
2830import io.getstream.chat.android.compose.R
@@ -54,7 +56,7 @@ public fun ThreadsScreen(
5456 val user by listViewModel.user.collectAsState()
5557 val connectionState by listViewModel.connectionState.collectAsState()
5658
57- Column (modifier = Modifier .fillMaxSize()) {
59+ Column (modifier = Modifier .fillMaxSize().semantics { paneTitle = title } ) {
5860 ChatTheme .componentFactory.ThreadListHeader (
5961 params = ThreadListHeaderParams (
6062 title = title,
You can’t perform that action at this time.
0 commit comments