From 3b27dc4a89b5942851c45985addbcb58864aa804 Mon Sep 17 00:00:00 2001 From: hayk888997 Date: Mon, 16 Mar 2026 03:10:07 +0400 Subject: [PATCH] Fixed navigation, UI, margin issues --- .../InviteCardComponent.kt | 2 +- .../invitation_redesign/InviteSomeoneView.kt | 76 ++++++++++--------- .../InviteSomeoneWithPicturesView.kt | 45 +++++------ .../invitation_redesign/NowYouCanView.kt | 8 +- 4 files changed, 67 insertions(+), 64 deletions(-) diff --git a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteCardComponent.kt b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteCardComponent.kt index 9db07e7c3d..149910965e 100644 --- a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteCardComponent.kt +++ b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteCardComponent.kt @@ -34,7 +34,7 @@ import chat.simplex.res.MR import dev.icerock.moko.resources.compose.painterResource import dev.icerock.moko.resources.compose.stringResource -const val SHOW_PICTURES = false +const val SHOW_PICTURES = true @Composable fun InviteCardComponent( diff --git a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteSomeoneView.kt b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteSomeoneView.kt index eba3a78e67..a5bf454760 100644 --- a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteSomeoneView.kt +++ b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteSomeoneView.kt @@ -8,6 +8,7 @@ import androidx.compose.material.* import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.unit.dp import dev.icerock.moko.resources.compose.painterResource import dev.icerock.moko.resources.compose.stringResource import chat.simplex.common.platform.* @@ -33,45 +34,50 @@ fun InviteSomeoneView(close: () -> Unit) { @Composable fun InviteSomeoneContent() { - InviteCardComponent( - image = painterResource(MR.images.ic_invitation_card_one_time_link), - titleIcon = painterResource(MR.images.ic_add_link), - title = stringResource(MR.strings.create_private_1_time_link), - description = stringResource(MR.strings.contact_can_use_link_or_scan_qr), - bulletPoints = listOf( - stringResource(MR.strings.one_time_link_only_one_person), - stringResource(MR.strings.one_time_link_once_connected_removed), - stringResource(MR.strings.one_time_link_secure_to_pass) - ), - buttonText = stringResource(MR.strings.create_1_time_link), - onDismiss = {}, - onClick = { - ModalManager.start.showModalCloseable { close -> - OneTimeLinkView(rhId = chatModel.currentRemoteHost.value?.remoteHostId, close = close) + ColumnWithScrollBar( + Modifier.fillMaxSize().background(MaterialTheme.colors.background), + horizontalAlignment = Alignment.CenterHorizontally + ) { + InviteCardComponent( + image = painterResource(MR.images.ic_invitation_card_one_time_link), + titleIcon = painterResource(MR.images.ic_add_link), + title = stringResource(MR.strings.create_private_1_time_link), + description = stringResource(MR.strings.contact_can_use_link_or_scan_qr), + bulletPoints = listOf( + stringResource(MR.strings.one_time_link_only_one_person), + stringResource(MR.strings.one_time_link_once_connected_removed), + stringResource(MR.strings.one_time_link_secure_to_pass) + ), + buttonText = stringResource(MR.strings.create_1_time_link), + onDismiss = {}, + onClick = { + ModalManager.start.showModalCloseable { close -> + OneTimeLinkView(rhId = chatModel.currentRemoteHost.value?.remoteHostId, close = close) + } } - } - ) + ) - Spacer(Modifier.height(DEFAULT_PADDING)) + Spacer(Modifier.height(DEFAULT_PADDING_HALF)) - InviteCardComponent( - image = painterResource(MR.images.ic_invitation_card_public_address), - titleIcon = painterResource(MR.images.ic_qr_code), - title = stringResource(MR.strings.create_public_simplex_address), - description = stringResource(MR.strings.public_link_for_social_media_email_or_website), - bulletPoints = listOf( - stringResource(MR.strings.address_many_people_can_connect), - stringResource(MR.strings.address_removed_without_losing_contacts), - stringResource(MR.strings.address_servers_cant_see_profile) - ), - buttonText = stringResource(MR.strings.create_simplex_address), - onDismiss = {}, - onClick = { - ModalManager.start.showModalCloseable { closeAddress -> - UserAddressView(chatModel = chatModel, shareViaProfile = false, autoCreateAddress = true, close = closeAddress) + InviteCardComponent( + image = painterResource(MR.images.ic_invitation_card_public_address), + titleIcon = painterResource(MR.images.ic_qr_code), + title = stringResource(MR.strings.create_public_simplex_address), + description = stringResource(MR.strings.public_link_for_social_media_email_or_website), + bulletPoints = listOf( + stringResource(MR.strings.address_many_people_can_connect), + stringResource(MR.strings.address_removed_without_losing_contacts), + stringResource(MR.strings.address_servers_cant_see_profile) + ), + buttonText = stringResource(MR.strings.create_simplex_address), + onDismiss = {}, + onClick = { + ModalManager.start.showModalCloseable { closeAddress -> + UserAddressView(chatModel = chatModel, shareViaProfile = false, autoCreateAddress = true, close = closeAddress) + } } - } - ) + ) + } } @Preview diff --git a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteSomeoneWithPicturesView.kt b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteSomeoneWithPicturesView.kt index c57dace375..8f0dc58008 100644 --- a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteSomeoneWithPicturesView.kt +++ b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/InviteSomeoneWithPicturesView.kt @@ -11,6 +11,8 @@ import androidx.compose.material.* import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.dp import dev.icerock.moko.resources.compose.painterResource @@ -25,7 +27,7 @@ import chat.simplex.res.MR fun InviteSomeoneWithPicturesView(close: () -> Unit) { ModalView(close) { ColumnWithScrollBar( - Modifier.fillMaxSize().background(MaterialTheme.colors.background), + Modifier.fillMaxSize().padding(bottom = DEFAULT_BOTTOM_PADDING).background(Color.White), horizontalAlignment = Alignment.CenterHorizontally ) { AppBarTitle(stringResource(MR.strings.invite_someone), withPadding = false) @@ -42,7 +44,7 @@ fun InviteSomeoneWithPicturesContent() { shape = RoundedCornerShape(18.dp), color = MaterialTheme.appColors.sentMessage, modifier = Modifier - .fillMaxSize().background(MaterialTheme.colors.background) + .fillMaxWidth() .padding(horizontal = DEFAULT_PADDING) .clickable { ModalManager.start.showModalCloseable { close -> @@ -50,16 +52,12 @@ fun InviteSomeoneWithPicturesContent() { } } ) { - Column( - Modifier.fillMaxWidth().padding(DEFAULT_PADDING), - horizontalAlignment = Alignment.CenterHorizontally - ) { - Image( - painterResource(MR.images.ic_invitation_card_one_time_link), - contentDescription = null, - modifier = Modifier.fillMaxWidth() - ) - } + Image( + painterResource(MR.images.ic_invitation_card_one_time_link), + contentDescription = null, + contentScale = ContentScale.FillWidth, + modifier = Modifier.fillMaxWidth() + ) } Spacer(Modifier.height(DEFAULT_PADDING_HALF)) @@ -97,27 +95,24 @@ fun InviteSomeoneWithPicturesContent() { .fillMaxWidth() .padding(horizontal = DEFAULT_PADDING) .clickable { - ModalManager.start.showModalCloseable { closeAddress -> - UserAddressView(chatModel = chatModel, shareViaProfile = false, autoCreateAddress = true, close = closeAddress) + // TODO, Hayk replace with page when data will be available + ModalManager.start.showModalCloseable { close -> + OneTimeLinkView(rhId = chatModel.currentRemoteHost.value?.remoteHostId, close = close) } } ) { - Column( - Modifier.fillMaxWidth().padding(DEFAULT_PADDING), - horizontalAlignment = Alignment.CenterHorizontally - ) { - Image( - painterResource(MR.images.ic_invitation_card_public_address), - contentDescription = null, - modifier = Modifier.fillMaxWidth() - ) - } + Image( + painterResource(MR.images.ic_invitation_card_public_address), + contentDescription = null, + contentScale = ContentScale.FillWidth, + modifier = Modifier.fillMaxWidth() + ) } Spacer(Modifier.height(DEFAULT_PADDING_HALF)) Row( - Modifier.fillMaxWidth().padding(horizontal = DEFAULT_PADDING), + Modifier.fillMaxWidth().padding(start = DEFAULT_PADDING, end = DEFAULT_PADDING, bottom = 24.dp), verticalAlignment = Alignment.CenterVertically ) { Icon( diff --git a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/NowYouCanView.kt b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/NowYouCanView.kt index bbb557ca0d..4135ec86c7 100644 --- a/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/NowYouCanView.kt +++ b/apps/multiplatform/common/src/commonMain/kotlin/chat/simplex/common/views/invitation_redesign/NowYouCanView.kt @@ -3,6 +3,7 @@ package chat.simplex.common.views.invitation_redesign import SectionBottomSpacer import androidx.compose.desktop.ui.tooling.preview.Preview import androidx.compose.foundation.Image +import androidx.compose.foundation.background import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.* import androidx.compose.foundation.rememberScrollState @@ -31,6 +32,7 @@ fun BoxScope.EmptyChatListView() { Column( Modifier .fillMaxSize() + .background(MaterialTheme.colors.background) .verticalScroll(rememberScrollState()), horizontalAlignment = Alignment.CenterHorizontally ) { @@ -41,11 +43,11 @@ fun BoxScope.EmptyChatListView() { stringResource(MR.strings.invite_someone), style = MaterialTheme.typography.h1.copy(fontWeight = FontWeight.Bold), ) - Spacer(Modifier.height(DEFAULT_PADDING)) + Spacer(Modifier.height(DEFAULT_PADDING_HALF)) if (SHOW_PICTURES) { - InviteSomeoneWithPicturesContent() + InviteSomeoneWithPicturesContent() } else { - InviteSomeoneContent() + InviteSomeoneContent() } SectionBottomSpacer() }