mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2024-11-17 01:37:40 +00:00
CAKE-120 | added xmr.to exchange description to exchange and exchange template pages; made observable isReceiveAmountEntered parameter in the exchange view model; added isReceiveAmountEntered parameter to applyTemplate() (exchange page) and reset() (exchange view model); added possibility to enter amount in receive card (exchange template page)
This commit is contained in:
parent
9a169254a6
commit
20c35451d5
3 changed files with 21 additions and 3 deletions
|
@ -373,7 +373,9 @@ class ExchangePage extends BasePage {
|
|||
child: Observer(builder: (_) {
|
||||
final description =
|
||||
exchangeViewModel.provider is XMRTOExchangeProvider
|
||||
? S.of(context).amount_is_guaranteed
|
||||
? exchangeViewModel.isReceiveAmountEntered
|
||||
? S.of(context).amount_is_guaranteed
|
||||
: S.of(context).amount_is_estimate
|
||||
: S.of(context).amount_is_estimate;
|
||||
return Center(
|
||||
child: Text(
|
||||
|
@ -433,6 +435,7 @@ class ExchangePage extends BasePage {
|
|||
exchangeViewModel.changeDepositAmount(amount: template.amount);
|
||||
exchangeViewModel.depositAddress = template.depositAddress;
|
||||
exchangeViewModel.receiveAddress = template.receiveAddress;
|
||||
exchangeViewModel.isReceiveAmountEntered = false;
|
||||
}
|
||||
|
||||
void _setReactions(
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
import 'dart:ui';
|
||||
import 'package:cake_wallet/exchange/exchange_provider.dart';
|
||||
import 'package:cake_wallet/exchange/exchange_template.dart';
|
||||
import 'package:cake_wallet/src/screens/base_page.dart';
|
||||
import 'package:cake_wallet/src/widgets/alert_with_two_actions.dart';
|
||||
|
@ -169,7 +170,9 @@ class ExchangeTemplatePage extends BasePage {
|
|||
exchangeViewModel.wallet.currency
|
||||
? exchangeViewModel.wallet.address
|
||||
: exchangeViewModel.receiveAddress,
|
||||
initialIsAmountEditable: false,
|
||||
initialIsAmountEditable:
|
||||
exchangeViewModel.provider is
|
||||
XMRTOExchangeProvider ? true : false,
|
||||
initialIsAddressEditable:
|
||||
exchangeViewModel.isReceiveAddressEnabled,
|
||||
isAmountEstimated: true,
|
||||
|
@ -202,7 +205,9 @@ class ExchangeTemplatePage extends BasePage {
|
|||
child: Observer(builder: (_) {
|
||||
final description =
|
||||
exchangeViewModel.provider is XMRTOExchangeProvider
|
||||
? S.of(context).amount_is_guaranteed
|
||||
? exchangeViewModel.isReceiveAmountEntered
|
||||
? S.of(context).amount_is_guaranteed
|
||||
: S.of(context).amount_is_estimate
|
||||
: S.of(context).amount_is_estimate;
|
||||
return Center(
|
||||
child: Text(
|
||||
|
@ -328,6 +333,12 @@ class ExchangeTemplatePage extends BasePage {
|
|||
receiveKey.currentState.isAddressEditable(isEditable: isEnabled);
|
||||
});
|
||||
|
||||
reaction((_) => exchangeViewModel.provider, (ExchangeProvider provider) {
|
||||
provider is XMRTOExchangeProvider
|
||||
? receiveKey.currentState.isAmountEditable(isEditable: true)
|
||||
: receiveKey.currentState.isAmountEditable(isEditable: false);
|
||||
});
|
||||
|
||||
/*reaction((_) => exchangeViewModel.limitsState, (LimitsState state) {
|
||||
String min;
|
||||
String max;
|
||||
|
@ -358,6 +369,7 @@ class ExchangeTemplatePage extends BasePage {
|
|||
if (depositAmountController.text != exchangeViewModel.depositAmount) {
|
||||
exchangeViewModel.changeDepositAmount(
|
||||
amount: depositAmountController.text);
|
||||
exchangeViewModel.isReceiveAmountEntered = false;
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -368,6 +380,7 @@ class ExchangeTemplatePage extends BasePage {
|
|||
if (receiveAmountController.text != exchangeViewModel.receiveAmount) {
|
||||
exchangeViewModel.changeReceiveAmount(
|
||||
amount: receiveAmountController.text);
|
||||
exchangeViewModel.isReceiveAmountEntered = true;
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -93,6 +93,7 @@ abstract class ExchangeViewModelBase with Store {
|
|||
@observable
|
||||
bool isReceiveAddressEnabled;
|
||||
|
||||
@observable
|
||||
bool isReceiveAmountEntered;
|
||||
|
||||
Limits limits;
|
||||
|
@ -256,6 +257,7 @@ abstract class ExchangeViewModelBase with Store {
|
|||
|
||||
@action
|
||||
void reset() {
|
||||
isReceiveAmountEntered = false;
|
||||
depositAmount = '';
|
||||
receiveAmount = '';
|
||||
depositCurrency = CryptoCurrency.xmr;
|
||||
|
|
Loading…
Reference in a new issue