fix(#253): remove excessive top padding from screens (#341)

The Achievement, Kanban, and Channels screens were applying double
padding at the top because `HermesScaffold` already handles the container
padding internally. This change removes the redundant `paddingValues`
from the inner UI components on these screens.

Closes #253
This commit is contained in:
M57 authored and GitHub committed 2026-06-23 12:45:44 +03:00
1 parent 2c52263772
commit 558a66a1de
3 files changed
+9 -15

No files matched your search

@@ -65,17 +65,16 @@ fun AchievementsScreen(
onOpenDrawer = onOpenDrawer, onOpenDrawer = onOpenDrawer,
isRefreshing = state.isLoading, isRefreshing = state.isLoading,
onRefresh = { viewModel.loadAchievements() }, onRefresh = { viewModel.loadAchievements() },
) { paddingValues -> ) {
when { when {
state.isLoading && state.achievements.isEmpty() -> { state.isLoading && state.achievements.isEmpty() -> {
LoadingState(modifier = Modifier.padding(paddingValues)) LoadingState()
} }
state.errorMessage != null && state.achievements.isEmpty() -> { state.errorMessage != null && state.achievements.isEmpty() -> {
ErrorState( ErrorState(
message = state.errorMessage ?: "", message = state.errorMessage ?: "",
onRetry = { viewModel.loadAchievements() }, onRetry = { viewModel.loadAchievements() },
modifier = Modifier.padding(paddingValues),
) )
} }
@@ -84,13 +83,12 @@ fun AchievementsScreen(
title = stringResource(R.string.achievements_empty_title), title = stringResource(R.string.achievements_empty_title),
subtitle = stringResource(R.string.achievements_empty_desc), subtitle = stringResource(R.string.achievements_empty_desc),
icon = Icons.Filled.Refresh, icon = Icons.Filled.Refresh,
modifier = Modifier.padding(paddingValues),
) )
} }
else -> { else -> {
LazyColumn( LazyColumn(
modifier = Modifier.fillMaxSize().padding(paddingValues), modifier = Modifier.fillMaxSize(),
contentPadding = PaddingValues(16.dp), contentPadding = PaddingValues(16.dp),
verticalArrangement = Arrangement.spacedBy(12.dp), verticalArrangement = Arrangement.spacedBy(12.dp),
) { ) {
@@ -69,17 +69,16 @@ fun ChannelsScreen(
onOpenDrawer = onOpenDrawer, onOpenDrawer = onOpenDrawer,
isRefreshing = state.isLoading, isRefreshing = state.isLoading,
onRefresh = { viewModel.loadPlatforms() }, onRefresh = { viewModel.loadPlatforms() },
) { paddingValues -> ) {
when { when {
state.isLoading && state.platforms.isEmpty() -> { state.isLoading && state.platforms.isEmpty() -> {
LoadingState(modifier = Modifier.padding(paddingValues)) LoadingState()
} }
state.errorMessage != null -> { state.errorMessage != null -> {
ErrorState( ErrorState(
message = state.errorMessage ?: "", message = state.errorMessage ?: "",
onRetry = { viewModel.loadPlatforms() }, onRetry = { viewModel.loadPlatforms() },
modifier = Modifier.padding(paddingValues),
) )
} }
@@ -87,13 +86,12 @@ fun ChannelsScreen(
EmptyState( EmptyState(
title = stringResource(R.string.channels_empty_title), title = stringResource(R.string.channels_empty_title),
subtitle = stringResource(R.string.channels_empty_desc), subtitle = stringResource(R.string.channels_empty_desc),
modifier = Modifier.padding(paddingValues),
) )
} }
else -> { else -> {
LazyColumn( LazyColumn(
modifier = Modifier.fillMaxSize().padding(paddingValues), modifier = Modifier.fillMaxSize(),
contentPadding = listContentPadding, contentPadding = listContentPadding,
verticalArrangement = listItemSpacing, verticalArrangement = listItemSpacing,
) { ) {
@@ -85,17 +85,16 @@ fun KanbanScreen(
onOpenDrawer = onOpenDrawer, onOpenDrawer = onOpenDrawer,
isRefreshing = state.isLoading, isRefreshing = state.isLoading,
onRefresh = { viewModel.loadBoards() }, onRefresh = { viewModel.loadBoards() },
) { paddingValues -> ) {
when { when {
state.isLoading && state.boards.isEmpty() -> { state.isLoading && state.boards.isEmpty() -> {
LoadingState(modifier = Modifier.padding(paddingValues)) LoadingState()
} }
state.errorMessage != null -> { state.errorMessage != null -> {
ErrorState( ErrorState(
message = state.errorMessage ?: "", message = state.errorMessage ?: "",
onRetry = { viewModel.loadBoards() }, onRetry = { viewModel.loadBoards() },
modifier = Modifier.padding(paddingValues),
) )
} }
@@ -107,11 +106,10 @@ fun KanbanScreen(
Text( Text(
text = state.errorMessage ?: "", text = state.errorMessage ?: "",
color = MaterialTheme.colorScheme.error, color = MaterialTheme.colorScheme.error,
modifier = Modifier.padding(paddingValues),
) )
} else { } else {
Column( Column(
modifier = Modifier.fillMaxSize().padding(paddingValues), modifier = Modifier.fillMaxSize(),
) { ) {
SearchBar( SearchBar(
query = query, query = query,