Search in sources :

Example 1 with WarnableTextInputValidator

use of com.amaze.filemanager.ui.views.WarnableTextInputValidator in project AmazeFileManager by TeamAmaze.

the class GeneralDialogCreation method showPasswordDialog.

public static void showPasswordDialog(@NonNull Context c, @NonNull final MainActivity main, @NonNull AppTheme appTheme, @StringRes int titleText, @StringRes int promptText, @NonNull MaterialDialog.SingleButtonCallback positiveCallback, @Nullable MaterialDialog.SingleButtonCallback negativeCallback) {
    int accentColor = main.getAccent();
    MaterialDialog.Builder builder = new MaterialDialog.Builder(c);
    View dialogLayout = View.inflate(main, R.layout.dialog_singleedittext, null);
    WarnableTextInputLayout wilTextfield = dialogLayout.findViewById(R.id.singleedittext_warnabletextinputlayout);
    EditText textfield = dialogLayout.findViewById(R.id.singleedittext_input);
    textfield.setHint(promptText);
    textfield.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
    dialogLayout.post(() -> ExtensionsKt.openKeyboard(textfield, main.getApplicationContext()));
    builder.customView(dialogLayout, false).theme(appTheme.getMaterialDialogTheme()).autoDismiss(false).canceledOnTouchOutside(false).title(titleText).positiveText(R.string.ok).positiveColor(accentColor).onPositive(positiveCallback).negativeText(R.string.cancel).negativeColor(accentColor);
    if (negativeCallback != null)
        builder.onNegative(negativeCallback);
    else
        builder.onNegative((dialog, which) -> dialog.cancel());
    MaterialDialog dialog = builder.show();
    new WarnableTextInputValidator(AppConfig.getInstance().getMainActivityContext(), textfield, wilTextfield, dialog.getActionButton(DialogAction.POSITIVE), (text) -> {
        if (text.length() < 1) {
            return new WarnableTextInputValidator.ReturnState(WarnableTextInputValidator.ReturnState.STATE_ERROR, R.string.field_empty);
        }
        return new WarnableTextInputValidator.ReturnState();
    });
}
Also used : WarnableTextInputLayout(com.amaze.filemanager.ui.views.WarnableTextInputLayout) TextInputEditText(com.google.android.material.textfield.TextInputEditText) EditText(android.widget.EditText) RequiresApi(androidx.annotation.RequiresApi) LinearLayout(android.widget.LinearLayout) NonNull(androidx.annotation.NonNull) Uri(android.net.Uri) MainFragment(com.amaze.filemanager.ui.fragments.MainFragment) FileProperties(com.amaze.filemanager.filesystem.FileProperties) MainActivity(com.amaze.filemanager.ui.activities.MainActivity) SortHandler(com.amaze.filemanager.database.SortHandler) MDButton(com.afollestad.materialdialogs.internal.MDButton) CompressedHelper(com.amaze.filemanager.filesystem.compressed.CompressedHelper) GeneralSecurityException(java.security.GeneralSecurityException) RootHelper(com.amaze.filemanager.filesystem.RootHelper) CheckBox(android.widget.CheckBox) View(android.view.View) Button(android.widget.Button) DialogSigninWithGoogleBinding(com.amaze.filemanager.databinding.DialogSigninWithGoogleBinding) PieChart(com.github.mikephil.charting.charts.PieChart) Log(android.util.Log) PieData(com.github.mikephil.charting.data.PieData) LoadFolderSpaceDataTask(com.amaze.filemanager.asynchronous.asynctasks.LoadFolderSpaceDataTask) M(android.os.Build.VERSION_CODES.M) LayoutElementParcelable(com.amaze.filemanager.adapters.data.LayoutElementParcelable) AsyncTask(android.os.AsyncTask) Entry(com.github.mikephil.charting.data.Entry) Set(java.util.Set) InputType(android.text.InputType) ExtensionsKt(com.amaze.filemanager.ui.ExtensionsKt) FingerprintManager(android.hardware.fingerprint.FingerprintManager) FileUtils(com.amaze.filemanager.filesystem.files.FileUtils) AppCompatButton(androidx.appcompat.widget.AppCompatButton) Executors(java.util.concurrent.Executors) EncryptDecryptUtils(com.amaze.filemanager.filesystem.files.EncryptDecryptUtils) Objects(java.util.Objects) FileUtils.toHybridFileArrayList(com.amaze.filemanager.filesystem.files.FileUtils.toHybridFileArrayList) List(java.util.List) StringRes(androidx.annotation.StringRes) TextView(android.widget.TextView) Nullable(androidx.annotation.Nullable) HiddenAdapter(com.amaze.filemanager.adapters.HiddenAdapter) PREFERENCE_SORTBY_ONLY_THIS(com.amaze.filemanager.ui.fragments.preference_fragments.PreferencesConstants.PREFERENCE_SORTBY_ONLY_THIS) R(com.amaze.filemanager.R) MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) CountItemsOrAndSizeTask(com.amaze.filemanager.asynchronous.asynctasks.CountItemsOrAndSizeTask) AppTheme(com.amaze.filemanager.ui.theme.AppTheme) AppConfig(com.amaze.filemanager.application.AppConfig) SimpleTextWatcher(com.amaze.filemanager.utils.SimpleTextWatcher) Legend(com.github.mikephil.charting.components.Legend) TextWatcher(android.text.TextWatcher) Typeface(android.graphics.Typeface) Context(android.content.Context) TextInputEditText(com.google.android.material.textfield.TextInputEditText) IValueFormatter(com.github.mikephil.charting.formatter.IValueFormatter) HybridFile(com.amaze.filemanager.filesystem.HybridFile) FingerprintHandler(com.amaze.filemanager.utils.FingerprintHandler) Intent(android.content.Intent) OpenMode(com.amaze.filemanager.file_operations.filesystem.OpenMode) Sort(com.amaze.filemanager.database.models.explorer.Sort) ArrayList(java.util.ArrayList) HashSet(java.util.HashSet) WarnableTextInputLayout(com.amaze.filemanager.ui.views.WarnableTextInputLayout) HybridFileParcelable(com.amaze.filemanager.filesystem.HybridFileParcelable) PieDataSet(com.github.mikephil.charting.data.PieDataSet) ShellNotRunningException(com.amaze.filemanager.file_operations.exceptions.ShellNotRunningException) PreferencesConstants(com.amaze.filemanager.ui.fragments.preference_fragments.PreferencesConstants) DataUtils(com.amaze.filemanager.utils.DataUtils) Toast(android.widget.Toast) Build(android.os.Build) ExecutorService(java.util.concurrent.ExecutorService) Formatter(android.text.format.Formatter) GenerateHashesTask(com.amaze.filemanager.asynchronous.asynctasks.GenerateHashesTask) SpannableString(android.text.SpannableString) LayoutInflater(android.view.LayoutInflater) IOException(java.io.IOException) DialogAction(com.afollestad.materialdialogs.DialogAction) TextUtils(android.text.TextUtils) ChangeFilePermissionsCommand(com.amaze.filemanager.filesystem.root.ChangeFilePermissionsCommand) WarnableTextInputValidator(com.amaze.filemanager.ui.views.WarnableTextInputValidator) File(java.io.File) Theme(com.afollestad.materialdialogs.Theme) Color(android.graphics.Color) Utils(com.amaze.filemanager.utils.Utils) SharedPreferences(android.content.SharedPreferences) CryptUtil(com.amaze.filemanager.filesystem.files.CryptUtil) ViewPortHandler(com.github.mikephil.charting.utils.ViewPortHandler) EncryptService(com.amaze.filemanager.asynchronous.services.EncryptService) ThemedActivity(com.amaze.filemanager.ui.activities.superclasses.ThemedActivity) PreferenceManager(androidx.preference.PreferenceManager) PieEntry(com.github.mikephil.charting.data.PieEntry) Collections(java.util.Collections) EditText(android.widget.EditText) MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) WarnableTextInputValidator(com.amaze.filemanager.ui.views.WarnableTextInputValidator) View(android.view.View) TextView(android.widget.TextView)

