browser.input.ime

Açıklama

ChromeOS için özel bir IME uygulamak üzere chrome.input.ime API'sini kullanın. Bu sayede uzantınız tuş vuruşlarını işleyebilir, oluşturmayı ayarlayabilir ve aday penceresini yönetebilir.

İzinler

input

input.ime API'yi kullanmak için uzantı manifest dosyasında "input" iznini beyan etmeniz gerekir. Örneğin:

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

Kullanılabilirlik

Yalnızca ChromeOS

Örnekler

Aşağıdaki kod, yazılan harfleri büyük harfe dönüştüren bir IME oluşturur.

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;
    }
  }
);

Türler

AssistiveWindowButton

Chrome 85 ve sonraki sürümler Chrome 148'den itibaren browser.*

Yardımcı penceredeki düğmelerin kimliği.

Enum

"geri al"

"addToDictionary"

AssistiveWindowProperties

Chrome 85 ve sonraki sürümler Chrome 148'den itibaren browser.*

Yardımcı pencerenin özellikleri.

Özellikler

  • announceString

    string isteğe bağlı

    ChromeVox'un duyuracağı dizeler.

  • tür

    "geri al"

  • görünür

    boole

    AssistiveWindow'u göstermek için doğru, gizlemek için yanlış değerini ayarlar.

AssistiveWindowType

Chrome 85 ve sonraki sürümler Chrome 148'den itibaren browser.*

Yardımcı pencere türü.

Değer

"geri al"

AutoCapitalizeType

Chrome 69 ve sonraki sürümler Chrome 148'den itibaren browser.*

Metin alanının otomatik büyük harf türü.

Enum

"characters"

"words"

"sentences"

InputContext

Giriş bağlamını açıklar.

Özellikler

  • autoCapitalize
    Chrome 69 ve sonraki sürümler Chrome 148'den itibaren browser.*

    Metin alanının otomatik büyük harf türü.

  • autoComplete

    boole

    Metin alanının otomatik tamamlama isteyip istemediği.

  • autoCorrect

    boole

    Metin alanının otomatik düzeltme isteyip istemediği.

  • contextID

    sayı

    Bu, metin alanı işlemlerinin hedeflerini belirtmek için kullanılır. Bu kimlik, onBlur çağrılır çağrılmaz geçersiz hale gelir.

  • shouldDoLearning

    boole

    Chrome 68 ve sonraki sürümler Chrome 148'den itibaren browser.*

    Metin alanına girilen metnin, kullanıcıya yönelik yazma önerilerini iyileştirmek için kullanılıp kullanılmayacağı.

  • spellCheck

    boole

    Metin alanının yazım denetimi isteyip istemediği.

  • Bu metin alanının düzenlediği değer türü (Metin, Sayı, URL vb.)

InputContextType

Chrome 44 ve sonraki sürümler Chrome 148'den itibaren browser.*

Bu metin alanının düzenlediği değer türü (Metin, Sayı, URL vb.)

Enum

"text"

"search"

"tel"

"url"

"email"

"number"

"password"

"null"

KeyboardEvent

http://www.w3.org/TR/DOM-Level-3-Events/#events-KeyboardEvent adresine bakın.

Özellikler

  • altKey

    boole isteğe bağlı

    ALT tuşuna basılıp basılmadığını belirtir.

  • altgrKey

    boole isteğe bağlı

    Chrome 79 ve sonraki sürümler Chrome 148'den itibaren browser.*

    ALTGR tuşuna basılıp basılmadığı.

  • capsLock

    boole isteğe bağlı

    CAPS_LOCK'un etkin olup olmadığı.

  • kod

    dize

    Basılan fiziksel tuşun değeri. Değer, mevcut klavye düzeninden veya değiştirici durumundan etkilenmez.

  • ctrlKey

    boole isteğe bağlı

    CTRL tuşuna basılıp basılmadığını belirtir.

  • extensionId

    string isteğe bağlı

    Bu tuş etkinliğini gönderenin uzantı kimliği.

  • anahtar

    dize

    Basılan tuşun değeri

  • keyCode

    number isteğe bağlı

    Kullanımdan kaldırılan HTML keyCode, basılan tuşla ilişkili değiştirilmemiş tanımlayıcıyı belirten, sisteme ve uygulamaya bağlı sayısal koddur.

  • requestId

    string isteğe bağlı

    (Desteği sonlandırıldı) İsteğin kimliği. Bunun yerine onKeyEvent etkinliğindeki requestId parametresini kullanın.

  • shiftKey

    boole isteğe bağlı

    ÜST KARAKTER tuşuna basılıp basılmadığı.

  • keyup veya keydown'dan biri.

