From 8c5f0a143f64d7e648db27e3a201be47c1923c1a Mon Sep 17 00:00:00 2001 From: infi Date: Sat, 7 Mar 2026 23:58:23 +0100 Subject: [PATCH] feat: move pinned messages button to menu --- .../chat/views/channel/ChannelScreen.kt | 12 ---------- .../chat/stoat/sheets/ChannelInfoSheet.kt | 24 ++++++++++++++++++- 2 files changed, 23 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/chat/stoat/screens/chat/views/channel/ChannelScreen.kt b/app/src/main/java/chat/stoat/screens/chat/views/channel/ChannelScreen.kt index b2c9975a..a92e896d 100644 --- a/app/src/main/java/chat/stoat/screens/chat/views/channel/ChannelScreen.kt +++ b/app/src/main/java/chat/stoat/screens/chat/views/channel/ChannelScreen.kt @@ -639,18 +639,6 @@ fun ChannelScreen( ) } } - }, - actions = { - IconButton(onClick = { - scope.launch { - ActionChannel.send(Action.TopNavigate("channel/$channelId/pins")) - } - }) { - Icon( - painter = painterResource(R.drawable.ic_pinboard_24dp), - contentDescription = stringResource(id = R.string.pinned_messages_view) - ) - } } ) } diff --git a/app/src/main/java/chat/stoat/sheets/ChannelInfoSheet.kt b/app/src/main/java/chat/stoat/sheets/ChannelInfoSheet.kt index 01c6b4d7..74743ecd 100644 --- a/app/src/main/java/chat/stoat/sheets/ChannelInfoSheet.kt +++ b/app/src/main/java/chat/stoat/sheets/ChannelInfoSheet.kt @@ -31,11 +31,11 @@ import chat.stoat.api.internals.ChannelUtils import chat.stoat.api.internals.PermissionBit import chat.stoat.api.internals.Roles import chat.stoat.api.internals.has -import chat.stoat.core.model.schemas.ChannelType import chat.stoat.callbacks.Action import chat.stoat.callbacks.ActionChannel import chat.stoat.composables.generic.SheetButton import chat.stoat.composables.screens.chat.ChannelSheetHeader +import chat.stoat.core.model.schemas.ChannelType import chat.stoat.internals.extensions.rememberChannelPermissions import chat.stoat.screens.chat.dialogs.InviteDialog import kotlinx.coroutines.delay @@ -199,6 +199,28 @@ fun ChannelInfoSheet(channelId: String, onHideSheet: suspend () -> Unit) { onClick = {} ) + SheetButton( + headlineContent = { + Text( + text = stringResource(id = R.string.pinned_messages_view), + ) + }, + leadingContent = { + Icon( + painter = painterResource(R.drawable.ic_pinboard_24dp), + contentDescription = null + ) + }, + onClick = { + scope.launch { + onHideSheet() + } + scope.launch { + ActionChannel.send(Action.TopNavigate("channel/${channel.id}/pins")) + } + } + ) + if ( (permissions has PermissionBit.ManageChannel || permissions has PermissionBit.ManageRole) && (channel.channelType != ChannelType.SavedMessages && channel.channelType != ChannelType.DirectMessage)