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

Commit 20900a78 authored by Josep del Rio's avatar Josep del Rio
Browse files

Exit active mode on Escape key

Any key that outputs a Unicode character will allow the user to
exit the "active mode" that allows them to compose special
characters. However, pressing Escape doesn't do anything, as it
will not output any Unicode character.

This change adds an extra condition to exit active mode by pressing
the Escape key.

Bug: 271671045
Test: Flashed phone, confirmed that pressing Escape will cancel the
input of an accented character

Change-Id: Id3d04758c9fd4cdb65016cca3af30f611b7011e4
parent 16b31aee
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -360,6 +360,15 @@ public class QwertyKeyListener extends BaseKeyListener {
                    return super.onKeyDown(view, content, keyCode, event);
                }

                return true;
            }
        } else if (keyCode == KeyEvent.KEYCODE_ESCAPE && event.hasNoModifiers()) {
            // If user is in the process of composing with a dead key, and
            // presses Escape, cancel it. We need special handling because
            // the Escape key will not produce a Unicode character
            if (activeStart == selStart && activeEnd == selEnd) {
                Selection.setSelection(content, selEnd);
                content.removeSpan(TextKeyListener.ACTIVE);
                return true;
            }
        }