Merge pull request #527 from alexbakker/fix-131

Automatically focus the EditText when showing text/password dialogs
This commit is contained in:
Michael Schättgen 2020-08-01 13:31:07 +02:00 committed by GitHub
commit be0529a0c8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 4 deletions

View file

@ -6,10 +6,8 @@ import android.content.ClipData;
import android.content.ClipboardManager; import android.content.ClipboardManager;
import android.content.Context; import android.content.Context;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.content.Intent;
import android.content.res.ColorStateList; import android.content.res.ColorStateList;
import android.graphics.Color; import android.graphics.Color;
import android.provider.Settings;
import android.text.Editable; import android.text.Editable;
import android.text.InputType; import android.text.InputType;
import android.text.TextWatcher; import android.text.TextWatcher;
@ -124,6 +122,7 @@ public class Dialogs {
.setPositiveButton(android.R.string.ok, null) .setPositiveButton(android.R.string.ok, null)
.setNegativeButton(android.R.string.cancel, null) .setNegativeButton(android.R.string.cancel, null)
.create(); .create();
dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
final AtomicReference<Button> buttonOK = new AtomicReference<>(); final AtomicReference<Button> buttonOK = new AtomicReference<>();
dialog.setOnShowListener(d -> { dialog.setOnShowListener(d -> {
@ -208,6 +207,7 @@ public class Dialogs {
} }
AlertDialog dialog = builder.create(); AlertDialog dialog = builder.create();
dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
showSecureDialog(dialog); showSecureDialog(dialog);
} }

View file

@ -27,7 +27,9 @@
android:hint="@string/password" android:hint="@string/password"
android:inputType="textPassword" android:inputType="textPassword"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"/> android:layout_height="wrap_content">
<requestFocus/>
</EditText>
</com.google.android.material.textfield.TextInputLayout> </com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout <com.google.android.material.textfield.TextInputLayout

View file

@ -9,5 +9,7 @@
<EditText <EditText
android:id="@+id/text_input" android:id="@+id/text_input"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"/> android:layout_height="wrap_content">
<requestFocus/>
</EditText>
</LinearLayout> </LinearLayout>