feat(ui): use inter + roboto flex as UI font

This commit is contained in:
Nishant Mishra
2025-11-02 10:36:23 +05:30
parent 7ce03a1006
commit 8ebf251127

View File

@@ -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
)
)
)