browser.input.ime

Beschrijving

Gebruik de chrome.input.ime API om een aangepaste IME voor ChromeOS te implementeren. Hiermee kan je extensie toetsaanslagen verwerken, de samenstelling instellen en het kandidaatvenster beheren.

Rechten

input

Je moet het recht 'input' definiëren in het extensiemanifest om de input.ime API te gebruiken. Voorbeeld:

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

Beschikbaarheid

Alleen ChromeOS

Voorbeelden

Met de volgende code maak je een IME die getypte letters omzet in hoofdletters.

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 of hoger browser.* sinds Chrome 148

ID van knoppen in het ondersteunende venster.

Enum

"undo"

"addToDictionary"

AssistiveWindowProperties

Chrome 85 of hoger browser.* sinds Chrome 148

Eigenschappen van het ondersteunende venster.

Eigenschappen

  • announceString

    tekenreeks optioneel

    Tekenreeksen die ChromeVox moet aankondigen.

  • type

    "undo"

  • zichtbaar

    booleaans

    Stelt de waarde in op True om AssistiveWindow te tonen en op False om het te verbergen.

AssistiveWindowType

Chrome 85 of hoger browser.* sinds Chrome 148

Type ondersteunend venster.

Waarde

"undo"

AutoCapitalizeType

Chrome 69 of hoger browser.* sinds Chrome 148

Het type automatisch hoofdlettergebruik van het tekstveld.

Enum

"characters"

"words"

"sentences"

InputContext

Beschrijft een invoercontext

Eigenschappen

  • autoCapitalize
    Chrome 69 of hoger browser.* sinds Chrome 148

    Het type automatisch hoofdlettergebruik van het tekstveld.

  • autoComplete

    booleaans

    Of het tekstveld automatisch aanvullen wil.

  • autoCorrect

    booleaans

    Of het tekstveld autocorrectie wil.

  • contextID

    getal

    Dit wordt gebruikt om doelen van tekstveldbewerkingen aan te geven. Deze ID wordt ongeldig zodra onBlur wordt aangeroepen.

  • shouldDoLearning

    booleaans

    Chrome 68+ browser.* sinds Chrome 148

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

  • spellCheck

    booleaans

    Of het tekstveld spellingcontrole wil.

  • Type waarde dat dit tekstveld bewerkt (tekst, getal, URL, enzovoort)

InputContextType

Chrome 44+ browser.* sinds Chrome 148

Type waarde dat dit tekstveld bewerkt (tekst, getal, URL, enzovoort)

Enum

"text"

"search"

"tel"

"url"

"email"

"number"

"password"

"null"

KeyboardEvent

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

Eigenschappen

  • altKey

    booleaans optioneel

    Of de ALT-toets is ingedrukt.

  • altgrKey

    booleaans optioneel

    Chrome 79+ browser.* sinds Chrome 148

    Of de ALTGR-toets is ingedrukt.

  • capsLock

    booleaans optioneel

    Of CAPS_LOCK aanstaat.

  • code

    tekenreeks

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

  • ctrlKey

    booleaans optioneel

    Of de CTRL-toets is ingedrukt.

  • extensionId

    tekenreeks optioneel

    De extensie-ID van de afzender van deze toetsgebeurtenis.

  • sleutel

    tekenreeks

    Waarde van de toets die wordt ingedrukt

  • keyCode

    number optioneel

    De beëindigde HTML keyCode, een systeem- en implementatieafhankelijke numerieke code die de ongewijzigde ID aangeeft die is gekoppeld aan de ingedrukte toets.

  • requestId

    tekenreeks optioneel

    (Beëindigd) De ID van het verzoek. Gebruik in plaats daarvan de parameter requestId van de gebeurtenis onKeyEvent.

  • shiftKey

    booleaans optioneel

    Of de Shift-toets is ingedrukt.

  • keyup of keydown.

KeyboardEventType

Chrome 44+ browser.* sinds Chrome 148

Enum

"keyup"

"keydown"

MenuItem

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

Eigenschappen

  • aangevinkt

    booleaans optioneel

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

  • aangezet

    booleaans optioneel

    Geeft aan dat dit item aanstaat.

  • id

    tekenreeks

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

  • label

    tekenreeks optioneel

    Tekst die in het menu voor dit item wordt getoond.

  • stijl

    MenuItemStyle optioneel

    Het type menu-item.

  • zichtbaar

    booleaans optioneel

    Geeft aan dat dit item zichtbaar is.