KeyboardEventType

Chrome 44 ve sonraki sürümler Chrome 148'den itibaren browser.*

Enum

"keyup"

"keydown"

MenuItem

Dil menüsünden kullanıcıyla etkileşim kurmak için bir giriş yöntemi tarafından kullanılan menü öğesi.

Özellikler

  • işaretli

    boole isteğe bağlı

    Bu öğenin bir onay işaretiyle çizilmesi gerektiğini gösterir.

  • etkin

    boole isteğe bağlı

    Bu öğenin etkin olduğunu gösterir.

  • id

    dize

    Bu MenuItem'a referans veren geri çağırmalara iletilecek dize.

  • etiket

    string isteğe bağlı

    Bu öğe için menüde gösterilen metin.

  • stil

    MenuItemStyle isteğe bağlı

    Menü öğesinin türü.

  • görünür

    boole isteğe bağlı

    Bu öğenin görünür olduğunu gösterir.

MenuItemStyle

Chrome 44 ve sonraki sürümler Chrome 148'den itibaren browser.*

Menü öğesinin türü. Ayırıcılar arasındaki radyo düğmeleri gruplandırılmış olarak kabul edilir.

Enum

"check"

"radio"

"separator"

MenuParameters

Chrome 88 ve sonraki sürümler Chrome 148'den itibaren browser.*

Özellikler

  • engineID

    dize

    Kullanılacak motorun kimliği.

  • items

    Eklenecek veya güncellenecek MenuItems. Dizideki sırayla eklenirler.

MouseButton

Chrome 44 ve sonraki sürümler Chrome 148'den itibaren browser.*

Hangi fare düğmelerinin tıklandığı.

Enum

"left"

"middle"

"right"

ScreenType

Chrome 44 ve sonraki sürümler Chrome 148'den itibaren browser.*

IME'nin etkinleştirildiği ekran türü.

Enum

"normal"

"login"

"lock"

"secondary-login"

UnderlineStyle

Chrome 44 ve sonraki sürümler Chrome 148'den itibaren browser.*

Bu segmenti değiştirmek için alt çizgi türü.

Enum

"altı çizili"

"doubleUnderline"

"noUnderline"

WindowPosition

Chrome 44 ve sonraki sürümler Chrome 148'den itibaren browser.*

Aday penceresinin nerede gösterileceği. "İmleç" olarak ayarlanırsa pencere imleci takip eder. "composition" olarak ayarlanırsa pencere, oluşturmanın başına kilitlenir.

Enum

"cursor"

"composition"

Yöntemler

clearComposition()

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

Mevcut oluşturma içeriğini temizler. Bu uzantı, etkin IME'ye sahip değilse bu işlem başarısız olur.

Parametreler

  • parametreler

    nesne

    • contextID

      sayı

      Oluşturmanın temizleneceği bağlamın kimliği

İadeler

  • Promise<boolean>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında, metnin kabul edilip edilmediğini belirten bir boole değeriyle çözümlenir. Başarısız olursa promise reddedilir.

commitText()

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

Sağlanan metni mevcut girişe uygular.

Parametreler

  • parametreler

    nesne

    • contextID

      sayı

      Metnin kaydedileceği bağlamın kimliği

    • text (metin)

      dize

      Onaylanacak metin

İadeler

  • Promise<boolean>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında, metnin kabul edilip edilmediğini belirten bir boole değeriyle çözümlenir. Başarısız olursa promise reddedilir.

