From 8ebf25112751939a9d13706f426e60e3e63ddc0b Mon Sep 17 00:00:00 2001 From: Nishant Mishra Date: Sun, 2 Nov 2025 10:36:23 +0530 Subject: [PATCH] feat(ui): use inter + roboto flex as UI font --- .../java/org/nsh07/pomodoro/ui/theme/Type.kt | 66 +++++++++++-------- 1 file changed, 38 insertions(+), 28 deletions(-) diff --git a/app/src/main/java/org/nsh07/pomodoro/ui/theme/Type.kt b/app/src/main/java/org/nsh07/pomodoro/ui/theme/Type.kt index b4b9a19..40005d4 100644 --- a/app/src/main/java/org/nsh07/pomodoro/ui/theme/Type.kt +++ b/app/src/main/java/org/nsh07/pomodoro/ui/theme/Type.kt @@ -19,44 +19,36 @@ package org.nsh07.pomodoro.ui.theme import androidx.compose.material3.Typography import androidx.compose.ui.text.ExperimentalTextApi -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.FontVariation import androidx.compose.ui.text.font.FontWeight -import androidx.compose.ui.unit.sp import org.nsh07.pomodoro.R +import org.nsh07.pomodoro.ui.theme.AppFonts.interBody +import org.nsh07.pomodoro.ui.theme.AppFonts.interLabel import org.nsh07.pomodoro.ui.theme.AppFonts.robotoFlexHeadline import org.nsh07.pomodoro.ui.theme.AppFonts.robotoFlexTitle +val TYPOGRAPHY = Typography() + // Set of Material typography styles to start with val Typography = Typography( - bodyLarge = TextStyle( - fontFamily = FontFamily.Default, - fontWeight = FontWeight.Normal, - fontSize = 16.sp, - lineHeight = 24.sp, - letterSpacing = 0.5.sp - ), - headlineSmall = TextStyle( - fontFamily = robotoFlexHeadline, - fontSize = 24.sp, - lineHeight = 32.sp, - letterSpacing = 0.sp, - ), - titleMedium = TextStyle( - fontFamily = robotoFlexTitle, - fontSize = 16.sp, - lineHeight = 24.sp, - letterSpacing = 0.15.sp, - ), - titleSmall = TextStyle( - fontFamily = robotoFlexTitle, - fontSize = 14.sp, - lineHeight = 20.sp, - letterSpacing = 0.1.sp - ) + displayLarge = TYPOGRAPHY.displayLarge.copy(fontFamily = robotoFlexHeadline), + displayMedium = TYPOGRAPHY.displayMedium.copy(fontFamily = robotoFlexHeadline), + displaySmall = TYPOGRAPHY.displaySmall.copy(fontFamily = robotoFlexHeadline), + headlineLarge = TYPOGRAPHY.headlineLarge.copy(fontFamily = robotoFlexHeadline), + headlineMedium = TYPOGRAPHY.headlineMedium.copy(fontFamily = robotoFlexHeadline), + headlineSmall = TYPOGRAPHY.headlineSmall.copy(fontFamily = robotoFlexHeadline), + titleLarge = TYPOGRAPHY.titleLarge.copy(fontFamily = robotoFlexTitle), + titleMedium = TYPOGRAPHY.titleMedium.copy(fontFamily = robotoFlexTitle), + titleSmall = TYPOGRAPHY.titleSmall.copy(fontFamily = robotoFlexTitle), + bodyLarge = TYPOGRAPHY.bodyLarge.copy(fontFamily = interBody), + bodyMedium = TYPOGRAPHY.bodyMedium.copy(fontFamily = interBody), + bodySmall = TYPOGRAPHY.bodySmall.copy(fontFamily = interBody), + labelLarge = TYPOGRAPHY.labelLarge.copy(fontFamily = interLabel), + labelMedium = TYPOGRAPHY.labelMedium.copy(fontFamily = interLabel), + labelSmall = TYPOGRAPHY.labelSmall.copy(fontFamily = interLabel) ) @OptIn(ExperimentalTextApi::class) @@ -65,7 +57,25 @@ object AppFonts { Font( R.font.inter_variable, variationSettings = FontVariation.Settings( FontWeight.Bold, - FontStyle.Italic + FontStyle.Normal + ) + ) + ) + + val interBody = FontFamily( + Font( + R.font.inter_variable, variationSettings = FontVariation.Settings( + FontWeight.Normal, + FontStyle.Normal + ) + ) + ) + + val interLabel = FontFamily( + Font( + R.font.inter_variable, variationSettings = FontVariation.Settings( + FontWeight.Medium, + FontStyle.Normal ) ) )