summaryrefslogtreecommitdiffhomepage
path: root/android
diff options
context:
space:
mode:
authorJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-02-05 11:10:21 +0100
committerJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-02-05 11:10:21 +0100
commit6ae84fe40808cb9d1d64f7f831be84277820eaa5 (patch)
tree8e051634bed1824fd00b4aab502240c0c23b3b2e /android
parent6e2b93d8fd6d9aa1121c54c550477ad5832f958f (diff)
parent8e496aa8b67ff8b66000a339639e153d8d37b717 (diff)
downloadmullvadvpn-6ae84fe40808cb9d1d64f7f831be84277820eaa5.tar.xz
mullvadvpn-6ae84fe40808cb9d1d64f7f831be84277820eaa5.zip
Merge branch 'fix-all-remaining-uses-of-hardcoded-colors-in-the-app-and-droid-657'
Diffstat (limited to 'android')
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/CheckboxCell.kt4
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/InformationComposeCell.kt21
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/FilterChip.kt4
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/dialog/DnsDialog.kt3
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/SelectLocationScreen.kt4
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt3
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/textfield/SearchTextField.kt28
-rw-r--r--android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/Theme.kt6
-rw-r--r--android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/Color.kt34
-rw-r--r--android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/ColorTokens.kt6
10 files changed, 48 insertions, 65 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/CheckboxCell.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/CheckboxCell.kt
index 5c6157e032..5190a3a959 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/CheckboxCell.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/CheckboxCell.kt
@@ -22,7 +22,7 @@ import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.Dp
import net.mullvad.mullvadvpn.lib.theme.AppTheme
import net.mullvad.mullvadvpn.lib.theme.Dimens
-import net.mullvad.mullvadvpn.lib.theme.color.MullvadGreen
+import net.mullvad.mullvadvpn.lib.theme.color.selected
@Preview
@Composable
@@ -64,7 +64,7 @@ internal fun CheckboxCell(
CheckboxDefaults.colors(
checkedColor = Color.Transparent,
uncheckedColor = Color.Transparent,
- checkmarkColor = MullvadGreen
+ checkmarkColor = MaterialTheme.colorScheme.selected
),
)
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/InformationComposeCell.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/InformationComposeCell.kt
index ddd286ee68..faec68d5d4 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/InformationComposeCell.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/cell/InformationComposeCell.kt
@@ -15,28 +15,29 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.tooling.preview.Preview
import net.mullvad.mullvadvpn.R
+import net.mullvad.mullvadvpn.lib.theme.AppTheme
import net.mullvad.mullvadvpn.lib.theme.Dimens
import net.mullvad.mullvadvpn.lib.theme.color.AlphaInactive
import net.mullvad.mullvadvpn.lib.theme.color.AlphaVisible
-import net.mullvad.mullvadvpn.lib.theme.color.MullvadBlue
-import net.mullvad.mullvadvpn.lib.theme.color.MullvadWhite
@Preview
@Composable
private fun PreviewInformationComposeCell() {
- InformationComposeCell(
- title = "Information row title",
- isEnabled = true,
- onCellClicked = {},
- onInfoClicked = {}
- )
+ AppTheme {
+ InformationComposeCell(
+ title = "Information row title",
+ isEnabled = true,
+ onCellClicked = {},
+ onInfoClicked = {}
+ )
+ }
}
@Composable
fun InformationComposeCell(
title: String,
isEnabled: Boolean = true,
- background: Color = MullvadBlue,
+ background: Color = MaterialTheme.colorScheme.primary,
onCellClicked: () -> Unit = {},
onInfoClicked: (() -> Unit)? = null
) {
@@ -75,7 +76,7 @@ private fun InformationComposeCellBody(modifier: Modifier, onInfoClicked: (() ->
Icon(
painter = painterResource(id = R.drawable.icon_info),
contentDescription = null,
- tint = MullvadWhite
+ tint = MaterialTheme.colorScheme.onPrimary
)
}
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/FilterChip.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/FilterChip.kt
index 0443a7267e..c38eafa24e 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/FilterChip.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/component/FilterChip.kt
@@ -20,7 +20,6 @@ import androidx.compose.ui.tooling.preview.Preview
import net.mullvad.mullvadvpn.R
import net.mullvad.mullvadvpn.lib.theme.AppTheme
import net.mullvad.mullvadvpn.lib.theme.Dimens
-import net.mullvad.mullvadvpn.lib.theme.color.MullvadBlue
import net.mullvad.mullvadvpn.lib.theme.shape.chipShape
@Preview
@@ -40,7 +39,8 @@ fun MullvadFilterChip(text: String, onRemoveClick: () -> Unit) {
FilterChip(
modifier = Modifier.padding(vertical = Dimens.chipVerticalPadding),
shape = MaterialTheme.shapes.chipShape,
- colors = FilterChipDefaults.filterChipColors(containerColor = MullvadBlue),
+ colors =
+ FilterChipDefaults.filterChipColors(containerColor = MaterialTheme.colorScheme.primary),
border =
FilterChipDefaults.filterChipBorder(
borderColor = Color.Transparent,
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/dialog/DnsDialog.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/dialog/DnsDialog.kt
index a5b23eb253..44f835c21e 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/dialog/DnsDialog.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/dialog/DnsDialog.kt
@@ -24,7 +24,6 @@ import net.mullvad.mullvadvpn.compose.button.PrimaryButton
import net.mullvad.mullvadvpn.compose.textfield.DnsTextField
import net.mullvad.mullvadvpn.lib.theme.AppTheme
import net.mullvad.mullvadvpn.lib.theme.Dimens
-import net.mullvad.mullvadvpn.lib.theme.color.MullvadRed
import net.mullvad.mullvadvpn.viewmodel.DnsDialogSideEffect
import net.mullvad.mullvadvpn.viewmodel.DnsDialogViewModel
import net.mullvad.mullvadvpn.viewmodel.DnsDialogViewState
@@ -169,7 +168,7 @@ fun DnsDialog(
Text(
text = errorMessage,
style = MaterialTheme.typography.bodySmall,
- color = MullvadRed,
+ color = MaterialTheme.colorScheme.error,
modifier = Modifier.padding(top = Dimens.smallPadding)
)
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/SelectLocationScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/SelectLocationScreen.kt
index 0de13b5e6c..33414dcbaa 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/SelectLocationScreen.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/SelectLocationScreen.kt
@@ -161,7 +161,9 @@ fun SelectLocationScreen(
modifier =
Modifier.fillMaxWidth()
.height(Dimens.searchFieldHeight)
- .padding(horizontal = Dimens.searchFieldHorizontalPadding)
+ .padding(horizontal = Dimens.searchFieldHorizontalPadding),
+ backgroundColor = MaterialTheme.colorScheme.tertiaryContainer,
+ textColor = MaterialTheme.colorScheme.onTertiaryContainer
) { searchString ->
onSearchTermInput.invoke(searchString)
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt
index d21ccdfef7..ead6c41d78 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt
@@ -60,7 +60,6 @@ import net.mullvad.mullvadvpn.lib.theme.AppTheme
import net.mullvad.mullvadvpn.lib.theme.Dimens
import net.mullvad.mullvadvpn.lib.theme.color.AlphaScrollbar
import net.mullvad.mullvadvpn.lib.theme.color.AlphaTopBar
-import net.mullvad.mullvadvpn.lib.theme.color.MullvadWhite
import net.mullvad.mullvadvpn.viewmodel.WelcomeViewModel
import org.koin.androidx.compose.koinViewModel
@@ -335,7 +334,7 @@ fun DeviceNameRow(deviceName: String?, navigateToDeviceInfoDialog: () -> Unit) {
Icon(
painter = painterResource(id = R.drawable.icon_info),
contentDescription = null,
- tint = MullvadWhite
+ tint = MaterialTheme.colorScheme.onPrimary
)
}
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/textfield/SearchTextField.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/textfield/SearchTextField.kt
index bbee4a969b..8abeda981a 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/textfield/SearchTextField.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/textfield/SearchTextField.kt
@@ -29,14 +29,17 @@ import androidx.compose.ui.tooling.preview.Preview
import net.mullvad.mullvadvpn.R
import net.mullvad.mullvadvpn.lib.theme.AppTheme
import net.mullvad.mullvadvpn.lib.theme.Dimens
-import net.mullvad.mullvadvpn.lib.theme.color.MullvadWhite10
@Preview
@Composable
private fun PreviewSearchTextField() {
AppTheme {
Column(modifier = Modifier.background(color = MaterialTheme.colorScheme.background)) {
- SearchTextField(placeHolder = "Search for...") {}
+ SearchTextField(
+ placeHolder = "Search for...",
+ backgroundColor = MaterialTheme.colorScheme.tertiaryContainer,
+ textColor = MaterialTheme.colorScheme.onTertiaryContainer,
+ ) {}
}
}
}
@@ -46,7 +49,8 @@ private fun PreviewSearchTextField() {
fun SearchTextField(
modifier: Modifier = Modifier,
placeHolder: String = stringResource(id = R.string.search_placeholder),
- backgroundColor: Color = MullvadWhite10,
+ backgroundColor: Color,
+ textColor: Color,
enabled: Boolean = true,
singleLine: Boolean = true,
interactionSource: MutableInteractionSource = remember { MutableInteractionSource() },
@@ -57,14 +61,13 @@ fun SearchTextField(
BasicTextField(
value = searchTerm,
- textStyle =
- MaterialTheme.typography.labelLarge.copy(color = MaterialTheme.colorScheme.onSecondary),
+ textStyle = MaterialTheme.typography.labelLarge.copy(color = textColor),
onValueChange = { text: String ->
searchTerm = text
onValueChange.invoke(text)
},
singleLine = singleLine,
- cursorBrush = SolidColor(MaterialTheme.colorScheme.onSecondary),
+ cursorBrush = SolidColor(textColor),
decorationBox =
@Composable { innerTextField ->
TextFieldDefaults.DecorationBox(
@@ -83,8 +86,7 @@ fun SearchTextField(
width = Dimens.searchIconSize,
height = Dimens.searchIconSize,
),
- colorFilter =
- ColorFilter.tint(color = MaterialTheme.colorScheme.onSecondary),
+ colorFilter = ColorFilter.tint(color = textColor),
)
},
placeholder = {
@@ -106,15 +108,15 @@ fun SearchTextField(
shape = MaterialTheme.shapes.medium,
colors =
TextFieldDefaults.colors(
- focusedTextColor = MaterialTheme.colorScheme.onSecondary,
- unfocusedTextColor = MaterialTheme.colorScheme.onSecondary,
+ focusedTextColor = textColor,
+ unfocusedTextColor = textColor,
focusedContainerColor = backgroundColor,
unfocusedContainerColor = backgroundColor,
focusedIndicatorColor = Color.Transparent,
unfocusedIndicatorColor = Color.Transparent,
- cursorColor = MaterialTheme.colorScheme.onSecondary,
- focusedPlaceholderColor = MaterialTheme.colorScheme.onSecondary,
- unfocusedPlaceholderColor = MaterialTheme.colorScheme.onSecondary
+ cursorColor = textColor,
+ focusedPlaceholderColor = textColor,
+ unfocusedPlaceholderColor = textColor
),
contentPadding = PaddingValues(),
)
diff --git a/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/Theme.kt b/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/Theme.kt
index 8342591343..8d68723679 100644
--- a/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/Theme.kt
+++ b/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/Theme.kt
@@ -25,9 +25,11 @@ import net.mullvad.mullvadvpn.lib.theme.color.md_theme_dark_error
import net.mullvad.mullvadvpn.lib.theme.color.md_theme_dark_onError
import net.mullvad.mullvadvpn.lib.theme.color.md_theme_dark_onPrimary
import net.mullvad.mullvadvpn.lib.theme.color.md_theme_dark_onSurfaceVariant
+import net.mullvad.mullvadvpn.lib.theme.color.md_theme_dark_onTertiaryContainer
import net.mullvad.mullvadvpn.lib.theme.color.md_theme_dark_primary
import net.mullvad.mullvadvpn.lib.theme.color.md_theme_dark_secondaryContainer
import net.mullvad.mullvadvpn.lib.theme.color.md_theme_dark_surfaceVariant
+import net.mullvad.mullvadvpn.lib.theme.color.md_theme_dark_tertiaryContainer
import net.mullvad.mullvadvpn.lib.theme.dimensions.Dimensions
import net.mullvad.mullvadvpn.lib.theme.dimensions.defaultDimensions
import net.mullvad.mullvadvpn.lib.theme.typeface.TypeScale
@@ -63,8 +65,8 @@ private val darkColorScheme =
secondaryContainer = md_theme_dark_secondaryContainer,
tertiary = MullvadRed,
// onTertiary = md_theme_dark_onTertiary,
- // tertiaryContainer = md_theme_dark_tertiaryContainer,
- // onTertiaryContainer = md_theme_dark_onTertiaryContainer,
+ tertiaryContainer = md_theme_dark_tertiaryContainer,
+ onTertiaryContainer = md_theme_dark_onTertiaryContainer,
error = md_theme_dark_error,
errorContainer = MullvadYellow,
onError = md_theme_dark_onError,
diff --git a/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/Color.kt b/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/Color.kt
index 0369ca8700..82f924ebe0 100644
--- a/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/Color.kt
+++ b/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/Color.kt
@@ -6,35 +6,11 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.Color
internal val MullvadYellow = Color(0xFFFFD524)
-
-@Deprecated(
- "Deprecated for external usage and will be marked as internal in the future. Use material colors instead."
-)
-val MullvadBlue = Color(0xFF294D73)
-@Deprecated(
- "Deprecated for external usage and will be marked as internal in the future. Use material colors instead."
-)
-val MullvadDarkBlue = Color(0xFF192E45)
-@Deprecated(
- "Deprecated for external usage and will be marked as internal in the future. Use material colors instead."
-)
-val MullvadGreen = Color(0xFF44AD4D)
-@Deprecated(
- "Deprecated for external usage and will be marked as internal in the future. Use material colors instead."
-)
-val MullvadRed = Color(0xFFE34039)
-@Deprecated(
- "Deprecated for external usage and will be marked as internal in the future. Use material colors instead."
-)
-val MullvadWhite = Color(0xFFFFFFFF)
-@Deprecated(
- "Deprecated for external usage and will be marked as internal in the future. Use material colors instead."
-)
-val MullvadWhite10 = Color(0x1AFFFFFF)
-@Deprecated(
- "Deprecated for external usage and will be marked as internal in the future. Use material colors instead."
-)
-val MullvadWhite60 = Color(0x99FFFFFF)
+internal val MullvadGreen = Color(0xFF44AD4D)
+internal val MullvadWhite60 = Color(0x99FFFFFF)
+internal val MullvadWhite = Color(0xFFFFFFFF)
+internal val MullvadRed = Color(0xFFE34039)
+internal val MullvadDarkBlue = Color(0xFF192E45)
const val AlphaVisible = 1f
const val AlphaDisabled = 0.2f
diff --git a/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/ColorTokens.kt b/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/ColorTokens.kt
index f0145653e5..413a37f93e 100644
--- a/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/ColorTokens.kt
+++ b/android/lib/theme/src/main/kotlin/net/mullvad/mullvadvpn/lib/theme/color/ColorTokens.kt
@@ -43,8 +43,10 @@ internal val md_theme_dark_secondaryContainer =
internal val md_theme_dark_onSecondaryContainer = Color(0xFFD9EEDB) // Text in titlebar
internal val md_theme_dark_tertiary = Color(0xFF99454F) // Disconnect button
internal val md_theme_dark_onTertiary = Color(0xFFFFFFFF) // MullvadWhite/Text on disconnect button
-internal val md_theme_dark_tertiaryContainer = Color(0xFF643F00) // Generated
-internal val md_theme_dark_onTertiaryContainer = Color(0xFFFFFFFF) // MullvadWhite
+internal val md_theme_dark_tertiaryContainer =
+ Color(0xff304358) // MullvadWhite Alpha 10 composite over MullvadDarkBlue
+internal val md_theme_dark_onTertiaryContainer =
+ Color(0xffacb4bc) // MullvadWhite Alpha 60 composite over tertiary container
internal val md_theme_dark_error = Color(0xFFE34039) // MullvadRed
internal val md_theme_dark_errorContainer = Color(0xFFE34039) // MullvadRed //Duplicate
internal val md_theme_dark_onError = Color(0xFFFFFFFF) // MullvadWhite