browser.input.ime

Beschreibung

Mit der chrome.input.ime API können Sie eine benutzerdefinierte Eingabemethode für ChromeOS implementieren. Dadurch kann Ihre Erweiterung Tastenanschläge verarbeiten, die Zusammensetzung festlegen und das Kandidatenfenster verwalten.

Berechtigungen

input

Sie müssen die Berechtigung „input“ im Erweiterungsmanifest deklarieren, um die input.ime API zu verwenden. Beispiel:

{
  "name": "My extension",
  ...
  "permissions": [
    "input"
  ],
  ...
}

Verfügbarkeit

Nur ChromeOS

Beispiele

Mit dem folgenden Code wird ein IME erstellt, der eingegebene Buchstaben in Großbuchstaben umwandelt.

var context_id = -1;

browser.input.ime.onFocus.addListener(function(context) {
  context_id = context.contextID;
});

browser.input.ime.onKeyEvent.addListener(
  function(engineID, keyData) {
    if (keyData.type == "keydown" && keyData.key.match(/^[a-z]$/)) {
      browser.input.ime.commitText({"contextID": context_id,
                                    "text": keyData.key.toUpperCase()});
      return true;
    } else {
      return false;
    }
  }
);

Typen

AssistiveWindowButton

Chrome 85 und höher browser.* seit Chrome 148

ID der Schaltflächen im Hilfefenster.

Enum

"undo"

"addToDictionary"

AssistiveWindowProperties

Chrome 85 und höher browser.* seit Chrome 148

Eigenschaften des Assistenzfensters.

Attribute

  • announceString

    String optional

    Strings, die von ChromeVox angesagt werden sollen.

  • Typ

    "undo"

  • sichtbar

    boolean

    Wird auf „true“ gesetzt, um das AssistiveWindow einzublenden, und auf „false“, um es auszublenden.

AssistiveWindowType

Chrome 85 und höher browser.* seit Chrome 148

Typ des Assistenzfensters.

Wert

"undo"

AutoCapitalizeType

Chrome 69 und höher browser.* seit Chrome 148

Der Typ der automatischen Großschreibung des Textfelds.

Enum

"characters"

"words"

"sentences"

InputContext

Beschreibt einen Eingabekontext

Attribute

  • autoCapitalize
    Chrome 69 und höher browser.* seit Chrome 148

    Der Typ der automatischen Großschreibung des Textfelds.

  • autoComplete

    boolean

    Gibt an, ob die automatische Vervollständigung für das Textfeld aktiviert werden soll.

  • autoCorrect

    boolean

    Gibt an, ob für das Textfeld die Autokorrektur aktiviert werden soll.

  • contextID

    Zahl

    Damit werden Ziele von Textfeldvorgängen angegeben. Diese ID wird ungültig, sobald onBlur aufgerufen wird.

  • shouldDoLearning

    boolean

    Chrome 68 oder höher browser.* seit Chrome 148

    Gibt an, ob der in das Textfeld eingegebene Text verwendet werden soll, um die Eingabevorschläge für den Nutzer zu verbessern.

  • spellCheck

    boolean

    Gibt an, ob für das Textfeld eine Rechtschreibprüfung gewünscht ist.

  • Typ des Werts, der in diesem Textfeld bearbeitet wird (Text, Zahl, URL usw.)

InputContextType

Chrome 44 und höher browser.* seit Chrome 148

Typ des Werts, der in diesem Textfeld bearbeitet wird (Text, Zahl, URL usw.)

Enum

"text"

"search"

"tel"

"url"

"email"

"number"

"password"

"null"

KeyboardEvent

Siehe http://www.w3.org/TR/DOM-Level-3-Events/#events-KeyboardEvent

Attribute

  • altKey

    Boolesch optional

    Gibt an, ob die ALT-Taste gedrückt ist.

  • altgrKey

    Boolesch optional

    Chrome 79 und höher browser.* seit Chrome 148

    Gibt an, ob die ALTGR-Taste gedrückt ist.

  • capsLock

    Boolesch optional

    Gibt an, ob die Feststelltaste aktiviert ist.

  • Code

    String

    Wert der gedrückten physischen Taste. Der Wert wird nicht vom aktuellen Tastaturlayout oder dem Status der Modifikatortasten beeinflusst.

  • ctrlKey

    Boolesch optional

    Gibt an, ob die Strg-Taste gedrückt ist.

  • extensionId

    String optional

    Die Erweiterungs-ID des Absenders dieses Schlüsselereignisses.

  • Schlüssel

    String

    Wert der gedrückten Taste

  • keyCode

    number optional

    Der veraltete HTML-keyCode, ein system- und implementierungsabhängiger numerischer Code, der die unveränderte Kennung der gedrückten Taste angibt.

  • requestId

    String optional

    (Verworfen) Die ID der Anfrage. Verwenden Sie stattdessen den Parameter requestId aus dem Ereignis onKeyEvent.

  • shiftKey

    Boolesch optional

    Gibt an, ob die Umschalttaste gedrückt ist.

  • Entweder „keyup“ oder „keydown“.

