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

Commit dd4e4603 authored by Jeff Brown's avatar Jeff Brown Committed by Android (Google) Code Review
Browse files

Merge "Added support for full PC-style keyboards."

parents 2a26037d 6b53e8da
Loading
Loading
Loading
Loading
+104 −8
Original line number Diff line number Diff line
@@ -194886,7 +194886,7 @@
>
<parameter name="keyCode" type="int">
</parameter>
<parameter name="meta" type="int">
<parameter name="metaState" type="int">
</parameter>
</method>
<method name="getDeadChar"
@@ -194937,7 +194937,7 @@
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 deprecated="deprecated"
 visibility="public"
>
<parameter name="keyCode" type="int">
@@ -194985,9 +194985,20 @@
</parameter>
<parameter name="chars" type="char[]">
</parameter>
<parameter name="modifiers" type="int">
<parameter name="metaState" type="int">
</parameter>
</method>
<method name="getModifierBehavior"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getNumber"
 return="char"
 abstract="false"
@@ -195024,7 +195035,7 @@
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="keyboard" type="int">
<parameter name="deviceId" type="int">
</parameter>
</method>
<field name="ALPHA"
@@ -195071,6 +195082,17 @@
 visibility="public"
>
</field>
<field name="FULL"
 type="int"
 transient="false"
 volatile="false"
 value="4"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="HEX_INPUT"
 type="char"
 transient="false"
@@ -195082,6 +195104,28 @@
 visibility="public"
>
</field>
<field name="MODIFIER_BEHAVIOR_CHORDED"
 type="int"
 transient="false"
 volatile="false"
 value="0"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="MODIFIER_BEHAVIOR_CHORDED_OR_TOGGLED"
 type="int"
 transient="false"
 volatile="false"
 value="1"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="NUMERIC"
 type="int"
 transient="false"
@@ -195115,13 +195159,54 @@
 visibility="public"
>
</field>
<field name="SPECIAL_FUNCTION"
 type="int"
 transient="false"
 volatile="false"
 value="5"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
<field name="VIRTUAL_KEYBOARD"
 type="int"
 transient="false"
 volatile="false"
 value="-1"
 static="true"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</field>
</class>
<class name="KeyCharacterMap.KeyCharacterMapUnavailableException"
 extends="android.util.AndroidRuntimeException"
 abstract="false"
 static="true"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<constructor name="KeyCharacterMap.KeyCharacterMapUnavailableException"
 type="android.view.KeyCharacterMap.KeyCharacterMapUnavailableException"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="msg" type="java.lang.String">
</parameter>
</constructor>
</class>
<class name="KeyCharacterMap.KeyData"
 extends="java.lang.Object"
 abstract="false"
 static="true"
 final="false"
 deprecated="not deprecated"
 deprecated="deprecated"
 visibility="public"
>
<constructor name="KeyCharacterMap.KeyData"
@@ -195530,6 +195615,17 @@
 visibility="public"
>
</method>
<method name="getKeyCharacterMap"
 return="android.view.KeyCharacterMap"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="true"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getKeyCode"
 return="int"
 abstract="false"
@@ -195548,7 +195644,7 @@
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 deprecated="deprecated"
 visibility="public"
>
<parameter name="results" type="android.view.KeyCharacterMap.KeyData">
@@ -195579,7 +195675,7 @@
>
<parameter name="chars" type="char[]">
</parameter>
<parameter name="modifiers" type="int">
<parameter name="metaState" type="int">
</parameter>
</method>
<method name="getMaxKeyCode"
@@ -195658,7 +195754,7 @@
 deprecated="not deprecated"
 visibility="public"
>
<parameter name="meta" type="int">
<parameter name="metaState" type="int">
</parameter>
</method>
<method name="isAltPressed"
+1 −1
Original line number Diff line number Diff line
@@ -91,7 +91,7 @@ public class Input {
        char[] chars = buff.toString().toCharArray();

        KeyCharacterMap mKeyCharacterMap = KeyCharacterMap.
            load(KeyCharacterMap.BUILT_IN_KEYBOARD);
            load(KeyCharacterMap.VIRTUAL_KEYBOARD);

        KeyEvent[] events = mKeyCharacterMap.getEvents(chars);

+1 −2
Original line number Diff line number Diff line
@@ -832,8 +832,7 @@ public class Instrumentation {
        if (text == null) {
            return;
        }
        KeyCharacterMap keyCharacterMap = 
            KeyCharacterMap.load(KeyCharacterMap.BUILT_IN_KEYBOARD);
        KeyCharacterMap keyCharacterMap = KeyCharacterMap.load(KeyCharacterMap.VIRTUAL_KEYBOARD);
        
        KeyEvent[] events = keyCharacterMap.getEvents(text.toCharArray());
        
+3 −2
Original line number Diff line number Diff line
@@ -36,6 +36,7 @@ import android.text.method.MovementMethod;
import android.util.Log;
import android.util.PrintWriterPrinter;
import android.util.Printer;
import android.view.KeyCharacterMap;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.MotionEvent;
@@ -1782,10 +1783,10 @@ public class InputMethodService extends AbstractInputMethodService {
        if (ic == null) return;
        long eventTime = SystemClock.uptimeMillis();
        ic.sendKeyEvent(new KeyEvent(eventTime, eventTime,
                KeyEvent.ACTION_DOWN, keyEventCode, 0, 0, 0, 0,
                KeyEvent.ACTION_DOWN, keyEventCode, 0, 0, KeyCharacterMap.VIRTUAL_KEYBOARD, 0,
                KeyEvent.FLAG_SOFT_KEYBOARD|KeyEvent.FLAG_KEEP_TOUCH_MODE));
        ic.sendKeyEvent(new KeyEvent(SystemClock.uptimeMillis(), eventTime,
                KeyEvent.ACTION_UP, keyEventCode, 0, 0, 0, 0,
                KeyEvent.ACTION_UP, keyEventCode, 0, 0, KeyCharacterMap.VIRTUAL_KEYBOARD, 0,
                KeyEvent.FLAG_SOFT_KEYBOARD|KeyEvent.FLAG_KEEP_TOUCH_MODE));
    }
    
+11 −5
Original line number Diff line number Diff line
@@ -22,8 +22,14 @@ import android.text.*;
import android.text.method.TextKeyListener.Capitalize;
import android.widget.TextView;

public abstract class BaseKeyListener
extends MetaKeyKeyListener
/**
 * Abstract base class for key listeners.
 *
 * Provides a basic foundation for entering and editing text.
 * Subclasses should override {@link #onKeyDown} and {@link #onKeyUp} to insert
 * characters as keys are pressed.
 */
public abstract class BaseKeyListener extends MetaKeyKeyListener
        implements KeyListener {
    /* package */ static final Object OLD_SEL_START = new NoCopySpan.Concrete();

@@ -72,7 +78,7 @@ implements KeyListener {

    private boolean altBackspace(View view, Editable content, int keyCode,
                                 KeyEvent event) {
        if (getMetaState(content, META_ALT_ON) != 1) {
        if (!event.isAltPressed() && getMetaState(content, META_ALT_ON) != 1) {
            return false;
        }

Loading