Example 2 with WarnableTextInputValidator

use of com.amaze.filemanager.ui.views.WarnableTextInputValidator in project AmazeFileManager by TeamAmaze.

the class GeneralDialogCreation method showNameDialog.

public static MaterialDialog showNameDialog(final MainActivity m, String hint, String prefill, String title, String positiveButtonText, String neutralButtonText, String negativeButtonText, MaterialDialog.SingleButtonCallback positiveButtonAction, WarnableTextInputValidator.OnTextValidate validator) {
    int accentColor = m.getAccent();
    MaterialDialog.Builder builder = new MaterialDialog.Builder(m);
    View dialogView = m.getLayoutInflater().inflate(R.layout.dialog_singleedittext, null);
    EditText textfield = dialogView.findViewById(R.id.singleedittext_input);
    textfield.setHint(hint);
    textfield.setText(prefill);
    WarnableTextInputLayout tilTextfield = dialogView.findViewById(R.id.singleedittext_warnabletextinputlayout);
    dialogView.post(() -> ExtensionsKt.openKeyboard(textfield, m.getApplicationContext()));
    builder.customView(dialogView, false).widgetColor(accentColor).theme(m.getAppTheme().getMaterialDialogTheme()).title(title).positiveText(positiveButtonText).onPositive(positiveButtonAction);
    if (neutralButtonText != null) {
        builder.neutralText(neutralButtonText);
    }
    if (negativeButtonText != null) {
        builder.negativeText(negativeButtonText);
        builder.negativeColor(accentColor);
    }
    MaterialDialog dialog = builder.show();
    WarnableTextInputValidator textInputValidator = new WarnableTextInputValidator(builder.getContext(), textfield, tilTextfield, dialog.getActionButton(DialogAction.POSITIVE), validator);
    if (!TextUtils.isEmpty(prefill))
        textInputValidator.afterTextChanged(textfield.getText());
    return dialog;
}
Also used : TextInputEditText(com.google.android.material.textfield.TextInputEditText) EditText(android.widget.EditText) WarnableTextInputLayout(com.amaze.filemanager.ui.views.WarnableTextInputLayout) MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) WarnableTextInputValidator(com.amaze.filemanager.ui.views.WarnableTextInputValidator) View(android.view.View) TextView(android.widget.TextView)

