summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcyBerta <cyberta@riseup.net>2023-08-04 02:10:41 +0200
committercyBerta <cyberta@riseup.net>2023-08-04 02:10:41 +0200
commitdf84c3064002bb90b8e7d840afe25b6b58a64efd (patch)
tree71e717e77cc2812bb5463d56affc5977c7eb9db3
parent84ed5d88e7d04379af5975f3a8af76ef4010d8c7 (diff)
hide keyboard when edit text focus was lost in provider selection screen
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/base/utils/ViewHelper.java6
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ProviderSelectionFragment.java7
2 files changed, 13 insertions, 0 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/base/utils/ViewHelper.java b/app/src/main/java/se/leap/bitmaskclient/base/utils/ViewHelper.java
index efc6d093..145903b4 100644
--- a/app/src/main/java/se/leap/bitmaskclient/base/utils/ViewHelper.java
+++ b/app/src/main/java/se/leap/bitmaskclient/base/utils/ViewHelper.java
@@ -18,6 +18,7 @@ import android.util.Log;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
+import android.view.inputmethod.InputMethodManager;
import androidx.annotation.ColorRes;
import androidx.annotation.DimenRes;
@@ -209,4 +210,9 @@ public class ViewHelper {
animator.start();
}
+ public static void hideKeyboardFrom(Context context, View view) {
+ InputMethodManager imm = (InputMethodManager) context.getSystemService(Activity.INPUT_METHOD_SERVICE);
+ imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
+ }
+
}
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ProviderSelectionFragment.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ProviderSelectionFragment.java
index bf508e0b..cabde405 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ProviderSelectionFragment.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ProviderSelectionFragment.java
@@ -21,6 +21,7 @@ import java.util.ArrayList;
import se.leap.bitmaskclient.R;
import se.leap.bitmaskclient.base.models.Provider;
import se.leap.bitmaskclient.base.models.ProviderObservable;
+import se.leap.bitmaskclient.base.utils.ViewHelper;
import se.leap.bitmaskclient.databinding.FProviderSelectionBinding;
import se.leap.bitmaskclient.providersetup.activities.CancelCallback;
import se.leap.bitmaskclient.providersetup.fragments.viewmodel.ProviderSelectionViewModel;
@@ -103,6 +104,12 @@ public class ProviderSelectionFragment extends BaseSetupFragment implements Canc
@Override
public void afterTextChanged(Editable s) {}
});
+
+ binding.editCustomProvider.setOnFocusChangeListener((v, hasFocus) -> {
+ if (!hasFocus) {
+ ViewHelper.hideKeyboardFrom(getContext(), v);
+ }
+ });
return binding.getRoot();
}