From: Reimar Döffinger Date: Sat, 30 Jan 2016 09:36:22 +0000 (+0100) Subject: Merge pull request #26 from Kteby/master X-Git-Url: http://gitweb.fperrin.net/?a=commitdiff_plain;h=56c7d964a83199140532764b9ecf05594a2e8531;hp=4f0e2b9302b6c3921e444467bb295f0ed6db1b99;p=Dictionary.git Merge pull request #26 from Kteby/master Hide virtual keyboard if searchView text was changed programatically. --- diff --git a/src/com/hughes/android/dictionary/DictionaryActivity.java b/src/com/hughes/android/dictionary/DictionaryActivity.java index e0290b0..f8cca58 100644 --- a/src/com/hughes/android/dictionary/DictionaryActivity.java +++ b/src/com/hughes/android/dictionary/DictionaryActivity.java @@ -640,6 +640,13 @@ public class DictionaryActivity extends ActionBarActivity { } } + private void hideKeyboard() { + Log.d(LOG, "Hide soft keyboard."); + searchView.clearFocus(); + InputMethodManager manager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); + manager.hideSoftInputFromWindow(searchView.getWindowToken(), 0); + } + void updateLangButton() { final LanguageResources languageResources = DictionaryApplication.isoCodeToResources.get(index.shortName); @@ -1025,7 +1032,7 @@ public class DictionaryActivity extends ActionBarActivity { getListView().requestFocus(); // Visual indication that a new keystroke will clear the search text. - // Doesn't seem to work unless earchText has focus. + // Doesn't seem to work unless searchText has focus. // searchView.selectAll(); } @@ -1128,6 +1135,9 @@ public class DictionaryActivity extends ActionBarActivity { searchView.setIconifiedByDefault(text.length() > 0); searchView.setIconified(false); + // We don't want to show virtual keyboard when we're changing searchView text programatically: + hideKeyboard(); + if (triggerSearch) { onQueryTextListener.onQueryTextChange(text); }