From 86bb382f4b645d2b556f1f09ea821884ca882034 Mon Sep 17 00:00:00 2001 From: Nishant Mishra Date: Mon, 27 Oct 2025 12:13:53 +0530 Subject: [PATCH] feat(billing): add font for billing screen, add animation --- app/src/main/java/org/nsh07/pomodoro/ui/AppScreen.kt | 11 ++++++++++- .../pomodoro/ui/settingsScreen/SettingsScreen.kt | 5 +++-- app/src/main/res/values/strings.xml | 2 ++ .../nsh07/pomodoro/billing/TomatoPlusPaywallDialog.kt | 3 +-- app/src/play/res/font/roboto_flex.ttf | 0 5 files changed, 16 insertions(+), 5 deletions(-) create mode 100644 app/src/play/res/font/roboto_flex.ttf diff --git a/app/src/main/java/org/nsh07/pomodoro/ui/AppScreen.kt b/app/src/main/java/org/nsh07/pomodoro/ui/AppScreen.kt index 5455ad9..b7cab88 100644 --- a/app/src/main/java/org/nsh07/pomodoro/ui/AppScreen.kt +++ b/app/src/main/java/org/nsh07/pomodoro/ui/AppScreen.kt @@ -23,6 +23,8 @@ import androidx.compose.animation.Crossfade import androidx.compose.animation.SharedTransitionLayout import androidx.compose.animation.fadeIn import androidx.compose.animation.fadeOut +import androidx.compose.animation.slideInVertically +import androidx.compose.animation.slideOutVertically import androidx.compose.animation.togetherWith import androidx.compose.foundation.clickable import androidx.compose.foundation.layout.calculateEndPadding @@ -246,5 +248,12 @@ fun AppScreen( ) } } - if (showPaywall) TomatoPlusPaywallDialog(isPlus = isPlus) { showPaywall = false } + + AnimatedVisibility( + showPaywall, + enter = slideInVertically { it }, + exit = slideOutVertically { it } + ) { + TomatoPlusPaywallDialog(isPlus = isPlus) { showPaywall = false } + } } \ No newline at end of file diff --git a/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/SettingsScreen.kt b/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/SettingsScreen.kt index 356c922..00b2de8 100644 --- a/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/SettingsScreen.kt +++ b/app/src/main/java/org/nsh07/pomodoro/ui/settingsScreen/SettingsScreen.kt @@ -233,7 +233,7 @@ private fun SettingsScreen( ) { item { Spacer(Modifier.height(12.dp)) } - if (!isPlus) item { + item { Row( verticalAlignment = Alignment.CenterVertically, modifier = Modifier @@ -251,7 +251,8 @@ private fun SettingsScreen( ) Spacer(Modifier.width(8.dp)) Text( - "Get Tomato+", + if (!isPlus) stringResource(R.string.get_plus) + else stringResource(R.string.app_name_plus), style = typography.titleLarge, fontFamily = robotoFlexTopBar, color = colorScheme.onPrimary diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index f4c25b8..a71a0b4 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -81,4 +81,6 @@ Sound Do Not Disturb Turn on DND when running a Focus timer + Tomato+ + Get Tomato+ \ No newline at end of file diff --git a/app/src/play/java/org/nsh07/pomodoro/billing/TomatoPlusPaywallDialog.kt b/app/src/play/java/org/nsh07/pomodoro/billing/TomatoPlusPaywallDialog.kt index 1ecda02..bd7b318 100644 --- a/app/src/play/java/org/nsh07/pomodoro/billing/TomatoPlusPaywallDialog.kt +++ b/app/src/play/java/org/nsh07/pomodoro/billing/TomatoPlusPaywallDialog.kt @@ -37,8 +37,7 @@ fun TomatoPlusPaywallDialog( onDismiss: () -> Unit ) { val paywallOptions = remember { - PaywallOptions.Builder(dismissRequest = onDismiss) - .build() + PaywallOptions.Builder(dismissRequest = onDismiss).build() } Scaffold { innerPadding -> diff --git a/app/src/play/res/font/roboto_flex.ttf b/app/src/play/res/font/roboto_flex.ttf new file mode 100644 index 0000000..e69de29