chrome.omnibox

Descrizione

L'API omnibox ti consente di registrare una parola chiave nella barra degli indirizzi di Google Chrome, nota anche come omnibox.

Uno screenshot che mostra suggerimenti relativi alla parola chiave "Ricerca Chromium"

Quando l'utente inserisce la parola chiave dell'estensione, inizia a interagire esclusivamente con la tua . Ogni sequenza di tasti viene inviata all'estensione e tu puoi fornire suggerimenti in risposta.

I suggerimenti possono essere formattati in modo RTF in diversi modi. Quando l'utente accetta un suggerimento, la tua estensione riceve una notifica e può intervenire.

Manifest

Per utilizzare questa API, le seguenti chiavi devono essere dichiarate nel manifest.

"omnibox"

Per utilizzare l'API della omnibox, devi includere un campo "omnibox.keyword" nel file manifest. Tu è necessario specificare anche un'icona di 16 x 16 pixel che verrà visualizzata nella barra degli indirizzi quando suggerisci che gli utenti attivino la modalità parole chiave.

Ad esempio:

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

Esempi

Per provare questa API, installa l'esempio dell'API omnibox da chrome-extension-samples repository Git.

Tipi

DefaultSuggestResult

Un risultato suggerito.

Proprietà

  • descrizione

    stringa

    Il testo visualizzato nel menu a discesa dell'URL. Può contenere un markup in stile XML per lo stile. I tag supportati sono "url" (per un URL letterale), "match" (per evidenziare il testo corrispondente alla query dell'utente) e "attenua" (per il testo di aiuto per l'attenuazione della luminosità). Gli stili possono essere nidificati, ad es. corrispondenza attenuata.

DescriptionStyleType

Chrome 44 e versioni successive .

Il tipo di stile.

Enum

"url"

"match"

"attenua"

OnInputEnteredDisposition

Chrome 44 e versioni successive .

La disposizione della finestra per la query della omnibox. Questo è il contesto consigliato per visualizzare i risultati. Ad esempio, se il comando omnibox consiste nell'accedere a un determinato URL, una disposizione di "newForegroundTab" significa che la navigazione dovrebbe avvenire in una nuova scheda selezionata.

Enum

"currentTab"

"newForegroundTab"

"newBackgroundTab"

SuggestResult

Un risultato suggerito.

Proprietà

  • contenuti

    stringa

    Il testo inserito nella barra dell'URL e che viene inviato all'estensione quando l'utente sceglie questa voce.

  • eliminabile

    booleano facoltativo

    Chrome 63 e versioni successive .

    Indica se il risultato del suggerimento può essere eliminato dall'utente.

  • descrizione

    stringa

    Il testo visualizzato nel menu a discesa dell'URL. Può contenere un markup in stile XML per lo stile. I tag supportati sono "url" (per un URL letterale), "match" (per evidenziare il testo corrispondente alla query dell'utente) e "attenua" (per il testo di aiuto per l'attenuazione della luminosità). Gli stili possono essere nidificati, ad es. corrispondenza attenuata. Devi eseguire l'interpretazione letterale delle cinque entità predefinite per visualizzarle come testo: stackoverflow.com/a/1091953/89484

Metodi

setDefaultSuggestion()

Promesso .
chrome.omnibox.setDefaultSuggestion(
  suggestion: DefaultSuggestResult,
  callback?: function,
)

Consente di impostare la descrizione e lo stile del suggerimento predefinito. Il suggerimento predefinito è il testo visualizzato nella prima riga dei suggerimenti sotto la barra dell'URL.

Parametri

  • suggerimento

    Un oggetto SuggestResult parziale, senza "content" .

  • callback

    funzione facoltativa

    Chrome 100 e versioni successive .

    Il parametro callback ha il seguente aspetto:

    () => void

Resi

  • Promesso<void>

    Chrome 100 e versioni successive .

    Le promesse sono supportate in Manifest V3 e versioni successive, ma sono disponibili callback per la compatibilità con le versioni precedenti. Non puoi utilizzare entrambi nella stessa chiamata di funzione. La si risolve con lo stesso tipo passato al callback.

Eventi

onDeleteSuggestion

Chrome 63 e versioni successive .
chrome.omnibox.onDeleteSuggestion.addListener(
  callback: function,
)

L'utente ha eliminato un risultato suggerito.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    (text: string) => void

    • testo

      stringa

onInputCancelled

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

L'utente ha terminato la sessione di inserimento della parola chiave senza accettare l'input.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    () => void

onInputChanged

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

L'utente ha modificato il testo digitato nella omnibox.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

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

    • testo

      stringa

    • suggest

      funzione

      Il parametro suggest ha il seguente aspetto:

      (suggestResults: SuggestResult[]) => void

      • suggestResults

        Array di risultati dei suggerimenti

onInputEntered

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

L'utente ha accettato il testo digitato nella omnibox.

Parametri

onInputStarted

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

L'utente ha avviato una sessione di inserimento della parola chiave digitando la parola chiave dell'estensione. È garantito che venga inviato esattamente una volta per sessione di input e prima di qualsiasi evento onInputChanged.

Parametri

  • callback

    funzione

    Il parametro callback ha il seguente aspetto:

    () => void