KeyboardEventType

Chrome 44 und höher browser.* seit Chrome 148

Enum

"keyup"

"keydown"

MenuItem

Ein Menüpunkt, der von einer Eingabemethode verwendet wird, um über das Sprachmenü mit dem Nutzer zu interagieren.

Attribute

  • ausgewählt

    Boolesch optional

    Gibt an, dass dieses Element mit einem Häkchen gezeichnet werden soll.

  • aktiviert

    Boolesch optional

    Gibt an, dass dieses Element aktiviert ist.

  • id

    String

    String, der an Callbacks übergeben wird, die auf dieses MenuItem verweisen.

  • Label

    String optional

    Text, der im Menü für diesen Artikel angezeigt wird.

  • Stil

    MenuItemStyle optional

    Der Typ des Menüpunkts.

  • sichtbar

    Boolesch optional

    Gibt an, dass dieses Element sichtbar ist.

MenuItemStyle

Chrome 44 und höher browser.* seit Chrome 148

Der Typ des Menüpunkts. Optionsfelder zwischen Trennzeichen werden als gruppiert betrachtet.

Enum

"check"

"radio"

"separator"

MenuParameters

Chrome 88 oder höher browser.* seit Chrome 148

Attribute

  • engineID

    String

    ID der zu verwendenden Engine.

  • Elemente

    MenuItems, die hinzugefügt oder aktualisiert werden sollen. Sie werden in der Reihenfolge hinzugefügt, in der sie im Array vorhanden sind.

MouseButton

Chrome 44 und höher browser.* seit Chrome 148

Welche Maustasten geklickt wurden.

Enum

"left"

"middle"

"right"

ScreenType

Chrome 44 und höher browser.* seit Chrome 148

Der Bildschirmtyp, unter dem die Eingabemethode aktiviert wird.

Enum

"normal"

"login"

"lock"

"secondary-login"

UnderlineStyle

Chrome 44 und höher browser.* seit Chrome 148

Der Typ der Unterstreichung, um dieses Segment zu ändern.

Enum

"underline"

"doubleUnderline"

"noUnderline"

WindowPosition

Chrome 44 und höher browser.* seit Chrome 148

Wo das Kandidatenfenster angezeigt werden soll. Wenn „cursor“ festgelegt ist, folgt das Fenster dem Cursor. Wenn „composition“ festgelegt ist, wird das Fenster am Anfang der Komposition fixiert.

Enum

"cursor"

"composition"

Methoden

clearComposition()

browser.input.ime.clearComposition(
  parameters: object,
)
: Promise<boolean>

Aktuelle Komposition löschen. Wenn diese Erweiterung nicht der Inhaber des aktiven IME ist, schlägt dies fehl.

Parameter

  • Parameter

    Objekt

    • contextID

      Zahl

      ID des Kontexts, in dem die Komposition gelöscht wird

Ausgabe

  • Promise<boolean>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist. Ein boolescher Wert gibt an, ob der Text akzeptiert wurde oder nicht. Bei einem Fehler wird das Versprechen abgelehnt.

commitText()

browser.input.ime.commitText(
  parameters: object,
)
: Promise<boolean>

Übernimmt den angegebenen Text in die aktuelle Eingabe.

Parameter

  • Parameter

    Objekt

    • contextID

      Zahl

      ID des Kontexts, in dem der Text festgeschrieben wird

    • Text

      String

      Der zu übernehmende Text

Ausgabe

  • Promise<boolean>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist. Ein boolescher Wert gibt an, ob der Text akzeptiert wurde oder nicht. Bei einem Fehler wird das Versprechen abgelehnt.

deleteSurroundingText()

browser.input.ime.deleteSurroundingText(
  parameters: object,
)
: Promise<void>

Löscht den Text um den Cursor herum.

Parameter

  • Parameter

    Objekt

    • contextID

      Zahl

      ID des Kontexts, in dem der umgebende Text gelöscht wird.

    • engineID

      String

      ID der Suchmaschine, die das Ereignis empfängt.

    • Länge

      Zahl

      Die Anzahl der zu löschenden Zeichen

    • kompensiert

      Zahl

      Der Offset von der Position des Caret-Zeichens, an der das Löschen beginnt. Dieser Wert kann negativ sein.

