hide blur in ui module scope

This commit is contained in:
2026-08-08 22:03:49 +03:00
parent 3962ec29da
commit c5a4963eeb
13 changed files with 70 additions and 68 deletions
@@ -51,8 +51,6 @@ import androidx.compose.ui.unit.dp
import com.seiko.imageloader.rememberImagePainter
import org.jetbrains.compose.resources.StringResource
import org.jetbrains.compose.resources.stringResource
import ru.shadowsparky.ui.LocalBlurState
import ru.shadowsparky.ui.applyBlurSource
import ru.shadowsparky.ui.components.ErrorContent
import ru.shadowsparky.ui.components.LazyVerticalGrid
import ru.shadowsparky.ui.components.Loading
@@ -139,13 +137,12 @@ private fun VideosInfo(
onClick: (item: VideoItem) -> Unit
) {
val requester = remember { FocusRequester() }
val blur = LocalBlurState.current
val gridState = rememberLazyGridState()
Box(modifier = Modifier.fillMaxSize()) {
if (items.isNotEmpty()) {
LazyVerticalGrid(
columns = GridCells.Adaptive(minSize = 130.dp),
modifier = Modifier.fillMaxSize().applyBlurSource(blur),
modifier = Modifier.fillMaxSize(),
contentPadding = paddingValues,
verticalArrangement = Arrangement.spacedBy(4.dp),
horizontalArrangement = Arrangement.spacedBy(4.dp),
@@ -68,8 +68,6 @@ import com.seiko.imageloader.rememberImagePainter
import org.jetbrains.compose.resources.painterResource
import org.jetbrains.compose.resources.stringResource
import ru.shadowsparky.domain.Clip
import ru.shadowsparky.ui.LocalBlurState
import ru.shadowsparky.ui.applyBlurSource
import ru.shadowsparky.ui.components.BackButton
import ru.shadowsparky.ui.components.ErrorContent
import ru.shadowsparky.ui.components.LazyColumn
@@ -244,13 +242,9 @@ fun DetailsInfo(
onWatchClicked: () -> Unit
) {
val requester = remember { FocusRequester() }
val blur = LocalBlurState.current
val showDetails = rememberSaveable { mutableStateOf(false) }
LazyColumn(
modifier = Modifier.applyBlurSource(blur),
contentPadding = paddingValues
) {
LazyColumn(contentPadding = paddingValues) {
item { Poster(details.poster) }
item { OverviewDescription(details, showDetails) }
item {
@@ -44,8 +44,6 @@ import androidx.compose.ui.unit.dp
import org.jetbrains.compose.resources.painterResource
import org.jetbrains.compose.resources.stringResource
import ru.shadowsparky.domain.Clip
import ru.shadowsparky.ui.LocalBlurState
import ru.shadowsparky.ui.applyBlurSource
import ru.shadowsparky.ui.components.BackButton
import ru.shadowsparky.ui.components.ErrorContent
import ru.shadowsparky.ui.components.ExpressiveLazyColumn
@@ -177,10 +175,9 @@ fun EpisodesOverviewList(
buttonText = stringResource(Res.string.retry)
) { loadLinks() }
} else if (episodes != null) {
val blur = LocalBlurState.current
val requester = remember { FocusRequester() }
ExpressiveLazyColumn(
modifier = Modifier.applyBlurSource(blur).fillMaxSize(),
modifier = Modifier.fillMaxSize(),
contentPadding = contentPadding,
content = {
section {
@@ -20,8 +20,6 @@ import androidx.compose.ui.focus.FocusRequester
import androidx.compose.ui.focus.focusRequester
import androidx.compose.ui.unit.dp
import org.jetbrains.compose.resources.stringResource
import ru.shadowsparky.ui.LocalBlurState
import ru.shadowsparky.ui.applyBlurSource
import ru.shadowsparky.ui.components.BackButton
import ru.shadowsparky.ui.components.ErrorContent
import ru.shadowsparky.ui.components.ExpressiveLazyColumn
@@ -68,10 +66,9 @@ fun SeasonsInfo(
paddingValues: PaddingValues,
onClick: (Long) -> Unit
) {
val blur = LocalBlurState.current
val requester = remember { FocusRequester() }
ExpressiveLazyColumn(
Modifier.applyBlurSource(blur).fillMaxWidth(),
Modifier.fillMaxWidth(),
contentPadding = paddingValues,
content = {
section {
@@ -21,7 +21,6 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.text.KeyboardActions
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material3.AppBarWithSearch
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi
import androidx.compose.material3.Icon
@@ -33,7 +32,6 @@ import androidx.compose.material3.Text
import androidx.compose.material3.TextField
import androidx.compose.material3.TextFieldColors
import androidx.compose.material3.TextFieldDefaults
import androidx.compose.material3.rememberSearchBarState
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.State
@@ -65,11 +63,8 @@ import androidx.compose.ui.unit.dp
import androidx.lifecycle.compose.collectAsStateWithLifecycle
import org.jetbrains.compose.resources.painterResource
import org.jetbrains.compose.resources.stringResource
import ru.shadowsparky.ui.LocalBlurState
import ru.shadowsparky.ui.applyBlurEffect
import ru.shadowsparky.ui.applyBlurSource
import ru.shadowsparky.ui.components.AppBarWithSearch
import ru.shadowsparky.ui.components.ExpressiveLazyColumn
import ru.shadowsparky.ui.theme.ComponentDefaults
import ru.shadowsparky.vbox.shared.presentation.BaseMainScreen
import ru.shadowsparky.vbox.shared.presentation.imePaddingInternal
import ru.shadowsparky.vbox.shared.presentation.nav.Route
@@ -157,10 +152,8 @@ fun OldSearchInfo(
) {
val keyboardController = LocalSoftwareKeyboardController.current
val nestedScrollConnection = remember { HideKeyboardConnection { keyboardController } }
val blur = LocalBlurState.current
ExpressiveLazyColumn(
modifier = Modifier.applyBlurSource(blur)
.nestedScroll(nestedScrollConnection)
modifier = Modifier.nestedScroll(nestedScrollConnection)
.imePaddingInternal(),
contentPadding = contentPaddingValues,
content = {
@@ -224,11 +217,7 @@ fun SearchAppBar(
inputFocusRequester.freeFocus()
}
}
val blur = LocalBlurState.current
AppBarWithSearch(
modifier = Modifier.applyBlurEffect(blur),
state = rememberSearchBarState(),
colors = ComponentDefaults.appBarWithSearchDefaults(),
inputField = {
TextField(
value = textFieldValue,
@@ -287,11 +276,7 @@ fun AppBarWithSearch(
actions: @Composable RowScope.() -> Unit = {},
onBack: (() -> Unit)
) {
val blur = LocalBlurState.current
AppBarWithSearch(
modifier = Modifier.applyBlurEffect(blur),
state = rememberSearchBarState(),
colors = ComponentDefaults.appBarWithSearchDefaults(),
actions = { actions(this) },
navigationIcon = {},
inputField = {
@@ -21,8 +21,6 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.FocusRequester
import androidx.compose.ui.focus.focusRequester
import org.jetbrains.compose.resources.stringResource
import ru.shadowsparky.ui.LocalBlurState
import ru.shadowsparky.ui.applyBlurSource
import ru.shadowsparky.ui.components.ExpressiveLazyColumn
import ru.shadowsparky.ui.components.SwitchPreference
import ru.shadowsparky.ui.components.TextPreference
@@ -33,10 +31,8 @@ fun SettingsContent(comp: SettingsComponent, paddingValues: PaddingValues) {
val servAddr by comp.serverInfo.collectAsState(null)
val tokenInfo by comp.tokenInfo.collectAsState(null)
val externalPlayerState by comp.externalPlayerState.collectAsState(null)
val blur = LocalBlurState.current
val requester = remember { FocusRequester() }
ExpressiveLazyColumn(
modifier = Modifier.applyBlurSource(blur),
contentPadding = paddingValues,
content = {
section {