İşlemi uygulama

İşlem, bir kullanıcının araç çubuğu simgesini (genellikle uzantıya ait işlem simgesi olarak adlandırılır) tıklamasıyla ilişkilidir. Bir işlem, Action API'yi kullanan bir uzantı özelliğini çağırır veya bir pop-up açar. Bu sayfada, uzantı özelliklerinin nasıl çağrılacağı gösterilmektedir. Pop-up kullanmak için Pop-up ekleme konusuna bakın.

İşlemi kaydet

chrome.action API'yi kullanmak için "action" anahtarını uzantının manifest dosyasına ekleyin. Bu alanın isteğe bağlı özelliklerinin tam açıklaması için chrome.action API referansının manifest bölümüne bakın.

manifest.json:

{
  "name": "My Awesome action Extension",
 ...
  "action": {
   ...
  }
 ...
}

İşleme yanıt verin

Kullanıcı işlem simgesini tıkladığında gerçekleştirilecek bir onClicked işleyici kaydedin. Manifest.json dosyasına bir pop-up kayıtlıysa bu etkinlik tetiklenmez.

service-worker.js:

chrome.action.onClicked.addListener((tab) => {
  chrome.action.setTitle({
    tabId: tab.id,
    title: `You are on tab: ${tab.id}`});
});

İşlemi koşullu olarak etkinleştir

chrome.declarativeContent API, uzantının işlem simgesini sayfa URL'sine göre veya CSS seçiciler sayfadaki öğelerle eşleştiğinde etkinleştirebilmenizi sağlar. Bir uzantının işlem simgesi devre dışı bırakıldığında simge gri olur. Kullanıcı devre dışı simgesini tıklarsa uzantının içerik menüsü görünür.

Devre dışı bırakılan işlem simgesi
Devre dışı bırakılmış işlem simgesi.

İşlem rozeti

Rozetler, uzantı durumu veya kullanıcının yapması gereken işlemler gibi bilgileri belirtmek için işlem simgesinin üzerine yerleştirilen biçimlendirilmiş metin parçalarıdır. Bu durumu göstermek için Su İçki örneğinde, kullanıcıya başarılı bir şekilde alarm kurduğunu göstermek üzere "AÇIK" yazan bir rozet görüntülenir ve uzantı boşta kaldığında hiçbir şey gösterilmez. Rozetler en fazla dört karakter içerebilir.

Rozetsiz ve rozetli bir uzantı simgesi.
Rozetsiz (solda) ve rozetli (sağ) bir uzantı simgesi.

chrome.action.setBadgeText() yöntemini çağırarak rozetin metnini, chrome.action.setBadgeBackgroundColor()` yöntemini çağırarak arka plan rengini ayarlayın.

service-worker.js:

chrome.action.setBadgeText({text: 'ON'});
chrome.action.setBadgeBackgroundColor({color: '#4688F1'});

İpucu

İpuçlarını manifest.json dosyasındaki "action" anahtarı altında, "default_title" alanına kaydedin.

manifest.json:

{
  "name": "Tab Flipper",
 ...
  "action": {
    "default_title": "Press Ctrl(Win)/Command(Mac)+Shift+Right/Left to flip tabs"
  }
...
}

Ayrıca, action.setTitle()` yöntemini çağırarak ipuçlarını ayarlayabilir veya güncelleyebilirsiniz. Herhangi bir ipucu ayarlanmamışsa uzantının adı gösterilir.