@@ -8,6 +8,9 @@ import androidx.compose.foundation.layout.fillMaxWidth
88import androidx.compose.foundation.layout.height
99import androidx.compose.foundation.layout.padding
1010import androidx.compose.runtime.Composable
11+ import androidx.compose.runtime.LaunchedEffect
12+ import androidx.compose.runtime.mutableLongStateOf
13+ import androidx.compose.runtime.remember
1114import androidx.compose.ui.Alignment
1215import androidx.compose.ui.Modifier
1316import androidx.compose.ui.tooling.preview.Preview
@@ -16,6 +19,12 @@ import to.bitkit.models.ConvertedAmount
1619import to.bitkit.models.PrimaryDisplay
1720import to.bitkit.ui.LocalCurrencies
1821import to.bitkit.ui.currencyViewModel
22+ import androidx.compose.runtime.getValue
23+ import androidx.compose.runtime.setValue
24+ import androidx.compose.runtime.mutableIntStateOf
25+ import androidx.compose.runtime.mutableStateOf
26+ import to.bitkit.ext.removeSpaces
27+ import to.bitkit.models.BitcoinDisplayUnit
1928import to.bitkit.ui.shared.util.clickableAlpha
2029import to.bitkit.ui.theme.AppThemeSurface
2130import to.bitkit.ui.theme.Colors
@@ -62,6 +71,53 @@ fun BalanceHeaderView(
6271 }
6372}
6473
74+ @Composable
75+ fun BalanceHeaderEditable (
76+ input : String ,
77+ showBitcoinSymbol : Boolean = true,
78+ onSatsChanged : (String ) -> Unit ,
79+ modifier : Modifier = Modifier ,
80+ ) {
81+ val (rates, _, _, _, displayUnit, primaryDisplay) = LocalCurrencies .current
82+ val currency = currencyViewModel ? : return
83+
84+ var placeholder: String by remember { mutableStateOf(" 0" ) }
85+ var placeholderFractional: String by remember { mutableStateOf(" " ) }
86+
87+ if (displayUnit == BitcoinDisplayUnit .CLASSIC ) {
88+ placeholderFractional = " 00000000"
89+ }
90+
91+ if (primaryDisplay == PrimaryDisplay .FIAT ) {
92+ placeholderFractional = " 00"
93+ }
94+
95+ if (placeholderFractional.isNotEmpty()) {
96+ placeholder = " 0.$placeholderFractional "
97+ }
98+
99+ var smallRowPrefix: String by remember { mutableStateOf(" " ) }
100+ var smallRowText: String by remember { mutableStateOf(" " ) }
101+ var smallRowSymbol: String by remember { mutableStateOf(" " ) }
102+
103+ var largeRowPrefix: String by remember { mutableStateOf(" " ) }
104+ var largeRowText: String by remember { mutableStateOf(" " ) }
105+ var largeRowSymbol: String by remember { mutableStateOf(" " ) }
106+
107+
108+ BalanceHeader (
109+ modifier = modifier,
110+ smallRowPrefix = smallRowPrefix,
111+ smallRowSymbol = smallRowSymbol,
112+ smallRowText = smallRowText,
113+ largeRowPrefix = largeRowPrefix,
114+ largeRowText = largeRowText,
115+ largeRowSymbol = largeRowSymbol,
116+ showSymbol = showBitcoinSymbol,
117+ onClick = { }
118+ )
119+ }
120+
65121@Composable
66122fun BalanceHeader (
67123 modifier : Modifier = Modifier ,
0 commit comments