deleteSurroundingText()

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

İmlecin etrafındaki metni siler.

Parametreler

  • parametreler

    nesne

    • contextID

      sayı

      Çevreleyen metnin silineceği bağlamın kimliği.

    • engineID

      dize

      Etkinliği alan arama motorunun kimliği.

    • uzunluk

      sayı

      Silinecek karakter sayısı

    • telafi etmek

      sayı

      Silme işleminin başlayacağı imleç konumundan uzaklık. Bu değer negatif olabilir.

İadeler

  • Promise<void>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında çözümlenir.

hideInputView()

browser.input.ime.hideInputView(): void

Sistem tarafından otomatik olarak açılan giriş görünümü penceresini gizler. Giriş görünümü penceresi zaten gizliyse bu işlev hiçbir şey yapmaz.

keyEventHandled()

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

onKeyEvent tarafından alınan önemli etkinliğin işlendiğini gösterir. Bu, yalnızca onKeyEvent dinleyicisi eşzamansızsa çağrılmalıdır.

Parametreler

  • requestId

    dize

    İşlenen etkinliğin istek kimliği. Bu, keyEvent.requestId'den gelmelidir.

  • gönderin

    boole

    Tuş vuruşu işlendiyse doğru, işlenmediyse yanlış değerini döndürür.

sendKeyEvents()

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

Önemli etkinlikleri gönderir. Bu işlevin sanal klavyeler tarafından kullanılması beklenir. Kullanıcı sanal klavyedeki tuşlara bastığında bu işlev, ilgili etkinliği sisteme yaymak için kullanılır.

Parametreler

  • parametreler

    nesne

    • contextID

      sayı

      Önemli etkinliklerin gönderileceği bağlamın kimliği veya önemli etkinlikleri giriş alanı olmayan bir yere göndermek için sıfır.

    • keyData

      Önemli etkinlikle ilgili veriler.

İadeler

  • Promise<void>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında çözümlenir.

setAssistiveWindowButtonHighlighted()

Chrome 86 ve sonraki sürümler Chrome 148'den itibaren browser.*
browser.input.ime.setAssistiveWindowButtonHighlighted(
  parameters: object,
)
: Promise<void>

Yardımcı penceredeki bir düğmeyi vurgular/vurguyu kaldırır.

Parametreler

  • parametreler

    nesne

    • announceString

      string isteğe bağlı

      Ekran okuyucunun duyuracağı metin.

    • Düğmenin kimliği

    • contextID

      sayı

      Yardımcı pencerenin sahibi olan bağlamın kimliği.

    • öne çıkarıldı

      boole

      Düğmenin vurgulanıp vurgulanmayacağını belirtir.

    • windowType

      "geri al"

      Düğmenin ait olduğu pencere türü.

İadeler

  • Promise<void>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında çözümlenir. Başarısız olursa promise reddedilir.

setAssistiveWindowProperties()

Chrome 85 ve sonraki sürümler Chrome 148'den itibaren browser.*
browser.input.ime.setAssistiveWindowProperties(
  parameters: object,
)
: Promise<boolean>

Belirtilen özelliklere sahip bir yardımcı pencereyi gösterir/gizler.

Parametreler

  • parametreler

    nesne

    • contextID

      sayı

      Yardımcı pencerenin sahibi olan bağlamın kimliği.

    • Yardımcı pencerenin özellikleri.

İadeler

  • Promise<boolean>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında çözümlenir.

setCandidates()

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

Mevcut aday listesini ayarlar. Bu uzantı, etkin IME'nin sahibi değilse bu işlem başarısız olur.

