summaryrefslogtreecommitdiff
path: root/wallet/src/main/java/net/taler
diff options
context:
space:
mode:
authorIván Ávalos <avalos@disroot.org>2023-01-11 21:08:11 -0600
committerIván Ávalos <avalos@disroot.org>2023-01-26 12:18:54 -0600
commitc1684e6c3f6f131136efebcb2724e681b79aef6c (patch)
treee19785eb69929b8c594e06c24197f8fdde865f4d /wallet/src/main/java/net/taler
parentc2a9681cd415e6d5b0a100b14624326a51d5a293 (diff)
downloadtaler-android-c1684e6c3f6f131136efebcb2724e681b79aef6c.tar.gz
taler-android-c1684e6c3f6f131136efebcb2724e681b79aef6c.tar.bz2
taler-android-c1684e6c3f6f131136efebcb2724e681b79aef6c.zip
[wallet] Experimental port to Material 3
Diffstat (limited to 'wallet/src/main/java/net/taler')
-rw-r--r--wallet/src/main/java/net/taler/wallet/MainActivity.kt15
-rw-r--r--wallet/src/main/java/net/taler/wallet/ReceiveFundsFragment.kt16
-rw-r--r--wallet/src/main/java/net/taler/wallet/SendFundsFragment.kt17
-rw-r--r--wallet/src/main/java/net/taler/wallet/WalletApp.kt27
-rw-r--r--wallet/src/main/java/net/taler/wallet/compose/QrCodeUriComposable.kt20
-rw-r--r--wallet/src/main/java/net/taler/wallet/compose/ShareButton.kt14
-rw-r--r--wallet/src/main/java/net/taler/wallet/compose/Utils.kt6
-rw-r--r--wallet/src/main/java/net/taler/wallet/deposit/MakeBitcoinDepositComposable.kt10
-rw-r--r--wallet/src/main/java/net/taler/wallet/deposit/MakeDepositComposable.kt10
-rw-r--r--wallet/src/main/java/net/taler/wallet/deposit/PayToUriFragment.kt40
-rw-r--r--wallet/src/main/java/net/taler/wallet/deposit/TransactionDepositComposable.kt8
-rw-r--r--wallet/src/main/java/net/taler/wallet/exchanges/AddExchangeDialogFragment.kt3
-rw-r--r--wallet/src/main/java/net/taler/wallet/peer/IncomingComposable.kt26
-rw-r--r--wallet/src/main/java/net/taler/wallet/peer/OutgoingPullIntroComposable.kt10
-rw-r--r--wallet/src/main/java/net/taler/wallet/peer/OutgoingPullResultComposable.kt16
-rw-r--r--wallet/src/main/java/net/taler/wallet/peer/OutgoingPushIntroComposable.kt14
-rw-r--r--wallet/src/main/java/net/taler/wallet/peer/OutgoingPushResultComposable.kt16
-rw-r--r--wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullCredit.kt8
-rw-r--r--wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullDebit.kt2
-rw-r--r--wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushCredit.kt2
-rw-r--r--wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushDebit.kt8
-rw-r--r--wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt4
-rw-r--r--wallet/src/main/java/net/taler/wallet/transactions/DeleteTransactionComposable.kt14
-rw-r--r--wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt4
-rw-r--r--wallet/src/main/java/net/taler/wallet/transactions/TransactionPeerFragment.kt10
-rw-r--r--wallet/src/main/java/net/taler/wallet/transactions/TransactionTipFragment.kt8
-rw-r--r--wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt4
-rw-r--r--wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenBitcoin.kt24
-rw-r--r--wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenIBAN.kt26
29 files changed, 221 insertions, 161 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/MainActivity.kt b/wallet/src/main/java/net/taler/wallet/MainActivity.kt
index 13fd394..cd07ef8 100644
--- a/wallet/src/main/java/net/taler/wallet/MainActivity.kt
+++ b/wallet/src/main/java/net/taler/wallet/MainActivity.kt
@@ -22,6 +22,7 @@ import android.content.Context
import android.content.Intent
import android.content.Intent.ACTION_VIEW
import android.content.IntentFilter
+import android.content.res.Configuration
import android.net.Uri
import android.os.Bundle
import android.util.Log
@@ -34,6 +35,7 @@ import androidx.activity.viewModels
import androidx.appcompat.app.AppCompatActivity
import androidx.core.os.bundleOf
import androidx.core.view.GravityCompat.START
+import androidx.core.view.WindowInsetsControllerCompat
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.Observer
import androidx.lifecycle.viewModelScope
@@ -44,6 +46,7 @@ import androidx.navigation.ui.setupWithNavController
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
import androidx.preference.PreferenceFragmentCompat.OnPreferenceStartFragmentCallback
+import com.google.android.material.elevation.SurfaceColors
import com.google.android.material.navigation.NavigationView.OnNavigationItemSelectedListener
import com.google.android.material.snackbar.BaseTransientBottomBar.LENGTH_LONG
import com.google.android.material.snackbar.Snackbar
@@ -84,8 +87,20 @@ class MainActivity : AppCompatActivity(), OnNavigationItemSelectedListener,
handleTalerUri(result.contents, "QR code")
}
+ private val insetsController: WindowInsetsControllerCompat? by lazy {
+ window?.let { window -> WindowInsetsControllerCompat(window, window.decorView) }
+ }
+
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
+
+ // Set status bar color
+ val color = SurfaceColors.SURFACE_0.getColor(this)
+ window.statusBarColor = color
+ window.navigationBarColor = color
+ insetsController?.isAppearanceLightStatusBars =
+ resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK != Configuration.UI_MODE_NIGHT_YES
+
ui = ActivityMainBinding.inflate(layoutInflater)
setContentView(ui.root)
diff --git a/wallet/src/main/java/net/taler/wallet/ReceiveFundsFragment.kt b/wallet/src/main/java/net/taler/wallet/ReceiveFundsFragment.kt
index ac6b0bd..730faae 100644
--- a/wallet/src/main/java/net/taler/wallet/ReceiveFundsFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/ReceiveFundsFragment.kt
@@ -31,11 +31,12 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.OutlinedTextField
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ExperimentalMaterial3Api
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.OutlinedTextField
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
@@ -111,6 +112,7 @@ class ReceiveFundsFragment : Fragment() {
}
}
+@OptIn(ExperimentalMaterial3Api::class)
@Composable
private fun ReceiveFundsIntro(
currency: String,
@@ -157,13 +159,13 @@ private fun ReceiveFundsIntro(
modifier = Modifier,
text = currency,
softWrap = false,
- style = MaterialTheme.typography.h6,
+ style = MaterialTheme.typography.titleLarge,
)
}
Text(
modifier = Modifier.padding(horizontal = 16.dp),
text = stringResource(R.string.receive_intro),
- style = MaterialTheme.typography.h6,
+ style = MaterialTheme.typography.titleLarge,
)
Row(modifier = Modifier.padding(16.dp)) {
Button(
diff --git a/wallet/src/main/java/net/taler/wallet/SendFundsFragment.kt b/wallet/src/main/java/net/taler/wallet/SendFundsFragment.kt
index 90b4ee0..daf1898 100644
--- a/wallet/src/main/java/net/taler/wallet/SendFundsFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/SendFundsFragment.kt
@@ -29,11 +29,12 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.OutlinedTextField
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ExperimentalMaterial3Api
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.OutlinedTextField
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
@@ -98,6 +99,7 @@ class SendFundsFragment : Fragment() {
}
}
+@OptIn(ExperimentalMaterial3Api::class)
@Composable
private fun SendFundsIntro(
currency: String,
@@ -152,13 +154,13 @@ private fun SendFundsIntro(
modifier = Modifier,
text = currency,
softWrap = false,
- style = MaterialTheme.typography.h6,
+ style = MaterialTheme.typography.titleLarge,
)
}
Text(
modifier = Modifier.padding(horizontal = 16.dp),
text = stringResource(R.string.send_intro),
- style = MaterialTheme.typography.h6,
+ style = MaterialTheme.typography.titleLarge,
)
Row(modifier = Modifier.padding(16.dp)) {
fun onClickButton(block: (Amount) -> Unit) {
@@ -170,6 +172,7 @@ private fun SendFundsIntro(
Button(
modifier = Modifier
.padding(end = 16.dp)
+ .height(IntrinsicSize.Max)
.weight(1f),
onClick = {
onClickButton { amount -> onDeposit(amount) }
diff --git a/wallet/src/main/java/net/taler/wallet/WalletApp.kt b/wallet/src/main/java/net/taler/wallet/WalletApp.kt
new file mode 100644
index 0000000..e94b8fe
--- /dev/null
+++ b/wallet/src/main/java/net/taler/wallet/WalletApp.kt
@@ -0,0 +1,27 @@
+/*
+ * This file is part of GNU Taler
+ * (C) 2023 Taler Systems S.A.
+ *
+ * GNU Taler is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU General Public License as published by the Free Software
+ * Foundation; either version 3, or (at your option) any later version.
+ *
+ * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
+ */
+
+package net.taler.wallet
+
+import android.app.Application
+import com.google.android.material.color.DynamicColors
+
+class WalletApp: Application() {
+ override fun onCreate() {
+ super.onCreate()
+ DynamicColors.applyToActivitiesIfAvailable(this)
+ }
+} \ No newline at end of file
diff --git a/wallet/src/main/java/net/taler/wallet/compose/QrCodeUriComposable.kt b/wallet/src/main/java/net/taler/wallet/compose/QrCodeUriComposable.kt
index 5359f1a..0157f90 100644
--- a/wallet/src/main/java/net/taler/wallet/compose/QrCodeUriComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/compose/QrCodeUriComposable.kt
@@ -29,12 +29,12 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.rememberScrollState
-import androidx.compose.material.Button
-import androidx.compose.material.ButtonColors
-import androidx.compose.material.ButtonDefaults
-import androidx.compose.material.Icon
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ButtonColors
+import androidx.compose.material3.ButtonDefaults
+import androidx.compose.material3.Icon
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Text
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ContentCopy
import androidx.compose.runtime.Composable
@@ -86,7 +86,7 @@ fun ColumnScope.QrCodeUriComposable(
Text(
modifier = Modifier.horizontalScroll(scrollState),
fontFamily = FontFamily.Monospace,
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
text = talerUri,
)
}
@@ -100,11 +100,11 @@ fun ColumnScope.QrCodeUriComposable(
label = clipBoardLabel,
content = talerUri,
buttonText = buttonText,
- colors = ButtonDefaults.buttonColors(backgroundColor = Color.Transparent)
+ colors = ButtonDefaults.buttonColors(containerColor = Color.Transparent)
)
ShareButton(
content = talerUri,
- colors = ButtonDefaults.buttonColors(backgroundColor = Color.Transparent)
+ colors = ButtonDefaults.buttonColors(containerColor = Color.Transparent)
)
}
}
@@ -136,7 +136,7 @@ fun CopyToClipboardButton(
Text(
modifier = Modifier.padding(start = 8.dp),
text = buttonText,
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
)
}
}
diff --git a/wallet/src/main/java/net/taler/wallet/compose/ShareButton.kt b/wallet/src/main/java/net/taler/wallet/compose/ShareButton.kt
index 0ac7048..ebf2a2f 100644
--- a/wallet/src/main/java/net/taler/wallet/compose/ShareButton.kt
+++ b/wallet/src/main/java/net/taler/wallet/compose/ShareButton.kt
@@ -21,12 +21,12 @@ import android.content.Intent.ACTION_SEND
import android.content.Intent.EXTRA_TEXT
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.padding
-import androidx.compose.material.Button
-import androidx.compose.material.ButtonColors
-import androidx.compose.material.ButtonDefaults
-import androidx.compose.material.Icon
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ButtonColors
+import androidx.compose.material3.ButtonDefaults
+import androidx.compose.material3.Icon
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Text
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Share
import androidx.compose.runtime.Composable
@@ -64,7 +64,7 @@ fun ShareButton(
Text(
modifier = Modifier.padding(start = 8.dp),
text = buttonText,
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
)
}
}
diff --git a/wallet/src/main/java/net/taler/wallet/compose/Utils.kt b/wallet/src/main/java/net/taler/wallet/compose/Utils.kt
index 8e3a032..9a27431 100644
--- a/wallet/src/main/java/net/taler/wallet/compose/Utils.kt
+++ b/wallet/src/main/java/net/taler/wallet/compose/Utils.kt
@@ -16,7 +16,7 @@
package net.taler.wallet.compose
-import androidx.compose.material.Surface
+import androidx.compose.material3.Surface
import androidx.compose.runtime.Composable
import androidx.compose.runtime.State
import androidx.compose.runtime.collectAsState
@@ -25,7 +25,7 @@ import androidx.compose.ui.platform.LocalLifecycleOwner
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.flowWithLifecycle
-import com.google.accompanist.themeadapter.material.MdcTheme
+import com.google.accompanist.themeadapter.material3.Mdc3Theme
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.StateFlow
import kotlin.coroutines.CoroutineContext
@@ -56,7 +56,7 @@ fun <T> StateFlow<T>.collectAsStateLifecycleAware(
@Composable
fun TalerSurface(content: @Composable () -> Unit) {
- MdcTheme {
+ Mdc3Theme {
Surface {
content()
}
diff --git a/wallet/src/main/java/net/taler/wallet/deposit/MakeBitcoinDepositComposable.kt b/wallet/src/main/java/net/taler/wallet/deposit/MakeBitcoinDepositComposable.kt
index 1ff3423..94899c5 100644
--- a/wallet/src/main/java/net/taler/wallet/deposit/MakeBitcoinDepositComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/deposit/MakeBitcoinDepositComposable.kt
@@ -22,10 +22,11 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.OutlinedTextField
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ExperimentalMaterial3Api
+import androidx.compose.material3.OutlinedTextField
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
@@ -50,6 +51,7 @@ import net.taler.wallet.R
import net.taler.wallet.transactions.AmountType
import net.taler.wallet.transactions.TransactionAmountComposable
+@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun MakeBitcoinDepositComposable(
state: DepositState,
diff --git a/wallet/src/main/java/net/taler/wallet/deposit/MakeDepositComposable.kt b/wallet/src/main/java/net/taler/wallet/deposit/MakeDepositComposable.kt
index 8b5cac1..9e14514 100644
--- a/wallet/src/main/java/net/taler/wallet/deposit/MakeDepositComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/deposit/MakeDepositComposable.kt
@@ -22,10 +22,11 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.OutlinedTextField
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ExperimentalMaterial3Api
+import androidx.compose.material3.OutlinedTextField
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
@@ -47,6 +48,7 @@ import androidx.compose.ui.unit.sp
import net.taler.common.Amount
import net.taler.wallet.R
+@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun MakeDepositComposable(
state: DepositState,
diff --git a/wallet/src/main/java/net/taler/wallet/deposit/PayToUriFragment.kt b/wallet/src/main/java/net/taler/wallet/deposit/PayToUriFragment.kt
index 47e8cfb..d004f71 100644
--- a/wallet/src/main/java/net/taler/wallet/deposit/PayToUriFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/deposit/PayToUriFragment.kt
@@ -32,14 +32,15 @@ import androidx.compose.foundation.layout.wrapContentSize
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.DropdownMenu
-import androidx.compose.material.DropdownMenuItem
-import androidx.compose.material.LocalTextStyle
-import androidx.compose.material.OutlinedTextField
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
-import androidx.compose.material.TextFieldDefaults
+import androidx.compose.material3.Button
+import androidx.compose.material3.DropdownMenu
+import androidx.compose.material3.DropdownMenuItem
+import androidx.compose.material3.ExperimentalMaterial3Api
+import androidx.compose.material3.LocalTextStyle
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.OutlinedTextField
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
@@ -115,6 +116,7 @@ class PayToUriFragment : Fragment() {
}
+@OptIn(ExperimentalMaterial3Api::class)
@Composable
private fun PayToComposable(
currencies: List<String>,
@@ -183,6 +185,7 @@ private fun PayToComposable(
}
}
+@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun CurrencyDropdown(
currencies: List<String>,
@@ -203,9 +206,7 @@ fun CurrencyDropdown(
readOnly = true,
enabled = false,
textStyle = LocalTextStyle.current.copy( // show text as if not disabled
- color = TextFieldDefaults.outlinedTextFieldColors().textColor(
- enabled = true,
- ).value
+ color = MaterialTheme.colorScheme.onSurfaceVariant
),
singleLine = true,
label = {
@@ -218,13 +219,16 @@ fun CurrencyDropdown(
modifier = Modifier,
) {
currencies.forEachIndexed { index, s ->
- DropdownMenuItem(onClick = {
- selectedIndex = index
- onCurrencyChanged(currencies[index])
- expanded = false
- }) {
- Text(text = s)
- }
+ DropdownMenuItem(
+ text = {
+ Text(text = s)
+ },
+ onClick = {
+ selectedIndex = index
+ onCurrencyChanged(currencies[index])
+ expanded = false
+ }
+ )
}
}
}
diff --git a/wallet/src/main/java/net/taler/wallet/deposit/TransactionDepositComposable.kt b/wallet/src/main/java/net/taler/wallet/deposit/TransactionDepositComposable.kt
index 7c5c7a2..f6f411a 100644
--- a/wallet/src/main/java/net/taler/wallet/deposit/TransactionDepositComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/deposit/TransactionDepositComposable.kt
@@ -21,9 +21,9 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
@@ -53,7 +53,7 @@ fun TransactionDepositComposable(t: TransactionDeposit, onDelete: () -> Unit) {
Text(
modifier = Modifier.padding(16.dp),
text = t.timestamp.ms.toAbsoluteTime(context).toString(),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
)
TransactionAmountComposable(
label = stringResource(id = R.string.transaction_paid),
diff --git a/wallet/src/main/java/net/taler/wallet/exchanges/AddExchangeDialogFragment.kt b/wallet/src/main/java/net/taler/wallet/exchanges/AddExchangeDialogFragment.kt
index 5ea763a..fd942b0 100644
--- a/wallet/src/main/java/net/taler/wallet/exchanges/AddExchangeDialogFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/exchanges/AddExchangeDialogFragment.kt
@@ -22,6 +22,7 @@ import android.widget.TextView
import androidx.appcompat.app.AlertDialog
import androidx.fragment.app.DialogFragment
import androidx.fragment.app.activityViewModels
+import com.google.android.material.dialog.MaterialAlertDialogBuilder
import net.taler.wallet.MainViewModel
import net.taler.wallet.R
@@ -32,7 +33,7 @@ class AddExchangeDialogFragment : DialogFragment() {
private val exchangeManager by lazy { model.exchangeManager }
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
- return AlertDialog.Builder(requireContext(), R.style.DialogTheme)
+ return MaterialAlertDialogBuilder(requireContext(), R.style.MaterialAlertDialog_Material3)
.setIcon(R.drawable.ic_account_balance)
.setTitle(R.string.exchange_list_add)
.setView(R.layout.dialog_exchange_add)
diff --git a/wallet/src/main/java/net/taler/wallet/peer/IncomingComposable.kt b/wallet/src/main/java/net/taler/wallet/peer/IncomingComposable.kt
index 70f36a2..4e54e7b 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/IncomingComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/IncomingComposable.kt
@@ -27,13 +27,13 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.ButtonDefaults
-import androidx.compose.material.Card
-import androidx.compose.material.CircularProgressIndicator
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ButtonDefaults
+import androidx.compose.material3.Card
+import androidx.compose.material3.CircularProgressIndicator
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.State
import androidx.compose.runtime.mutableStateOf
@@ -116,7 +116,7 @@ fun ColumnScope.PeerPullTermsComposable(
.padding(16.dp)
.align(CenterHorizontally),
text = terms.contractTerms.summary,
- style = MaterialTheme.typography.h5,
+ style = MaterialTheme.typography.headlineSmall,
)
Spacer(modifier = Modifier.weight(1f))
Card(modifier = Modifier.fillMaxWidth()) {
@@ -128,12 +128,12 @@ fun ColumnScope.PeerPullTermsComposable(
) {
Text(
text = stringResource(id = R.string.payment_label_amount_total),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
)
Text(
modifier = Modifier.padding(start = 8.dp),
text = terms.contractTerms.amount.toString(),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
fontWeight = FontWeight.Bold,
)
}
@@ -143,7 +143,7 @@ fun ColumnScope.PeerPullTermsComposable(
Text(
modifier = Modifier.align(End),
text = stringResource(id = R.string.payment_fee, fee),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
)
}
if (terms is IncomingAccepting) {
@@ -158,7 +158,7 @@ fun ColumnScope.PeerPullTermsComposable(
.align(End)
.padding(top = 8.dp),
colors = ButtonDefaults.buttonColors(
- backgroundColor = colorResource(R.color.green),
+ containerColor = colorResource(R.color.green),
contentColor = Color.White,
),
onClick = { onAccept(terms) },
@@ -179,7 +179,7 @@ fun ColumnScope.PeerPullErrorComposable(s: IncomingError) {
.align(CenterHorizontally)
.padding(horizontal = 32.dp),
text = s.info.userFacingMsg,
- style = MaterialTheme.typography.h5,
+ style = MaterialTheme.typography.headlineSmall,
color = colorResource(id = R.color.red),
)
}
diff --git a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPullIntroComposable.kt b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPullIntroComposable.kt
index 9af3f5d..69c9cea 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPullIntroComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPullIntroComposable.kt
@@ -22,10 +22,11 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.OutlinedTextField
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ExperimentalMaterial3Api
+import androidx.compose.material3.OutlinedTextField
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.State
@@ -50,6 +51,7 @@ import net.taler.wallet.R
import net.taler.wallet.cleanExchange
import net.taler.wallet.exchanges.ExchangeItem
+@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun OutgoingPullIntroComposable(
amount: Amount,
diff --git a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPullResultComposable.kt b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPullResultComposable.kt
index 84d9415..131d83d 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPullResultComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPullResultComposable.kt
@@ -24,11 +24,11 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.CircularProgressIndicator
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.CircularProgressIndicator
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment.Companion.CenterHorizontally
import androidx.compose.ui.Modifier
@@ -55,7 +55,7 @@ fun OutgoingPullResultComposable(state: OutgoingState, onClose: () -> Unit) {
) {
Text(
modifier = Modifier.padding(top = 16.dp, start = 16.dp, end = 16.dp),
- style = MaterialTheme.typography.h6,
+ style = MaterialTheme.typography.titleLarge,
text = stringResource(id = R.string.receive_peer_invoice_instruction),
)
when (state) {
@@ -92,7 +92,7 @@ private fun ColumnScope.PeerPullResponseComposable(state: OutgoingResponse) {
) {
Text(
modifier = Modifier.padding(horizontal = 16.dp),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
text = stringResource(id = R.string.receive_peer_invoice_uri),
)
}
@@ -105,7 +105,7 @@ private fun ColumnScope.PeerPullErrorComposable(state: OutgoingError) {
.align(CenterHorizontally)
.padding(16.dp),
color = colorResource(R.color.red),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
text = state.info.userFacingMsg,
)
}
diff --git a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushIntroComposable.kt b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushIntroComposable.kt
index a77cfb7..0d3030d 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushIntroComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushIntroComposable.kt
@@ -22,11 +22,12 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.OutlinedTextField
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ExperimentalMaterial3Api
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.OutlinedTextField
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
@@ -44,6 +45,7 @@ import androidx.compose.ui.unit.dp
import net.taler.common.Amount
import net.taler.wallet.R
+@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun OutgoingPushIntroComposable(
amount: Amount,
@@ -65,7 +67,7 @@ fun OutgoingPushIntroComposable(
modifier = Modifier,
text = amount.toString(),
softWrap = false,
- style = MaterialTheme.typography.h6,
+ style = MaterialTheme.typography.titleLarge,
)
}
diff --git a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushResultComposable.kt b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushResultComposable.kt
index 27b04c8..bf7592d 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushResultComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/OutgoingPushResultComposable.kt
@@ -24,11 +24,11 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.CircularProgressIndicator
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.CircularProgressIndicator
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment.Companion.CenterHorizontally
import androidx.compose.ui.Modifier
@@ -55,7 +55,7 @@ fun OutgoingPushResultComposable(state: OutgoingState, onClose: () -> Unit) {
) {
Text(
modifier = Modifier.padding(top = 16.dp, start = 16.dp, end = 16.dp),
- style = MaterialTheme.typography.h6,
+ style = MaterialTheme.typography.titleLarge,
text = stringResource(id = R.string.send_peer_payment_instruction),
)
when (state) {
@@ -92,7 +92,7 @@ private fun ColumnScope.PeerPushResponseComposable(state: OutgoingResponse) {
) {
Text(
modifier = Modifier.padding(horizontal = 16.dp),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
text = stringResource(id = R.string.receive_peer_invoice_uri),
)
}
@@ -105,7 +105,7 @@ private fun ColumnScope.PeerPushErrorComposable(state: OutgoingError) {
.align(CenterHorizontally)
.padding(16.dp),
color = colorResource(R.color.red),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
text = state.info.userFacingMsg,
)
}
diff --git a/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullCredit.kt b/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullCredit.kt
index 92264c7..c64f0d3 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullCredit.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullCredit.kt
@@ -18,9 +18,9 @@ package net.taler.wallet.peer
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.padding
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource
@@ -69,7 +69,7 @@ fun ColumnScope.TransactionPeerPullCreditComposable(t: TransactionPeerPullCredit
) {
Text(
modifier = Modifier.padding(horizontal = 16.dp),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
text = stringResource(id = R.string.receive_peer_invoice_uri),
)
}
diff --git a/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullDebit.kt b/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullDebit.kt
index d09a659..ccf0324 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullDebit.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPullDebit.kt
@@ -16,7 +16,7 @@
package net.taler.wallet.peer
-import androidx.compose.material.Surface
+import androidx.compose.material3.Surface
import androidx.compose.runtime.Composable
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.tooling.preview.Preview
diff --git a/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushCredit.kt b/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushCredit.kt
index e918c42..897d3fb 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushCredit.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushCredit.kt
@@ -16,7 +16,7 @@
package net.taler.wallet.peer
-import androidx.compose.material.Surface
+import androidx.compose.material3.Surface
import androidx.compose.runtime.Composable
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.tooling.preview.Preview
diff --git a/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushDebit.kt b/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushDebit.kt
index 88c27fe..3e74d43 100644
--- a/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushDebit.kt
+++ b/wallet/src/main/java/net/taler/wallet/peer/TransactionPeerPushDebit.kt
@@ -18,9 +18,9 @@ package net.taler.wallet.peer
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.padding
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.stringResource
@@ -68,7 +68,7 @@ fun ColumnScope.TransactionPeerPushDebitComposable(t: TransactionPeerPushDebit)
) {
Text(
modifier = Modifier.padding(horizontal = 16.dp),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
text = stringResource(id = R.string.receive_peer_invoice_uri),
)
}
diff --git a/wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt b/wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt
index 3d31dc5..8bb0a4a 100644
--- a/wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/settings/SettingsFragment.kt
@@ -19,11 +19,11 @@ package net.taler.wallet.settings
import android.os.Bundle
import android.view.View
import androidx.activity.result.contract.ActivityResultContracts.CreateDocument
-import androidx.appcompat.app.AlertDialog
import androidx.fragment.app.activityViewModels
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
import androidx.preference.SwitchPreferenceCompat
+import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.BaseTransientBottomBar.LENGTH_SHORT
import com.google.android.material.snackbar.Snackbar
import net.taler.common.showError
@@ -143,7 +143,7 @@ class SettingsFragment : PreferenceFragmentCompat() {
}
private fun showResetDialog() {
- AlertDialog.Builder(requireContext(), R.style.DialogTheme)
+ MaterialAlertDialogBuilder(requireContext(), R.style.MaterialAlertDialog_Material3)
.setMessage("Do you really want to reset the wallet and lose all coins and purchases?")
.setPositiveButton("Reset") { _, _ ->
model.dangerouslyReset()
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/DeleteTransactionComposable.kt b/wallet/src/main/java/net/taler/wallet/transactions/DeleteTransactionComposable.kt
index 7b69e2b..d2fd15e 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/DeleteTransactionComposable.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/DeleteTransactionComposable.kt
@@ -18,10 +18,10 @@ package net.taler.wallet.transactions
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.padding
-import androidx.compose.material.Button
-import androidx.compose.material.ButtonDefaults
-import androidx.compose.material.Icon
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ButtonDefaults
+import androidx.compose.material3.Icon
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
@@ -36,19 +36,19 @@ import net.taler.wallet.R
fun DeleteTransactionComposable(onDelete: () -> Unit) {
Button(
modifier = Modifier.padding(16.dp),
- colors = ButtonDefaults.buttonColors(backgroundColor = colorResource(R.color.red)),
+ colors = ButtonDefaults.buttonColors(containerColor = colorResource(R.color.red)),
onClick = onDelete,
) {
Row(verticalAlignment = Alignment.CenterVertically) {
Icon(
painter = painterResource(id = R.drawable.ic_delete),
contentDescription = null,
- tint = Color.White,
+ tint = Color.White
)
Text(
modifier = Modifier.padding(start = 8.dp),
text = stringResource(R.string.transactions_delete),
- color = Color.White,
+ color = Color.White
)
}
}
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt b/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
index ed42066..bfafb80 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionDetailFragment.kt
@@ -24,10 +24,10 @@ import android.view.MenuInflater
import android.view.MenuItem
import android.widget.TextView
import androidx.annotation.StringRes
-import androidx.appcompat.app.AlertDialog
import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels
import androidx.navigation.fragment.findNavController
+import com.google.android.material.dialog.MaterialAlertDialogBuilder
import net.taler.common.Amount
import net.taler.common.startActivitySafe
import net.taler.wallet.MainViewModel
@@ -99,7 +99,7 @@ abstract class TransactionDetailFragment : Fragment() {
protected open val deleteDialogButton = R.string.transactions_delete
protected fun onDeleteButtonClicked(t: Transaction) {
- AlertDialog.Builder(requireContext(), R.style.DialogTheme)
+ MaterialAlertDialogBuilder(requireContext(), R.style.MaterialAlertDialog_Material3)
.setTitle(deleteDialogTitle)
.setMessage(deleteDialogMessage)
.setNeutralButton(R.string.cancel) { dialog, _ ->
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/TransactionPeerFragment.kt b/wallet/src/main/java/net/taler/wallet/transactions/TransactionPeerFragment.kt
index b7c347f..9054f73 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionPeerFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionPeerFragment.kt
@@ -25,8 +25,8 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Text
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment.Companion.CenterHorizontally
import androidx.compose.ui.Modifier
@@ -76,7 +76,7 @@ fun TransactionPeerComposable(t: Transaction, onDelete: () -> Unit) {
Text(
modifier = Modifier.padding(16.dp),
text = t.timestamp.ms.toAbsoluteTime(context).toString(),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
)
when (t) {
is TransactionPeerPullCredit -> TransactionPeerPullCreditComposable(t)
@@ -94,7 +94,7 @@ fun TransactionAmountComposable(label: String, amount: Amount, amountType: Amoun
Text(
modifier = Modifier.padding(top = 16.dp, start = 16.dp, end = 16.dp),
text = label,
- style = MaterialTheme.typography.body2,
+ style = MaterialTheme.typography.bodyMedium,
)
Text(
modifier = Modifier.padding(top = 8.dp, start = 16.dp, end = 16.dp, bottom = 16.dp),
@@ -113,7 +113,7 @@ fun TransactionInfoComposable(label: String, info: String) {
Text(
modifier = Modifier.padding(top = 16.dp, start = 16.dp, end = 16.dp),
text = label,
- style = MaterialTheme.typography.body2,
+ style = MaterialTheme.typography.bodyMedium,
)
Text(
modifier = Modifier.padding(top = 8.dp, start = 16.dp, end = 16.dp, bottom = 16.dp),
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/TransactionTipFragment.kt b/wallet/src/main/java/net/taler/wallet/transactions/TransactionTipFragment.kt
index 3f370c7..e8824ed 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionTipFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionTipFragment.kt
@@ -25,9 +25,9 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment.Companion.CenterHorizontally
import androidx.compose.ui.Modifier
@@ -73,7 +73,7 @@ fun TransactionTipComposable(t: TransactionTip, onDelete: () -> Unit) {
Text(
modifier = Modifier.padding(16.dp),
text = t.timestamp.ms.toAbsoluteTime(context).toString(),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
)
TransactionAmountComposable(
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt b/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
index 09adb3e..08281c4 100644
--- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
+++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionsFragment.kt
@@ -25,7 +25,6 @@ import android.view.MenuItem
import android.view.View
import android.view.View.INVISIBLE
import android.view.ViewGroup
-import androidx.appcompat.app.AlertDialog
import androidx.appcompat.widget.SearchView
import androidx.appcompat.widget.SearchView.OnQueryTextListener
import androidx.fragment.app.Fragment
@@ -36,6 +35,7 @@ import androidx.recyclerview.selection.SelectionTracker
import androidx.recyclerview.selection.StorageStrategy
import androidx.recyclerview.widget.DividerItemDecoration
import androidx.recyclerview.widget.LinearLayoutManager.VERTICAL
+import com.google.android.material.dialog.MaterialAlertDialogBuilder
import net.taler.common.Amount
import net.taler.common.fadeIn
import net.taler.common.fadeOut
@@ -232,7 +232,7 @@ class TransactionsFragment : Fragment(), OnTransactionClickListener, ActionMode.
when (item.itemId) {
R.id.transaction_delete -> {
tracker?.selection?.toList()?.let { transactionIds ->
- AlertDialog.Builder(requireContext(), R.style.DialogTheme)
+ MaterialAlertDialogBuilder(requireContext(), R.style.MaterialAlertDialog_Material3)
.setTitle(R.string.transactions_delete)
.setMessage(R.string.transactions_delete_selected_dialog_message)
.setNeutralButton(R.string.cancel) { dialog, _ ->
diff --git a/wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenBitcoin.kt b/wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenBitcoin.kt
index d6ed7df..65b3e21 100644
--- a/wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenBitcoin.kt
+++ b/wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenBitcoin.kt
@@ -23,11 +23,11 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.wrapContentWidth
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.ButtonDefaults
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ButtonDefaults
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Alignment.Companion.End
@@ -59,11 +59,11 @@ fun ScreenBitcoin(
) {
Text(
text = stringResource(R.string.withdraw_manual_bitcoin_title),
- style = MaterialTheme.typography.h5,
+ style = MaterialTheme.typography.headlineSmall,
)
Text(
text = stringResource(R.string.withdraw_manual_bitcoin_intro),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
modifier = Modifier
.padding(vertical = 8.dp)
)
@@ -85,7 +85,7 @@ fun ScreenBitcoin(
if (onCancelClick != null) {
Button(
onClick = onCancelClick,
- colors = ButtonDefaults.buttonColors(backgroundColor = colorResource(R.color.red)),
+ colors = ButtonDefaults.buttonColors(containerColor = colorResource(R.color.red)),
modifier = Modifier
.padding(vertical = 16.dp)
.align(End),
@@ -111,13 +111,13 @@ fun BitcoinSegwitAddrs(amount: Amount, addr: String, segwitAddresses: List<Strin
Column(modifier = Modifier.weight(0.3f)) {
Text(
text = addr,
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
fontWeight = FontWeight.Normal,
fontSize = 3.em
)
Text(
text = amount.withCurrency("BTC").toString(),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
fontWeight = FontWeight.Bold,
)
}
@@ -127,13 +127,13 @@ fun BitcoinSegwitAddrs(amount: Amount, addr: String, segwitAddresses: List<Strin
Column(modifier = Modifier.weight(0.3f)) {
Text(
text = segwitAddress,
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
fontWeight = FontWeight.Normal,
fontSize = 3.em,
)
Text(
text = SEGWIT_MIN.toString(),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
fontWeight = FontWeight.Bold,
)
}
diff --git a/wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenIBAN.kt b/wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenIBAN.kt
index 79ca364..82e4040 100644
--- a/wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenIBAN.kt
+++ b/wallet/src/main/java/net/taler/wallet/withdraw/manual/ScreenIBAN.kt
@@ -26,13 +26,13 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.wrapContentWidth
import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
-import androidx.compose.material.Button
-import androidx.compose.material.ButtonDefaults
-import androidx.compose.material.Icon
-import androidx.compose.material.IconButton
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
+import androidx.compose.material3.Button
+import androidx.compose.material3.ButtonDefaults
+import androidx.compose.material3.Icon
+import androidx.compose.material3.IconButton
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.Surface
+import androidx.compose.material3.Text
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.ContentCopy
import androidx.compose.runtime.Composable
@@ -65,12 +65,12 @@ fun ScreenIBAN(
) {
Text(
text = stringResource(R.string.withdraw_manual_ready_title),
- style = MaterialTheme.typography.h5,
+ style = MaterialTheme.typography.headlineSmall,
)
Text(
text = stringResource(R.string.withdraw_manual_ready_intro,
status.amountRaw.toString()),
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
modifier = Modifier
.padding(vertical = 8.dp)
)
@@ -80,7 +80,7 @@ fun ScreenIBAN(
DetailRow(stringResource(R.string.withdraw_exchange), status.exchangeBaseUrl, false)
Text(
text = stringResource(R.string.withdraw_manual_ready_warning),
- style = MaterialTheme.typography.body2,
+ style = MaterialTheme.typography.bodyMedium,
color = colorResource(R.color.notice_text),
modifier = Modifier
.align(Alignment.CenterHorizontally)
@@ -102,7 +102,7 @@ fun ScreenIBAN(
if (onCancelClick != null) {
Button(
onClick = onCancelClick,
- colors = ButtonDefaults.buttonColors(backgroundColor = colorResource(R.color.red)),
+ colors = ButtonDefaults.buttonColors(containerColor = colorResource(R.color.red)),
modifier = Modifier
.padding(vertical = 16.dp)
.align(Alignment.End),
@@ -125,7 +125,7 @@ fun DetailRow(label: String, content: String, copy: Boolean = true) {
.weight(0.3f)) {
Text(
text = label,
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
fontWeight = if (copy) FontWeight.Bold else FontWeight.Normal,
)
if (copy) {
@@ -136,7 +136,7 @@ fun DetailRow(label: String, content: String, copy: Boolean = true) {
}
Text(
text = content,
- style = MaterialTheme.typography.body1,
+ style = MaterialTheme.typography.bodyLarge,
modifier = Modifier
.padding(bottom = 8.dp)
.weight(0.7f)