MenuItemStyle

Chrome 44+ browser.* sinds Chrome 148

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

Enum

"check"

"radio"

"separator"

MenuParameters

Chrome 88+ browser.* sinds Chrome 148

Eigenschappen

  • engineID

    tekenreeks

    ID van de engine die je wilt gebruiken.

  • items

    MenuItems die u wilt toevoegen of updaten. Ze worden toegevoegd in de volgorde waarin ze in de matrix staan.

MouseButton

Chrome 44+ browser.* sinds Chrome 148

Op welke muisknoppen is geklikt.

Enum

"left"

"middle"

"right"

ScreenType

Chrome 44+ browser.* sinds Chrome 148

Het schermtype waaronder de IME is geactiveerd.

Enum

"normal"

"login"

"lock"

"secondary-login"

UnderlineStyle

Chrome 44+ browser.* sinds Chrome 148

Het type onderstreping om dit segment aan te passen.

Enum

"underline"

doubleUnderline

"noUnderline"

WindowPosition

Chrome 44+ browser.* sinds Chrome 148

Waar het kandidaatvenster moet worden getoond. Als je deze instelt op Cursor, volgt het venster de cursor. Als je deze instelt op composition, wordt het venster vergrendeld aan het begin van de compositie.

Enum

"cursor"

compositie

Methoden

clearComposition()

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

Wis de huidige compositie. Als deze extensie niet de eigenaar is van de actieve IME, mislukt dit.

Parameters

  • parameters

    object

    • contextID

      getal

      ID van de context waarin de compositie wordt gewist

Retourzendingen

  • Promise<boolean>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond met een booleaanse waarde die aangeeft of de tekst is geaccepteerd of niet. Als dit mislukt, wordt de promise afgewezen.

commitText()

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

Voert de verstrekte tekst in de huidige invoer in.

Parameters

  • parameters

    object

    • contextID

      getal

      ID van de context waarin de tekst wordt vastgelegd

    • tekst

      tekenreeks

      De tekst die moet worden vastgelegd

Retourzendingen

  • Promise<boolean>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond met een booleaanse waarde die aangeeft of de tekst is geaccepteerd of niet. Als dit mislukt, wordt de promise afgewezen.

deleteSurroundingText()

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

Verwijdert de tekst rond het inlasteken.

Parameters

  • parameters

    object

    • contextID

      getal

      ID van de context waarin de omringende tekst wordt verwijderd.

    • engineID

      tekenreeks

      ID van de engine die de gebeurtenis krijgt.

    • lengte

      getal

      Het aantal tekens dat moet worden verwijderd

    • gecompenseerd

      getal

      De verschuiving vanaf de positie van het inlasteken waar de verwijdering begint. Deze waarde kan negatief zijn.

Retourzendingen

  • Promise<void>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond.

hideInputView()

browser.input.ime.hideInputView(): void

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

keyEventHandled()

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

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

Parameters

  • requestId

    tekenreeks

    Verzoek-ID van de gebeurtenis die is verwerkt. Dit moet afkomstig zijn van keyEvent.requestId

  • reactie

    booleaans

    Waar als de toetsaanslag is verwerkt, onwaar als dit niet het geval is

sendKeyEvents()

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

Stuurt de belangrijke gebeurtenissen. Deze functie wordt naar verwachting gebruikt door virtuele toetsenborden. Als een gebruiker op een of meer toetsen op een virtueel toetsenbord drukt, wordt deze functie gebruikt om die gebeurtenis door te geven aan het systeem.

Parameters

  • parameters

    object

    • contextID

      getal

      ID van de context waarnaar de belangrijke gebeurtenissen worden gestuurd, of 0 om belangrijke gebeurtenissen naar een niet-invoerveld te sturen.

    • keyData

      Gegevens over de belangrijke gebeurtenis.

Retourzendingen

  • Promise<void>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond.

setAssistiveWindowButtonHighlighted()

Chrome 86+ browser.* sinds Chrome 148
browser.input.ime.setAssistiveWindowButtonHighlighted(
  parameters: object,
)
: Promise<void>

Markeert een knop in een ondersteunend venster of heft de markering op.

