chrome.input.ime

Beschrijving

Gebruik de chrome.input.ime API om een aangepaste IME voor Chrome OS te implementeren. Hiermee kan uw extensie toetsaanslagen verwerken, de compositie instellen en het kandidaatvenster beheren.

Machtigingen

input

U moet de machtiging 'input' in het extensiemanifest declareren om de input.ime API te gebruiken. Bijvoorbeeld:

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

Beschikbaarheid

Alleen ChromeOS

Voorbeelden

De volgende code maakt een IME die getypte letters omzet in hoofdletters.

var context_id = -1;

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

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

Typen

AssistiveWindowButton

Chroom 85+

ID van knoppen in het hulpvenster.

Enum

"ongedaan maken"

"toevoegen aan woordenboek"

AssistiveWindowProperties

Chroom 85+

Eigenschappen van het ondersteuningsvenster.

Eigenschappen

  • aankondigString

    string optioneel

    Strings die ChromeVox moet aankondigen.

  • type

    "ongedaan maken"

  • zichtbaar

    Booleaanse

    Stel true in om AssistiveWindow weer te geven en stel false in om te verbergen.

AssistiveWindowType

Chroom 85+

Soort hulpmiddel.

Waarde

"ongedaan maken"

AutoCapitalizeType

Chroom 69+

Het type automatische hoofdlettergebruik van het tekstveld.

Enum

"personages"

"woorden"

"zinnen"

InputContext

Beschrijft een invoercontext

Eigenschappen

  • autoCapitalize
    Chroom 69+

    Het type automatische hoofdlettergebruik van het tekstveld.

  • automatisch aanvullen

    Booleaanse

    Of het tekstveld automatisch aangevuld moet worden.

  • autoCorrectie

    Booleaanse

    Of het tekstveld automatisch gecorrigeerd moet worden.

  • contextID

    nummer

    Dit wordt gebruikt om de doelen van tekstveldbewerkingen te specificeren. Deze ID wordt ongeldig zodra onBlur wordt aangeroepen.

  • moetDoenLeren

    Booleaanse

    Chroom 68+

    Of de tekst die in het tekstveld wordt ingevoerd, moet worden gebruikt om de typsuggesties voor de gebruiker te verbeteren.

  • spellingscontrole

    Booleaanse

    Of er een spellingscontrole voor het tekstveld nodig is.

  • Type waarde dat dit tekstveld bewerkt (Tekst, Getal, URL, etc.)

InputContextType

Chroom 44+

Type waarde dat dit tekstveld bewerkt (Tekst, Getal, URL, etc.)

Enum

"tekst"

"zoekopdracht"

"tel"

"url"

"e-mail"

"nummer"

"wachtwoord"

"nul"

KeyboardEvent

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

Eigenschappen

  • altKey

    boolean optioneel

    Of de ALT-toets wel of niet is ingedrukt.

  • altgrKey

    boolean optioneel

    Chroom 79+

    Of de ALTGR-toets wel of niet is ingedrukt.

  • capsLock

    boolean optioneel

    Of CAPS_LOCK is ingeschakeld.

  • code

    snaar

    Waarde van de fysieke toets die wordt ingedrukt. De waarde wordt niet beïnvloed door de huidige toetsenbordindeling of modifierstatus.

  • ctrl-toets

    boolean optioneel

    Of de CTRL-toets wel of niet is ingedrukt.

  • extensie-ID

    string optioneel

    De extensie-ID van de verzender van deze keyevent.

  • sleutel

    snaar

    Waarde van de ingedrukte toets

  • sleutelcode

    nummer optioneel

    De verouderde HTML keyCode, een systeem- en implementatie-afhankelijke numerieke code die de ongewijzigde identificatiecode aangeeft die is gekoppeld aan de ingedrukte toets.

  • aanvraag-ID

    string optioneel

    (Verouderd) De ID van de aanvraag. Gebruik in plaats daarvan de parameter requestId van de gebeurtenis onKeyEvent .

  • shiftKey

    boolean optioneel

    Of de SHIFT-toets wel of niet is ingedrukt.

  • Één van keyup en keydown.

KeyboardEventType

Chroom 44+

Enum

"keyup"

"toets ingedrukt"

MenuItem

Een menu-item dat door een invoermethode wordt gebruikt om met de gebruiker te communiceren vanuit het taalmenu.

Eigenschappen

  • gecontroleerd

    boolean optioneel

    Geeft aan dat dit item met een vinkje moet worden getrokken.

  • ingeschakeld

    boolean optioneel

    Geeft aan dat dit item is ingeschakeld.

  • id

    snaar

    String die wordt doorgegeven aan callbacks die naar dit MenuItem verwijzen.

  • label

    string optioneel

    Tekst die in het menu voor dit item wordt weergegeven.

  • stijl

    MenuItemStyle optioneel

    Het type menu-item.

  • zichtbaar

    boolean optioneel

    Geeft aan dat dit item zichtbaar is.

