Descrição
A API da omnibox permite registrar uma palavra-chave na barra de endereço do Google Chrome, que também é conhecida como omnibox.
Quando o usuário inserir a palavra-chave da sua extensão, ele começará a interagir apenas com sua . Cada tecla pressionada é enviada para a sua extensão, e você pode fornecer sugestões em resposta.
As sugestões podem ser ricamente formatadas de várias maneiras. Quando o usuário aceita uma sugestão, sua extensão será notificada e poderá realizar ações.
Manifesto
É necessário incluir um campo "omnibox.keyword"
no manifesto para usar a API da omnibox. Você
também deve especificar um ícone de 16 por 16 pixels, que será exibido na barra de endereço ao sugerir
para que os usuários entrem no modo de palavra-chave.
Exemplo:
{
"name": "Aaron's omnibox extension",
"version": "1.0",
"omnibox": { "keyword" : "aaron" },
"icons": {
"16": "16-full-color.png"
},
"background": {
"persistent": false,
"scripts": ["background.js"]
}
}
Exemplos
Para testar essa API, instale o exemplo da API da omnibox em chrome-extension-samples repositório de dados.
Tipos
DefaultSuggestResult
Um resultado sugerido.
Propriedades
-
descrição
string
O texto exibido no menu suspenso de URL. Pode conter marcação de estilo XML. As tags aceitas são "url" (para um URL literal), "match" (para destacar o texto que corresponde à consulta do usuário) e "escurecer" (para escurecer o texto auxiliar). Os estilos podem ser aninhados, por exemplo: correspondência esmaecida.
DescriptionStyleType
O tipo de estilo.
Enumeração
"url"
"match"
"diminuir"
OnInputEnteredDisposition
A disposição de janela para a consulta da omnibox. Esse é o contexto recomendado para mostrar os resultados. Por exemplo, se o comando da omnibox for para navegar para um determinado URL, uma disposição de "newForegroundTab" significa que a navegação deve ocorrer em uma nova guia selecionada.
Enumeração
"currentTab"
"newForegroundTab"
"newBackgroundTab"
SuggestResult
Um resultado sugerido.
Propriedades
-
conteúdo
string
O texto que é colocado na barra de URL e que é enviado para a extensão quando o usuário escolhe essa entrada.
-
excluível
booleano opcional
Chrome 63 ou superiorIndica se o resultado da sugestão pode ser excluído pelo usuário.
-
descrição
string
O texto exibido no menu suspenso de URL. Pode conter marcação de estilo XML. As tags aceitas são "url" (para um URL literal), "match" (para destacar o texto que corresponde à consulta do usuário) e "escurecer" (para escurecer o texto auxiliar). Os estilos podem ser aninhados, por exemplo: correspondência esmaecida. É necessário fazer o escape das cinco entidades predefinidas para exibi-las como texto: stackoverflow.com/a/1091953/89484
Métodos
setDefaultSuggestion()
chrome.omnibox.setDefaultSuggestion(
suggestion: DefaultSuggestResult,
callback?: function,
)
Define a descrição e o estilo da sugestão padrão. A sugestão padrão é o texto exibido na primeira linha de sugestões abaixo da barra de URL.
Parâmetros
-
sugestão
Um objeto SuggestResult parcial, sem o "content" .
-
callback
função opcional
Chrome 100 ou mais recenteO parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promessa<void>
Chrome 100 ou mais recenteO Manifesto V3 e versões mais recentes oferecem suporte a promessas, mas callbacks são fornecidos para a compatibilidade com versões anteriores. Não é possível usar ambos na mesma chamada de função. A promessa é resolvida com o mesmo tipo passado ao retorno de chamada.
Eventos
onDeleteSuggestion
chrome.omnibox.onDeleteSuggestion.addListener(
callback: function,
)
O usuário excluiu um resultado sugerido.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(text: string) => void
-
texto
string
-
onInputCancelled
chrome.omnibox.onInputCancelled.addListener(
callback: function,
)
O usuário encerrou a sessão de entrada de palavra-chave sem aceitar a entrada.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:() => void
onInputChanged
chrome.omnibox.onInputChanged.addListener(
callback: function,
)
O usuário alterou o que é digitado na omnibox.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(text: string, suggest: function) => void
-
texto
string
-
suggest
função
O parâmetro
suggest
tem esta aparência:(suggestResults: SuggestResult[]) => void
-
suggestResults
Matriz de resultados sugeridos
-
-
onInputEntered
chrome.omnibox.onInputEntered.addListener(
callback: function,
)
O usuário aceitou o que é digitado na omnibox.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(text: string, disposition: OnInputEnteredDisposition) => void
-
texto
string
-
disposition
-
onInputStarted
chrome.omnibox.onInputStarted.addListener(
callback: function,
)
O usuário iniciou uma sessão de entrada de palavra-chave digitando a palavra-chave da extensão. Ele será enviado exatamente uma vez por sessão de entrada e antes de qualquer evento onInputChanged.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:() => void