Parameters

  • parameters

    object

    • announceString

      tekenreeks optioneel

      De tekst die de schermlezer moet voorlezen.

    • De ID van de knop

    • contextID

      getal

      ID van de context die eigenaar is van het ondersteunende venster.

    • gemarkeerd

      booleaans

      Of de knop moet worden gemarkeerd.

    • windowType

      "undo"

      Het venstertype waartoe de knop behoort.

Retourzendingen

  • Promise<void>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond. Als dit mislukt, wordt de promise afgewezen.

setAssistiveWindowProperties()

Chrome 85 of hoger browser.* sinds Chrome 148
browser.input.ime.setAssistiveWindowProperties(
  parameters: object,
)
: Promise<boolean>

Toont/verbergt een ondersteunend venster met de opgegeven eigenschappen.

Parameters

  • parameters

    object

    • contextID

      getal

      ID van de context die eigenaar is van het ondersteunende venster.

    • Eigenschappen van het ondersteunende venster.

Retourzendingen

  • Promise<boolean>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond.

setCandidates()

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

Hiermee wordt de huidige kandidatenlijst ingesteld. Dit mislukt als deze extensie niet de eigenaar is van de actieve IME

Parameters

  • parameters

    object

    • kandidaten

      object[]

      Lijst met kandidaten die moeten worden getoond in het kandidatenvenster

      • annotatie

        tekenreeks optioneel

        Aanvullende tekst die de kandidaat beschrijft

      • kandidaat

        tekenreeks

        De kandidaat

      • id

        getal

        De ID van de kandidaat

      • label

        tekenreeks optioneel

        Korte tekenreeks die naast de kandidaat wordt getoond, vaak de sneltoets of index

      • parentId

        number optioneel

        De ID waaronder deze kandidaten moeten worden toegevoegd

      • gebruik

        object optioneel

        Het gebruik of de gedetailleerde beschrijving van het woord.

        • lichaam

          tekenreeks

          De hoofdtekst van de gedetailleerde beschrijving.

        • titel

          tekenreeks

          De titel van de beschrijving van de details.

    • contextID

      getal

      ID van de context die eigenaar is van het kandidaatvenster.

Retourzendingen

  • Promise<boolean>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond.

setCandidateWindowProperties()

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

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

Parameters

  • parameters

    object

    • engineID

      tekenreeks

      ID van de engine waarvoor u property's wilt instellen.

    • property's

      object

      • auxiliaryText

        tekenreeks optioneel

        Tekst die onderaan het kandidaatvenster wordt getoond.

      • auxiliaryTextVisible

        booleaans optioneel

        True om de hulptekst te tonen, False om deze te verbergen.

      • currentCandidateIndex

        number optioneel

        Chrome 84 of hoger browser.* sinds Chrome 148

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

      • cursorVisible

        booleaans optioneel

        Waar om de cursor te tonen, onwaar om deze te verbergen.

      • pageSize

        number optioneel

        Het aantal kandidaten dat per pagina moet worden getoond.

      • totalCandidates

        number optioneel

        Chrome 84 of hoger browser.* sinds Chrome 148

        Het totale aantal kandidaten voor het kandidatenvenster.

      • categorie

        booleaans optioneel

        Waar als het kandidaatvenster verticaal moet worden weergegeven, onwaar om het horizontaal te maken.

      • zichtbaar

        booleaans optioneel

        Waar om het venster Kandidaten te tonen, onwaar om het te verbergen.

      • windowPosition

        WindowPosition optioneel

        Waar het kandidaatvenster moet worden getoond.

Retourzendingen

  • Promise<boolean>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond.

setComposition()

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

Stel de huidige samenstelling in. Als deze extensie niet de eigenaar is van de actieve IME, mislukt dit.

Parameters

  • parameters

    object

    • contextID

      getal

      ID van de context waarin de compositietekst wordt ingesteld

    • cursor

      getal

      Positie in de tekst van de cursor.

    • segmenten

      object[] optioneel

      Lijst met segmenten en de bijbehorende typen.

      • End

        getal

        Index van het teken waarna dit segment moet eindigen.

      • start

        getal

        Index van het teken waarmee dit segment moet beginnen

      • Het type onderstreping om dit segment aan te passen.

    • selectionEnd

      number optioneel

      De positie in de tekst waar de selectie eindigt.

    • selectionStart

      number optioneel

      Positie in de tekst waar de selectie begint.

    • tekst

      tekenreeks

      Tekst om in te stellen

