browser.omnibox

Deskripsi

Omnibox API memungkinkan Anda mendaftarkan kata kunci dengan kolom URL Google Chrome, yang juga dikenal sebagai omnibox.

Screenshot yang menampilkan saran terkait kata kunci 'Penelusuran Chromium'

Saat pengguna memasukkan kata kunci ekstensi Anda, pengguna mulai berinteraksi hanya dengan ekstensi Anda. Setiap penekanan tombol dikirim ke ekstensi Anda, dan Anda dapat memberikan saran sebagai respons.

Saran dapat diformat dengan beragam cara. Saat pengguna menerima saran, ekstensi Anda akan diberi tahu dan dapat mengambil tindakan.

Manifes

Kunci berikut harus dideklarasikan dalam manifes untuk menggunakan API ini.

"omnibox"

Anda harus menyertakan kolom "omnibox.keyword" dalam manifes untuk menggunakan omnibox API. Anda juga harus menentukan ikon berukuran 16 x 16 piksel, yang akan ditampilkan di kolom URL saat menyarankan pengguna untuk memasuki mode kata kunci.

Contoh:

{
  "name": "Aaron's omnibox extension",
  "version": "1.0",
  "omnibox": { "keyword" : "aaron" },
  "icons": {
    "16": "16-full-color.png"
  },
  "background": {
    "persistent": false,
    "scripts": ["background.js"]
  }
}

Contoh

Untuk mencoba API ini, instal contoh omnibox API dari repositori chrome-extension-samples.

Jenis

DefaultSuggestResult

Hasil saran.

Properti

  • deskripsi

    string

    Teks yang ditampilkan di dropdown URL. Dapat berisi markup bergaya XML untuk penataan gaya. Tag yang didukung adalah 'url' (untuk URL literal), 'match' (untuk menandai teks yang cocok dengan kueri pengguna), dan 'dim' (untuk teks bantuan redup). Gaya dapat disusun bertingkat, misalnya, kecocokan yang diredupkan.

DescriptionStyleType

Chrome 44+ browser.* sejak Chrome 148

Jenis gaya.

Enum

"url"

"match"

"dim"

OnInputEnteredDisposition

Chrome 44+ browser.* sejak Chrome 148

Disposisi jendela untuk kueri omnibox. Ini adalah konteks yang direkomendasikan untuk menampilkan hasil. Misalnya, jika perintah omnibox adalah untuk membuka URL tertentu, disposisi 'newForegroundTab' berarti navigasi harus dilakukan di tab baru yang dipilih.

Enum

"currentTab"

"newForegroundTab"

"newBackgroundTab"

SuggestResult

Hasil saran.

Properti

  • konten

    string

    Teks yang dimasukkan ke kolom URL, dan yang dikirim ke ekstensi saat pengguna memilih entri ini.

  • deletable

    boolean opsional

    Chrome 63+ browser.* sejak Chrome 148

    Apakah hasil saran dapat dihapus oleh pengguna.

  • deskripsi

    string

    Teks yang ditampilkan di dropdown URL. Dapat berisi markup bergaya XML untuk penataan gaya. Tag yang didukung adalah 'url' (untuk URL literal), 'match' (untuk menandai teks yang cocok dengan kueri pengguna), dan 'dim' (untuk teks bantuan redup). Gaya dapat disusun bertingkat, misalnya, kecocokan yang diredupkan. Anda harus meng-escape lima entity yang telah ditetapkan untuk menampilkannya sebagai teks: stackoverflow.com/a/1091953/89484

Metode

setDefaultSuggestion()

browser.omnibox.setDefaultSuggestion(
  suggestion: DefaultSuggestResult,
)
: Promise<void>

Menetapkan deskripsi dan gaya untuk saran default. Saran default adalah teks yang ditampilkan di baris saran pertama di bawah kolom URL.

Parameter

Hasil

  • Promise<void>

    Chrome 100+ browser.* sejak Chrome 148

Acara

onDeleteSuggestion

Chrome 63+ browser.* sejak Chrome 148
browser.omnibox.onDeleteSuggestion.addListener(
  callback: function,
)

Pengguna telah menghapus hasil yang disarankan.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (text: string) => void

    • teks

      string

onInputCancelled

browser.omnibox.onInputCancelled.addListener(
  callback: function,
)

Pengguna telah mengakhiri sesi input kata kunci tanpa menerima input.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    () => void

onInputChanged

browser.omnibox.onInputChanged.addListener(
  callback: function,
)

Pengguna telah mengubah teks yang diketik ke dalam omnibox.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (text: string, suggest: function) => void

    • teks

      string

    • saran

      fungsi

      Parameter suggest terlihat seperti:

      (suggestResults: SuggestResult[]) => void

onInputEntered

browser.omnibox.onInputEntered.addListener(
  callback: function,
)

Pengguna telah menyetujui apa yang diketik ke dalam omnibox.

Parameter

onInputStarted

browser.omnibox.onInputStarted.addListener(
  callback: function,
)

Pengguna telah memulai sesi input kata kunci dengan mengetik kata kunci ekstensi. Peristiwa ini dijamin akan dikirim tepat satu kali per sesi input, dan sebelum peristiwa onInputChanged apa pun.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    () => void