MenuItemStyle

Chroom 44+

Het type menu-item. Keuzerondjes tussen scheidingstekens worden als gegroepeerd beschouwd.

Enum

"rekening"

"radio"

"scheidingsteken"

MenuParameters

Chroom 88+

Eigenschappen

  • motor-ID

    snaar

    ID van de te gebruiken engine.

  • artikelen

    Menu -item []

    MenuItems die moeten worden toegevoegd of bijgewerkt. Ze worden toegevoegd in de volgorde waarin ze in de array voorkomen.

MouseButton

Chroom 44+

Op welke muisknoppen is geklikt?

Enum

"links"

"midden"

"rechts"

ScreenType

Chroom 44+

Het schermtype waaronder de IME is geactiveerd.

Enum

"normaal"

"login"

"slot"

"secundaire login"

UnderlineStyle

Chroom 44+

Het type onderstreping waarmee dit segment wordt gewijzigd.

Enum

"onderstrepen"

"dubbele onderstreping"

"geen onderstreping"

WindowPosition

Chroom 44+

Waar het kandidaatvenster moet worden weergegeven. Indien ingesteld op 'cursor', volgt het venster de cursor. Indien ingesteld op 'compositie', wordt het venster vergrendeld aan het begin van de compositie.

Enum

"cursor"

"samenstelling"

Methoden

clearComposition()

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

Wis de huidige compositie. Als deze extensie niet de actieve IME bezit, mislukt dit.

Parameters

  • parameters

    voorwerp

    • contextID

      nummer

      ID van de context waarin de compositie zal worden gewist

Retourneren

  • Belofte<boolean>

    Chroom 111+

commitText()

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

De opgegeven tekst wordt aan de huidige invoer toegewezen.

Parameters

  • parameters

    voorwerp

    • contextID

      nummer

      ID van de context waarin de tekst zal worden vastgelegd

    • tekst

      snaar

      De tekst om te committeren

Retourneren

  • Belofte<boolean>

    Chroom 111+

deleteSurroundingText()

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

Verwijdert de tekst rondom het tekstinvoegteken.

Parameters

  • parameters

    voorwerp

    • contextID

      nummer

      ID van de context waarin de omringende tekst wordt verwijderd.

    • motor-ID

      snaar

      ID van de engine die de gebeurtenis ontvangt.

    • lengte

      nummer

      Het aantal tekens dat moet worden verwijderd

    • offset

      nummer

      De offset vanaf de positie van de invoegmarkering waar het verwijderen begint. Deze waarde kan negatief zijn.

Retourneren

  • Belofte<leegte>

    Chroom 111+

hideInputView()

chrome.input.ime.hideInputView(): void

Verbergt het invoervenster, dat automatisch door het systeem wordt geopend. Als het invoervenster al verborgen is, doet deze functie niets.

keyEventHandled()

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

Geeft aan dat de sleutelgebeurtenis die door onKeyEvent is ontvangen, wordt verwerkt. Dit mag alleen worden aangeroepen als de onKeyEvent-listener asynchroon is.

Parameters

  • aanvraag-ID

    snaar

    Verzoek-ID van de gebeurtenis die is afgehandeld. Deze moet afkomstig zijn van keyEvent.requestId

  • antwoord

    Booleaanse

    True als de toetsaanslag is verwerkt, false als dat niet het geval is

sendKeyEvents()

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

Verstuurt de toetsgebeurtenissen. Deze functie wordt gebruikt door virtuele toetsenborden. Wanneer een gebruiker een toets op een virtueel toetsenbord indrukt, wordt deze functie gebruikt om die gebeurtenis naar het systeem te versturen.

Parameters

  • parameters

    voorwerp

    • contextID

      nummer

      ID van de context waar de sleutelgebeurtenissen naartoe worden verzonden, of nul om sleutelgebeurtenissen naar een niet-invoerveld te verzenden.

    • sleutelgegevens

      Gegevens over de belangrijke gebeurtenis.

Retourneren

  • Belofte<leegte>

    Chroom 111+

setAssistiveWindowButtonHighlighted()

Chroom 86+
chrome.input.ime.setAssistiveWindowButtonHighlighted(
  parameters: object,
)
: Promise<void>

Markeert/demarkeert een knop in een hulpvenster.

Parameters

  • parameters

    voorwerp

    • aankondigString

      string optioneel

      De tekst die de schermlezer moet aankondigen.

    • De ID van de knop

    • contextID

      nummer

      ID van de context die eigenaar is van het hulpvenster.

    • gemarkeerd

      Booleaanse

      Of de knop gemarkeerd moet worden.

    • vensterType

      "ongedaan maken"

      Het venstertype waartoe de knop behoort.