Ausgabe

  • Promise<void>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist.

hideInputView()

browser.input.ime.hideInputView(): void

Blendet das Eingabeansichtsfenster aus, das automatisch vom System eingeblendet wird. Wenn das Eingabefenster bereits ausgeblendet ist, hat diese Funktion keine Auswirkungen.

keyEventHandled()

browser.input.ime.keyEventHandled(
  requestId: string,
  response: boolean,
)
: void

Gibt an, dass das von onKeyEvent empfangene Schlüsselereignis verarbeitet wird. Dies sollte nur aufgerufen werden, wenn der onKeyEvent-Listener asynchron ist.

Parameter

  • requestId

    String

    Anfrage-ID des Ereignisses, das verarbeitet wurde. Dieser sollte aus keyEvent.requestId stammen.

  • Antwort

    boolean

    „True“, wenn der Tastendruck verarbeitet wurde, andernfalls „false“

sendKeyEvents()

browser.input.ime.sendKeyEvents(
  parameters: object,
)
: Promise<void>

Sendet die Schlüsselereignisse. Diese Funktion wird voraussichtlich von Bildschirmtastaturen verwendet. Wenn ein Nutzer eine oder mehrere Tasten auf einer Bildschirmtastatur drückt, wird diese Funktion verwendet, um das Ereignis an das System weiterzugeben.

Parameter

  • Parameter

    Objekt

    • contextID

      Zahl

      ID des Kontexts, an den die Schlüsselereignisse gesendet werden, oder „0“, um Schlüsselereignisse an ein Nicht-Eingabefeld zu senden.

    • keyData

      Daten zum Schlüsselereignis.

Ausgabe

  • Promise<void>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist.

setAssistiveWindowButtonHighlighted()

Chrome 86 und höher browser.* seit Chrome 148
browser.input.ime.setAssistiveWindowButtonHighlighted(
  parameters: object,
)
: Promise<void>

Hebt eine Schaltfläche in einem Hilfefenster hervor oder hebt die Hervorhebung auf.

Parameter

  • Parameter

    Objekt

    • announceString

      String optional

      Der Text, der vom Screenreader angesagt werden soll.

    • Die ID der Schaltfläche

    • contextID

      Zahl

      ID des Kontexts, zu dem das Assistenzfenster gehört.

    • hervorgehoben

      boolean

      Gibt an, ob die Schaltfläche hervorgehoben werden soll.

    • windowType

      "undo"

      Der Fenstertyp, zu dem die Schaltfläche gehört.

Ausgabe

  • Promise<void>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist. Bei einem Fehler wird das Versprechen abgelehnt.

setAssistiveWindowProperties()

Chrome 85 und höher browser.* seit Chrome 148
browser.input.ime.setAssistiveWindowProperties(
  parameters: object,
)
: Promise<boolean>

Blendet ein Hilfefenster mit den angegebenen Eigenschaften ein oder aus.

Parameter

  • Parameter

    Objekt

    • contextID

      Zahl

      ID des Kontexts, zu dem das Assistenzfenster gehört.

    • Eigenschaften des Assistenzfensters.

Ausgabe

  • Promise<boolean>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist.

setCandidates()

browser.input.ime.setCandidates(
  parameters: object,
)
: Promise<boolean>

Legt die aktuelle Kandidatenliste fest. Dies schlägt fehl, wenn diese Erweiterung nicht die aktive Eingabemethode besitzt.

Parameter

  • Parameter

    Objekt

    • Kandidaten

      object[]

      Liste der Kandidaten, die im Kandidatenfenster angezeigt werden sollen

      • Annotation

        String optional

        Zusätzlicher Text, der den Kandidaten beschreibt

      • Variante

        String

        Der Kandidat

      • id

        Zahl

        Die ID des Kandidaten

      • Label

        String optional

        Kurzer String, der neben dem Kandidaten angezeigt wird, oft die Tastenkombination oder der Index

      • parentId

        number optional

        Die ID, unter der diese Kandidaten hinzugefügt werden sollen

      • Verwendung

        Objekt optional

        Die Verwendung oder detaillierte Beschreibung des Wortes.

        • Text

          String

          Der Textstring der detaillierten Beschreibung.

        • Titel

          String

          Der Titelstring der Detailbeschreibung.

    • contextID

      Zahl

      ID des Kontexts, zu dem das Kandidatenfenster gehört.

Ausgabe

  • Promise<boolean>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist.