Retourzendingen

  • Promise<boolean>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond met een booleaanse waarde die aangeeft of de tekst is geaccepteerd of niet. Als dit mislukt, wordt de promise afgewezen.

setCursorPosition()

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

Stel de positie van de cursor in het kandidaatvenster in. Dit is een no-op als deze extensie niet de eigenaar is van de actieve IME.

Parameters

  • parameters

    object

    • candidateID

      getal

      ID van de kandidaat die je wilt selecteren.

    • contextID

      getal

      ID van de context die eigenaar is van het kandidaatvenster.

Retourzendingen

  • Promise<boolean>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond

setMenuItems()

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

Voegt de verstrekte menu-items toe aan het taalmenu als deze IME actief is.

Parameters

Retourzendingen

  • Promise<void>

    Chrome 111+ browser.* sinds Chrome 148

updateMenuItems()

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

Updatet de status van de opgegeven MenuItems

Parameters

Retourzendingen

  • Promise<void>

    Chrome 111+ browser.* sinds Chrome 148

    Wordt opgelost als de bewerking is afgerond

Evenementen

onActivate

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

Deze gebeurtenis wordt verstuurd als een IME wordt geactiveerd. Dit geeft aan dat de IME onKeyPress-gebeurtenissen krijgt.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

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

onAssistiveWindowButtonClicked

Chrome 85 of hoger browser.* sinds Chrome 148
browser.input.ime.onAssistiveWindowButtonClicked.addListener(
  callback: function,
)

Deze gebeurtenis wordt gestuurd als er op een knop in een ondersteunend venster wordt geklikt.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (details: object) => void

onBlur

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

Deze gebeurtenis wordt gestuurd als de focus een tekstvak verlaat. De gebeurtenis wordt gestuurd naar alle extensies die naar deze gebeurtenis luisteren en die door de gebruiker zijn aangezet.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (contextID: number) => void

    • contextID

      getal

onCandidateClicked

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

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

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

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

    • engineID

      tekenreeks

    • candidateID

      getal

onDeactivated

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

Deze gebeurtenis wordt verstuurd als een IME wordt gedeactiveerd. Dit geeft aan dat de IME geen onKeyPress-gebeurtenissen meer krijgt.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (engineID: string) => void

    • engineID

      tekenreeks

onFocus

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

Deze gebeurtenis wordt gestuurd als de focus naar een tekstvak gaat. De gebeurtenis wordt gestuurd naar alle extensies die naar deze gebeurtenis luisteren en die door de gebruiker zijn aangezet.

Parameters

onInputContextUpdate

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

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

Parameters

onKeyEvent

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

Wordt geactiveerd als er een belangrijke gebeurtenis wordt gestuurd vanuit het besturingssysteem. De gebeurtenis wordt naar de extensie gestuurd als deze extensie de actieve IME bezit. De listenerfunctie moet 'true' retourneren als de gebeurtenis is verwerkt en 'false' als dat 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

  • callback

    functie

    De parameter callback ziet er zo uit:

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

    • returns

      boolean | undefined

onMenuItemActivated

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

Wordt aangeroepen als de gebruiker een menu-item selecteert

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

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

    • engineID

      tekenreeks

    • name

      tekenreeks

onReset

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

Deze gebeurtenis wordt verstuurd als Chrome een lopende tekstinvoersessie beëindigt.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (engineID: string) => void

    • engineID

      tekenreeks

onSurroundingTextChanged

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

Wordt aangeroepen als de bewerkbare tekenreeks rond het inlasteken wordt gewijzigd of als de positie van het inlasteken wordt verplaatst. De tekstlengte is beperkt tot 100 tekens voor elke heen-en-weer-richting.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

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

    • engineID

      tekenreeks

    • surroundingInfo

      object

      • anker

        getal

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

      • focus

        getal

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

      • gecompenseerd

        getal

        Chrome 46+ browser.* sinds Chrome 148

        De offsetpositie van text. Omdat text alleen een subset van de tekst rond de cursor bevat, geeft offset de absolute positie van het eerste teken van text aan.

      • tekst

        tekenreeks

        De tekst rond de cursor. Dit is maar een subset van alle tekst in het invoerveld.