Retourneren

  • Belofte<leegte>

    Chroom 111+

setAssistiveWindowProperties()

Chroom 85+
chrome.input.ime.setAssistiveWindowProperties(
  parameters: object,
)
: Promise<boolean>

Toont/verbergt een ondersteuningsvenster met de opgegeven eigenschappen.

Parameters

  • parameters

    voorwerp

    • contextID

      nummer

      ID van de context die eigenaar is van het hulpvenster.

    • Eigenschappen van het ondersteuningsvenster.

Retourneren

  • Belofte<boolean>

    Chroom 111+

setCandidates()

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

Stelt de huidige kandidatenlijst in. Dit mislukt als deze extensie niet de actieve IME bezit.

Parameters

  • parameters

    voorwerp

    • kandidaten

      voorwerp[]

      Lijst met kandidaten die in het kandidatenvenster moeten worden weergegeven

      • annotatie

        string optioneel

        Aanvullende tekst waarin de kandidaat wordt beschreven

      • kandidaat

        snaar

        De kandidaat

      • id

        nummer

        De identiteit van de kandidaat

      • label

        string optioneel

        Korte string die naast de kandidaat wordt weergegeven, vaak de sneltoets of index

      • ouder-ID

        nummer optioneel

        Het id om deze kandidaten onder toe te voegen

      • gebruik

        object optioneel

        Het gebruik of de gedetailleerde beschrijving van het woord.

        • lichaam

          snaar

          De hoofdtekst van de gedetailleerde beschrijving.

        • titel

          snaar

          De titelreeks van de gedetailleerde beschrijving.

    • contextID

      nummer

      ID van de context die eigenaar is van het kandidaatvenster.

Retourneren

  • Belofte<boolean>

    Chroom 111+

setCandidateWindowProperties()

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

Stelt de eigenschappen van het kandidaatvenster in. Dit mislukt als de extensie niet de actieve IME bezit.

Parameters

  • parameters

    voorwerp

    • motor-ID

      snaar

      ID van de engine waarvan u de eigenschappen wilt instellen.

    • eigenschappen

      voorwerp

      • hulptekst

        string optioneel

        Tekst die onderaan het kandidatenvenster wordt weergegeven.

      • hulpTekstZichtbaar

        boolean optioneel

        True om de hulptekst weer te geven, false om deze te verbergen.

      • huidigeKandidaatIndex

        nummer optioneel

        Chroom 84+

        De index van de huidige gekozen kandidaat uit het totale aantal kandidaten.

      • cursorZichtbaar

        boolean optioneel

        True om de cursor weer te geven, false om deze te verbergen.

      • paginagrootte

        nummer optioneel

        Het aantal kandidaten dat per pagina wordt weergegeven.

      • totaalKandidaten

        nummer optioneel

        Chroom 84+

        Het totale aantal kandidaten voor het kandidatenvenster.

      • verticaal

        boolean optioneel

        True als het kandidaatvenster verticaal moet worden weergegeven, false om het horizontaal te maken.

      • zichtbaar

        boolean optioneel

        True om het kandidatenvenster te tonen, false om het te verbergen.

      • vensterpositie

        WindowPosition optioneel

        Waar het kandidatenvenster moet worden weergegeven.

Retourneren

  • Belofte<boolean>

    Chroom 111+

setComposition()

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

Stel de huidige compositie in. Als deze extensie niet de actieve IME bezit, mislukt dit.

Parameters

  • parameters

    voorwerp

    • contextID

      nummer

      ID van de context waarin de compositietekst zal worden geplaatst

    • cursor

      nummer

      Positie van de cursor in de tekst.

    • segmenten

      object[] optioneel

      Lijst met segmenten en hun bijbehorende typen.

      • einde

        nummer

        Index van het personage waarmee dit segment beëindigd moet worden.

      • begin

        nummer

        Index van het personage waarmee dit segment begint

      • Het type onderstreping waarmee dit segment wordt gewijzigd.

    • selectieEinde

      nummer optioneel

      Positie in de tekst waar de selectie eindigt.

    • selectieStart

      nummer optioneel

      Positie in de tekst waar de selectie begint.

    • tekst

      snaar

      In te stellen tekst

Retourneren

  • Belofte<boolean>

    Chroom 111+

setCursorPosition()

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

Stel de positie van de cursor in het kandidaatvenster in. Dit is niet nodig als deze extensie niet over de actieve IME beschikt.

Parameters

  • parameters

    voorwerp

    • kandidaat-ID

      nummer

      ID van de kandidaat die u wilt selecteren.

    • contextID

      nummer

      ID van de context die eigenaar is van het kandidaatvenster.

Retourneren

  • Belofte<boolean>

    Chroom 111+

setMenuItems()

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

