From db7e69d3a6bd5cfdf389a32bccc550ebb18c610a Mon Sep 17 00:00:00 2001 From: yorickyeng Date: Thu, 29 May 2025 18:29:27 +0300 Subject: [PATCH 1/3] create screen fix --- .../codekotliners/memify/core/theme/Type.kt | 14 -------- .../create/presentation/ui/CreateScreen.kt | 36 +++++++++---------- app/src/main/res/values/strings.xml | 4 +-- 3 files changed, 20 insertions(+), 34 deletions(-) diff --git a/app/src/main/java/com/codekotliners/memify/core/theme/Type.kt b/app/src/main/java/com/codekotliners/memify/core/theme/Type.kt index 69609db9..cabf8a0b 100644 --- a/app/src/main/java/com/codekotliners/memify/core/theme/Type.kt +++ b/app/src/main/java/com/codekotliners/memify/core/theme/Type.kt @@ -7,7 +7,6 @@ import androidx.compose.ui.graphics.Color import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.font.Font import androidx.compose.ui.text.font.FontFamily -import androidx.compose.ui.text.font.FontStyle import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextDecoration import androidx.compose.ui.unit.sp @@ -71,18 +70,5 @@ val Typography.askPassword: TextStyle color = MaterialTheme.colorScheme.onBackground, ) -val Typography.ubuntuText16Sp: TextStyle - @Composable - get() = - TextStyle( - fontFamily = FontFamily(Font(R.font.ubunturegular)), - fontSize = 16.sp, - fontStyle = FontStyle.Normal, - ) -val MaterialIcons = - FontFamily( - Font(R.font.material_icons_regular), - ) - val FontFamilyImpact: FontFamily get() = FontFamily(Font(R.font.impact)) diff --git a/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt b/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt index 77a5a91d..41db5929 100644 --- a/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt +++ b/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt @@ -27,9 +27,9 @@ import androidx.compose.foundation.layout.wrapContentSize import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Add +import androidx.compose.material.icons.filled.Check import androidx.compose.material.icons.filled.KeyboardArrowDown import androidx.compose.material.icons.filled.KeyboardArrowUp -import androidx.compose.material.icons.filled.MoreVert import androidx.compose.material3.BottomSheetScaffold import androidx.compose.material3.BottomSheetScaffoldState import androidx.compose.material3.CenterAlignedTopAppBar @@ -71,9 +71,6 @@ import androidx.compose.ui.graphics.rememberGraphicsLayer import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.stringResource -import androidx.compose.ui.text.font.Font -import androidx.compose.ui.text.font.FontFamily -import androidx.compose.ui.text.font.FontStyle import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp @@ -94,6 +91,7 @@ import com.codekotliners.memify.features.create.presentation.viewmodel.CanvasVie import com.codekotliners.memify.features.templates.presentation.ui.TemplatesFeedScreen import com.codekotliners.memify.features.viewer.presentation.ui.components.ImageViewerTopBar import com.codekotliners.memify.features.viewer.presentation.viewmodel.ImageViewerViewModel +import kotlinx.coroutines.delay import kotlinx.coroutines.launch @OptIn(ExperimentalMaterial3Api::class) @@ -106,7 +104,6 @@ fun CreateScreen( viewModelViewer: ImageViewerViewModel = hiltViewModel(), ) { val isPublishing by viewModelViewer.isPublishing.collectAsState() - val context = LocalContext.current val galleryLauncher = rememberLauncherForActivityResult( @@ -200,14 +197,14 @@ private fun CreateScreenBottomSheet( CreateScreenTopBar( scrollBehavior, onMenuClick = { - if (scale == 1f) { - coroutineScope.launch { - showImageViewer.value = true - val bitmapCompose = graphicsLayer.toImageBitmap() + coroutineScope.launch { + scale = 1f + showImageViewer.value = true + delay(350) + val bitmapCompose = graphicsLayer.toImageBitmap() + if (scale == 1f) { bitmapState.value = bitmapCompose } - } else { - scale = 1f } }, ) @@ -344,15 +341,13 @@ private fun CreateScreenTopBar(scrollBehavior: TopAppBarScrollBehavior, onMenuCl title = { Text( text = stringResource(R.string.editor_screen_title), - fontFamily = FontFamily(Font(R.font.ubunturegular)), - fontStyle = FontStyle.Normal, - textAlign = TextAlign.Center, + style = MaterialTheme.typography.titleLarge, ) }, actions = { IconButton(onClick = onMenuClick) { Icon( - imageVector = Icons.Filled.MoreVert, + imageVector = Icons.Filled.Check, contentDescription = "Меню", ) } @@ -445,6 +440,7 @@ private fun InteractiveCanvas( .data(viewModel.imageUrl) .build() } + !viewModel.imageUrl.isNullOrEmpty() -> { // Handle network URL ImageRequest @@ -452,6 +448,7 @@ private fun InteractiveCanvas( .data(viewModel.imageUrl) .build() } + else -> null }, ) @@ -527,17 +524,20 @@ private fun ImageBox( this@drawWithContent.drawContent() } drawLayer(graphicsLayer) - }.clickable(onClick = { onScaleChange(1f) }) + } + .clickable(onClick = { onScaleChange(1f) }) .then( if (viewModel.isWritingEnabled) { Modifier.clickable(onClick = { viewModel.startWriting() }) } else { Modifier }, - ).graphicsLayer( + ) + .graphicsLayer( scaleX = animatedScale.value, scaleY = animatedScale.value, - ).transformable(state = state), + ) + .transformable(state = state), ) { Image( painter = painter, diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 8018aeba..da170ddb 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -78,7 +78,7 @@ Опубликовать link vk account change photo - MemeMaker2011 + Unknown Свайп Выбрать шаблон @@ -94,7 +94,7 @@ Популярные Новые Предпросмотр - Editor + Редактор ВК не менее 8 символов хотя бы один специальный символ From 0b4a5ad090eef0c6b947b6a5a3a06e634062e665 Mon Sep 17 00:00:00 2001 From: yorickyeng Date: Thu, 29 May 2025 18:38:33 +0300 Subject: [PATCH 2/3] fix --- .../features/create/presentation/ui/CreateScreen.kt | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt b/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt index 41db5929..bb7644da 100644 --- a/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt +++ b/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt @@ -524,20 +524,17 @@ private fun ImageBox( this@drawWithContent.drawContent() } drawLayer(graphicsLayer) - } - .clickable(onClick = { onScaleChange(1f) }) + }.clickable(onClick = { onScaleChange(1f) }) .then( if (viewModel.isWritingEnabled) { Modifier.clickable(onClick = { viewModel.startWriting() }) } else { Modifier }, - ) - .graphicsLayer( + ).graphicsLayer( scaleX = animatedScale.value, scaleY = animatedScale.value, - ) - .transformable(state = state), + ).transformable(state = state), ) { Image( painter = painter, From 4250d2a0157bdaf7fbc6b3bc5cd5b8dd985763f3 Mon Sep 17 00:00:00 2001 From: yorickyeng Date: Thu, 29 May 2025 18:41:49 +0300 Subject: [PATCH 3/3] fix --- .../memify/features/create/presentation/ui/CreateScreen.kt | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt b/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt index 8d6c14e5..2bc3aef2 100644 --- a/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt +++ b/app/src/main/java/com/codekotliners/memify/features/create/presentation/ui/CreateScreen.kt @@ -26,7 +26,6 @@ import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentSize import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Add -import androidx.compose.material.icons.filled.Check import androidx.compose.material.icons.filled.KeyboardArrowDown import androidx.compose.material.icons.filled.KeyboardArrowUp import androidx.compose.material3.BottomSheetScaffold @@ -438,12 +437,10 @@ private fun ImageBox( } else { Modifier }, - ) - .graphicsLayer( + ).graphicsLayer( scaleX = animatedScale.value, scaleY = animatedScale.value, - ) - .transformable(state = state), + ).transformable(state = state), ) { Image( painter = painter,