]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/new_transaction/NewTransactionModel.java
NT: keep cursor position while setting account name text
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / new_transaction / NewTransactionModel.java
index d0b99f3d558c4106238b5747dd1e94fecc826995..d1db37b2c5f242ec8bb424537f94e75e21ee9276 100644 (file)
@@ -170,6 +170,7 @@ public class NewTransactionModel extends ViewModel {
         return this.isSubmittable;
     }
     void reset() {
+        Logger.debug("new-trans", "Resetting model");
         List<Item> list = new ArrayList<>();
         list.add(new TransactionHead(""));
         list.add(new TransactionAccount(""));
@@ -1039,6 +1040,7 @@ public class NewTransactionModel extends ViewModel {
         private FocusedElement focusedElement = FocusedElement.Account;
         private boolean amountHintIsSet = true;
         private boolean isLast = false;
+        private int accountNameCursorPosition;
         public TransactionAccount(TransactionAccount origin) {
             id = origin.id;
             accountName = origin.accountName;
@@ -1051,6 +1053,7 @@ public class NewTransactionModel extends ViewModel {
             amountValid = origin.amountValid;
             focusedElement = origin.focusedElement;
             isLast = origin.isLast;
+            accountNameCursorPosition = origin.accountNameCursorPosition;
         }
         public TransactionAccount(LedgerTransactionAccount account) {
             super();
@@ -1177,6 +1180,12 @@ public class NewTransactionModel extends ViewModel {
                             equal));
             return equal;
         }
+        public int getAccountNameCursorPosition() {
+            return accountNameCursorPosition;
+        }
+        public void setAccountNameCursorPosition(int position) {
+            this.accountNameCursorPosition = position;
+        }
     }
 
     private static class BalanceForCurrency {