From 9e378b146181e316ab5a09d527f2be2f68e3d311 Mon Sep 17 00:00:00 2001 From: Dan Roundhill Date: Fri, 16 Mar 2018 11:41:01 -0700 Subject: [PATCH] Fixed gravity of login form to look better on Chrome OS or devices with a hardware keyboard. (#197) Enter key will now sign in/up when hitting the enter key on the keyboard. --- .../com/simperium/android/LoginActivity.java | 28 +++++++++++++++++++ Simperium/src/main/res/layout/login.xml | 2 +- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/Simperium/src/main/java/com/simperium/android/LoginActivity.java b/Simperium/src/main/java/com/simperium/android/LoginActivity.java index 68e18d4e..7c55dcbe 100644 --- a/Simperium/src/main/java/com/simperium/android/LoginActivity.java +++ b/Simperium/src/main/java/com/simperium/android/LoginActivity.java @@ -11,6 +11,7 @@ import android.net.Uri; import android.os.Bundle; import android.text.TextUtils; +import android.view.KeyEvent; import android.view.View; import android.view.Window; import android.view.inputmethod.InputMethodManager; @@ -152,6 +153,33 @@ public void onClick(View v) { } }); + passwordTextField.setOnKeyListener(new View.OnKeyListener() { + @Override + public boolean onKey(View view, int keyCode, KeyEvent keyEvent) { + if (passwordTextField2.getVisibility() == View.GONE && + keyEvent.getAction() == KeyEvent.ACTION_DOWN && + keyCode == KeyEvent.KEYCODE_ENTER) { + signIn(); + return true; + } + + return false; + } + }); + + passwordTextField2.setOnKeyListener(new View.OnKeyListener() { + @Override + public boolean onKey(View view, int keyCode, KeyEvent keyEvent) { + if (keyEvent.getAction() == KeyEvent.ACTION_DOWN && + keyCode == KeyEvent.KEYCODE_ENTER) { + signUp(); + return true; + } + + return false; + } + }); + if (intent.hasExtra(EXTRA_SIGN_IN_FIRST)) setSignInVisible(); } diff --git a/Simperium/src/main/res/layout/login.xml b/Simperium/src/main/res/layout/login.xml index 2846f8fe..1e504e9a 100644 --- a/Simperium/src/main/res/layout/login.xml +++ b/Simperium/src/main/res/layout/login.xml @@ -13,7 +13,7 @@ android:paddingTop="16dp" android:paddingBottom="16dp" android:gravity="center" - android:layout_gravity="center|top"> + android:layout_gravity="center">