Example 3 with WarnableTextInputValidator

use of com.amaze.filemanager.ui.views.WarnableTextInputValidator in project AmazeFileManager by TeamAmaze.

the class GeneralDialogCreation method showCompressDialog.

public static void showCompressDialog(@NonNull final MainActivity mainActivity, final ArrayList<HybridFileParcelable> baseFiles, final String current) {
    int accentColor = mainActivity.getAccent();
    MaterialDialog.Builder a = new MaterialDialog.Builder(mainActivity);
    View dialogView = mainActivity.getLayoutInflater().inflate(R.layout.dialog_singleedittext, null);
    EditText etFilename = dialogView.findViewById(R.id.singleedittext_input);
    etFilename.setHint(R.string.enterzipname);
    // TODO: Put the file/folder name here
    etFilename.setText(".zip");
    etFilename.setInputType(InputType.TYPE_TEXT_FLAG_CAP_WORDS);
    etFilename.setSingleLine();
    WarnableTextInputLayout tilFilename = dialogView.findViewById(R.id.singleedittext_warnabletextinputlayout);
    dialogView.post(() -> ExtensionsKt.openKeyboard(etFilename, mainActivity.getApplicationContext()));
    a.customView(dialogView, false).widgetColor(accentColor).theme(mainActivity.getAppTheme().getMaterialDialogTheme()).title(mainActivity.getResources().getString(R.string.enterzipname)).positiveText(R.string.create).positiveColor(accentColor).onPositive((materialDialog, dialogAction) -> {
        String name = current + "/" + etFilename.getText().toString();
        mainActivity.mainActivityHelper.compressFiles(new File(name), baseFiles);
    }).negativeText(mainActivity.getResources().getString(R.string.cancel)).negativeColor(accentColor);
    final MaterialDialog materialDialog = a.build();
    new WarnableTextInputValidator(a.getContext(), etFilename, tilFilename, materialDialog.getActionButton(DialogAction.POSITIVE), (text) -> {
        boolean isValidFilename = FileProperties.isValidFilename(text);
        if (isValidFilename && text.length() > 0 && !text.toLowerCase().endsWith(".zip")) {
            return new WarnableTextInputValidator.ReturnState(WarnableTextInputValidator.ReturnState.STATE_WARNING, R.string.compress_file_suggest_zip_extension);
        } else {
            if (!isValidFilename) {
                return new WarnableTextInputValidator.ReturnState(WarnableTextInputValidator.ReturnState.STATE_ERROR, R.string.invalid_name);
            } else if (text.length() < 1) {
                return new WarnableTextInputValidator.ReturnState(WarnableTextInputValidator.ReturnState.STATE_ERROR, R.string.field_empty);
            }
        }
        return new WarnableTextInputValidator.ReturnState();
    });
    materialDialog.show();
    // place cursor at the starting of edit text by posting a runnable to edit text
    // this is done because in case android has not populated the edit text layouts yet, it'll
    // reset calls to selection if not posted in message queue
    etFilename.post(() -> etFilename.setSelection(0));
}
Also used : TextInputEditText(com.google.android.material.textfield.TextInputEditText) EditText(android.widget.EditText) WarnableTextInputLayout(com.amaze.filemanager.ui.views.WarnableTextInputLayout) MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) SpannableString(android.text.SpannableString) View(android.view.View) TextView(android.widget.TextView) WarnableTextInputValidator(com.amaze.filemanager.ui.views.WarnableTextInputValidator) HybridFile(com.amaze.filemanager.filesystem.HybridFile) File(java.io.File)

