chore: upgrade to MD3 (#562)

This commit is contained in:
Diego Beraldin 2024-03-01 22:10:44 +01:00 committed by GitHub
parent bfd2668041
commit c561739a1d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
35 changed files with 227 additions and 216 deletions

View File

@ -1,8 +1,10 @@
package com.github.diegoberaldin.raccoonforlemmy.core.commonui.lemmyui
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ChevronRight
import androidx.compose.material3.Icon
@ -11,14 +13,17 @@ import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.text.AnnotatedString
import androidx.compose.ui.text.style.TextOverflow
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.theme.IconSize
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.theme.Spacing
import com.github.diegoberaldin.raccoonforlemmy.core.utils.compose.onClick
import com.github.diegoberaldin.raccoonforlemmy.core.utils.compose.rememberCallback
@Composable
fun SettingsRow(
icon: ImageVector? = null,
title: String,
value: String = "",
disclosureIndicator: Boolean = false,
@ -27,6 +32,7 @@ fun SettingsRow(
subtitle: String? = null,
onTap: (() -> Unit)? = null,
) {
val fullColor = MaterialTheme.colorScheme.onBackground
Row(
modifier = modifier
.padding(vertical = Spacing.s, horizontal = Spacing.m)
@ -36,20 +42,29 @@ fun SettingsRow(
},
),
verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.spacedBy(Spacing.s),
) {
if (icon != null) {
Icon(
modifier = Modifier.size(IconSize.m),
imageVector = icon,
contentDescription = null,
tint = fullColor,
)
}
Column(
modifier = Modifier.weight(1f)
) {
Text(
text = title,
style = MaterialTheme.typography.bodyMedium,
color = MaterialTheme.colorScheme.onBackground,
color = fullColor,
)
if (subtitle != null) {
Text(
text = subtitle,
style = MaterialTheme.typography.labelMedium,
color = MaterialTheme.colorScheme.onBackground,
color = fullColor,
)
}
}
@ -58,7 +73,7 @@ fun SettingsRow(
modifier = Modifier.padding(start = Spacing.xs),
text = annotatedValue,
style = MaterialTheme.typography.bodyMedium,
color = MaterialTheme.colorScheme.onBackground,
color = fullColor,
maxLines = 1,
overflow = TextOverflow.Ellipsis,
)
@ -67,7 +82,7 @@ fun SettingsRow(
modifier = Modifier.padding(start = Spacing.xs),
text = value,
style = MaterialTheme.typography.bodyMedium,
color = MaterialTheme.colorScheme.onBackground,
color = fullColor,
maxLines = 1,
overflow = TextOverflow.Ellipsis,
)
@ -75,7 +90,7 @@ fun SettingsRow(
if (disclosureIndicator) {
Icon(
imageVector = Icons.Default.ChevronRight,
tint = MaterialTheme.colorScheme.onBackground,
tint = fullColor,
contentDescription = null,
)
}

View File

@ -14,9 +14,9 @@ import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.Cake
import androidx.compose.material.icons.filled.Padding
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
@ -156,7 +156,7 @@ fun UserHeader(
}
Icon(
modifier = Modifier.size(iconSize),
imageVector = Icons.Filled.Reply,
imageVector = Icons.AutoMirrored.Filled.Reply,
contentDescription = null
)
Text(

View File

@ -13,7 +13,7 @@ import androidx.compose.foundation.layout.windowInsetsPadding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.ChevronRight
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
@ -196,7 +196,7 @@ internal class SortBottomSheetTop(
navigator.pop()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
tint = MaterialTheme.colorScheme.onBackground,
contentDescription = null,
)

View File

@ -1,11 +1,11 @@
package com.github.diegoberaldin.raccoonforlemmy.core.persistence.data
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.ArrowCircleDown
import androidx.compose.material.icons.filled.ArrowCircleUp
import androidx.compose.material.icons.filled.Bookmark
import androidx.compose.material.icons.filled.MarkChatUnread
import androidx.compose.material.icons.filled.Reply
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.vector.ImageVector
import com.github.diegoberaldin.raccoonforlemmy.core.l10n.LocalXmlStrings
@ -93,7 +93,7 @@ fun ActionOnSwipe.toReadableName(): String = when (this) {
fun ActionOnSwipe.toIcon(): ImageVector? = when (this) {
ActionOnSwipe.DownVote -> Icons.Default.ArrowCircleDown
ActionOnSwipe.None -> null
ActionOnSwipe.Reply -> Icons.Filled.Reply
ActionOnSwipe.Reply -> Icons.AutoMirrored.Filled.Reply
ActionOnSwipe.Save -> Icons.Default.Bookmark
ActionOnSwipe.ToggleRead -> Icons.Default.MarkChatUnread
ActionOnSwipe.UpVote -> Icons.Default.ArrowCircleUp

View File

@ -20,18 +20,18 @@ import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.ArrowCircleDown
import androidx.compose.material.icons.filled.ArrowCircleUp
import androidx.compose.material.icons.filled.Bookmark
import androidx.compose.material.icons.filled.Clear
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material.icons.filled.Search
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -318,7 +318,7 @@ class ExploreScreen : Screen {
postLayout = uiState.postLayout,
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -385,7 +385,7 @@ class ExploreScreen : Screen {
ActionOnSwipe.Reply -> SwipeAction(
swipeContent = {
Icon(
imageVector = Icons.Filled.Reply,
imageVector = Icons.AutoMirrored.Filled.Reply,
contentDescription = null,
tint = Color.White,
)
@ -520,7 +520,7 @@ class ExploreScreen : Screen {
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -572,7 +572,7 @@ class ExploreScreen : Screen {
ActionOnSwipe.Reply -> SwipeAction(
swipeContent = {
Icon(
imageVector = Icons.Filled.Reply,
imageVector = Icons.AutoMirrored.Filled.Reply,
contentDescription = null,
tint = Color.White,
)
@ -707,7 +707,7 @@ class ExploreScreen : Screen {
)
},
)
Divider(
HorizontalDivider(
modifier = Modifier.padding(vertical = Spacing.xxxs),
thickness = 0.25.dp
)

View File

@ -10,7 +10,7 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -87,7 +87,7 @@ class AdvancedSettingsScreen : Screen {
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -11,7 +11,7 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -113,7 +113,7 @@ class SettingsColorAndFontScreen : Screen {
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -18,8 +18,8 @@ import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.AccountCircle
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.filled.Dashboard
import androidx.compose.material.icons.filled.Notifications
import androidx.compose.material.icons.filled.Sync
@ -137,7 +137,7 @@ class AccountSettingsScreen : Screen {
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -20,7 +20,7 @@ import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.Send
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.ExperimentalMaterial3Api
@ -155,7 +155,7 @@ class InboxChatScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -9,7 +9,6 @@ import androidx.compose.foundation.background
import androidx.compose.foundation.gestures.animateScrollBy
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
@ -24,7 +23,8 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.ArrowCircleDown
import androidx.compose.material.icons.filled.ArrowCircleUp
import androidx.compose.material.icons.filled.Bookmark
@ -32,7 +32,6 @@ import androidx.compose.material.icons.filled.ClearAll
import androidx.compose.material.icons.filled.Create
import androidx.compose.material.icons.filled.ExpandLess
import androidx.compose.material.icons.filled.MoreVert
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material.icons.filled.Sync
import androidx.compose.material.icons.filled.SyncDisabled
import androidx.compose.material.icons.outlined.AddCircleOutline
@ -43,8 +42,8 @@ import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.Button
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -442,7 +441,7 @@ class CommunityDetailScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)
@ -545,16 +544,14 @@ class CommunityDetailScreen(
userScrollEnabled = !uiState.zombieModeActive,
) {
item {
Column {
CommunityHeader(
community = uiState.community,
autoLoadImages = uiState.autoLoadImages,
onOpenImage = rememberCallbackArgs { url ->
navigationCoordinator.pushScreen(ZoomableImageScreen(url))
},
)
Spacer(modifier = Modifier.height(Spacing.xs))
}
CommunityHeader(
modifier = Modifier.padding(bottom = Spacing.xs),
community = uiState.community,
autoLoadImages = uiState.autoLoadImages,
onOpenImage = rememberCallbackArgs { url ->
navigationCoordinator.pushScreen(ZoomableImageScreen(url))
},
)
}
if (uiState.posts.isEmpty() && uiState.loading) {
items(5) {
@ -562,7 +559,7 @@ class CommunityDetailScreen(
postLayout = uiState.postLayout,
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -617,7 +614,7 @@ class CommunityDetailScreen(
ActionOnSwipe.Reply -> SwipeAction(
swipeContent = {
Icon(
imageVector = Icons.Filled.Reply,
imageVector = Icons.AutoMirrored.Filled.Reply,
contentDescription = null,
tint = Color.White,
)
@ -934,7 +931,7 @@ class CommunityDetailScreen(
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}

View File

@ -12,6 +12,7 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.LazyRow
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.AlternateEmail
import androidx.compose.material.icons.filled.Cake
import androidx.compose.material.icons.filled.CalendarViewDay
@ -19,7 +20,6 @@ import androidx.compose.material.icons.filled.CalendarViewMonth
import androidx.compose.material.icons.filled.CalendarViewWeek
import androidx.compose.material.icons.filled.Group
import androidx.compose.material.icons.filled.Padding
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
@ -132,7 +132,7 @@ class CommunityInfoScreen(
)
DetailInfoItem(
modifier = Modifier.fillMaxWidth(),
icon = Icons.Filled.Reply,
icon = Icons.AutoMirrored.Filled.Reply,
title = LocalXmlStrings.current.communityInfoComments,
value = uiState.community.comments.getPrettyNumber(
thousandLabel = LocalXmlStrings.current.profileThousandShort,

View File

@ -10,7 +10,7 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.Preview
import androidx.compose.material.icons.filled.Style
import androidx.compose.material.icons.filled.TextFormat
@ -85,7 +85,7 @@ class ConfigureContentViewScreen : Screen {
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -4,7 +4,7 @@ import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.Divider
import androidx.compose.material3.HorizontalDivider
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
@ -41,7 +41,7 @@ internal fun ContentPreview(
)
if (postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -52,7 +52,7 @@ internal fun ContentPreview(
preferNicknames = preferNicknames,
showScores = showScores,
)
Divider(
HorizontalDivider(
modifier = Modifier.padding(vertical = Spacing.xxxs),
thickness = 0.25.dp
)

View File

@ -14,7 +14,7 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.itemsIndexed
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.Dashboard
import androidx.compose.material.icons.filled.KeyboardArrowLeft
import androidx.compose.material.icons.filled.KeyboardArrowRight
@ -90,7 +90,7 @@ class ConfigureSwipeActionsScreen : Screen {
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -14,11 +14,11 @@ import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Send
import androidx.compose.material.icons.filled.Close
import androidx.compose.material.icons.filled.Save
import androidx.compose.material.icons.filled.Send
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.IconButton
import androidx.compose.material3.MaterialTheme
@ -207,7 +207,7 @@ class CreateCommentScreen(
IconButton(
content = {
Icon(
imageVector = Icons.Filled.Send,
imageVector = Icons.AutoMirrored.Filled.Send,
contentDescription = null,
)
},
@ -367,7 +367,7 @@ class CreateCommentScreen(
rawContent = originalComment
},
)
Divider()
HorizontalDivider()
} else if (originalPost != null) {
PostCard(
modifier = referenceModifier,

View File

@ -15,13 +15,13 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
@ -92,7 +92,7 @@ class DraftsScreen : Screen {
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)
@ -155,7 +155,7 @@ class DraftsScreen : Screen {
items(5) {
DraftCardPlaceHolder(uiState.postLayout)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -208,7 +208,7 @@ class DraftsScreen : Screen {
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -218,7 +218,7 @@ class DraftsScreen : Screen {
items(5) {
DraftCardPlaceHolder(uiState.postLayout)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -273,7 +273,7 @@ class DraftsScreen : Screen {
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}

View File

@ -10,9 +10,9 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.MoreHoriz
import androidx.compose.material.icons.filled.Padding
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material.icons.filled.Schedule
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
@ -92,7 +92,7 @@ fun DraftCard(
horizontalArrangement = Arrangement.spacedBy(Spacing.xs),
) {
val imageVector = when (draft.type) {
DraftType.Comment -> Icons.Filled.Reply
DraftType.Comment -> Icons.AutoMirrored.Filled.Reply
DraftType.Post -> Icons.Default.Padding
}
Icon(

View File

@ -18,7 +18,7 @@ import androidx.compose.material.icons.filled.Search
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.Divider
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.ModalDrawerSheet
@ -116,7 +116,7 @@ object ModalDrawerContent : Tab {
},
)
Divider(
HorizontalDivider(
modifier = Modifier
.padding(
top = Spacing.s,

View File

@ -16,7 +16,7 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
@ -105,7 +105,7 @@ class InstanceInfoScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -12,7 +12,7 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.ExperimentalMaterial3Api
@ -87,7 +87,7 @@ class ManageBanScreen : Screen {
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -17,8 +17,8 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.AddCircle
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.filled.ExpandLess
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
@ -100,7 +100,7 @@ class ManageSubscriptionsScreen : Screen {
navigatorCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -20,8 +20,7 @@ import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
@ -67,7 +66,7 @@ class InboxMentionsScreen : Tab {
return TabOptions(1u, "")
}
@OptIn(ExperimentalMaterialApi::class, ExperimentalMaterial3Api::class)
@OptIn(ExperimentalMaterialApi::class)
@Composable
override fun Content() {
val model = getScreenModel<InboxMentionsMviModel>()
@ -124,7 +123,7 @@ class InboxMentionsScreen : Tab {
postLayout = uiState.postLayout,
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -281,7 +280,7 @@ class InboxMentionsScreen : Tab {
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}

View File

@ -12,13 +12,13 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.Divider
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
@ -110,7 +110,7 @@ class ModlogScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)
@ -156,7 +156,7 @@ class ModlogScreen(
items(5) {
ModlogItemPlaceholder(uiState.postLayout)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}

View File

@ -20,20 +20,20 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.ArrowCircleDown
import androidx.compose.material.icons.filled.ArrowCircleUp
import androidx.compose.material.icons.filled.Bookmark
import androidx.compose.material.icons.filled.ClearAll
import androidx.compose.material.icons.filled.ExpandLess
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.Button
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -161,7 +161,7 @@ class MultiCommunityScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)
@ -268,7 +268,7 @@ class MultiCommunityScreen(
postLayout = uiState.postLayout,
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -324,7 +324,7 @@ class MultiCommunityScreen(
ActionOnSwipe.Reply -> SwipeAction(
swipeContent = {
Icon(
imageVector = Icons.Filled.Reply,
imageVector = Icons.AutoMirrored.Filled.Reply,
contentDescription = null,
tint = Color.White,
)
@ -508,7 +508,7 @@ class MultiCommunityScreen(
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}

View File

@ -20,7 +20,7 @@ import androidx.compose.foundation.shape.CircleShape
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.CheckCircle
import androidx.compose.material.icons.filled.Clear
import androidx.compose.material.icons.filled.Search
@ -107,7 +107,7 @@ class MultiCommunityEditorScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -20,7 +20,7 @@ import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.Button
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
@ -125,40 +125,40 @@ object ProfileLoggedScreen : Tab {
state = lazyListState,
) {
item {
Column(
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.spacedBy(Spacing.xs),
) {
UserHeader(
user = user,
autoLoadImages = uiState.autoLoadImages,
onOpenImage = rememberCallbackArgs { url ->
navigationCoordinator.pushScreen(ZoomableImageScreen(url))
},
)
SectionSelector(
titles = listOf(
LocalXmlStrings.current.profileSectionPosts,
LocalXmlStrings.current.profileSectionComments,
),
currentSection = when (uiState.section) {
ProfileLoggedSection.Comments -> 1
else -> 0
},
onSectionSelected = rememberCallbackArgs(model) { idx ->
val section = when (idx) {
1 -> ProfileLoggedSection.Comments
else -> ProfileLoggedSection.Posts
}
model.reduce(
ProfileLoggedMviModel.Intent.ChangeSection(
section
)
UserHeader(
user = user,
autoLoadImages = uiState.autoLoadImages,
onOpenImage = rememberCallbackArgs { url ->
navigationCoordinator.pushScreen(ZoomableImageScreen(url))
},
)
}
item {
HorizontalDivider()
}
item {
SectionSelector(
modifier = Modifier.padding(bottom = Spacing.xs),
titles = listOf(
LocalXmlStrings.current.profileSectionPosts,
LocalXmlStrings.current.profileSectionComments,
),
currentSection = when (uiState.section) {
ProfileLoggedSection.Comments -> 1
else -> 0
},
onSectionSelected = rememberCallbackArgs(model) { idx ->
val section = when (idx) {
1 -> ProfileLoggedSection.Comments
else -> ProfileLoggedSection.Posts
}
model.reduce(
ProfileLoggedMviModel.Intent.ChangeSection(
section
)
},
)
Spacer(modifier = Modifier.height(Spacing.xs))
}
)
},
)
}
if (uiState.section == ProfileLoggedSection.Posts) {
if (uiState.posts.isEmpty() && uiState.loading && !uiState.initial) {
@ -167,7 +167,7 @@ object ProfileLoggedScreen : Tab {
postLayout = uiState.postLayout,
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -295,7 +295,7 @@ object ProfileLoggedScreen : Tab {
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -317,7 +317,7 @@ object ProfileLoggedScreen : Tab {
if (uiState.comments.isEmpty() && uiState.loading && uiState.initial) {
items(5) {
CommentCardPlaceholder(hideAuthor = true)
Divider(
HorizontalDivider(
modifier = Modifier.padding(vertical = Spacing.xxxs),
thickness = 0.25.dp
)
@ -411,7 +411,7 @@ object ProfileLoggedScreen : Tab {
else -> Unit
}
})
Divider(
HorizontalDivider(
modifier = Modifier.padding(vertical = Spacing.xxxs),
thickness = 0.25.dp
)

View File

@ -28,19 +28,19 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.ArrowCircleDown
import androidx.compose.material.icons.filled.ArrowCircleUp
import androidx.compose.material.icons.filled.Bookmark
import androidx.compose.material.icons.filled.ExpandLess
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.Button
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -236,7 +236,7 @@ class PostDetailScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)
@ -269,7 +269,7 @@ class PostDetailScreen(
)
if (uiState.isLogged && !isOnOtherInstance) {
this += FloatingActionButtonMenuItem(
icon = Icons.Filled.Reply,
icon = Icons.AutoMirrored.Filled.Reply,
text = LocalXmlStrings.current.actionReply,
onSelected = rememberCallback {
detailOpener.openReply(
@ -513,7 +513,7 @@ class PostDetailScreen(
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -568,7 +568,7 @@ class PostDetailScreen(
if (uiState.comments.isEmpty() && uiState.loading && uiState.initial) {
items(5) {
CommentCardPlaceholder()
Divider(
HorizontalDivider(
modifier = Modifier.padding(vertical = Spacing.xxxs),
thickness = 0.25.dp
)
@ -631,7 +631,7 @@ class PostDetailScreen(
ActionOnSwipe.Reply -> SwipeAction(
swipeContent = {
Icon(
imageVector = Icons.Filled.Reply,
imageVector = Icons.AutoMirrored.Filled.Reply,
contentDescription = null,
tint = Color.White,
)
@ -1108,7 +1108,7 @@ class PostDetailScreen(
}
}
Divider(
HorizontalDivider(
modifier = Modifier.padding(vertical = Spacing.xxxs),
thickness = 0.25.dp
)

View File

@ -21,12 +21,12 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.ArrowCircleDown
import androidx.compose.material.icons.filled.ArrowCircleUp
import androidx.compose.material.icons.filled.Bookmark
import androidx.compose.material.icons.filled.ClearAll
import androidx.compose.material.icons.filled.ExpandLess
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material.icons.filled.Sync
import androidx.compose.material.icons.filled.SyncDisabled
import androidx.compose.material.pullrefresh.PullRefreshIndicator
@ -34,8 +34,8 @@ import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.Button
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -315,7 +315,7 @@ class PostListScreen : Screen {
postLayout = uiState.postLayout,
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -371,7 +371,7 @@ class PostListScreen : Screen {
ActionOnSwipe.Reply -> SwipeAction(
swipeContent = {
Icon(
imageVector = Icons.Filled.Reply,
imageVector = Icons.AutoMirrored.Filled.Reply,
contentDescription = null,
tint = Color.White,
)
@ -619,7 +619,7 @@ class PostListScreen : Screen {
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}

View File

@ -20,8 +20,8 @@ import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
@ -123,7 +123,7 @@ class InboxRepliesScreen : Tab {
postLayout = uiState.postLayout,
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -274,7 +274,7 @@ class InboxRepliesScreen : Tab {
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}

View File

@ -15,15 +15,15 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.Report
import androidx.compose.material.icons.filled.ReportOff
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -127,7 +127,7 @@ class ReportListScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)
@ -206,7 +206,7 @@ class ReportListScreen(
items(5) {
ReportCardPlaceHolder(uiState.postLayout)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -304,7 +304,7 @@ class ReportListScreen(
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -314,7 +314,7 @@ class ReportListScreen(
items(5) {
ReportCardPlaceHolder(uiState.postLayout)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -410,7 +410,7 @@ class ReportListScreen(
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}

View File

@ -17,14 +17,14 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.ExpandLess
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
@ -131,7 +131,7 @@ class SavedItemsScreen : Screen {
navigatorCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)
@ -321,7 +321,7 @@ class SavedItemsScreen : Screen {
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -415,7 +415,7 @@ class SavedItemsScreen : Screen {
}
},
)
Divider(
HorizontalDivider(
modifier = Modifier.padding(vertical = Spacing.xxxs),
thickness = 0.25.dp
)

View File

@ -7,7 +7,6 @@ import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
@ -21,21 +20,21 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.Chat
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.ArrowCircleDown
import androidx.compose.material.icons.filled.ArrowCircleUp
import androidx.compose.material.icons.filled.Bookmark
import androidx.compose.material.icons.filled.Chat
import androidx.compose.material.icons.filled.ExpandLess
import androidx.compose.material.icons.filled.MoreVert
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material.pullrefresh.PullRefreshIndicator
import androidx.compose.material.pullrefresh.pullRefresh
import androidx.compose.material.pullrefresh.rememberPullRefreshState
import androidx.compose.material3.Button
import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.Divider
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -316,8 +315,11 @@ class UserDetailScreen(
)
)
} else {
val screen = ShareBottomSheet(urls = urls)
navigationCoordinator.showBottomSheet(screen)
val screen =
ShareBottomSheet(urls = urls)
navigationCoordinator.showBottomSheet(
screen
)
}
}
@ -339,7 +341,7 @@ class UserDetailScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)
@ -372,7 +374,7 @@ class UserDetailScreen(
)
if (uiState.isLogged && !isOnOtherInstance) {
this += FloatingActionButtonMenuItem(
icon = Icons.Filled.Chat,
icon = Icons.AutoMirrored.Filled.Chat,
text = LocalXmlStrings.current.actionChat,
onSelected = rememberCallback {
val screen = InboxChatScreen(otherUserId = userId)
@ -417,44 +419,42 @@ class UserDetailScreen(
state = lazyListState,
) {
item {
Column(
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.spacedBy(Spacing.xs),
) {
UserHeader(
user = uiState.user,
autoLoadImages = uiState.autoLoadImages,
onOpenImage = rememberCallbackArgs { url ->
navigationCoordinator.pushScreen(
ZoomableImageScreen(
url
)
UserHeader(
user = uiState.user,
autoLoadImages = uiState.autoLoadImages,
onOpenImage = rememberCallbackArgs { url ->
navigationCoordinator.pushScreen(
ZoomableImageScreen(
url
)
},
)
SectionSelector(
titles = listOf(
LocalXmlStrings.current.profileSectionPosts,
LocalXmlStrings.current.profileSectionComments,
),
currentSection = when (uiState.section) {
UserDetailSection.Comments -> 1
else -> 0
},
onSectionSelected = rememberCallbackArgs { idx ->
val section = when (idx) {
1 -> UserDetailSection.Comments
else -> UserDetailSection.Posts
}
model.reduce(
UserDetailMviModel.Intent.ChangeSection(
section
)
)
},
)
}
item {
SectionSelector(
modifier = Modifier.padding(bottom = Spacing.xs),
titles = listOf(
LocalXmlStrings.current.profileSectionPosts,
LocalXmlStrings.current.profileSectionComments,
),
currentSection = when (uiState.section) {
UserDetailSection.Comments -> 1
else -> 0
},
onSectionSelected = rememberCallbackArgs { idx ->
val section = when (idx) {
1 -> UserDetailSection.Comments
else -> UserDetailSection.Posts
}
model.reduce(
UserDetailMviModel.Intent.ChangeSection(
section
)
},
)
Spacer(modifier = Modifier.height(Spacing.xs))
}
)
},
)
Spacer(modifier = Modifier.height(Spacing.xs))
}
if (uiState.section == UserDetailSection.Posts) {
if (uiState.posts.isEmpty() && uiState.loading && uiState.initial) {
@ -463,7 +463,7 @@ class UserDetailScreen(
postLayout = uiState.postLayout,
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -518,7 +518,7 @@ class UserDetailScreen(
ActionOnSwipe.Reply -> SwipeAction(
swipeContent = {
Icon(
imageVector = Icons.Filled.Reply,
imageVector = Icons.AutoMirrored.Filled.Reply,
contentDescription = null,
tint = Color.White,
)
@ -734,7 +734,7 @@ class UserDetailScreen(
},
)
if (uiState.postLayout != PostLayout.Card) {
Divider(modifier = Modifier.padding(vertical = Spacing.s))
HorizontalDivider(modifier = Modifier.padding(vertical = Spacing.s))
} else {
Spacer(modifier = Modifier.height(Spacing.s))
}
@ -756,7 +756,7 @@ class UserDetailScreen(
if (uiState.comments.isEmpty() && uiState.loading && uiState.initial) {
items(5) {
CommentCardPlaceholder()
Divider(
HorizontalDivider(
modifier = Modifier.padding(vertical = Spacing.xxxs),
thickness = 0.25.dp
)
@ -811,7 +811,7 @@ class UserDetailScreen(
ActionOnSwipe.Reply -> SwipeAction(
swipeContent = {
Icon(
imageVector = Icons.Filled.Reply,
imageVector = Icons.AutoMirrored.Filled.Reply,
contentDescription = null,
tint = Color.White,
)
@ -990,7 +990,7 @@ class UserDetailScreen(
}
},
)
Divider(
HorizontalDivider(
modifier = Modifier.padding(vertical = Spacing.xxxs),
thickness = 0.25.dp
)

View File

@ -13,9 +13,9 @@ import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.LazyRow
import androidx.compose.foundation.text.selection.SelectionContainer
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.filled.Reply
import androidx.compose.material.icons.filled.Cake
import androidx.compose.material.icons.filled.Padding
import androidx.compose.material.icons.filled.Reply
import androidx.compose.material.icons.filled.Shield
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
@ -126,7 +126,7 @@ class UserInfoScreen(
)
DetailInfoItem(
modifier = Modifier.fillMaxWidth(),
icon = Icons.Filled.Reply,
icon = Icons.AutoMirrored.Filled.Reply,
title = LocalXmlStrings.current.communityInfoComments,
value = score.commentScore.getPrettyNumber(
thousandLabel = LocalXmlStrings.current.profileThousandShort,

View File

@ -5,7 +5,7 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.Share
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon
@ -66,7 +66,7 @@ class WebViewScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
colorFilter = ColorFilter.tint(MaterialTheme.colorScheme.onBackground),
)

View File

@ -7,7 +7,7 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.width
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ArrowBack
import androidx.compose.material.icons.automirrored.filled.ArrowBack
import androidx.compose.material.icons.filled.Download
import androidx.compose.material.icons.filled.Share
import androidx.compose.material3.ExperimentalMaterial3Api
@ -86,7 +86,7 @@ class ZoomableImageScreen(
navigationCoordinator.popScreen()
},
),
imageVector = Icons.Filled.ArrowBack,
imageVector = Icons.AutoMirrored.Filled.ArrowBack,
contentDescription = null,
tint = MaterialTheme.colorScheme.onBackground,
)