]> Pileus Git - ~andy/freeotp/blobdiff - src/org/fedorahosted/freeotp/ManualSecretTextWatcher.java
Migrate Manual token entry to use a DialogFragment
[~andy/freeotp] / src / org / fedorahosted / freeotp / ManualSecretTextWatcher.java
similarity index 70%
rename from src/org/fedorahosted/freeotp/AddTokenSecretTextWatcher.java
rename to src/org/fedorahosted/freeotp/ManualSecretTextWatcher.java
index 68752ee8f00455d7582b8ae135e031ba5cd8bd03..8c77e40b7c62a3fb18db42233fe1aff94fef11b2 100644 (file)
@@ -23,25 +23,25 @@ package org.fedorahosted.freeotp;
 import android.app.AlertDialog;
 import android.text.Editable;
 
-public class AddTokenSecretTextWatcher extends AddTokenTextWatcher {
-       public AddTokenSecretTextWatcher(AlertDialog dialog) {
+public class ManualSecretTextWatcher extends ManualTextWatcher {
+       public ManualSecretTextWatcher(AlertDialog dialog) {
                super(dialog);
        }
 
        @Override
        public void afterTextChanged(Editable s) {
-               super.afterTextChanged(s);
-
-               if (s.length() == 0)
-                       return;
-
-               boolean haveData = false;
-               for (int i = s.length() - 1; i >= 0; i--) {
-                       char c = s.charAt(i);
-                       if (c != '=')
-                               haveData = true;
-                       else if (haveData)
-                               s.delete(i, i + 1);
+               if (s.length() != 0) {
+                       // Ensure that = is only permitted at the end
+                       boolean haveData = false;
+                       for (int i = s.length() - 1; i >= 0; i--) {
+                               char c = s.charAt(i);
+                               if (c != '=')
+                                       haveData = true;
+                               else if (haveData)
+                                       s.delete(i, i + 1);
+                       }
                }
+
+               super.afterTextChanged(s);
        }
 }