From f81784c1c34479bf4cc55de3f71d503bedfecd55 Mon Sep 17 00:00:00 2001
From: julian <julian@cypherstack.com>
Date: Fri, 30 Sep 2022 09:04:50 -0600
Subject: [PATCH] Selecting Receive amount is disabled when Estimated rate is
 active. Display "-" in the Receive amount field in that case

---
 lib/pages/exchange_view/exchange_view.dart                | 8 ++++----
 .../exchange_view/wallet_initiated_exchange_view.dart     | 7 ++++---
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/lib/pages/exchange_view/exchange_view.dart b/lib/pages/exchange_view/exchange_view.dart
index 1487f5f6a..5e2be20b3 100644
--- a/lib/pages/exchange_view/exchange_view.dart
+++ b/lib/pages/exchange_view/exchange_view.dart
@@ -232,7 +232,7 @@ class _ExchangeViewState extends ConsumerState<ExchangeView> {
         ? ref.read(estimatedRateExchangeFormProvider).fromAmountString
         : ref.read(fixedRateExchangeFormProvider).fromAmountString;
     _receiveController.text = isEstimated
-        ? ref.read(estimatedRateExchangeFormProvider).toAmountString
+        ? "-" //ref.read(estimatedRateExchangeFormProvider).toAmountString
         : ref.read(fixedRateExchangeFormProvider).toAmountString;
 
     _sendFocusNode.addListener(() async {
@@ -325,7 +325,7 @@ class _ExchangeViewState extends ConsumerState<ExchangeView> {
             : fixedRateExchangeFormProvider.select(
                 (value) => value.toAmountString), (previous, String next) {
       if (!_receiveFocusNode.hasFocus) {
-        _receiveController.text = next;
+        _receiveController.text = isEstimated ? "-" : next;
         debugPrint("RECEIVE AMOUNT LISTENER ACTIVATED");
         if (_swapLock) {
           _sendController.text = isEstimated
@@ -345,7 +345,7 @@ class _ExchangeViewState extends ConsumerState<ExchangeView> {
         debugPrint("SEND AMOUNT LISTENER ACTIVATED");
         if (_swapLock) {
           _receiveController.text = isEstimated
-              ? ref.read(estimatedRateExchangeFormProvider).toAmountString
+              ? "-" //ref.read(estimatedRateExchangeFormProvider).toAmountString
               : ref.read(fixedRateExchangeFormProvider).toAmountString;
         }
       }
@@ -737,7 +737,7 @@ class _ExchangeViewState extends ConsumerState<ExchangeView> {
                                 .exchangeRateType ==
                             ExchangeRateType.estimated,
                         onTap: () {
-                          if (_receiveController.text == "-") {
+                          if (!isEstimated && _receiveController.text == "-") {
                             _receiveController.text = "";
                           }
                         },
diff --git a/lib/pages/exchange_view/wallet_initiated_exchange_view.dart b/lib/pages/exchange_view/wallet_initiated_exchange_view.dart
index 179555ba6..15d010765 100644
--- a/lib/pages/exchange_view/wallet_initiated_exchange_view.dart
+++ b/lib/pages/exchange_view/wallet_initiated_exchange_view.dart
@@ -329,7 +329,7 @@ class _WalletInitiatedExchangeViewState
             : fixedRateExchangeFormProvider.select(
                 (value) => value.toAmountString), (previous, String next) {
       if (!_receiveFocusNode.hasFocus) {
-        _receiveController.text = next;
+        _receiveController.text = isEstimated ? "-" : next;
         debugPrint("RECEIVE AMOUNT LISTENER ACTIVATED");
         if (_swapLock) {
           _sendController.text = isEstimated
@@ -349,7 +349,7 @@ class _WalletInitiatedExchangeViewState
         debugPrint("SEND AMOUNT LISTENER ACTIVATED");
         if (_swapLock) {
           _receiveController.text = isEstimated
-              ? ref.read(estimatedRateExchangeFormProvider).toAmountString
+              ? "-" //ref.read(estimatedRateExchangeFormProvider).toAmountString
               : ref.read(fixedRateExchangeFormProvider).toAmountString;
         }
       }
@@ -808,7 +808,8 @@ class _WalletInitiatedExchangeViewState
                                   .exchangeRateType ==
                               ExchangeRateType.estimated,
                           onTap: () {
-                            if (_receiveController.text == "-") {
+                            if (!isEstimated &&
+                                _receiveController.text == "-") {
                               _receiveController.text = "";
                             }
                           },