Avoid fullscreen searchview when editing
[pub/Android/ownCloud.git] / src / com / owncloud / android / ui / fragment / SearchFragment.java
index 3dbf8ff..da0807a 100644 (file)
@@ -30,6 +30,8 @@ import android.support.v4.app.Fragment;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.view.inputmethod.EditorInfo;
+import android.view.inputmethod.InputMethodManager;
 import android.widget.ListView;
 import android.widget.SearchView;
 
@@ -116,14 +118,14 @@ public class SearchFragment extends Fragment implements ShareUserListAdapter.Sha
         );
         searchView.setIconifiedByDefault(false);    // do not iconify the widget; expand it by default
 
-        //searchView.setImeOptions(EditorInfo.IME_ACTION_NEXT | EditorInfo.IME_FLAG_NO_FULLSCREEN);
+        searchView.setImeOptions(EditorInfo.IME_FLAG_NO_EXTRACT_UI); // avoid fullscreen with softkeyboard
 
         searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
             @Override
             public boolean onQueryTextSubmit(String query) {
                 Log_OC.v(TAG, "onQueryTextSubmit intercepted, query: " + query);
                 return true;    // return true to prevent the query is processed to be queried;
-                                // a user / group will be picked only if selected in the list of suggestions
+                // a user / group will be picked only if selected in the list of suggestions
             }
 
             @Override
@@ -185,6 +187,20 @@ public class SearchFragment extends Fragment implements ShareUserListAdapter.Sha
     }
 
     @Override
+    public void onStart() {
+        super.onStart();
+        // focus the search view and request the software keyboard be shown
+        View searchView = getView().findViewById(R.id.searchView);
+        if (searchView.requestFocus()) {
+            InputMethodManager imm = (InputMethodManager)
+                    getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
+            if (imm != null) {
+                imm.showSoftInput(searchView.findFocus(), InputMethodManager.SHOW_IMPLICIT);
+            }
+        }
+    }
+
+    @Override
     public void onDetach() {
         super.onDetach();
         mListener = null;