Açıklama
Omnibox API, Google Chrome'un adres çubuğuna (omnibox olarak da bilinir) bir anahtar kelime kaydetmenize olanak tanır.
Kullanıcı, uzantınızın anahtar kelimesini girdiğinde yalnızca uzantınızla etkileşime başlar. Her tuş vuruşu uzantınıza gönderilir ve buna karşılık olarak önerilerde bulunabilirsiniz.
Öneriler çeşitli şekillerde zengin biçimlendirilebilir. Kullanıcı bir öneriyi kabul ettiğinde uzantınıza bildirim gönderilir ve uzantınız işlem yapabilir.
Manifest
Omnibox API'yi kullanmak için manifest dosyasına bir omnibox
keyword
alanı eklemeniz gerekir. Ayrıca, kullanıcılara anahtar kelime moduna girmelerini önerirken adres çubuğunda gösterilecek 16x16 piksel boyutunda bir simge de belirtmeniz gerekir.
Örneğin:
{
"name": "Aaron's omnibox extension",
"version": "1.0",
"omnibox": { "keyword" : "aaron" },
"icons": {
"16": "16-full-color.png"
},
"background": {
"persistent": false,
"scripts": ["background.js"]
}
}
Örnekler
Bu API'yi denemek için chrome-extension-samples deposundan omnibox API örneğini yükleyin.
Türler
DefaultSuggestResult
Öneri sonucu.
Özellikler
-
açıklama
dize
URL açılır listesinde gösterilen metin. Stil için XML tarzı işaretleme içerebilir. Desteklenen etiketler şunlardır: "url" (tam URL için), "match" (kullanıcının sorgusuyla eşleşen metni vurgulamak için) ve "dim" (yardımcı metni soluklaştırmak için). Stiller iç içe yerleştirilebilir (ör. soluk eşleşme).
DescriptionStyleType
Stil türü.
Enum
"url"
"match"
"dim"
OnInputEnteredDisposition
Çok amaçlı adres çubuğu sorgusunun pencere düzeni. Sonuçları göstermek için bu bağlamın kullanılması önerilir. Örneğin, çok amaçlı adres çubuğu komutu belirli bir URL'ye gitmekse "newForegroundTab" düzeni, gezinmenin yeni bir sekmede gerçekleşmesi gerektiği anlamına gelir.
Enum
"currentTab"
"newForegroundTab"
"newBackgroundTab"
SuggestResult
Öneri sonucu.
Özellikler
-
içerik
dize
URL çubuğuna girilen ve kullanıcı bu girişi seçtiğinde uzantıya gönderilen metin.
-
silinebilir
boolean isteğe bağlı
Chrome 63 veya daha yeni bir sürümÖneri sonucunun kullanıcı tarafından silinip silinemeyeceği.
-
açıklama
dize
URL açılır listesinde gösterilen metin. Stil için XML tarzı işaretleme içerebilir. Desteklenen etiketler şunlardır: "url" (tam URL için), "match" (kullanıcının sorgusuyla eşleşen metni vurgulamak için) ve "dim" (yardımcı metni soluklaştırmak için). Stiller iç içe yerleştirilebilir (ör. soluk eşleşme). Beş önceden tanımlanmış öğeyi metin olarak göstermek için kod dışına almanız gerekir: stackoverflow.com/a/1091953/89484
Yöntemler
setDefaultSuggestion()
chrome.omnibox.setDefaultSuggestion(
suggestion: DefaultSuggestResult,
callback?: function,
): Promise<void>
Varsayılan önerinin açıklamasını ve stilini ayarlar. Varsayılan öneri, URL çubuğunun altındaki ilk öneri satırında gösterilen metindir.
Parametreler
-
öneri
"content" parametresi olmayan kısmi bir SuggestResult nesnesi.
-
callback
işlev isteğe bağlı
Chrome 100 veya daha yeni bir sürümcallback
parametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 100 veya daha yeni bir sürümPromises yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformlarda geri çağırmalar kullanılmalıdır.
Etkinlikler
onDeleteSuggestion
chrome.omnibox.onDeleteSuggestion.addListener(
callback: function,
)
Kullanıcı, önerilen bir sonucu sildi.
Parametreler
-
callback
işlev
callback
parametresi şu şekilde görünür:(text: string) => void
-
text (metin)
dize
-
onInputCancelled
chrome.omnibox.onInputCancelled.addListener(
callback: function,
)
Kullanıcı, girişi kabul etmeden anahtar kelime giriş oturumunu sonlandırdı.
Parametreler
-
callback
işlev
callback
parametresi şu şekilde görünür:() => void
onInputChanged
chrome.omnibox.onInputChanged.addListener(
callback: function,
)
Kullanıcı, çok amaçlı adres çubuğuna yazılanları değiştirdi.
Parametreler
-
callback
işlev
callback
parametresi şu şekilde görünür:(text: string, suggest: function) => void
-
text (metin)
dize
-
suggest
işlev
suggest
parametresi şu şekilde görünür:(suggestResults: SuggestResult[]) => void
-
suggestResults
Öneri sonuçları dizisi
-
-
onInputEntered
chrome.omnibox.onInputEntered.addListener(
callback: function,
)
Kullanıcı, çok amaçlı adres çubuğuna yazılanları kabul etti.
Parametreler
-
callback
işlev
callback
parametresi şu şekilde görünür:(text: string, disposition: OnInputEnteredDisposition) => void
-
text (metin)
dize
-
elden çıkarma
-
onInputStarted
chrome.omnibox.onInputStarted.addListener(
callback: function,
)
Kullanıcı, uzantının anahtar kelimesini yazarak anahtar kelime girişi oturumu başlattı. Bu etkinlik, giriş oturumu başına tam olarak bir kez ve onInputChanged etkinliklerinden önce gönderilir.
Parametreler
-
callback
işlev
callback
parametresi şu şekilde görünür:() => void