chrome.action

Description

Utilisez l'API chrome.action pour contrôler l'icône de l'extension dans la barre d'outils Google Chrome.

Les icônes d'action s'affichent dans la barre d'outils du navigateur à côté de la barre multirequêtes. Une fois installées, elles apparaissent dans le menu des extensions (icône en forme de pièce de puzzle). Les utilisateurs peuvent épingler l'icône de votre extension dans la barre d'outils.

Disponibilité

Chrome 88 et versions ultérieures MV3 et versions ultérieures

Fichier manifeste

Les clés suivantes doivent être déclarées dans le fichier manifeste pour utiliser cette API.

"action"

Pour utiliser l'API chrome.action, spécifiez un "manifest_version" de 3 et incluez la clé "action" dans votre fichier manifeste.

{
  "name": "Action Extension",
  ...
  "action": {
    "default_icon": {              // optional
      "16": "images/icon16.png",   // optional
      "24": "images/icon24.png",   // optional
      "32": "images/icon32.png"    // optional
    },
    "default_title": "Click Me",   // optional, shown in tooltip
    "default_popup": "popup.html"  // optional
  },
  ...
}

La clé "action" (ainsi que ses enfants) est facultative. Si ce n'est pas le cas, votre extension s'affiche toujours dans la barre d'outils pour permettre d'accéder à son menu. C'est pourquoi nous vous recommandons de toujours inclure au moins les clés "action" et "default_icon".

Concepts et utilisation

Composants de l'UI

Icône

L'icône est l'image principale de la barre d'outils de votre extension. Elle est définie par la clé "default_icon" dans la clé "action" de votre fichier manifeste. Les icônes doivent mesurer 16 pixels indépendants de l'appareil (DIP) de large et de haut.

La clé "default_icon" est un dictionnaire de tailles et de chemins d'accès aux images. Chrome utilise ces icônes pour choisir l'échelle d'image à utiliser. Si aucune correspondance exacte n'est trouvée, Chrome sélectionne l'élément disponible le plus proche et l'adapte à l'image, ce qui peut affecter sa qualité.

Étant donné que les appareils dotés de facteurs d'échelle moins courants tels que x1,5 ou x1,2 sont de plus en plus courants, nous vous encourageons à proposer plusieurs tailles d'icônes. Cela permet également de protéger votre extension contre toute modification potentielle de la taille d'affichage des icônes. Toutefois, si vous ne fournissez qu'une seule taille, la clé "default_icon" peut également être définie sur une chaîne avec le chemin d'accès à une seule icône plutôt qu'à un dictionnaire.

Vous pouvez également appeler action.setIcon() pour définir l'icône de votre extension de manière programmatique. Pour ce faire, spécifiez un chemin d'accès d'image différent ou fournissez une icône générée dynamiquement à l'aide de l'élément canevas HTML ou, si vous l'avez configuré à partir d'un service worker d'extension, de l'API offscreencanvas.

const canvas = new OffscreenCanvas(16, 16);
const context = canvas.getContext('2d');
context.clearRect(0, 0, 16, 16);
context.fillStyle = '#00FF00';  // Green
context.fillRect(0, 0, 16, 16);
const imageData = context.getImageData(0, 0, 16, 16);
chrome.action.setIcon({imageData: imageData}, () => { /* ... */ });

