একটি প্রসঙ্গ মেনু তৈরি করুন

মাউসের অল্টারনেট ক্লিকের (যা প্রায়শই রাইট ক্লিক নামে পরিচিত) জন্য একটি কনটেক্সট মেনু প্রদর্শিত হয়। একটি কনটেক্সট মেনু তৈরি করতে, প্রথমে manifest.json ফাইলে "contextMenus" পারমিশনটি যোগ করুন।

manifest.json:

  "permissions": [
    "contextMenus"
  ],

ঐচ্ছিকভাবে, কোনো মেনু আইটেমের পাশে একটি আইকন দেখাতে চাইলে "icons" কী-টি ব্যবহার করুন। এই উদাহরণে, 'Global Google Search' এক্সটেনশনের মেনু আইটেমটিতে একটি ১৬ বাই ১৬ আইকন ব্যবহার করা হয়েছে।

একটি ১৬ বাই ১৬ আইকনযুক্ত কনটেক্সট মেনু আইটেম।
একটি ১৬ বাই ১৬ আইকনযুক্ত কনটেক্সট মেনু আইটেম।

এই উদাহরণের বাকি অংশটি গ্লোবাল গুগল সার্চ কনটেক্সট মেনু স্যাম্পল থেকে নেওয়া হয়েছে, যা একাধিক কনটেক্সট মেনু অপশন প্রদান করে। যখন কোনো এক্সটেনশনে একাধিক কনটেক্সট মেনু থাকে, তখন ক্রোম স্বয়ংক্রিয়ভাবে সেগুলোকে একটি একক প্যারেন্ট মেনুতে সংকুচিত করে ফেলে, যেমনটি এখানে দেখানো হয়েছে:

একটি নেস্টেড কনটেক্সট মেনু।
চিত্র ৪ : একটি কনটেক্সট মেনু এবং একটি নেস্টেড সাব মেনু।

নমুনাটিতে এক্সটেনশন সার্ভিস ওয়ার্কার -এ contextMenus.create() কল করার মাধ্যমে এটি দেখানো হয়েছে। সাব-মেনু আইটেমগুলো locales.js ফাইল থেকে ইম্পোর্ট করা হয়। এরপর runtime.onInstalled সেগুলোর ওপর পুনরাবৃত্তি করে।

service-worker.js:

const tldLocales = {
  'com.au': 'Australia',
  'com.br': 'Brazil',
  ...
}

chrome.runtime.onInstalled.addListener(async () => {
  for (let [tld, locale] of Object.entries(tldLocales)) {
    chrome.contextMenus.create({
      id: tld,
      title: locale,
      type: 'normal',
      contexts: ['selection'],
    });
  }
});