From fa0378a8a537f4000e8650377c8d8c93a9260253 Mon Sep 17 00:00:00 2001
From: fodorpatrik2000 <fodorpatrik2000@sch.bme.hu>
Date: Mon, 16 May 2022 01:07:42 +0200
Subject: [PATCH] Add material 3 theme

---
 .../hu/bme/kszk/szobatarsch/ui/theme/Color.kt |  66 ++++++++-
 .../hu/bme/kszk/szobatarsch/ui/theme/Type.kt  | 132 +++++++++++++++---
 app/src/main/res/values-night/themes.xml      |  33 +++++
 app/src/main/res/values/colors.xml            |  11 +-
 app/src/main/res/values/themes.xml            |  32 ++++-
 5 files changed, 234 insertions(+), 40 deletions(-)
 create mode 100644 app/src/main/res/values-night/themes.xml

diff --git a/app/src/main/java/hu/bme/kszk/szobatarsch/ui/theme/Color.kt b/app/src/main/java/hu/bme/kszk/szobatarsch/ui/theme/Color.kt
index e9c997f..a008a0b 100644
--- a/app/src/main/java/hu/bme/kszk/szobatarsch/ui/theme/Color.kt
+++ b/app/src/main/java/hu/bme/kszk/szobatarsch/ui/theme/Color.kt
@@ -1,8 +1,64 @@
 package hu.bme.kszk.szobatarsch.ui.theme
-
 import androidx.compose.ui.graphics.Color
 
