Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ffe3ecf2 authored by Mike LeBeau's avatar Mike LeBeau
Browse files

Make the SearchDialog's AutoCompleteTextView dropdown respect the

IME again when the user presses right or left from a query-jammed
suggestion to continue editing. Previously we required the user
to press on the text field again in order to get the IME to show.

We accomplish this by factoring out the code to 'ensureImeVisible'
into a separate method and calling that from SearchDialog.

Fixes http://b/1976338
parent 3735df20
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1042,6 +1042,8 @@ public class SearchDialog extends Dialog implements OnItemClickListener, OnItemS
                mSearchAutoComplete.setSelection(selPoint);
                mSearchAutoComplete.setListSelection(0);
                mSearchAutoComplete.clearListSelection();
                mSearchAutoComplete.ensureImeVisible();
                
                return true;
            }
            
+12 −3
Original line number Diff line number Diff line
@@ -210,8 +210,7 @@ public class AutoCompleteTextView extends EditText implements Filter.FilterListe
        if (mDropDownAlwaysVisible
                && mPopup.isShowing()
                && mPopup.getInputMethodMode() == PopupWindow.INPUT_METHOD_NOT_NEEDED) {
            mPopup.setInputMethodMode(PopupWindow.INPUT_METHOD_NEEDED);
            showDropDown();
            ensureImeVisible();
        }
    }

@@ -1092,6 +1091,16 @@ public class AutoCompleteTextView extends EditText implements Filter.FilterListe
        post(mShowDropDownRunnable);
    }
    
    /**
     * Ensures that the drop down is not obscuring the IME.
     * 
     * @hide internal used only here and SearchDialog
     */
    public void ensureImeVisible() {
        mPopup.setInputMethodMode(PopupWindow.INPUT_METHOD_NEEDED);
        showDropDown();
    }

    /**
     * <p>Displays the drop down on screen.</p>
     */