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

Commit 6f1ef59e authored by Gilles Debunne's avatar Gilles Debunne Committed by Android Git Automerger
Browse files

am 1ad0fac2: am 6f7a6bc3: Merge "Soft keyboard is not shown when text...

am 1ad0fac2: am 6f7a6bc3: Merge "Soft keyboard is not shown when text selection mode is aborted." into honeycomb

* commit '1ad0fac2':
  Soft keyboard is not shown when text selection mode is aborted.
parents c9d61235 1ad0fac2
Loading
Loading
Loading
Loading
+17 −21
Original line number Diff line number Diff line
@@ -3320,7 +3320,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener

            } else if (actionCode == EditorInfo.IME_ACTION_DONE) {
                InputMethodManager imm = InputMethodManager.peekInstance();
                if (imm != null) {
                if (imm != null && imm.isActive(this)) {
                    imm.hideSoftInputFromWindow(getWindowToken(), 0);
                }
                return;
@@ -4822,9 +4822,8 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
                    if (mOnClickListener == null) {
                        if (mMovement != null && mText instanceof Editable
                                && mLayout != null && onCheckIsTextEditor()) {
                            InputMethodManager imm = (InputMethodManager)
                                    getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
                            imm.showSoftInput(this, 0);
                            InputMethodManager imm = InputMethodManager.peekInstance();
                            if (imm != null) imm.showSoftInput(this, 0);
                        }
                    }
                }
@@ -4877,7 +4876,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
                                // No target for next focus, but make sure the IME
                                // if this came from it.
                                InputMethodManager imm = InputMethodManager.peekInstance();
                                if (imm != null) {
                                if (imm != null && imm.isActive(this)) {
                                    imm.hideSoftInputFromWindow(getWindowToken(), 0);
                                }
                            }
@@ -7149,10 +7148,8 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
        // the IME. Showing the IME while focus is moved using the D-Pad is a bad idea, however this
        // does not happen in that case (using the arrows on a bluetooth keyboard).
        if (focused && isTextEditable()) {
            final InputMethodManager imm = (InputMethodManager)
            getContext().getSystemService(Context.INPUT_METHOD_SERVICE);

            imm.showSoftInput(this, 0, null);
            final InputMethodManager imm = InputMethodManager.peekInstance();
            if (imm != null) imm.showSoftInput(this, 0, null);
        }
    }

@@ -7346,10 +7343,8 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener

                    // Show the IME, except when selecting in read-only text.
                    if (!mTextIsSelectable) {
                        final InputMethodManager imm = (InputMethodManager)
                                getContext().getSystemService(Context.INPUT_METHOD_SERVICE);

                        handled |= imm.showSoftInput(this, 0, csr) && (csr != null);
                        final InputMethodManager imm = InputMethodManager.peekInstance();
                        handled |= imm != null && imm.showSoftInput(this, 0, csr) && (csr != null);
                    }

                    stopSelectionActionMode();
@@ -8247,16 +8242,17 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
            selectCurrentWord();
        }

        if (!mTextIsSelectable) {
            // Show the IME, except when selection non editable text.
            final InputMethodManager imm = (InputMethodManager)
                    getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
            imm.showSoftInput(this, 0, null);
        }

        ActionMode.Callback actionModeCallback = new SelectionActionModeCallback();
        mSelectionActionMode = startActionMode(actionModeCallback);
        return mSelectionActionMode != null;
        final boolean selectionStarted = mSelectionActionMode != null;

        if (selectionStarted && !mTextIsSelectable) {
            // Show the IME to be able to replace text, except when selecting non editable text.
            final InputMethodManager imm = InputMethodManager.peekInstance();
            if (imm != null) imm.showSoftInput(this, 0, null);
        }

        return selectionStarted;
    }

    /**