Voegt de opgegeven menu-items toe aan het taalmenu wanneer deze IME actief is.

Parameters

Retourneren

  • Belofte<leegte>

    Chroom 111+

updateMenuItems()

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

Werkt de status van de opgegeven MenuItems bij

Parameters

Retourneren

  • Belofte<leegte>

    Chroom 111+

Evenementen

onActivate

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

Deze gebeurtenis wordt verzonden wanneer een IME wordt geactiveerd. Het geeft aan dat de IME onKeyPress-gebeurtenissen zal ontvangen.

Parameters

  • terugbellen

    functie

    De callback ziet er als volgt uit:

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

onAssistiveWindowButtonClicked

Chroom 85+
chrome.input.ime.onAssistiveWindowButtonClicked.addListener(
  callback: function,
)

Deze gebeurtenis wordt verzonden wanneer er op een knop in een hulpvenster wordt geklikt.

Parameters

  • terugbellen

    functie

    De callback ziet er als volgt uit:

    (details: object) => void

onBlur

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

Deze gebeurtenis wordt verzonden wanneer de focus een tekstvak verlaat. De gebeurtenis wordt verzonden naar alle extensies die naar deze gebeurtenis luisteren en door de gebruiker worden ingeschakeld.

Parameters

  • terugbellen

    functie

    De callback ziet er als volgt uit:

    (contextID: number) => void

    • contextID

      nummer

onCandidateClicked

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

Deze gebeurtenis wordt verzonden als deze extensie de actieve IME bezit.

Parameters

  • terugbellen

    functie

    De callback ziet er als volgt uit:

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

    • motor-ID

      snaar

    • kandidaat-ID

      nummer

    • knop

onDeactivated

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

Deze gebeurtenis wordt verzonden wanneer een IME wordt gedeactiveerd. Het geeft aan dat de IME geen onKeyPress-gebeurtenissen meer ontvangt.

Parameters

  • terugbellen

    functie

    De callback ziet er als volgt uit:

    (engineID: string) => void

    • motor-ID

      snaar

onFocus

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

Deze gebeurtenis wordt verzonden wanneer de focus een tekstvak binnengaat. De gebeurtenis wordt verzonden naar alle extensies die naar deze gebeurtenis luisteren en door de gebruiker zijn ingeschakeld.

Parameters

onInputContextUpdate

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

Deze gebeurtenis wordt verzonden wanneer de eigenschappen van de huidige InputContext veranderen, zoals het type. De gebeurtenis wordt verzonden naar alle extensies die naar deze gebeurtenis luisteren en door de gebruiker zijn ingeschakeld.

Parameters

onKeyEvent

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

Wordt geactiveerd wanneer een belangrijke gebeurtenis wordt verzonden door het besturingssysteem. De gebeurtenis wordt naar de extensie verzonden als deze de actieve IME bezit. De listenerfunctie moet true retourneren als de gebeurtenis is afgehandeld (false) als dit niet het geval is. Als de gebeurtenis asynchroon wordt geëvalueerd, moet deze functie undefined retourneren en moet de IME later keyEventHandled() aanroepen met het resultaat.

Parameters

  • terugbellen

    functie

    De callback ziet er als volgt uit:

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

    • retouren

      boolean | ongedefinieerd

onMenuItemActivated

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

Wordt aangeroepen wanneer de gebruiker een menu-item selecteert

Parameters

  • terugbellen

    functie

    De callback ziet er als volgt uit:

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

    • motor-ID

      snaar

    • naam

      snaar

onReset

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

Deze gebeurtenis wordt verzonden wanneer Chrome een actieve tekstinvoersessie beëindigt.

Parameters

  • terugbellen

    functie

    De callback ziet er als volgt uit:

    (engineID: string) => void

    • motor-ID

      snaar

onSurroundingTextChanged

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

Wordt aangeroepen wanneer de bewerkbare tekenreeks rond de cursor wordt gewijzigd of wanneer de cursorpositie wordt verplaatst. De tekstlengte is beperkt tot 100 tekens voor elke heen-en-weergaande richting.

Parameters

  • terugbellen

    functie

    De callback ziet er als volgt uit:

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

    • motor-ID

      snaar

    • omringendeInfo

      voorwerp

      • anker

        nummer

        De beginpositie van de selectie. Deze waarde geeft de positie van de cursor aan als er geen selectie is.

      • focus

        nummer

        De eindpositie van de selectie. Deze waarde geeft de positie van de cursor aan als er geen selectie is.

      • offset

        nummer

        Chroom 46+

        De offsetpositie van text . Omdat text slechts een deel van de tekst rond de cursor omvat, geeft offset de absolute positie van het eerste teken van text aan.

      • tekst

        snaar

        De tekst rond de cursor. Dit is slechts een deel van alle tekst in het invoerveld.