Ensure EmptyScreen is scrollable

Also fix padding for loading/empty states in BrowseSourceScreen
This commit is contained in:
arkon 2023-03-29 22:53:58 -04:00
parent 6f1099b710
commit 1dd62af188
2 changed files with 10 additions and 2 deletions

View file

@ -78,6 +78,7 @@ fun BrowseSourceContent(
if (mangaList.itemCount <= 0 && errorState != null && errorState is LoadState.Error) {
EmptyScreen(
modifier = Modifier.padding(contentPadding),
message = getErrorMessage(errorState),
actions = if (source is LocalSource) {
listOf(
@ -112,7 +113,9 @@ fun BrowseSourceContent(
}
if (mangaList.itemCount == 0 && mangaList.loadState.refresh is LoadState.Loading) {
LoadingScreen()
LoadingScreen(
modifier = Modifier.padding(contentPadding),
)
return
}

View file

@ -9,6 +9,8 @@ import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.paddingFromBaseline
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
@ -54,6 +56,7 @@ fun EmptyScreen(
Column(
modifier = modifier
.fillMaxSize()
.verticalScroll(rememberScrollState())
.padding(horizontal = 24.dp),
horizontalAlignment = Alignment.CenterHorizontally,
verticalArrangement = Arrangement.Center,
@ -66,7 +69,9 @@ fun EmptyScreen(
Text(
text = message,
modifier = Modifier.paddingFromBaseline(top = 24.dp).secondaryItemAlpha(),
modifier = Modifier
.paddingFromBaseline(top = 24.dp)
.secondaryItemAlpha(),
style = MaterialTheme.typography.bodyMedium,
textAlign = TextAlign.Center,
)