-val Purple200 = Color(0xFFBB86FC)
-val Purple500 = Color(0xFF6200EE)
-val Purple700 = Color(0xFF3700B3)
-val Teal200 = Color(0xFF03DAC5)
\ No newline at end of file
+
+val md_theme_light_primary = Color(0xFF00629e)
+val md_theme_light_onPrimary = Color(0xFFffffff)
+val md_theme_light_primaryContainer = Color(0xFFcee5ff)
+val md_theme_light_onPrimaryContainer = Color(0xFF001d34)
+val md_theme_light_secondary = Color(0xFF006a65)
+val md_theme_light_onSecondary = Color(0xFFffffff)
+val md_theme_light_secondaryContainer = Color(0xFF44fbf2)
+val md_theme_light_onSecondaryContainer = Color(0xFF00201e)
+val md_theme_light_tertiary = Color(0xFF7D5260)
+val md_theme_light_onTertiary = Color(0xFFFFFFFF)
+val md_theme_light_tertiaryContainer = Color(0xFFFFD8E4)
+val md_theme_light_onTertiaryContainer = Color(0xFF31111D)
+val md_theme_light_error = Color(0xFFB3261E)
+val md_theme_light_errorContainer = Color(0xFFF9DEDC)
+val md_theme_light_onError = Color(0xFFFFFFFF)
+val md_theme_light_onErrorContainer = Color(0xFF410E0B)
+val md_theme_light_background = Color(0xFFFFFBFE)
+val md_theme_light_onBackground = Color(0xFF1C1B1F)
+val md_theme_light_surface = Color(0xFFFFFBFE)
+val md_theme_light_onSurface = Color(0xFF1C1B1F)
+val md_theme_light_surfaceVariant = Color(0xFFE7E0EC)
+val md_theme_light_onSurfaceVariant = Color(0xFF49454F)
+val md_theme_light_outline = Color(0xFF79747E)
+val md_theme_light_inverseOnSurface = Color(0xFFF4EFF4)
+val md_theme_light_inverseSurface = Color(0xFF313033)
+val md_theme_light_inversePrimary = Color(0xFF96cbff)
+val md_theme_light_shadow = Color(0xFF000000)
+
+val md_theme_dark_primary = Color(0xFF96cbff)
+val md_theme_dark_onPrimary = Color(0xFF003355)
+val md_theme_dark_primaryContainer = Color(0xFF004a79)
+val md_theme_dark_onPrimaryContainer = Color(0xFFcee5ff)
+val md_theme_dark_secondary = Color(0xFF00ddd5)
+val md_theme_dark_onSecondary = Color(0xFF003734)
+val md_theme_dark_secondaryContainer = Color(0xFF00504c)
+val md_theme_dark_onSecondaryContainer = Color(0xFF44fbf2)
+val md_theme_dark_tertiary = Color(0xFFEFB8C8)
+val md_theme_dark_onTertiary = Color(0xFF492532)
+val md_theme_dark_tertiaryContainer = Color(0xFF633B48)
+val md_theme_dark_onTertiaryContainer = Color(0xFFFFD8E4)
+val md_theme_dark_error = Color(0xFFF2B8B5)
+val md_theme_dark_errorContainer = Color(0xFF8C1D18)
+val md_theme_dark_onError = Color(0xFF601410)
+val md_theme_dark_onErrorContainer = Color(0xFFF9DEDC)
+val md_theme_dark_background = Color(0xFF1C1B1F)
+val md_theme_dark_onBackground = Color(0xFFE6E1E5)
+val md_theme_dark_surface = Color(0xFF1C1B1F)
+val md_theme_dark_onSurface = Color(0xFFE6E1E5)
+val md_theme_dark_surfaceVariant = Color(0xFF49454F)
+val md_theme_dark_onSurfaceVariant = Color(0xFFCAC4D0)
+val md_theme_dark_outline = Color(0xFF938F99)
+val md_theme_dark_inverseOnSurface = Color(0xFF1C1B1F)
+val md_theme_dark_inverseSurface = Color(0xFFE6E1E5)
+val md_theme_dark_inversePrimary = Color(0xFF00629e)
+val md_theme_dark_shadow = Color(0xFF000000)
+
+
+
+val seed = Color(0xFF6750A4)
+val error = Color(0xFFB3261E)
\ No newline at end of file
diff --git a/app/src/main/java/hu/bme/kszk/szobatarsch/ui/theme/Type.kt b/app/src/main/java/hu/bme/kszk/szobatarsch/ui/theme/Type.kt
index 19a3293..269a208 100644
--- a/app/src/main/java/hu/bme/kszk/szobatarsch/ui/theme/Type.kt
+++ b/app/src/main/java/hu/bme/kszk/szobatarsch/ui/theme/Type.kt
@@ -1,28 +1,116 @@
 package hu.bme.kszk.szobatarsch.ui.theme
-
-import androidx.compose.material.Typography
+import androidx.compose.material3.Typography
 import androidx.compose.ui.text.TextStyle
 import androidx.compose.ui.text.font.FontFamily
 import androidx.compose.ui.text.font.FontWeight
 import androidx.compose.ui.unit.sp
+//Replace with your font locations
+val Roboto = FontFamily.Default
 