Example 4 with WarnableTextInputValidator

use of com.amaze.filemanager.ui.views.WarnableTextInputValidator in project AmazeFileManager by TeamAmaze.

the class GeneralDialogCreation method showEncryptAuthenticateDialog.

public static void showEncryptAuthenticateDialog(final Context c, final Intent intent, final MainActivity main, AppTheme appTheme, final EncryptDecryptUtils.EncryptButtonCallbackInterface encryptButtonCallbackInterface) {
    int accentColor = main.getAccent();
    MaterialDialog.Builder builder = new MaterialDialog.Builder(c);
    builder.title(main.getString(R.string.crypt_encrypt));
    View rootView = View.inflate(c, R.layout.dialog_encrypt_authenticate, null);
    final TextInputEditText passwordEditText = rootView.findViewById(R.id.edit_text_dialog_encrypt_password);
    final TextInputEditText passwordConfirmEditText = rootView.findViewById(R.id.edit_text_dialog_encrypt_password_confirm);
    final TextInputEditText encryptSaveAsEditText = rootView.findViewById(R.id.edit_text_encrypt_save_as);
    WarnableTextInputLayout textInputLayoutPassword = rootView.findViewById(R.id.til_encrypt_password);
    WarnableTextInputLayout textInputLayoutPasswordConfirm = rootView.findViewById(R.id.til_encrypt_password_confirm);
    WarnableTextInputLayout textInputLayoutEncryptSaveAs = rootView.findViewById(R.id.til_encrypt_save_as);
    HybridFileParcelable intentParcelable = intent.getParcelableExtra(EncryptService.TAG_SOURCE);
    encryptSaveAsEditText.setText(intentParcelable.getName(c).concat(CryptUtil.CRYPT_EXTENSION));
    textInputLayoutEncryptSaveAs.setHint(intentParcelable.isDirectory() ? c.getString(R.string.encrypt_folder_save_as) : c.getString(R.string.encrypt_file_save_as));
    builder.customView(rootView, true).positiveText(c.getString(R.string.ok)).negativeText(c.getString(R.string.cancel)).theme(appTheme.getMaterialDialogTheme()).positiveColor(accentColor).negativeColor(accentColor).autoDismiss(false).onNegative((dialog, which) -> dialog.cancel()).onPositive((dialog, which) -> {
        intent.putExtra(EncryptService.TAG_ENCRYPT_TARGET, encryptSaveAsEditText.getText().toString());
        try {
            encryptButtonCallbackInterface.onButtonPressed(intent, passwordEditText.getText().toString());
        } catch (GeneralSecurityException | IOException e) {
            e.printStackTrace();
            Toast.makeText(c, c.getString(R.string.crypt_encryption_fail), Toast.LENGTH_LONG).show();
        } finally {
            dialog.dismiss();
        }
    });
    MaterialDialog dialog = builder.show();
    MDButton btnOK = dialog.getActionButton(DialogAction.POSITIVE);
    btnOK.setEnabled(false);
    rootView.post(() -> ExtensionsKt.openKeyboard(passwordEditText, main.getApplicationContext()));
    TextWatcher textWatcher = new SimpleTextWatcher() {

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
            btnOK.setEnabled(encryptSaveAsEditText.getText().toString().length() > 0 && passwordEditText.getText().toString().length() > 0 && passwordConfirmEditText.getText().toString().length() > 0);
        }
    };
    passwordEditText.addTextChangedListener(textWatcher);
    passwordConfirmEditText.addTextChangedListener(textWatcher);
    encryptSaveAsEditText.addTextChangedListener(textWatcher);
    new WarnableTextInputValidator(c, passwordEditText, textInputLayoutPassword, btnOK, (text) -> {
        if (text.length() < 1) {
            return new WarnableTextInputValidator.ReturnState(WarnableTextInputValidator.ReturnState.STATE_ERROR, R.string.field_empty);
        }
        return new WarnableTextInputValidator.ReturnState();
    });
    new WarnableTextInputValidator(c, passwordConfirmEditText, textInputLayoutPasswordConfirm, btnOK, (text) -> {
        if (!text.equals(passwordEditText.getText().toString())) {
            return new WarnableTextInputValidator.ReturnState(WarnableTextInputValidator.ReturnState.STATE_ERROR, R.string.password_no_match);
        }
        return new WarnableTextInputValidator.ReturnState();
    });
    new WarnableTextInputValidator(c, encryptSaveAsEditText, textInputLayoutEncryptSaveAs, btnOK, (text) -> {
        if (text.length() < 1) {
            return new WarnableTextInputValidator.ReturnState(WarnableTextInputValidator.ReturnState.STATE_ERROR, R.string.field_empty);
        }
        if (!text.endsWith(CryptUtil.CRYPT_EXTENSION)) {
            return new WarnableTextInputValidator.ReturnState(WarnableTextInputValidator.ReturnState.STATE_ERROR, R.string.encrypt_file_must_end_with_aze);
        }
        return new WarnableTextInputValidator.ReturnState();
    });
}
Also used : WarnableTextInputLayout(com.amaze.filemanager.ui.views.WarnableTextInputLayout) RequiresApi(androidx.annotation.RequiresApi) LinearLayout(android.widget.LinearLayout) NonNull(androidx.annotation.NonNull) Uri(android.net.Uri) MainFragment(com.amaze.filemanager.ui.fragments.MainFragment) FileProperties(com.amaze.filemanager.filesystem.FileProperties) MainActivity(com.amaze.filemanager.ui.activities.MainActivity) SortHandler(com.amaze.filemanager.database.SortHandler) MDButton(com.afollestad.materialdialogs.internal.MDButton) CompressedHelper(com.amaze.filemanager.filesystem.compressed.CompressedHelper) GeneralSecurityException(java.security.GeneralSecurityException) RootHelper(com.amaze.filemanager.filesystem.RootHelper) CheckBox(android.widget.CheckBox) View(android.view.View) Button(android.widget.Button) DialogSigninWithGoogleBinding(com.amaze.filemanager.databinding.DialogSigninWithGoogleBinding) PieChart(com.github.mikephil.charting.charts.PieChart) Log(android.util.Log) PieData(com.github.mikephil.charting.data.PieData) LoadFolderSpaceDataTask(com.amaze.filemanager.asynchronous.asynctasks.LoadFolderSpaceDataTask) M(android.os.Build.VERSION_CODES.M) LayoutElementParcelable(com.amaze.filemanager.adapters.data.LayoutElementParcelable) AsyncTask(android.os.AsyncTask) Entry(com.github.mikephil.charting.data.Entry) Set(java.util.Set) InputType(android.text.InputType) ExtensionsKt(com.amaze.filemanager.ui.ExtensionsKt) FingerprintManager(android.hardware.fingerprint.FingerprintManager) FileUtils(com.amaze.filemanager.filesystem.files.FileUtils) AppCompatButton(androidx.appcompat.widget.AppCompatButton) Executors(java.util.concurrent.Executors) EncryptDecryptUtils(com.amaze.filemanager.filesystem.files.EncryptDecryptUtils) Objects(java.util.Objects) FileUtils.toHybridFileArrayList(com.amaze.filemanager.filesystem.files.FileUtils.toHybridFileArrayList) List(java.util.List) StringRes(androidx.annotation.StringRes) TextView(android.widget.TextView) Nullable(androidx.annotation.Nullable) HiddenAdapter(com.amaze.filemanager.adapters.HiddenAdapter) PREFERENCE_SORTBY_ONLY_THIS(com.amaze.filemanager.ui.fragments.preference_fragments.PreferencesConstants.PREFERENCE_SORTBY_ONLY_THIS) R(com.amaze.filemanager.R) MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) CountItemsOrAndSizeTask(com.amaze.filemanager.asynchronous.asynctasks.CountItemsOrAndSizeTask) AppTheme(com.amaze.filemanager.ui.theme.AppTheme) AppConfig(com.amaze.filemanager.application.AppConfig) SimpleTextWatcher(com.amaze.filemanager.utils.SimpleTextWatcher) Legend(com.github.mikephil.charting.components.Legend) TextWatcher(android.text.TextWatcher) Typeface(android.graphics.Typeface) Context(android.content.Context) TextInputEditText(com.google.android.material.textfield.TextInputEditText) IValueFormatter(com.github.mikephil.charting.formatter.IValueFormatter) HybridFile(com.amaze.filemanager.filesystem.HybridFile) FingerprintHandler(com.amaze.filemanager.utils.FingerprintHandler) Intent(android.content.Intent) OpenMode(com.amaze.filemanager.file_operations.filesystem.OpenMode) Sort(com.amaze.filemanager.database.models.explorer.Sort) ArrayList(java.util.ArrayList) HashSet(java.util.HashSet) WarnableTextInputLayout(com.amaze.filemanager.ui.views.WarnableTextInputLayout) HybridFileParcelable(com.amaze.filemanager.filesystem.HybridFileParcelable) PieDataSet(com.github.mikephil.charting.data.PieDataSet) ShellNotRunningException(com.amaze.filemanager.file_operations.exceptions.ShellNotRunningException) PreferencesConstants(com.amaze.filemanager.ui.fragments.preference_fragments.PreferencesConstants) DataUtils(com.amaze.filemanager.utils.DataUtils) Toast(android.widget.Toast) Build(android.os.Build) ExecutorService(java.util.concurrent.ExecutorService) Formatter(android.text.format.Formatter) GenerateHashesTask(com.amaze.filemanager.asynchronous.asynctasks.GenerateHashesTask) SpannableString(android.text.SpannableString) LayoutInflater(android.view.LayoutInflater) IOException(java.io.IOException) DialogAction(com.afollestad.materialdialogs.DialogAction) TextUtils(android.text.TextUtils) ChangeFilePermissionsCommand(com.amaze.filemanager.filesystem.root.ChangeFilePermissionsCommand) WarnableTextInputValidator(com.amaze.filemanager.ui.views.WarnableTextInputValidator) File(java.io.File) Theme(com.afollestad.materialdialogs.Theme) Color(android.graphics.Color) Utils(com.amaze.filemanager.utils.Utils) SharedPreferences(android.content.SharedPreferences) CryptUtil(com.amaze.filemanager.filesystem.files.CryptUtil) ViewPortHandler(com.github.mikephil.charting.utils.ViewPortHandler) EncryptService(com.amaze.filemanager.asynchronous.services.EncryptService) ThemedActivity(com.amaze.filemanager.ui.activities.superclasses.ThemedActivity) PreferenceManager(androidx.preference.PreferenceManager) PieEntry(com.github.mikephil.charting.data.PieEntry) Collections(java.util.Collections) EditText(android.widget.EditText) MDButton(com.afollestad.materialdialogs.internal.MDButton) MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) GeneralSecurityException(java.security.GeneralSecurityException) IOException(java.io.IOException) View(android.view.View) TextView(android.widget.TextView) HybridFileParcelable(com.amaze.filemanager.filesystem.HybridFileParcelable) SimpleTextWatcher(com.amaze.filemanager.utils.SimpleTextWatcher) TextInputEditText(com.google.android.material.textfield.TextInputEditText) SimpleTextWatcher(com.amaze.filemanager.utils.SimpleTextWatcher) TextWatcher(android.text.TextWatcher) WarnableTextInputValidator(com.amaze.filemanager.ui.views.WarnableTextInputValidator)

Aggregations

View (android.view.View)4 EditText (android.widget.EditText)4 TextView (android.widget.TextView)4 MaterialDialog (com.afollestad.materialdialogs.MaterialDialog)4 WarnableTextInputLayout (com.amaze.filemanager.ui.views.WarnableTextInputLayout)4 WarnableTextInputValidator (com.amaze.filemanager.ui.views.WarnableTextInputValidator)4 TextInputEditText (com.google.android.material.textfield.TextInputEditText)4 SpannableString (android.text.SpannableString)3 Context (android.content.Context)2 Intent (android.content.Intent)2 SharedPreferences (android.content.SharedPreferences)2 Color (android.graphics.Color)2 Typeface (android.graphics.Typeface)2 FingerprintManager (android.hardware.fingerprint.FingerprintManager)2 Uri (android.net.Uri)2 AsyncTask (android.os.AsyncTask)2 Build (android.os.Build)2 M (android.os.Build.VERSION_CODES.M)2 InputType (android.text.InputType)2 TextUtils (android.text.TextUtils)2