Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Mnemonic warning text transitions on reveal #857

### Changed
- Updated design of the success screen in the manual channel setup flow #883
- Unified send flow with payment method switcher, details toggle, Lightning support for BIP21 payments, and improved fee rate defaults #863
- Settings redesigned with tabbed navigation (General/Security/Advanced) with swipe support #857
- Icons added to all settings rows for faster scanning #857
Expand Down
40 changes: 38 additions & 2 deletions app/src/main/java/to/bitkit/ui/components/Button.kt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.requiredHeight
Expand Down Expand Up @@ -83,6 +82,7 @@ enum class ButtonSize {
Small -> 8.dp
Large -> 6.dp
}

fun secondaryBorder(enabled: Boolean): BorderStroke = when (this) {
Large -> BorderStroke(2.dp, if (enabled) Colors.Gray4 else Color.Transparent)
Small -> BorderStroke(1.dp, if (enabled) Colors.White16 else Color.Transparent)
Expand Down Expand Up @@ -183,6 +183,7 @@ fun SecondaryButton(
// and AFTER size modifiers (Haze needs to know dimensions)
val buttonShape = MaterialTheme.shapes.extraLarge
Box(
propagateMinConstraints = true,
modifier = modifier
.then(if (fullWidth) Modifier.fillMaxWidth() else Modifier)
.requiredHeight(size.height)
Expand All @@ -208,7 +209,6 @@ fun SecondaryButton(
colors = AppButtonDefaults.secondaryColors.copy(contentColor = contentColor),
contentPadding = contentPadding,
border = border,
modifier = if (fullWidth) Modifier.fillMaxSize() else Modifier,
) {
if (isLoading) {
GradientCircularProgressIndicator(
Expand Down Expand Up @@ -488,6 +488,25 @@ private fun SecondaryButtonPreview() {
)
},
)
Row(
modifier = Modifier.fillMaxWidth(),
horizontalArrangement = Arrangement.spacedBy(8.dp)
) {
SecondaryButton(
text = "Secondary",
fullWidth = false,
hazeState = hazeState,
onClick = {},
modifier = Modifier.weight(1f)
)
SecondaryButton(
text = "Secondary",
fullWidth = false,
hazeState = hazeState,
onClick = {},
modifier = Modifier.weight(1f)
)
}
SecondaryButton(
text = "Secondary Small",
size = ButtonSize.Small,
Expand Down Expand Up @@ -588,6 +607,23 @@ private fun TertiaryButtonPreview() {
},
onClick = {}
)
Row(
modifier = Modifier.fillMaxWidth(),
horizontalArrangement = Arrangement.spacedBy(8.dp)
) {
TertiaryButton(
text = "Tertiary",
fullWidth = false,
onClick = {},
modifier = Modifier.weight(1f)
)
TertiaryButton(
text = "Tertiary",
fullWidth = false,
onClick = {},
modifier = Modifier.weight(1f)
)
}
TertiaryButton(
text = "Tertiary Small",
size = ButtonSize.Small,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ fun ExternalSuccessScreen(
onContinue: () -> Unit,
) {
InfoScreenContent(
navTitle = stringResource(R.string.lightning__external__nav_title),
navTitle = stringResource(R.string.lightning__external_success__nav_title),
title = stringResource(R.string.lightning__external_success__title).withAccent(accentColor = Colors.Purple),
description = stringResource(R.string.lightning__external_success__text).withAccentBoldBright(),
image = painterResource(R.drawable.switch_box),
image = painterResource(R.drawable.lightning),
buttonText = localizedRandom(R.string.common__ok_random),
onButtonClick = onContinue,
testTag = "ExternalSuccess",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,10 @@ import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.WindowInsetsSides
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.offset
import androidx.compose.foundation.layout.only
import androidx.compose.foundation.layout.padding
Expand Down Expand Up @@ -45,6 +43,7 @@ import to.bitkit.ui.components.EmptyStateView
import to.bitkit.ui.components.IncomingTransfer
import to.bitkit.ui.components.SecondaryButton
import to.bitkit.ui.components.TabBar
import to.bitkit.ui.components.VerticalSpacer
import to.bitkit.ui.scaffold.AppTopBar
import to.bitkit.ui.scaffold.DrawerNavIcon
import to.bitkit.ui.scaffold.ScreenColumn
Expand Down Expand Up @@ -130,7 +129,7 @@ fun SpendingWalletScreen(
}

if (!showEmptyState) {
Spacer(modifier = Modifier.height(32.dp))
VerticalSpacer(32.dp)

if (canTransfer) {
SecondaryButton(
Expand Down Expand Up @@ -160,8 +159,7 @@ fun SpendingWalletScreen(
}
if (showEmptyState) {
EmptyStateView(
text = stringResource(R.string.wallet__spending__onboarding)
.withAccent(accentColor = Colors.Purple),
text = stringResource(R.string.wallet__spending__onboarding).withAccent(accentColor = Colors.Purple),
modifier = Modifier
.systemBarsPadding()
.align(Alignment.BottomCenter)
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-ar/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,9 @@
<string name="lightning__external_manual__scan">مسح QR</string>
<string name="lightning__external_manual__text">يمكنك استخدام عقدة خارجية لفتح اتصال Lightning يدويًا. أدخل تفاصيل العقدة للمتابعة.</string>
<string name="lightning__external_manual__title">&lt;accent&gt;إعداد يدوي&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">رصيد الإنفاق</string>
<string name="lightning__external_success__text">بدأ اتصال Lightning. ستتمكن من استخدام رصيد الإنفاق خلال &lt;accent&gt;±30 دقيقة&lt;/accent&gt; (يعتمد على إعدادات العقدة).</string>
<string name="lightning__external_success__title">بدأ\n&lt;accent&gt;الاتصال&lt;/accent&gt;</string>
<string name="lightning__external_success__title">القناة\n&lt;accent&gt;قيد الفتح&lt;/accent&gt;</string>
<string name="lightning__fee_rate">معدل الرسوم</string>
<string name="lightning__fee_rate_update_time">وقت تحديث ذاكرة التخزين المؤقت لمعدل الرسوم</string>
<string name="lightning__fees">الرسوم</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-b+es+419/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,9 @@
<string name="lightning__external_manual__scan">Escanear QR</string>
<string name="lightning__external_manual__text">Puedes usar un nodo externo para abrir una conexión Lightning manualmente. Ingresa los datos del nodo para continuar.</string>
<string name="lightning__external_manual__title">&lt;accent&gt;Config. manual&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Saldo de gasto</string>
<string name="lightning__external_success__text">Conexión lightning iniciada. Podrá utilizar su saldo de gastos en &lt;accent&gt;±30 minutos&lt;/accent&gt; (depende de la config. del nodo).</string>
<string name="lightning__external_success__title">Conexión\n&lt;accent&gt;iniciada&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Apertura\n&lt;accent&gt;de canal&lt;/accent&gt;</string>
<string name="lightning__fee_rate">Tarifa</string>
<string name="lightning__fee_rate_update_time">Hora de actualización de caché de tarifa</string>
<string name="lightning__fees">Tarifa</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-ca/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,9 @@
<string name="lightning__external_manual__scan">Escaneja QR</string>
<string name="lightning__external_manual__text">Pots utilitzar un node extern per obrir manualment una connexió Lightning. Introdueix els detalls del node per continuar.</string>
<string name="lightning__external_manual__title">&lt;accent&gt;Configuració manual&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Saldo de despesa</string>
<string name="lightning__external_success__text">Connexió Lightning iniciada. Podràs utilitzar el teu saldo de despesa en &lt;accent&gt;±30 minuts&lt;/accent&gt; (depèn de la configuració del node).</string>
<string name="lightning__external_success__title">Connexió\n&lt;accent&gt;iniciada&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Obertura\n&lt;accent&gt;de canal&lt;/accent&gt;</string>
<string name="lightning__fee_rate">Taxa de tarifa</string>
<string name="lightning__fee_rate_update_time">Temps d\'actualització de la memòria cau de tarifes</string>
<string name="lightning__fees">Tarifes</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-cs/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,9 @@
<string name="lightning__external_manual__scan">Skenovat QR</string>
<string name="lightning__external_manual__text">Můžete použít externí uzel k ručnímu otevření lightning připojení. Zadejte údaje o uzlu pro pokračování.</string>
<string name="lightning__external_manual__title">&lt;accent&gt;Manuální nastavení&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Zůstatek k utracení</string>
<string name="lightning__external_success__text">Iniciováno připojení lightning. Zůstatek na účtu budete moci použít do &lt;accent&gt;±30 minut&lt;/accent&gt; (závisí na konfiguraci uzlu).</string>
<string name="lightning__external_success__title">Připojení\n&lt;accent&gt;iniciováno&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Otevírání\n&lt;accent&gt;kanálu&lt;/accent&gt;</string>
<string name="lightning__fee_rate">Sazba poplatku</string>
<string name="lightning__fee_rate_update_time">Čas aktualizace mezipaměti poplatků</string>
<string name="lightning__fees">Poplatky</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-de/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,8 @@
<string name="lightning__external_manual__paste">Paste Node URI</string>
<string name="lightning__external_manual__scan">QR-Code scannen</string>
<string name="lightning__external_amount__title">Spending\n&lt;accent&gt;balance&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Verbindung\n&lt;accent&gt;initiiert&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Ausgabenguthaben</string>
<string name="lightning__external_success__title">Kanal wird\n&lt;accent&gt;geöffnet&lt;/accent&gt;</string>
<string name="lightning__external_success__text">Lightning-Verbindung initiiert. Du kannst dein Guthaben in &lt;accent&gt;±30 Minuten&lt;/accent&gt; verwenden (abhängig von der Node-Konfiguration).</string>
<string name="lightning__error_channel_purchase">Einrichtung der Instant-Zahlungen fehlgeschlagen</string>
<string name="lightning__error_channel_setup_msg">Ein Fehler ist bei der Einrichtung deines Sofortguthabens aufgetreten. {raw}</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-el/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,9 @@
<string name="lightning__external_manual__scan">Σάρωση QR</string>
<string name="lightning__external_manual__text">Μπορείς να χρησιμοποιήσεις έναν εξωτερικό κόμβο για να ανοίξεις χειροκίνητα μια σύνδεση Lightning. Εισάγαγε τα στοιχεία του κόμβου για να συνεχίσεις.</string>
<string name="lightning__external_manual__title">&lt;accent&gt;Χειροκίνητη ρύθμιση&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Υπόλοιπο δαπανών</string>
<string name="lightning__external_success__text">Η σύνδεση Lightning ξεκίνησε. Θα μπορείς να χρησιμοποιήσεις το υπόλοιπο δαπανών σε &lt;accent&gt;±30 λεπτά&lt;/accent&gt; (εξαρτάται από τη διαμόρφωση του κόμβου).</string>
<string name="lightning__external_success__title">Η σύνδεση\n&lt;accent&gt;ξεκίνησε&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Άνοιγμα\n&lt;accent&gt;καναλιού&lt;/accent&gt;</string>
<string name="lightning__fee_rate">Ποσοστό τέλους</string>
<string name="lightning__fee_rate_update_time">Χρόνος ενημέρωσης cache τελών</string>
<string name="lightning__fees">Τέλη</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-es-rES/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,9 @@
<string name="lightning__external_manual__scan">Escanear QR</string>
<string name="lightning__external_manual__text">Puedes usar un nodo externo para abrir manualmente una conexión Lightning. Introduce los datos del nodo para continuar.</string>
<string name="lightning__external_manual__title">&lt;accent&gt;Configuración manual&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Saldo de gasto</string>
<string name="lightning__external_success__text">Conexión Lightning iniciada. Podrá usar su balance para pagar en &lt;accent&gt;±30 minutos&lt;/accent&gt; (depende de la configuración del nodo).</string>
<string name="lightning__external_success__title">Conexión\n&lt;accent&gt;iniciada&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Apertura\n&lt;accent&gt;de canal&lt;/accent&gt;</string>
<string name="lightning__fee_rate">Tasa de comisión</string>
<string name="lightning__fee_rate_update_time">Hora de actualización de caché de tasas</string>
<string name="lightning__fees">Comisiones</string>
Expand Down
5 changes: 3 additions & 2 deletions app/src/main/res/values-es/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,9 @@
<string name="lightning__external_manual__paste">Pegar URI del nodo</string>
<string name="lightning__external_manual__text">Puedes usar un nodo externo para abrir manualmente una conexión Lightning. Introduce los datos del nodo para continuar.</string>
<string name="lightning__external_manual__title">&lt;accent&gt;Configuración manual&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Conexión\n&lt;accent&gt;iniciada&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Saldo de gasto</string>
<string name="lightning__external_success__text">Conexión Lightning iniciada. Podrá usar su balance para pagar en &lt;accent&gt;±30 minutos&lt;/accent&gt; (depende de la configuración del nodo).</string>
<string name="lightning__external_success__title">Apertura\n&lt;accent&gt;de canal&lt;/accent&gt;</string>
<string name="lightning__fee_rate">Tasa de comisión</string>
<string name="lightning__fee_rate_update_time">Hora de actualización de caché de comisiones</string>
<string name="lightning__fees">Comisiones</string>
Expand Down Expand Up @@ -201,7 +203,6 @@
<string name="lightning__external_manual__host">Servidor</string>
<string name="lightning__external_manual__port">Puerto</string>
<string name="lightning__external_manual__scan">Escanear QR</string>
<string name="lightning__external_success__text">Conexión Lightning iniciada. Podrá usar su balance para pagar en &lt;accent&gt;±30 minutos&lt;/accent&gt; (depende de la configuración del nodo).</string>
<string name="lightning__error_channel_purchase">Error en la Configuración de Pago Instántaneo</string>
<string name="lightning__spending">Gasto</string>
<string name="lightning__savings">Ahorro</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-fr/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,8 @@
<string name="lightning__external_manual__paste">Coller l\'URI du nœud</string>
<string name="lightning__external_manual__scan">Scanner QR</string>
<string name="lightning__external_amount__title">Dépenses \n&lt;accent&gt;solde&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Connexion \n&lt;accent&gt;initiée&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Solde de dépenses</string>
<string name="lightning__external_success__title">Ouverture\n&lt;accent&gt;du canal&lt;/accent&gt;</string>
<string name="lightning__external_success__text">La connexion Lightning est initiée. Vous pourrez utiliser votre compte courant dans &lt;accent&gt;±30 minutes&lt;/accent&gt; (en fonction de la configuration du nœud).</string>
<string name="lightning__error_channel_purchase">Échec de la configuration des paiements instantanés</string>
<string name="lightning__error_channel_setup_msg">Une erreur s\'est produite lors de l\'établissement de votre solde du compte courant. {raw}</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-it/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,9 @@
<string name="lightning__external_manual__scan">Scansiona QR</string>
<string name="lightning__external_manual__text">Puoi usare un nodo esterno per aprire manualmente una connessione Lightning. Inserisci i dettagli del nodo per continuare.</string>
<string name="lightning__external_manual__title">&lt;accent&gt;Configurazione manuale&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Saldo di spesa</string>
<string name="lightning__external_success__text">Connessione Lightning avviata. Potrai utilizzare il tuo conto di spesa in &lt;accent&gt;±30 minuti&lt;/accent&gt; (dipende dalla configurazione del nodo).</string>
<string name="lightning__external_success__title">Connessione\n&lt;accent&gt;avviata&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Apertura\n&lt;accent&gt;del canale&lt;/accent&gt;</string>
<string name="lightning__fee_rate">Tasso di commissione</string>
<string name="lightning__fee_rate_update_time">Tempo di Aggiornamento Cache Commissioni</string>
<string name="lightning__fees">Commissioni</string>
Expand Down
3 changes: 2 additions & 1 deletion app/src/main/res/values-nl/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,9 @@
<string name="lightning__external_manual__scan">QR scannen</string>
<string name="lightning__external_manual__text">Je kunt een externe node gebruiken om handmatig een Lightning-verbinding te openen. Voer de node-gegevens in om door te gaan.</string>
<string name="lightning__external_manual__title">&lt;accent&gt;Handmatige configuratie&lt;/accent&gt;</string>
<string name="lightning__external_success__nav_title">Uitgavenbalans</string>
<string name="lightning__external_success__text">Lightning-verbinding gestart. Je kunt je bestedingssaldo gebruiken in &lt;accent&gt;±30 minuten&lt;/accent&gt; (afhankelijk van node-configuratie).</string>
<string name="lightning__external_success__title">Verbinding\n&lt;accent&gt;gestart&lt;/accent&gt;</string>
<string name="lightning__external_success__title">Kanaal wordt\n&lt;accent&gt;geopend&lt;/accent&gt;</string>
<string name="lightning__fee_rate">Vergoedingstarief</string>
<string name="lightning__fee_rate_update_time">Vergoedingstarief cache update tijd</string>
<string name="lightning__fees">Vergoedingen</string>
Expand Down
Loading
Loading