setCandidateWindowProperties()

browser.input.ime.setCandidateWindowProperties(
  parameters: object,
)
: Promise<boolean>

Legt die Eigenschaften des Kandidatenfensters fest. Dies schlägt fehl, wenn die Erweiterung nicht der Inhaber des aktiven IME ist.

Parameter

  • Parameter

    Objekt

    • engineID

      String

      ID der Engine, für die Attribute festgelegt werden sollen.

    • Properties

      Objekt

      • auxiliaryText

        String optional

        Text, der unten im Kandidatenfenster angezeigt wird.

      • auxiliaryTextVisible

        Boolesch optional

        „True“, um den Hilfstext anzuzeigen, „False“, um ihn auszublenden.

      • currentCandidateIndex

        number optional

        Chrome 84 und höher browser.* seit Chrome 148

        Der Index des aktuell ausgewählten Kandidaten im Verhältnis zur Gesamtzahl der Kandidaten.

      • cursorVisible

        Boolesch optional

        „True“, um den Cursor anzuzeigen, „False“, um ihn auszublenden.

      • pageSize

        number optional

        Die Anzahl der Kandidaten, die pro Seite angezeigt werden sollen.

      • totalCandidates

        number optional

        Chrome 84 und höher browser.* seit Chrome 148

        Die Gesamtzahl der Kandidaten für das Kandidatenfenster.

      • Branche

        Boolesch optional

        „True“, wenn das Kandidatenfenster vertikal dargestellt werden soll, „False“, wenn es horizontal dargestellt werden soll.

      • sichtbar

        Boolesch optional

        „True“, um das Kandidatenfenster einzublenden, „False“, um es auszublenden.

      • windowPosition

        WindowPosition optional

        Wo das Kandidatenfenster angezeigt werden soll.

Ausgabe

  • Promise<boolean>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist.

setComposition()

browser.input.ime.setComposition(
  parameters: object,
)
: Promise<boolean>

Aktuelle Komposition festlegen. Wenn diese Erweiterung nicht der Inhaber des aktiven IME ist, schlägt dies fehl.

Parameter

  • Parameter

    Objekt

    • contextID

      Zahl

      ID des Kontexts, in dem der Text für die Erstellung festgelegt wird

    • cursor

      Zahl

      Position des Cursors im Text.

    • Segmente

      object[] optional

      Liste der Segmente und der zugehörigen Typen.

      • Ende

        Zahl

        Index des Zeichens, nach dem dieses Segment enden soll.

      • start

        Zahl

        Index des Zeichens, bei dem dieses Segment beginnen soll

      • Der Typ der Unterstreichung, um dieses Segment zu ändern.

    • selectionEnd

      number optional

      Position im Text, an der die Auswahl endet.

    • selectionStart

      number optional

      Position im Text, an der die Auswahl beginnt.

    • Text

      String

      Festzulegender Text

Ausgabe

  • Promise<boolean>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist. Ein boolescher Wert gibt an, ob der Text akzeptiert wurde oder nicht. Bei einem Fehler wird das Versprechen abgelehnt.

setCursorPosition()

browser.input.ime.setCursorPosition(
  parameters: object,
)
: Promise<boolean>

Legen Sie die Position des Cursors im Kandidatenfenster fest. Dies ist ein No-Op, wenn diese Erweiterung nicht die aktive Eingabemethode besitzt.

Parameter

  • Parameter

    Objekt

    • candidateID

      Zahl

      ID des auszuwählenden Kandidaten.

    • contextID

      Zahl

      ID des Kontexts, zu dem das Kandidatenfenster gehört.

Ausgabe

  • Promise<boolean>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist

setMenuItems()

browser.input.ime.setMenuItems(
  parameters: MenuParameters,
)
: Promise<void>

Fügt die angegebenen Menüpunkte dem Sprachmenü hinzu, wenn diese Eingabemethode aktiv ist.

Parameter

Ausgabe

  • Promise<void>

    Chrome 111 und höher browser.* seit Chrome 148

updateMenuItems()

browser.input.ime.updateMenuItems(
  parameters: MenuParameters,
)
: Promise<void>

Aktualisiert den Status der angegebenen MenuItems

Parameter

Ausgabe

  • Promise<void>

    Chrome 111 und höher browser.* seit Chrome 148

    Wird aufgelöst, wenn der Vorgang abgeschlossen ist

Ereignisse

onActivate

browser.input.ime.onActivate.addListener(
  callback: function,
)

Dieses Ereignis wird gesendet, wenn ein IME aktiviert wird. Es signalisiert, dass der IME onKeyPress-Ereignisse empfängt.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (engineID: string, screen: ScreenType) => void

