İşlemi uygulama

İşlem, kullanıcının araç çubuğu simgesini tıkladığında gerçekleşen olaydır. Bu simge genellikle uzantınızın işlem simgesi olarak adlandırılır. Bir işlem, Action API'yi kullanarak 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 başlıklı makaleyi inceleyin.

İşlemi kaydetme

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 verme

Kullanıcı işlem simgesini tıkladığında çalışacak bir onClicked işleyici kaydedin. manifest.json dosyasında bir pop-up kaydedilmişse 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ştirme

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

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

İşlem rozeti

Rozetler, uzantı durumu veya kullanıcı tarafından işlem yapılması gerektiği gibi bilgileri belirtmek için işlem simgesinin üzerine yerleştirilen biçimlendirilmiş metinlerdir. Bunu göstermek için Su İç örneğinde, kullanıcıya alarmı başarıyla ayarladığını göstermek için "AÇIK" yazan bir rozet gösterilir. Uzantı boşta olduğunda ise hiçbir şey gösterilmez. Rozetler en fazla dört karakter içerebilir.

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

chrome.action.setBadgeText() işlevini çağırarak rozetin metnini, chrome.action.setBadgeBackgroundColor() işlevini çağırarak da 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 "default_title" alanında "action" anahtarı altında kaydedin.

manifest.json:

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

action.setTitle() numaralı telefonu arayarak da ipuçlarını ayarlayabilir veya güncelleyebilirsiniz. İpucu ayarlanmamışsa uzantının adı gösterilir.