-// Set of Material typography styles to start with
-val Typography = Typography(
-    body1 = TextStyle(
-        fontFamily = FontFamily.Default,
-        fontWeight = FontWeight.Normal,
-        fontSize = 16.sp
-    )
-    /* Other default text styles to override
-    button = TextStyle(
-        fontFamily = FontFamily.Default,
-        fontWeight = FontWeight.W500,
-        fontSize = 14.sp
-    ),
-    caption = TextStyle(
-        fontFamily = FontFamily.Default,
-        fontWeight = FontWeight.Normal,
-        fontSize = 12.sp
-    )
-    */
-)
\ No newline at end of file
+val AppTypography = Typography(
+	displayLarge = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 57.sp,
+		lineHeight = 64.sp,
+		letterSpacing = -0.25.sp,
+	),
+	displayMedium = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 45.sp,
+		lineHeight = 52.sp,
+		letterSpacing = 0.sp,
+	),
+	displaySmall = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 36.sp,
+		lineHeight = 44.sp,
+		letterSpacing = 0.sp,
+	),
+	headlineLarge = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 32.sp,
+		lineHeight = 40.sp,
+		letterSpacing = 0.sp,
+	),
+	headlineMedium = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 28.sp,
+		lineHeight = 36.sp,
+		letterSpacing = 0.sp,
+	),
+	headlineSmall = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 24.sp,
+		lineHeight = 32.sp,
+		letterSpacing = 0.sp,
+	),
+	titleLarge = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 22.sp,
+		lineHeight = 28.sp,
+		letterSpacing = 0.sp,
+	),
+	titleMedium = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.Medium,
+		fontSize = 16.sp,
+		lineHeight = 24.sp,
+		letterSpacing = 0.1.sp,
+	),
+	titleSmall = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.Medium,
+		fontSize = 14.sp,
+		lineHeight = 20.sp,
+		letterSpacing = 0.1.sp,
+	),
+	labelLarge = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.Medium,
+		fontSize = 14.sp,
+		lineHeight = 20.sp,
+		letterSpacing = 0.1.sp,
+	),
+	bodyLarge = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 16.sp,
+		lineHeight = 24.sp,
+		letterSpacing = 0.5.sp,
+	),
+	bodyMedium = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 14.sp,
+		lineHeight = 20.sp,
+		letterSpacing = 0.25.sp,
+	),
+	bodySmall = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.W400,
+		fontSize = 12.sp,
+		lineHeight = 16.sp,
+		letterSpacing = 0.4.sp,
+	),
+	labelMedium = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.Medium,
+		fontSize = 12.sp,
+		lineHeight = 16.sp,
+		letterSpacing = 0.5.sp,
+	),
+	labelSmall = TextStyle(
+		fontFamily = Roboto,
+		fontWeight = FontWeight.Medium,
+		fontSize = 11.sp,
+		lineHeight = 16.sp,
+		letterSpacing = 0.5.sp,
+	),
+)
diff --git a/app/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml
new file mode 100644
index 0000000..aa244e8
--- /dev/null
+++ b/app/src/main/res/values-night/themes.xml
@@ -0,0 +1,33 @@
+<resources>
+
+    <style name="Theme.SzobatarSCH" parent="Theme.Material3.Dark">
+        <item name="colorPrimary">@color/md_theme_dark_primary</item>
+        <item name="colorOnPrimary">@color/md_theme_dark_onPrimary</item>
+        <item name="colorPrimaryContainer">@color/md_theme_dark_primaryContainer</item>
+        <item name="colorOnPrimaryContainer">@color/md_theme_dark_onPrimaryContainer</item>
+        <item name="colorSecondary">@color/md_theme_dark_secondary</item>
+        <item name="colorOnSecondary">@color/md_theme_dark_onSecondary</item>
+        <item name="colorSecondaryContainer">@color/md_theme_dark_secondaryContainer</item>
+        <item name="colorOnSecondaryContainer">@color/md_theme_dark_onSecondaryContainer</item>
+        <item name="colorTertiary">@color/md_theme_dark_tertiary</item>
+        <item name="colorOnTertiary">@color/md_theme_dark_onTertiary</item>
+        <item name="colorTertiaryContainer">@color/md_theme_dark_tertiaryContainer</item>
+        <item name="colorOnTertiaryContainer">@color/md_theme_dark_onTertiaryContainer</item>
+        <item name="colorError">@color/md_theme_dark_error</item>
+        <item name="colorErrorContainer">@color/md_theme_dark_errorContainer</item>
+        <item name="colorOnError">@color/md_theme_dark_onError</item>
+        <item name="colorOnErrorContainer">@color/md_theme_dark_onErrorContainer</item>
+        <item name="android:colorBackground">@color/md_theme_dark_background</item>
+        <item name="colorOnBackground">@color/md_theme_dark_onBackground</item>
+        <item name="colorSurface">@color/md_theme_dark_surface</item>
+        <item name="colorOnSurface">@color/md_theme_dark_onSurface</item>
+        <item name="colorSurfaceVariant">@color/md_theme_dark_surfaceVariant</item>
+        <item name="colorOnSurfaceVariant">@color/md_theme_dark_onSurfaceVariant</item>
+        <item name="colorOutline">@color/md_theme_dark_outline</item>
+        <item name="colorOnSurfaceInverse">@color/md_theme_dark_inverseOnSurface</item>
+        <item name="colorSurfaceInverse">@color/md_theme_dark_inverseSurface</item>
+        <!--<item name="colorInverse">@color/md_theme_dark_inversePrimary</item>
+        <item name="colorShadow">@color/md_theme_dark_shadow</item>-->
+        <item name="colorPrimaryInverse">@color/md_theme_dark_primaryInverse</item>
+    </style>
+</resources>
\ No newline at end of file
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index f8c6127..c06d538 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -1,10 +1 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <color name="purple_200">#FFBB86FC</color>
-    <color name="purple_500">#FF6200EE</color>
-    <color name="purple_700">#FF3700B3</color>
-    <color name="teal_200">#FF03DAC5</color>
-    <color name="teal_700">#FF018786</color>
-    <color name="black">#FF000000</color>
-    <color name="white">#FFFFFFFF</color>
-</resources>
\ No newline at end of file
+<resources><color name="md_theme_light_primary">#00629E</color><color name="md_theme_light_onPrimary">#FFFFFF</color><color name="md_theme_light_primaryContainer">#CEE5FF</color><color name="md_theme_light_onPrimaryContainer">#001D34</color><color name="md_theme_light_secondary">#006A65</color><color name="md_theme_light_onSecondary">#FFFFFF</color><color name="md_theme_light_secondaryContainer">#44FBF2</color><color name="md_theme_light_onSecondaryContainer">#00201E</color><color name="md_theme_light_tertiary">#7D5260</color><color name="md_theme_light_onTertiary">#FFFFFF</color><color name="md_theme_light_tertiaryContainer">#FFD8E4</color><color name="md_theme_light_onTertiaryContainer">#31111D</color><color name="md_theme_light_error">#B3261E</color><color name="md_theme_light_errorContainer">#F9DEDC</color><color name="md_theme_light_onError">#FFFFFF</color><color name="md_theme_light_onErrorContainer">#410E0B</color><color name="md_theme_light_background">#FFFBFE</color><color name="md_theme_light_onBackground">#1C1B1F</color><color name="md_theme_light_surface">#FFFBFE</color><color name="md_theme_light_onSurface">#1C1B1F</color><color name="md_theme_light_surfaceVariant">#E7E0EC</color><color name="md_theme_light_onSurfaceVariant">#49454F</color><color name="md_theme_light_outline">#79747E</color><color name="md_theme_light_inverseOnSurface">#F4EFF4</color><color name="md_theme_light_inverseSurface">#313033</color><color name="md_theme_light_inversePrimary">#96CBFF</color><color name="md_theme_light_shadow">#000000</color><color name="md_theme_light_primaryInverse">#96CBFF</color><color name="md_theme_dark_primary">#96CBFF</color><color name="md_theme_dark_onPrimary">#003355</color><color name="md_theme_dark_primaryContainer">#004A79</color><color name="md_theme_dark_onPrimaryContainer">#CEE5FF</color><color name="md_theme_dark_secondary">#00DDD5</color><color name="md_theme_dark_onSecondary">#003734</color><color name="md_theme_dark_secondaryContainer">#00504C</color><color name="md_theme_dark_onSecondaryContainer">#44FBF2</color><color name="md_theme_dark_tertiary">#EFB8C8</color><color name="md_theme_dark_onTertiary">#492532</color><color name="md_theme_dark_tertiaryContainer">#633B48</color><color name="md_theme_dark_onTertiaryContainer">#FFD8E4</color><color name="md_theme_dark_error">#F2B8B5</color><color name="md_theme_dark_errorContainer">#8C1D18</color><color name="md_theme_dark_onError">#601410</color><color name="md_theme_dark_onErrorContainer">#F9DEDC</color><color name="md_theme_dark_background">#1C1B1F</color><color name="md_theme_dark_onBackground">#E6E1E5</color><color name="md_theme_dark_surface">#1C1B1F</color><color name="md_theme_dark_onSurface">#E6E1E5</color><color name="md_theme_dark_surfaceVariant">#49454F</color><color name="md_theme_dark_onSurfaceVariant">#CAC4D0</color><color name="md_theme_dark_outline">#938F99</color><color name="md_theme_dark_inverseOnSurface">#1C1B1F</color><color name="md_theme_dark_inverseSurface">#E6E1E5</color><color name="md_theme_dark_inversePrimary">#00629E</color><color name="md_theme_dark_shadow">#000000</color><color name="md_theme_dark_primaryInverse">#00629E</color></resources>
\ No newline at end of file
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index 4fc949d..4bfb358 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -1,7 +1,33 @@
-<?xml version="1.0" encoding="utf-8"?>
 <resources>
 