onAssistiveWindowButtonClicked

Chrome 85 und höher browser.* seit Chrome 148
browser.input.ime.onAssistiveWindowButtonClicked.addListener(
  callback: function,
)

Dieses Ereignis wird gesendet, wenn auf eine Schaltfläche in einem Hilfefenster geklickt wird.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (details: object) => void

onBlur

browser.input.ime.onBlur.addListener(
  callback: function,
)

Dieses Ereignis wird gesendet, wenn der Fokus ein Textfeld verlässt. Sie wird an alle Erweiterungen gesendet, die auf dieses Ereignis warten und vom Nutzer aktiviert wurden.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (contextID: number) => void

    • contextID

      Zahl

onCandidateClicked

browser.input.ime.onCandidateClicked.addListener(
  callback: function,
)

Dieses Ereignis wird gesendet, wenn diese Erweiterung die aktive Eingabemethode besitzt.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (engineID: string, candidateID: number, button: MouseButton) => void

    • engineID

      String

    • candidateID

      Zahl

    • Sicherungsknopf

onDeactivated

browser.input.ime.onDeactivated.addListener(
  callback: function,
)

Dieses Ereignis wird gesendet, wenn ein IME deaktiviert wird. Es signalisiert, dass der IME keine onKeyPress-Ereignisse mehr empfängt.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (engineID: string) => void

    • engineID

      String

onFocus

browser.input.ime.onFocus.addListener(
  callback: function,
)

Dieses Ereignis wird gesendet, wenn der Fokus auf ein Textfeld verschoben wird. Sie wird an alle Erweiterungen gesendet, die auf dieses Ereignis warten und vom Nutzer aktiviert wurden.

Parameter

onInputContextUpdate

browser.input.ime.onInputContextUpdate.addListener(
  callback: function,
)

Dieses Ereignis wird gesendet, wenn sich die Eigenschaften des aktuellen InputContext ändern, z. B. der Typ. Sie wird an alle Erweiterungen gesendet, die auf dieses Ereignis warten und vom Nutzer aktiviert wurden.

Parameter

onKeyEvent

browser.input.ime.onKeyEvent.addListener(
  callback: function,
)

Wird ausgelöst, wenn ein Schlüsselereignis vom Betriebssystem gesendet wird. Das Ereignis wird an die Erweiterung gesendet, wenn diese Erweiterung die aktive Eingabemethode besitzt. Die Listener-Funktion sollte „true“ zurückgeben, wenn das Ereignis verarbeitet wurde, und „false“, wenn nicht. Wenn das Ereignis asynchron ausgewertet wird, muss diese Funktion „undefined“ zurückgeben und die Eingabemethode muss später „keyEventHandled()“ mit dem Ergebnis aufrufen.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (engineID: string, keyData: KeyboardEvent, requestId: string) => boolean | undefined

    • Gibt zurück

      boolean | undefined

onMenuItemActivated

browser.input.ime.onMenuItemActivated.addListener(
  callback: function,
)

Wird aufgerufen, wenn der Nutzer einen Menüpunkt auswählt

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (engineID: string, name: string) => void

    • engineID

      String

    • name

      String

onReset

browser.input.ime.onReset.addListener(
  callback: function,
)

Dieses Ereignis wird gesendet, wenn Chrome eine laufende Texteingabesitzung beendet.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (engineID: string) => void

    • engineID

      String

onSurroundingTextChanged

browser.input.ime.onSurroundingTextChanged.addListener(
  callback: function,
)

Wird aufgerufen, wenn der bearbeitbare String um den Cursor geändert oder die Cursorposition verschoben wird. Die Textlänge ist auf 100 Zeichen pro Richtung beschränkt.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (engineID: string, surroundingInfo: object) => void

    • engineID

      String

    • surroundingInfo

      Objekt

      • anchor

        Zahl

        Die Anfangsposition der Auswahl. Dieser Wert gibt die Cursorposition an, wenn keine Auswahl getroffen wurde.

      • Fokus

        Zahl

        Die Endposition der Auswahl. Dieser Wert gibt die Cursorposition an, wenn keine Auswahl getroffen wurde.

      • kompensiert

        Zahl

        Chrome 46 und höher browser.* seit Chrome 148

        Die Offset-Position von text. Da text nur einen Teil des Texts um den Cursor herum enthält, gibt der Offset die absolute Position des ersten Zeichens von text an.

      • Text

        String

        Der Text um den Cursor. Dies ist nur ein Teil des gesamten Texts im Eingabefeld.