Pour les extensions empaquetées (installées à partir d'un fichier .crx), les images peuvent avoir la plupart des formats que le moteur de rendu Blink peut afficher, y compris PNG, JPEG, BMP, ICO, etc. Le format SVG n'est pas accepté. Les extensions décompressées doivent utiliser des images PNG.

Info-bulle (titre)

L'info-bulle, ou titre, s'affiche lorsque l'utilisateur maintient le pointeur de la souris sur l'icône de l'extension dans la barre d'outils. Il est également inclus dans le texte accessible lu par les lecteurs d'écran lorsque le bouton est sélectionné.

L'info-bulle par défaut est définie à l'aide du champ "default_title" de la clé "action" dans manifest.json. Vous pouvez également le définir par programmation en appelant action.setTitle().

Badge

Les actions peuvent afficher un "badge", c'est-à-dire un peu de texte superposé à l'icône. Cela vous permet de mettre à jour l'action pour afficher une petite quantité d'informations sur l'état de l'extension, comme un compteur. Le badge comporte un composant texte et une couleur d'arrière-plan. L'espace étant limité, nous vous recommandons de limiter le texte du badge à quatre caractères maximum.

Pour créer un badge, définissez-le par programmation en appelant action.setBadgeBackgroundColor() et action.setBadgeText(). Il n'existe pas de paramètre de badge par défaut dans le fichier manifeste. Les valeurs de couleur du badge peuvent être un tableau de quatre entiers compris entre 0 et 255 qui constituent la couleur RVBA du badge, ou une chaîne avec une valeur de couleur CSS.

chrome.action.setBadgeBackgroundColor(
  {color: [0, 255, 0, 0]},  // Green
  () => { /* ... */ },
);

chrome.action.setBadgeBackgroundColor(
  {color: '#00FF00'},  // Also green
  () => { /* ... */ },
);

chrome.action.setBadgeBackgroundColor(
  {color: 'green'},  // Also, also green
  () => { /* ... */ },
);

Une fenêtre pop-up d'action s'affiche lorsque l'utilisateur clique sur le bouton d'action de l'extension dans la barre d'outils. La fenêtre pop-up peut contenir n'importe quel contenu HTML, et sa taille est automatiquement ajustée pour s'adapter à son contenu. La taille de la fenêtre pop-up doit être comprise entre 25 x 25 et 800 x 600 pixels.

Le pop-up est initialement défini par la propriété "default_popup" dans la clé "action" du fichier manifest.json. Si cette propriété est présente, elle doit pointer vers un chemin d'accès relatif dans le répertoire de l'extension. Il peut également être mis à jour de manière dynamique pour pointer vers un autre chemin d'accès relatif à l'aide de la méthode action.setPopup().

Cas d'utilisation

État par onglet

Les actions d'extension peuvent avoir des états différents pour chaque onglet. Pour définir une valeur pour un onglet individuel, utilisez la propriété tabId dans les méthodes de configuration de l'API action. Par exemple, pour définir le texte du badge pour un onglet spécifique, procédez comme suit:

function getTabId() { /* ... */}
function getTabBadge() { /* ... */}

chrome.action.setBadgeText(
  {
    text: getTabBadge(tabId),
    tabId: getTabId(),
  },
  () => { ... }
);

Si la propriété tabId est omise, le paramètre est traité comme un paramètre global. Les paramètres spécifiques à l'onglet prévalent sur les paramètres globaux.

État "Activé"

Par défaut, les actions de la barre d'outils sont activées (cliquables) sur chaque onglet. Vous pouvez contrôler ce comportement à l'aide des méthodes action.enable() et action.disable(). Cela n'a d'incidence que sur l'envoi du pop-up (le cas échéant) ou de l'événement action.onClicked à votre extension. Il n'affecte pas la présence de l'action dans la barre d'outils.

Exemples

Les exemples suivants illustrent certaines manières courantes d'utiliser des actions dans les extensions. Pour essayer cette API, installez l'exemple d'API Action à partir du dépôt chrome-extension-samples.

Afficher un pop-up

Il est courant qu'une extension affiche une fenêtre pop-up lorsque l'utilisateur clique sur l'action de l'extension. Pour implémenter cette fonctionnalité dans votre propre extension, déclarez le pop-up dans votre manifest.json et spécifiez le contenu que Chrome doit y afficher.

// manifest.json
{
  "name": "Action popup demo",
  "version": "1.0",
  "manifest_version": 3,
  "action": {
    "default_title": "Click to view a popup",
    "default_popup": "popup.html"
  }
}
<!-- popup.html -->
<!DOCTYPE html>
<html>
<head>
  <style>
    html {
      min-height: 5em;
      min-width: 10em;
      background: salmon;
    }
  </style>
</head>
<body>
  <p>Hello, world!</p>
</body>
</html>

Injecter un script de contenu lors d'un clic

Un modèle courant pour les extensions consiste à exposer leur fonctionnalité principale à l'aide de l'action de l'extension. L'exemple suivant illustre ce modèle. Lorsque l'utilisateur clique sur l'action, l'extension injecte un script de contenu dans la page actuelle. Le script de contenu affiche ensuite une alerte pour vérifier que tout a fonctionné comme prévu.

// manifest.json
{
  "name": "Action script injection demo",
  "version": "1.0",
  "manifest_version": 3,
  "action": {
    "default_title": "Click to show an alert"
  },
  "permissions": ["activeTab", "scripting"],
  "background": {
    "service_worker": "background.js"
  }
}
// background.js
chrome.action.onClicked.addListener((tab) => {
  chrome.scripting.executeScript({
    target: {tabId: tab.id},
    files: ['content.js']
  });
});
// content.js
alert('Hello, world!');

Émuler des actions avec declarativeContent

Cet exemple montre comment la logique d'arrière-plan d'une extension peut (a) désactiver une action par défaut et (b) utiliser declarativeContent pour activer l'action sur des sites spécifiques.

// service-worker.js

// Wrap in an onInstalled callback to avoid unnecessary work
// every time the service worker is run
chrome.runtime.onInstalled.addListener(() => {
  // Page actions are disabled by default and enabled on select tabs
  chrome.action.disable();

  // Clear all rules to ensure only our expected rules are set
  chrome.declarativeContent.onPageChanged.removeRules(undefined, () => {
    // Declare a rule to enable the action on example.com pages
    let exampleRule = {
      conditions: [
        new chrome.declarativeContent.PageStateMatcher({
          pageUrl: {hostSuffix: '.example.com'},
        })
      ],
      actions: [new chrome.declarativeContent.ShowAction()],
    };

    // Finally, apply our new array of rules
    let rules = [exampleRule];
    chrome.declarativeContent.onPageChanged.addRules(rules);
  });
});

Types

OpenPopupOptions

Chrome 99 ou version ultérieure

Propriétés

  • windowId

    numéro facultatif

    ID de la fenêtre dans laquelle ouvrir le pop-up d'action. Si ce champ n'est pas spécifié, la fenêtre active est utilisée par défaut.

TabDetails

Propriétés

  • tabId

    number facultatif

    ID de l'onglet pour lequel interroger l'état. Si aucune tabulation n'est spécifiée, l'état qui n'est pas spécifique à la tabulation est renvoyé.

UserSettings

Chrome 91 et versions ultérieures

Ensemble des paramètres spécifiés par l'utilisateur concernant l'action d'une extension.

Propriétés

  • isOnToolbar

    booléen

    Indique si l'icône d'action de l'extension est visible dans la barre d'outils de niveau supérieur des fenêtres du navigateur (c'est-à-dire si l'extension a été "épinglée" par l'utilisateur).

UserSettingsChange

Chrome 130 ou version ultérieure

Propriétés

  • isOnToolbar

    Booléen facultatif

    Indique si l'icône d'action de l'extension est visible dans la barre d'outils racine de la fenêtre du navigateur (c'est-à-dire si l'extension a été "épinglée" par l'utilisateur).

Méthodes

disable()

Promesse
chrome.action.disable(
  tabId?: number,
  callback?: function,
)

Désactive l'action pour un onglet.

Paramètres

  • tabId

    numéro facultatif

    ID de l'onglet pour lequel vous souhaitez modifier l'action.

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promesse<void>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

enable()

Promesse
chrome.action.enable(
  tabId?: number,
  callback?: function,
)

Active l'action pour un onglet. Les actions sont activées par défaut.

Paramètres

  • tabId

    numéro facultatif

    ID de l'onglet pour lequel vous souhaitez modifier l'action.

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promesse<void>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

getBadgeBackgroundColor()

Promesse
chrome.action.getBadgeBackgroundColor(
  details: TabDetails,
  callback?: function,
)

Récupère la couleur d'arrière-plan de l'action.

Paramètres

  • détails
  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    (result: ColorArray) => void

Renvoie

  • Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

getBadgeText()

Promesse
chrome.action.getBadgeText(
  details: TabDetails,
  callback?: function,
)

Récupère le texte du badge de l'action. Si aucun onglet n'est spécifié, le texte du badge non spécifique à l'onglet est renvoyé. Si displayActionCountAsBadgeText est activé, un texte d'espace réservé est renvoyé, sauf si l'autorisation declarativeNetRequestFeedback est présente ou si un texte de badge spécifique à l'onglet a été fourni.

Paramètres

  • détails
  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    (result: string) => void

    • résultat

      chaîne

Renvoie

  • Promise<string>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

getBadgeTextColor()

Promise Chrome 110 ou version ultérieure
chrome.action.getBadgeTextColor(
  details: TabDetails,
  callback?: function,
)

Récupère la couleur du texte de l'action.

Paramètres

  • détails
  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    (result: ColorArray) => void

Renvoie

  • Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

getPopup()

Promesse
chrome.action.getPopup(
  details: TabDetails,
  callback?: function,
)

Récupère le document HTML défini comme fenêtre pop-up pour cette action.

Paramètres

  • détails
  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    (result: string) => void

    • résultat

      chaîne

Renvoie

  • Promise<string>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

getTitle()

Promesse
chrome.action.getTitle(
  details: TabDetails,
  callback?: function,
)

Récupère le titre de l&#39;action.

Paramètres

  • détails
  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    (result: string) => void

    • résultat

      chaîne

Renvoie

  • Promise<string>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

getUserSettings()

Promise Chrome 91 ou version ultérieure
chrome.action.getUserSettings(
  callback?: function,
)

Affiche les paramètres spécifiés par l'utilisateur concernant l'action d'une extension.

Paramètres

  • rappel

    function facultatif

    Le paramètre callback ressemble à ceci :

    (userSettings: UserSettings) => void

Renvoie

  • Promise&lt;UserSettings&gt;

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

isEnabled()

Promise Chrome 110 ou version ultérieure
chrome.action.isEnabled(
  tabId?: number,
  callback?: function,
)

Indique si l'action d'extension est activée pour un onglet (ou globalement si aucun tabId n'est fourni). Les actions activées à l'aide de declarativeContent uniquement renvoient toujours la valeur "false".

Paramètres

  • tabId

    number facultatif

    ID de l'onglet pour lequel vous souhaitez vérifier l'état "Activé".

  • rappel

    function facultatif

    Le paramètre callback ressemble à ceci :

    (isEnabled: boolean) => void

    • isEnabled

      booléen

      "True" si l'action de l'extension est activée.

Renvoie

  • Promise&lt;boolean&gt;

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

openPopup()

Promise Chrome 127 et versions ultérieures
chrome.action.openPopup(
  options?: OpenPopupOptions,
  callback?: function,
)

Ouvre le pop-up de l'extension. Entre Chrome 118 et Chrome 126, cette option n'est disponible que pour les extensions installées par règle.

Paramètres

  • options

    OpenPopupOptions facultatif

    Spécifie les options d'ouverture de la fenêtre pop-up.

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promesse<void>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

setBadgeBackgroundColor()

Promesse
chrome.action.setBadgeBackgroundColor(
  details: object,
  callback?: function,
)

Définit la couleur d'arrière-plan du badge.

Paramètres

  • détails

    objet

    • couleur

      chaîne | ColorArray

      Tableau de quatre entiers compris dans la plage [0,255] qui constituent la couleur RVBA du badge. Par exemple, le rouge opaque correspond à [255, 0, 0, 255]. Il peut également s'agir d'une chaîne avec une valeur CSS, le rouge opaque correspondant à #FF0000 ou #F00.

    • tabId

      number facultatif

      Limite la modification à un onglet particulier. Réinitialise automatiquement lorsque l'onglet est fermé.

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promesse<void>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

setBadgeText()

Promesse
chrome.action.setBadgeText(
  details: object,
  callback?: function,
)

Définit le texte du badge pour l'action. Le badge s'affiche au-dessus de l'icône.

Paramètres

  • détails

    objet

    • tabId

      number facultatif

      Limite la modification à un onglet particulier. Réinitialise automatiquement lorsque l'onglet est fermé.

    • texte

      chaîne facultatif

      Vous pouvez transmettre un nombre illimité de caractères, mais seuls quatre peuvent tenir dans l'espace. Si une chaîne vide ('') est transmise, le texte du badge est effacé. Si tabId est spécifié et que text est nul, le texte de l'onglet spécifié est effacé et le texte du badge global est utilisé par défaut.

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promesse<void>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

setBadgeTextColor()

Promise Chrome 110 ou version ultérieure
chrome.action.setBadgeTextColor(
  details: object,
  callback?: function,
)

Définit la couleur du texte du badge.

Paramètres

  • détails

    objet

    • couleur

      chaîne | ColorArray

      Tableau de quatre entiers compris dans la plage [0,255] qui constituent la couleur RVBA du badge. Par exemple, le rouge opaque correspond à [255, 0, 0, 255]. Peut également s'agir d'une chaîne avec une valeur CSS, le rouge opaque étant #FF0000 ou #F00. Si vous ne définissez pas cette valeur, une couleur sera choisie automatiquement, qui contraste avec la couleur d'arrière-plan du badge afin que le texte soit visible. Les couleurs dont les valeurs alpha sont équivalentes à 0 ne seront pas définies et une erreur sera renvoyée.

    • tabId

      number facultatif

      Limite la modification à un onglet particulier. Réinitialise automatiquement lorsque l'onglet est fermé.

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promesse<void>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

setIcon()

Promesse
chrome.action.setIcon(
  details: object,
  callback?: function,
)

Définit l&#39;icône de l&#39;action. L&#39;icône peut être spécifiée sous la forme du chemin d&#39;accès à un fichier image ou des données de pixel d&#39;un élément de canevas, ou sous la forme d&#39;un dictionnaire de l&#39;un de ces éléments. Vous devez spécifier la propriété path ou imageData.

Paramètres

  • détails

    objet

    • imageData

      ImageData | objet facultatif

      Objet ImageData ou dictionnaire {size -&gt; ImageData} représentant l&#39;icône à définir. Si l&#39;icône est spécifiée en tant que dictionnaire, l&#39;image réelle à utiliser est choisie en fonction de la densité de pixels de l&#39;écran. Si le nombre de pixels d'image pouvant tenir dans une unité d'espace à l'écran est égal à scale, une image de taille scale * n sera sélectionnée, n étant la taille de l'icône dans l'UI. Vous devez spécifier au moins une image. Notez que "details.imageData = foo" équivaut à "details.imageData = {'16': foo}".

    • chemin d'accès

      chaîne | objet facultatif

      Chemin d'accès à une image relatif ou dictionnaire {taille -> chemin d'accès à une image relatif} pointant vers l'icône à définir. Si l'icône est spécifiée en tant que dictionnaire, l'image réelle à utiliser est choisie en fonction de la densité de pixels de l'écran. Si le nombre de pixels d'image pouvant tenir dans une unité d'espace à l'écran est égal à scale, une image de taille scale * n sera sélectionnée, n étant la taille de l'icône dans l'UI. Vous devez spécifier au moins une image. Remarque : "details.path = foo" équivaut à "details.path = {'16': foo}"

    • tabId

      number facultatif

      Limite la modification à un onglet particulier. Réinitialise automatiquement lorsque l'onglet est fermé.

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promise<void>

    Chrome 96 ou version ultérieure

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

setPopup()

Promesse
chrome.action.setPopup(
  details: object,
  callback?: function,
)

Définit le document HTML à ouvrir en tant que fenêtre pop-up lorsque l'utilisateur clique sur l'icône de l'action.

Paramètres

  • détails

    objet

    • pop-up

      chaîne

      Chemin relatif vers le fichier HTML à afficher dans une fenêtre pop-up. S'il est défini sur une chaîne vide (''), aucun pop-up ne s'affiche.

    • tabId

      number facultatif

      Limite la modification à un onglet particulier. Réinitialise automatiquement lorsque l'onglet est fermé.

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promesse<void>

    Les promesses sont compatibles avec Manifest V3 et versions ultérieures, mais les rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux sur le même appel de fonction. La promesse est résolue avec le même type que celui transmis au rappel.

setTitle()

Promesse
chrome.action.setTitle(
  details: object,
  callback?: function,
)

Définit le titre de l'action. Cela s'affiche dans l'info-bulle.

Paramètres

  • détails

    objet

    • tabId

      number facultatif

      Limite la modification à un onglet particulier. Réinitialise automatiquement lorsque l'onglet est fermé.

    • titre

      chaîne

      Chaîne sur laquelle l'action doit s'afficher lorsque l'utilisateur passe la souris dessus.

  • rappel

    function facultatif

    Le paramètre callback se présente comme suit :

    () => void

Renvoie

  • Promesse<void>

    Les promesses sont compatibles avec la version 3 du fichier manifeste et les versions ultérieures, mais des rappels sont fournis pour assurer la rétrocompatibilité. Vous ne pouvez pas utiliser les deux dans le même appel de fonction. La promesse se résout avec le même type que celui transmis au rappel.

Événements

onClicked

chrome.action.onClicked.addListener(
  callback: function,
)

Déclenché lorsqu'un utilisateur clique sur une icône d'action. Cet événement ne se déclenche pas si l'action comporte une fenêtre pop-up.

Paramètres

  • rappel

    fonction

    Le paramètre callback ressemble à ceci :

    (tab: tabs.Tab) => void

onUserSettingsChanged

Chrome 130 ou version ultérieure
chrome.action.onUserSettingsChanged.addListener(
  callback: function,
)

Déclenché lorsque les paramètres spécifiés par l'utilisateur concernant l'action d'une extension changent.

Paramètres