Parametreler

  • parametreler

    nesne

    • adaylar

      object[]

      Aday penceresinde gösterilecek adayların listesi

      • ek açıklama

        string isteğe bağlı

        Adayı açıklayan ek metin

      • aday

        dize

        Aday

      • id

        sayı

        Adayın kimliği

      • etiket

        string isteğe bağlı

        Adayın yanında gösterilen kısa dize (genellikle kısayol tuşu veya dizin)

      • parentId

        number isteğe bağlı

        Bu adayların ekleneceği kimlik

      • kullanım

        isteğe bağlı nesne

        Kelimenin kullanım şekli veya ayrıntılı açıklaması.

        • gövde

          dize

          Ayrıntılı açıklamanın gövde dizesi.

        • title

          dize

          Ayrıntılar açıklamasının başlık dizesi.

    • contextID

      sayı

      Aday penceresinin sahibi olan bağlamın kimliği.

İadeler

  • Promise<boolean>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında çözümlenir.

setCandidateWindowProperties()

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

Aday penceresinin özelliklerini ayarlar. Uzantı, etkin IME'ye sahip değilse bu işlem başarısız olur.

Parametreler

  • parametreler

    nesne

    • engineID

      dize

      Özelliklerin ayarlanacağı motorun kimliği.

    • mülkler

      nesne

      • auxiliaryText

        string isteğe bağlı

        Aday penceresinin alt kısmında gösterilen metin.

      • auxiliaryTextVisible

        boole isteğe bağlı

        Yardımcı metni göstermek için True (Doğru), gizlemek için False (Yanlış) değerini girin.

      • currentCandidateIndex

        number isteğe bağlı

        Chrome 84 ve sonraki sürümler Chrome 148'den itibaren browser.*

        Toplam adaylar arasından seçilen adayın dizini.

      • cursorVisible

        boole isteğe bağlı

        İmleci göstermek için True, gizlemek için False değerini döndürür.

      • pageSize

        number isteğe bağlı

        Sayfa başına gösterilecek aday sayısı.

      • totalCandidates

        number isteğe bağlı

        Chrome 84 ve sonraki sürümler Chrome 148'den itibaren browser.*

        Aday penceresi için toplam aday sayısı.

      • dikey

        boole isteğe bağlı

        Aday penceresi dikey olarak oluşturulacaksa doğru, yatay olarak oluşturulacaksa yanlış değerini döndürür.

      • görünür

        boole isteğe bağlı

        Aday penceresini göstermek için doğru, gizlemek için yanlış değerini döndürür.

      • windowPosition

        WindowPosition isteğe bağlı

        Aday penceresinin nerede gösterileceği.

İadeler

  • Promise<boolean>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında çözümlenir.

setComposition()

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

Mevcut oluşturmayı ayarlayın. Bu uzantı, etkin IME'ye sahip değilse bu işlem başarısız olur.

Parametreler

  • parametreler

    nesne

    • contextID

      sayı

      Oluşturma metninin ayarlanacağı bağlamın kimliği

    • imleç

      sayı

      İmlecin metindeki konumu.

    • segment

      object[] isteğe bağlı

      Segmentlerin ve ilişkili türlerinin listesi.

      • end

        sayı

        Bu segmentin bitiş karakterinin dizini.

      • start

        sayı

        Bu segmentin başlatılacağı karakterin dizini

      • Bu segmenti değiştirmek için alt çizgi türü.

    • selectionEnd

      number isteğe bağlı

      Seçimin bittiği metindeki konum.

    • selectionStart

      number isteğe bağlı

      Seçimin başladığı metindeki konum.

    • text (metin)

      dize

      Ayarlanacak metin

İadeler

  • Promise<boolean>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında, metnin kabul edilip edilmediğini belirten bir boole değeriyle çözümlenir. Başarısız olursa promise reddedilir.

setCursorPosition()

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

İmlecin konumunu aday penceresinde ayarlayın. Bu uzantı, etkin IME'ye sahip değilse bu işlem yapılmaz.

Parametreler

  • parametreler

    nesne

    • candidateID

      sayı

      Seçilecek adayın kimliği.

    • contextID

      sayı

      Aday penceresinin sahibi olan bağlamın kimliği.

İadeler

  • Promise<boolean>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında çözümlenir

setMenuItems()

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

Bu IME etkin olduğunda, sağlanan menü öğelerini dil menüsüne ekler.