-    <style name="Theme.SzobatarSCH" parent="android:Theme.Material.Light.NoActionBar">
-        <item name="android:statusBarColor">@color/purple_700</item>
+    <style name="Theme.SzobatarSCH" parent="Theme.Material3.Light">
+        <item name="colorPrimary">@color/md_theme_light_primary</item>
+        <item name="colorOnPrimary">@color/md_theme_light_onPrimary</item>
+        <item name="colorPrimaryContainer">@color/md_theme_light_primaryContainer</item>
+        <item name="colorOnPrimaryContainer">@color/md_theme_light_onPrimaryContainer</item>
+        <item name="colorSecondary">@color/md_theme_light_secondary</item>
+        <item name="colorOnSecondary">@color/md_theme_light_onSecondary</item>
+        <item name="colorSecondaryContainer">@color/md_theme_light_secondaryContainer</item>
+        <item name="colorOnSecondaryContainer">@color/md_theme_light_onSecondaryContainer</item>
+        <item name="colorTertiary">@color/md_theme_light_tertiary</item>
+        <item name="colorOnTertiary">@color/md_theme_light_onTertiary</item>
+        <item name="colorTertiaryContainer">@color/md_theme_light_tertiaryContainer</item>
+        <item name="colorOnTertiaryContainer">@color/md_theme_light_onTertiaryContainer</item>
+        <item name="colorError">@color/md_theme_light_error</item>
+        <item name="colorErrorContainer">@color/md_theme_light_errorContainer</item>
+        <item name="colorOnError">@color/md_theme_light_onError</item>
+        <item name="colorOnErrorContainer">@color/md_theme_light_onErrorContainer</item>
+        <item name="android:colorBackground">@color/md_theme_light_background</item>
+        <item name="colorOnBackground">@color/md_theme_light_onBackground</item>
+        <item name="colorSurface">@color/md_theme_light_surface</item>
+        <item name="colorOnSurface">@color/md_theme_light_onSurface</item>
+        <item name="colorSurfaceVariant">@color/md_theme_light_surfaceVariant</item>
+        <item name="colorOnSurfaceVariant">@color/md_theme_light_onSurfaceVariant</item>
+        <item name="colorOutline">@color/md_theme_light_outline</item>
+        <item name="colorOnSurfaceInverse">@color/md_theme_light_inverseOnSurface</item>
+        <item name="colorSurfaceInverse">@color/md_theme_light_inverseSurface</item>
+        <!--<item name="colorInversePrimary">@color/md_theme_light_inversePrimary</item>
+        <item name="colorShadow">@color/md_theme_light_shadow</item>-->
+        <item name="colorPrimaryInverse">@color/md_theme_light_primaryInverse</item>
     </style>
 </resources>
\ No newline at end of file
-- 
GitLab