update error content

This commit is contained in:
2026-08-19 19:37:13 +03:00
parent 1d609f88d2
commit a14a659876
11 changed files with 71 additions and 50 deletions
@@ -3,7 +3,6 @@ package ru.shadowsparky.vbox.shared.presentation.list
import androiddev.apps.vbox.client.shared.generated.resources.Res
import androiddev.apps.vbox.client.shared.generated.resources.not_found
import androiddev.apps.vbox.client.shared.generated.resources.recommendations
import androiddev.apps.vbox.client.shared.generated.resources.retry
import androidx.compose.animation.AnimatedContent
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
@@ -102,8 +101,7 @@ fun VideoScreenContent(
if (error != null) {
ErrorContent(
error,
modifier = Modifier.fillMaxSize(),
buttonText = stringResource(Res.string.retry)
modifier = Modifier.fillMaxSize()
) { onRefresh() }
} else if (items != null) {
AnimatedContent(
@@ -8,7 +8,6 @@ import androiddev.apps.vbox.client.shared.generated.resources.details_serial
import androiddev.apps.vbox.client.shared.generated.resources.more
import androiddev.apps.vbox.client.shared.generated.resources.offline_remove
import androiddev.apps.vbox.client.shared.generated.resources.offline_save
import androiddev.apps.vbox.client.shared.generated.resources.retry
import androiddev.apps.vbox.client.shared.generated.resources.share
import androiddev.apps.vbox.client.shared.generated.resources.star
import androiddev.apps.vbox.client.shared.generated.resources.star_unchecked
@@ -98,8 +97,7 @@ fun OverviewScreen(component: OverviewComponent) {
errorState != null -> ErrorContent(
errorState!!,
modifier = Modifier.fillMaxSize(),
buttonText = stringResource(Res.string.retry)
modifier = Modifier.fillMaxSize()
) { component.loadDetailsIfNeeded() }
details != null -> DetailsInfo(
@@ -7,7 +7,6 @@ import androiddev.apps.vbox.client.shared.generated.resources.episodes_overview
import androiddev.apps.vbox.client.shared.generated.resources.eye
import androiddev.apps.vbox.client.shared.generated.resources.folder_check
import androiddev.apps.vbox.client.shared.generated.resources.pending
import androiddev.apps.vbox.client.shared.generated.resources.retry
import androiddev.apps.vbox.client.shared.generated.resources.save_as
import androiddev.apps.vbox.client.shared.generated.resources.select_all
import androidx.compose.foundation.ExperimentalFoundationApi
@@ -174,8 +173,7 @@ fun EpisodesOverviewList(
if (errorCode != null) {
ErrorContent(
errorCode,
modifier = Modifier.fillMaxSize(),
buttonText = stringResource(Res.string.retry)
modifier = Modifier.fillMaxSize()
) { loadLinks() }
} else if (episodes != null) {
val lazyListState = rememberLazyListState()
@@ -1,7 +1,6 @@
package ru.shadowsparky.vbox.shared.presentation.overview.season
import androiddev.apps.vbox.client.shared.generated.resources.Res
import androiddev.apps.vbox.client.shared.generated.resources.retry
import androiddev.apps.vbox.client.shared.generated.resources.seasons_overview
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.PaddingValues
@@ -38,8 +37,7 @@ fun SeasonOverviewScreen(component: SeasonOverviewComponent) {
if (err.value != null) {
ErrorContent(
err.value!!,
modifier = Modifier.fillMaxSize(),
buttonText = stringResource(Res.string.retry)
modifier = Modifier.fillMaxSize()
) { component.load() }
} else if (seasons.value != null) {
SeasonsInfo(
@@ -2,13 +2,13 @@ package ru.shadowsparky.vbox.shared.presentation.player
import androiddev.apps.vbox.client.shared.generated.resources.Res
import androiddev.apps.vbox.client.shared.generated.resources.next_episode
import androiddev.apps.vbox.client.shared.generated.resources.retry
import androiddev.apps.vbox.client.shared.generated.resources.start_from
import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.fadeIn
import androidx.compose.animation.fadeOut
import androidx.compose.animation.slideInHorizontally
import androidx.compose.animation.slideOutHorizontally
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
@@ -24,6 +24,7 @@ import androidx.compose.runtime.getValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.alpha
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.unit.dp
import org.jetbrains.compose.resources.stringResource
@@ -49,14 +50,13 @@ fun PlayerScreen(component: PlayerComponent) {
is PlayerEvent.Error -> {
ErrorContent(
state.message,
modifier = Modifier.fillMaxSize().padding(it),
buttonText = stringResource(Res.string.retry),
modifier = Modifier.fillMaxSize().padding(it)
) { component.load() }
}
is PlayerEvent.Ended -> component.requestNextEpisode()
is PlayerEvent.Playing -> {
Box(modifier = Modifier.fillMaxSize()) {
Box(modifier = Modifier.fillMaxSize().background(Color.Black)) {
VideoPlayer(
component.playerController,
Modifier.fillMaxSize(),
@@ -282,15 +282,15 @@ fun AppBarWithSearch(
navigationIcon = {},
inputField = {
Surface(
modifier = Modifier
.fillMaxWidth()
.clickable(enabled = !isDefault) { onEdit() },
modifier = Modifier.fillMaxWidth(),
shape = RoundedCornerShape(12.dp),
color = Color.Transparent
) {
Row(modifier = Modifier, verticalAlignment = Alignment.CenterVertically) {
BackButton { onBack() }
Text(text = title, maxLines = 1)
Box(modifier = Modifier.weight(1f).clickable(enabled = !isDefault) { onEdit() }) {
Text(text = title, maxLines = 1)
}
}
}
}