Parametreler

İadeler

  • Promise<void>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

updateMenuItems()

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

Belirtilen MenuItems'ın durumunu günceller.

Parametreler

İadeler

  • Promise<void>

    Chrome 111 ve sonraki sürümler Chrome 148'den itibaren browser.*

    İşlem tamamlandığında çözümlenir

Etkinlikler

onActivate

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

Bu etkinlik, bir IME etkinleştirildiğinde gönderilir. IME'nin onKeyPress etkinliklerini alacağını belirtir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

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

onAssistiveWindowButtonClicked

Chrome 85 ve sonraki sürümler Chrome 148'den itibaren browser.*
browser.input.ime.onAssistiveWindowButtonClicked.addListener(
  callback: function,
)

Bu etkinlik, yardımcı penceredeki bir düğme tıklandığında gönderilir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (details: object) => void

onBlur

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

Bu etkinlik, odak bir metin kutusundan ayrıldığında gönderilir. Bu etkinlik, bu etkinliği dinleyen ve kullanıcı tarafından etkinleştirilen tüm uzantılara gönderilir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (contextID: number) => void

    • contextID

      sayı

onCandidateClicked

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

Bu etkinlik, etkin IME bu uzantıya aitse gönderilir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

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

onDeactivated

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

Bu etkinlik, bir IME devre dışı bırakıldığında gönderilir. IME'nin artık onKeyPress etkinliklerini almayacağını belirtir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (engineID: string) => void

    • engineID

      dize

onFocus

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

Bu etkinlik, odak bir metin kutusuna girdiğinde gönderilir. Bu etkinlik, bu etkinliği dinleyen ve kullanıcı tarafından etkinleştirilen tüm uzantılara gönderilir.

Parametreler

onInputContextUpdate

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

Bu etkinlik, mevcut InputContext'in özellikleri (ör. tür) değiştiğinde gönderilir. Bu etkinlik, bu etkinliği dinleyen ve kullanıcı tarafından etkinleştirilen tüm uzantılara gönderilir.

Parametreler

onKeyEvent

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

İşletim sisteminden bir tuş etkinliği gönderildiğinde tetiklenir. Etkin IME'nin sahibi bu uzantıysa etkinlik uzantıya gönderilir. İşleyici işlevi, etkinlik işlendiyse true (doğru), işlenmediyse false (yanlış) değerini döndürmelidir. Etkinlik eşzamansız olarak değerlendirilecekse bu işlev tanımsız değerini döndürmeli ve IME daha sonra sonuçla birlikte keyEventHandled() işlevini çağırmalıdır.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

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

    • returns

      boolean | undefined

onMenuItemActivated

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

Kullanıcı bir menü öğesi seçtiğinde çağrılır.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

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

    • engineID

      dize

    • ad

      dize

onReset

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

Bu etkinlik, Chrome devam eden metin girişi oturumunu sonlandırdığında gönderilir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (engineID: string) => void

    • engineID

      dize

onSurroundingTextChanged

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

İmlecin etrafındaki düzenlenebilir dize değiştirildiğinde veya imleç konumu taşındığında çağrılır. Metin uzunluğu, her iki yönde de 100 karakterle sınırlıdır.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

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

    • engineID

      dize

    • surroundingInfo

      nesne

      • anchor

        sayı

        Seçimin başlangıç konumu. Bu değer, seçim yoksa imleç konumunu gösterir.

      • odaklanma

        sayı

        Seçimin bitiş konumu. Bu değer, seçim yoksa imleç konumunu gösterir.

      • telafi etmek

        sayı

        Chrome 46 ve sonraki sürümler Chrome 148'den itibaren browser.*

        text öğesinin ofset konumu. text, imlecin etrafındaki metnin yalnızca bir alt kümesini içerdiğinden, ofset text'nin ilk karakterinin mutlak konumunu gösterir.

      • text (metin)

        dize

        İmlecin etrafındaki metin. Bu, giriş alanındaki tüm metnin yalnızca bir alt kümesidir.