diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
commit | 33058f2b292b3a581333bdfb21b8f671898c5060 (patch) | |
tree | 51c3e392513ec574331b2d3f85c394445ea803c6 /files/fr/mozilla/add-ons/webextensions/api/notifications | |
parent | 8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff) | |
download | translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2 translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip |
initial commit
Diffstat (limited to 'files/fr/mozilla/add-ons/webextensions/api/notifications')
11 files changed, 951 insertions, 0 deletions
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.html new file mode 100644 index 0000000000..f2eb8989ba --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.html @@ -0,0 +1,80 @@ +--- +title: notifications.clear() +slug: Mozilla/Add-ons/WebExtensions/API/notifications/clear +tags: + - API + - Add-ons + - Extensions + - Method + - Non-standard + - Notifications + - Reference + - WebExtensions + - clear +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/clear +--- +<div>{{AddonSidebar()}}</div> + +<p>Efface une notification, compte tenu de son identifiant.</p> + +<p>C'est une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox brush:js">var clearing = browser.notifications.clear( + id // string +) +</pre> + +<h3 id="Paramètres">Paramètres</h3> + +<dl> + <dt><code>id</code></dt> + <dd><code>string</code>. L'ID de la notification à effacer. C'est la même chose que l'ID transmis dans le callback {{WebExtAPIRef('notifications.create()')}}.</dd> +</dl> + +<h3 id="Valeur_retournée">Valeur retournée</h3> + +<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un booléen : <code>true</code> la notification a été effacée, ou <code>false</code> si ce n'est pas le cas (par exemple, parce que la notification référencée par <code>id </code> n'existe pas).</p> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.clear")}}</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Cet exemple affiche une notification lorsque l'utilisateur clique sur une action du navigateur, à moins que la notification ne soit déjà affichée, auquel cas il efface la notification :</p> + +<pre class="brush: js">var myNotification = "my-notification"; + +function toggleAlarm(all) { + if (myNotification in all) { + browser.notifications.clear(myNotification); + } else { + browser.notifications.create(myNotification, { + "type": "basic", + "iconUrl": browser.extension.getURL("icons/cake-48.png"), + "title": "Am imposing title", + "message": "Some interesting content" + }); + } +} + +function handleClick() { + var gettingAll = browser.notifications.getAll(); + gettingAll.then(toggleAlarm); +} + +browser.browserAction.onClicked.addListener(handleClick); +</pre> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> + +<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.html new file mode 100644 index 0000000000..129bb2a553 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.html @@ -0,0 +1,149 @@ +--- +title: notifications.create() +slug: Mozilla/Add-ons/WebExtensions/API/notifications/create +tags: + - API + - Add-ons + - Create + - Extensions + - Method + - Non-standard + - Notifications + - Reference + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/create +--- +<div>{{AddonSidebar()}}</div> + +<p>Crée et affiche une notification.</p> + +<p>Passez un {{WebExtAPIRef("notifications.NotificationOptions")}} pour définir le contenu et le comportement de la notification.</p> + +<p>Vous pouvez éventuellement fournir un ID pour la notification. Si vous omettez l'ID, un ID sera généré. Vous pouvez utiliser l'ID pour {{WebExtAPIRef("notifications.update()", "update")}} ou {{WebExtAPIRef("notifications.clear()", "clear")}} la notification.</p> + +<p>C'est une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</p> + +<div class="warning"> +<p>Si vous appelez <code>notifications.create()</code> plus d'une fois de suite, Firefox peut ne pas afficher de notification pour tout.</p> +</div> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox brush:js">var creating = browser.notifications.create( + id, // optional string + options // NotificationOptions +) +</pre> + +<h3 id="Paramètres">Paramètres</h3> + +<dl> + <dt><code>id</code>{{optional_inline}}</dt> + <dd><code>string</code>. Ceci est utilisé pour faire référence à cette notification dans {{WebExtAPIRef("notifications.update()")}}, {{WebExtAPIRef("notifications.clear()")}}, et les écouteurs d'événements. Si vous omettez cet argument ou passez une chaîne vide, un nouvel ID sera généré pour cette notification. Si l'ID que vous fournissez correspond à l'ID d'une notification existante provenant de cette extension, l'autre notification sera effacée.</dd> + <dt><code>options</code></dt> + <dd>{{WebExtAPIRef('notifications.NotificationOptions')}}. Définit le contenu et le comportement de la notification.</dd> +</dl> + +<h3 id="Valeur_retournée">Valeur retournée</h3> + +<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie lorsque la notification est créée et que le processus d'affichage a été démarré, avant que la notification ne s'affiche réellement à l'utilisateur. Il est rempli avec une chaîne représentant l'identifiant de la notification.</p> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.create")}}</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Créez et affichez périodiquement une notification de base à l'aide d'un {{WebExtAPIRef("alarms", "alarm")}}. En cliquant sur l'action du navigateur, la notification est rejetée.</p> + +<p>Notez que vous aurez besoin de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "alarms" pour créer des alarmes (ainsi que de la permission "notifications" pour créer des notifications).</p> + +<pre class="brush: js">var cakeNotification = "cake-notification" + +/* + +CAKE_INTERVAL is set to 6 seconds in this example. +Such a short period is chosen to make the extension's behavior +more obvious, but this is not recommended in real life. +Note that in Chrome, alarms cannot be set for less +than a minute. + +*/ +var CAKE_INTERVAL = 0.1; + +browser.alarms.create("", {periodInMinutes: CAKE_INTERVAL}); + +browser.alarms.onAlarm.addListener(function(alarm) { + browser.notifications.create(cakeNotification, { + "type": "basic", + "iconUrl": browser.extension.getURL("icons/cake-96.png"), + "title": "Time for cake!", + "message": "Something something cake" + }); +}); + +browser.browserAction.onClicked.addListener(()=> { + var clearing = browser.notifications.clear(cakeNotification); + clearing.then(() => { + console.log("cleared"); + }); +});</pre> + +<p>Affichez une notification similaire, mais ajoutez des boutons nommant des gâteaux et consignez le gâteau sélectionné lorsque vous cliquez sur un bouton :</p> + +<pre class="brush: js">var cakeNotification = "cake-notification" + +/* + +CAKE_INTERVAL is set to 6 seconds in this example. +Such a short period is chosen to make the extension's behavior +more obvious, but this is not recommended in real life. +Note that in Chrome, alarms cannot be set for less +than a minute. + +*/ +var CAKE_INTERVAL = 0.1; + +var buttons = [ + { + "title": "Chocolate" + }, { + "title": "Battenberg" + } +]; + +browser.alarms.create("", {periodInMinutes: CAKE_INTERVAL}); + +browser.alarms.onAlarm.addListener(function(alarm) { + browser.notifications.create(cakeNotification, { + "type": "basic", + "iconUrl": browser.extension.getURL("icons/cake-96.png"), + "title": "Time for cake!", + "message": "Something something cake", + "buttons": buttons + }); +}); + +browser.browserAction.onClicked.addListener(()=> { + var clearing = browser.notifications.clear(cakeNotification); + clearing.then(() => { + console.log("cleared"); + }); +}); + +browser.notifications.onButtonClicked.addListener((id, index) => { + browser.notifications.clear(id); + console.log("You chose: " + buttons[index].title); +}); +</pre> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> + +<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.html new file mode 100644 index 0000000000..4b7056ef9b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.html @@ -0,0 +1,88 @@ +--- +title: notifications.getAll() +slug: Mozilla/Add-ons/WebExtensions/API/notifications/getAll +tags: + - API + - Add-ons + - Extensions + - Method + - Non-standard + - Notifications + - Reference + - WebExtensions + - getAll +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/getAll +--- +<div>{{AddonSidebar()}}</div> + +<p>Obtient toutes les notifications actuellement actives créées par l'extension.</p> + +<p>C'est une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox brush:js">var gettingAll = browser.notifications.getAll() +</pre> + +<h3 id="Paramètres">Paramètres</h3> + +<p>None.</p> + +<h3 id="Valeur_retournée">Valeur retournée</h3> + +<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera accomplie avec un objet. Chaque notification actuellement active est une propriété de cet objet : le nom de la propriété est l'ID de la notification et la valeur de la propriété est un objet {{WebExtAPIRef("notifications.NotificationOptions")}} décrivant cette notification.</p> + +<p>Notez que vous pouvez définir explicitement un ID pour une notification en le passant dans {{WebExtAPIRef("notifications.create()")}}. Si vous ne le faites pas, le navigateur en générera un. Les ID spécifiés explicitement sont des chaînes, mais les ID générés sont des nombres. </p> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.getAll")}}</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Cet exemple affiche une notification lorsque l'utilisateur clique sur une action du navigateur, à moins que la notification ne soit déjà affichée, auquel cas il efface la notification. Il utilise getAll() pour déterminer si la notification est affichée :</p> + +<pre class="brush: js">var myNotification = "my-notification"; + +function toggleAlarm(all) { + let ids = Object.keys(all); + if (ids.indexOf(myNotification) != -1) { + browser.notifications.clear(myNotification); + } else { + console.log("showing") + + browser.notifications.create(myNotification, { + "type": "basic", + "title": "Am imposing title", + "message": "Some interesting content" + }); + } +} + +function handleClick() { + console.log("clicked") + browser.notifications.getAll().then(toggleAlarm); +} + +browser.browserAction.onClicked.addListener(handleClick);</pre> + +<p>Cet exemple enregistre le titre de toutes les notifications actives :</p> + +<pre class="brush: js">function logNotifications(all) { + for (let id in all) { + console.log(`Title: ${all[id].title}`); + } +} + +browser.notifications.getAll().then(logNotifications);</pre> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> + +<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/index.html new file mode 100644 index 0000000000..cfd71dfe37 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/index.html @@ -0,0 +1,66 @@ +--- +title: notifications +slug: Mozilla/Add-ons/WebExtensions/API/notifications +tags: + - API + - Add-ons + - Extensions + - Notifications + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications +--- +<div>{{AddonSidebar}}</div> + +<p>Afficher les notifications à l'utilisateur, en utilisant le mécanisme de notification du système d'exploitation sous-jacent. Étant donné que cette API utilise le mécanisme de notification du système d'exploitation, les détails de l'apparence et du comportement des notifications peuvent varier en fonction du système d'exploitation et des paramètres de l'utilisateur.</p> + +<p>Pour utiliser cette API, vous devez avoir la <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "notifications".</p> + +<p>La notification est identique sur tous les systèmes d'exploitation de bureau. Quelque chose comme :</p> + +<p><img alt="" src="https://mdn.mozillademos.org/files/16856/notification.png" style="display: block; margin: 0 auto;"></p> + +<h2 id="Types">Types</h2> + +<dl> + <dt>{{WebExtAPIRef("notifications.NotificationOptions")}}</dt> + <dd>Définit le contenu d'une notification.</dd> + <dt>{{WebExtAPIRef("notifications.TemplateType")}}</dt> + <dd>Le type de notification Par exemple, cela définit si la notification peut contenir une image.</dd> +</dl> + +<h2 id="Fonctions">Fonctions</h2> + +<dl> + <dt>{{WebExtAPIRef("notifications.clear()")}}</dt> + <dd>Effacer une notification spécifique, compte tenu de son identifiant.</dd> + <dt>{{WebExtAPIRef("notifications.create()")}}</dt> + <dd> Créez et affichez une nouvelle notification.</dd> + <dt>{{WebExtAPIRef("notifications.getAll()")}}</dt> + <dd>Recevez toutes les notifications</dd> + <dt>{{WebExtAPIRef("notifications.update()")}}</dt> + <dd>Mettre à jour une notification</dd> +</dl> + +<h2 id="Evénements">Evénements</h2> + +<dl> + <dt>{{WebExtAPIRef("notifications.onButtonClicked")}}</dt> + <dd>Lancé lorsque l'utilisateur a cliqué sur un bouton dans la notification.</dd> + <dt>{{WebExtAPIRef("notifications.onClicked")}}</dt> + <dd>Lancé lorsque l'utilisateur a cliqué sur la notification, mais pas sur un bouton.</dd> + <dt>{{WebExtAPIRef("notifications.onClosed")}}</dt> + <dd>Lancé lorsqu'une notification est fermée, soit par le système, soit parce que l'utilisateur l'a rejeté..</dd> + <dt>{{WebExtAPIRef("notifications.onShown")}}</dt> + <dd>Lancé immédiatement après l'affichage d'une notification.</dd> +</dl> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p>{{Compat("webextensions.api.notifications")}}</p> + +<p>{{WebExtExamples("h2")}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.html new file mode 100644 index 0000000000..a932728032 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.html @@ -0,0 +1,91 @@ +--- +title: notifications.NotificationOptions +slug: Mozilla/Add-ons/WebExtensions/API/notifications/NotificationOptions +tags: + - AP + - Add-ons + - Extensions + - Non-standard + - NotificationOptions + - Refere + - Type + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/NotificationOptions +--- +<div>{{AddonSidebar()}}</div> + +<p>Ce type contient les données nécessaires pour :</p> + +<ul> + <li>créer une notification avec {{WebExtAPIRef("notifications.create()")}},</li> + <li>mettre à jour une notification avec {{WebExtAPIRef("notifications.update()")}}.</li> +</ul> + +<h2 id="Type">Type</h2> + +<p>Les valeurs de ce type sont des objets qui contiennent les propriétés listées ci-dessous.</p> + +<p>Les trois premières propriétés - <code>type</code>, <code>title</code>, <code>message</code> - sont obligatoires pour {{WebExtAPIRef("notifications.create()")}}, mais pas avec {{WebExtAPIRef("notifications.update()")}}. Firefox ne supporte que les propriétés <code>type</code>, <code>title</code>, <code>message</code>, et <code>iconUrl</code> pour le moment, et le seul <code>type</code> disponible est <code>'basic'</code>.</p> + +<dl class="reference-values"> + <dt><code>type</code></dt> + <dd>{{WebExtAPIRef("notifications.TemplateType")}}. Le type de notification que vous voulez. Selon votre choix ici, certaines propriétés seront soit nécéssaires, soit interdites.</dd> + <dt><a id="message" name="message"><code>message</code></a></dt> + <dd><code>string</code>. Le contenu de la notification</dd> + <dt><a id="title" name="title"><code>title</code></a></dt> + <dd><code>string</code>. Le titre de la notification</dd> + <dt><a id="iconUrl" name="iconUrl"><code>iconUrl</code></a>{{optional_inline}}</dt> + <dd><code>string</code>. Une URL correspondant vers une icône à afficher dans la notification. Ça peut être une URL de donnée, une URL blob, une URL http ou https, ou une <a href="/fr/Add-ons/WebExtensions/Chrome_incompatibilities#Relative_URLs">l'URL relative</a> d'un fichier de l'extension.</dd> + <dt><a id="contextMessage" name="contextMessage"><code>contextMessage</code></a>{{optional_inline}}</dt> + <dd><code>string</code>. Du texte supplémentaire à afficher.</dd> + <dt><a id="contextMessage" name="contextMessage"><code>priority</code></a>{{optional_inline}}</dt> + <dd><code>number</code>. La priorité de cette notification. Ça peut être 0, 1, or 2. La valeur par défaut est 0.</dd> + <dt><a id="eventTime" name="eventTime"><code>eventTime</code></a>{{optional_inline}}</dt> + <dd><code>number</code>. Un timestamp en millisecondes pour cette notification <a href="https://fr.wikipedia.org/wiki/Temps_Unix">depuis le timestamp 0</a>.</dd> + <dt><a id="buttons" name="buttons"><code>buttons</code></a>{{optional_inline}}</dt> + <dd><code>array</code> de <code>button</code>. Un tableau pouvant contenir jusqu'à deux boutons à afficher dans la notification. Vous pouvez réagir aux clics sur ces boutons grâce à {{WebExtAPIRef("notifications.onButtonClicked")}}. Chaque bouton est un objet avec ces propriétés :</dd> + <dd> + <dl class="reference-values"> + <dt><code>title</code></dt> + <dd><code>string</code>. Le texte du bouton.</dd> + <dt><code>iconUrl</code>{{optional_inline}}</dt> + <dd><code>string</code>. Une URL pointant vers l'icône de ce bouton.</dd> + </dl> + </dd> + <dt><a id="imageUrl" name="imageUrl"><code>imageUrl</code></a></dt> + <dd> + <p><code>string</code>. Une URL pointant vers une image à utiliser dans la notification. Ça peut être une URL de donnée, une URL blob, une URL http ou https, ou une <a href="/fr/Add-ons/WebExtensions/Chrome_incompatibilities#Relative_URLs">l'URL relative</a> d'un fichier de l'extension.</p> + + <p><em>Cette propriété est utilisable seuleument si le <code>type</code> de la notification est <code>'image'</code>. Dans ce cas, cette propriété sera obligatoire si l'objet <code>NotificationOptions</code> est utilisé avec {{WebExtAPIRef("notifications.create()")}}, mais optionel avec </em><em>{{WebExtAPIRef("notifications.update()")}}.</em></p> + </dd> + <dt><a id="items" name="items"><code>items</code></a></dt> + <dd><code>array</code> of <code>item</code>. Un tableau d'éléments à inclure dans la notification. Selon les paramètres de notification du système d'exploitation, certains éléments que vous souhaitez afficher pourraient ne pas l'être. Chaque élément est un objet avec les propriétés suivantes :</dd> + <dd> + <dl class="reference-values"> + <dt><code>title</code></dt> + <dd><code>string</code>. Le titre de cet élément.</dd> + <dt><code>message</code></dt> + <dd><code>string</code>. Le message à afficher pour cet élément.</dd> + </dl> + <em>Cette propriété est utilisable seuleument si le <code>type</code> de la notification est <code>'list'</code>. Dans ce cas, cette propriété sera obligatoire si l'objet <code>NotificationOptions</code> est utilisé avec {{WebExtAPIRef("notifications.create()")}}, mais optionel avec </em><em>{{WebExtAPIRef("notifications.update()")}}.</em></dd> + <dt><a id="progress" name="progress"><code>progress</code></a></dt> + <dd><code>integer</code>. Une valeur entre 0 et 100, qui représente l'avancée actuelle d'un indicateur de progression.</dd> + <dd><em>Cette propriété est utilisable seuleument si le <code>type</code> de la notification est <code>'progress'</code>. Dans ce cas, cette propriété sera obligatoire si l'objet <code>NotificationOptions</code> est utilisé avec {{WebExtAPIRef("notifications.create()")}}, mais optionel avec </em><em>{{WebExtAPIRef("notifications.update()")}}.</em></dd> +</dl> + +<p>Notez que les propriétés <code>appIconMaskUrl</code> et <code>isClickable</code> ne sont pas supportées.</p> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.NotificationOptions")}}</p> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> + +<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.html new file mode 100644 index 0000000000..47118cd224 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.html @@ -0,0 +1,69 @@ +--- +title: notifications.onButtonClicked +slug: Mozilla/Add-ons/WebExtensions/API/notifications/onButtonClicked +tags: + - API + - Add-ons + - Event + - Extensions + - Non-standard + - Notifications + - Reference + - WebExtensions + - onButtonClicked +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/onButtonClicked +--- +<div>{{AddonSidebar()}}</div> + +<p>Lancé lorsque l'utilisateur clique sur l'un des boutons de la notification.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox brush:js">browser.notifications.onButtonClicked.addListener(listener) +browser.notifications.onButtonClicked.removeListener(listener) +browser.notifications.onButtonClicked.hasListener(listener) +</pre> + +<p>Les événements ont trois fonctions :</p> + +<dl> + <dt><code>addListener(callback)</code></dt> + <dd>Ajoute un écouteur à cet événement.</dd> + <dt><code>removeListener(listener)</code></dt> + <dd>Arrêtez d'écouter cet événement. L'argument de <code>listener</code> est l'écouteur à supprimer.</dd> + <dt><code>hasListener(listener)</code></dt> + <dd>Vérifiez si <code>listener</code> est enregistré pour cet événement. Renvoie <code>true</code> s'il écoute, sinon <code>false</code>.</dd> +</dl> + +<h2 id="Syntaxe_addListener">Syntaxe addListener</h2> + +<h3 id="Parameters">Parameters</h3> + +<dl> + <dt><code>callback</code></dt> + <dd> + <p>Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :</p> + + <dl class="reference-values"> + <dt><code>notificationId</code></dt> + <dd><code>string</code>. ID de la notification sur laquelle le bouton a été cliqué.</dd> + <dt><code>buttonIndex</code></dt> + <dd><code>integer</code>. L'index <a href="https://en.wikipedia.org/wiki/Zero-based_numbering">zero-based</a> du bouton sur lequel vous avez cliqué.</dd> + </dl> + </dd> +</dl> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.onButtonClicked")}}</p> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> + +<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.html new file mode 100644 index 0000000000..2fe5668913 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.html @@ -0,0 +1,75 @@ +--- +title: notifications.onClicked +slug: Mozilla/Add-ons/WebExtensions/API/notifications/onClicked +tags: + - API + - Add-ons + - Event + - Extensions + - Non-standard + - Notifications + - Reference + - WebExtensions + - onClicked +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/onClicked +--- +<div>{{AddonSidebar()}}</div> + +<p>Lancé lorsque l'utilisateur clique sur une notification, mais pas sur l'un des boutons de la notification (pour cela, voir {{WebExtAPIRef("notifications.onButtonClicked")}}).</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox brush:js">browser.notifications.onClicked.addListener(listener) +browser.notifications.onClicked.removeListener(listener) +browser.notifications.onClicked.hasListener(listener) +</pre> + +<p>Les événements ont trois fonctions :</p> + +<dl> + <dt><code>addListener(callback)</code></dt> + <dd>Ajoute un écouteur à cet événement.</dd> + <dt><code>removeListener(listener)</code></dt> + <dd>Arrêtez d'écouter cet événement. L'argument <code>listener</code> est l'écouteur à supprimer.</dd> + <dt><code>hasListener(listener)</code></dt> + <dd>Vérifiez si <code>listener</code> est enregistré pour cet événement. Renvoie <code>true</code> s'il écoute, sinon <code>false</code>.</dd> +</dl> + +<h2 id="syntaxe_addListener">syntaxe addListener</h2> + +<h3 id="Paramètres">Paramètres</h3> + +<dl> + <dt><code>callback</code></dt> + <dd> + <p>Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :</p> + + <dl class="reference-values"> + <dt><code>notificationId</code></dt> + <dd><code>string</code>. ID de la notification sur laquelle l'utilisateur a cliqué.</dd> + </dl> + </dd> +</dl> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.onClicked")}}</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Dans cet exemple simple, nous ajoutons un écouteur à l'événement {{WebExtAPIRef("notifications.onClicked")}} pour écouter les notifications système en cours de clic. Lorsque cela se produit, nous enregistrons un message approprié à la console.</p> + +<pre class="brush: js">browser.notifications.onClicked.addListener(function(notificationId) { + console.log('Notification ' + notificationId + ' was clicked by the user'); +});</pre> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> + +<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.html new file mode 100644 index 0000000000..d337f9d1bf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.html @@ -0,0 +1,77 @@ +--- +title: notifications.onClosed +slug: Mozilla/Add-ons/WebExtensions/API/notifications/onClosed +tags: + - API + - Add-ons + - Event + - Extensions + - Non-standard + - Notifications + - Reference + - WebExtensions + - onClosed +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/onClosed +--- +<div>{{AddonSidebar()}}</div> + +<p>Lancé lorsqu'une notification est fermée, soit par le système, soit par l'utilisateur.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox brush:js">browser.notifications.onClosed.addListener(listener) +browser.notifications.onClosed.removeListener(listener) +browser.notifications.onClosed.hasListener(listener) +</pre> + +<p>Les événements ont trois fonctions :</p> + +<dl> + <dt><code>addListener(callback)</code></dt> + <dd>Ajoute un écouteur à cet événement.</dd> + <dt><code>removeListener(listener)</code></dt> + <dd>Arrêtez d'écouter cet événement. L'argument <code>listener</code> st l'écouteur à supprimer.</dd> + <dt><code>hasListener(listener)</code></dt> + <dd>Vérifiez si <code>listener</code> st enregistré pour cet événement. Renvoie <code>true</code> s'il écoute, sinon <code>false</code>.</dd> +</dl> + +<h2 id="Syntaxe_addListener">Syntaxe addListener</h2> + +<h3 id="Parameters">Parameters</h3> + +<dl> + <dt><code>callback</code></dt> + <dd> + <p>Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :</p> + + <dl class="reference-values"> + <dt><code>notificationId</code></dt> + <dd><code>string</code>. ID de la notification fermée.</dd> + <dt><code>byUser</code></dt> + <dd><code>boolean</code>. <code>true</code> si la notification a été fermée par l'utilisateur, ou <code>false</code>si elle a été fermée par le système. Cet argument n'est pas supporté dans Firefox.</dd> + </dl> + </dd> +</dl> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.onClosed")}}</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Dans cet exemple simple, nous ajoutons un écouteur à l'événement {{WebExtAPIRef("notifications.onClosed")}} pour écouter les notifications système fermées. Lorsque cela se produit, nous enregistrons un message approprié à la console.</p> + +<pre class="brush: js">browser.notifications.onClosed.addListener(function(notificationId) { + console.log('Notification ' + notificationId + ' has closed.'); +});</pre> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> + +<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.html new file mode 100644 index 0000000000..06f31fdd88 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.html @@ -0,0 +1,77 @@ +--- +title: notifications.onShown +slug: Mozilla/Add-ons/WebExtensions/API/notifications/onShown +tags: + - API + - Add-ons + - Event + - Extensions + - Reference + - WebExtensions + - events + - onShown +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/onShown +--- +<div>{{AddonSidebar()}}</div> + +<p>Lancé immédiatement après l'affichage d'une notification.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox brush:js">browser.notifications.onShown.addListener(listener) +browser.notifications.onShown.removeListener(listener) +browser.notifications.onShown.hasListener(listener) +</pre> + +<p>Les événements ont trois fonctions :</p> + +<dl> + <dt><code>addListener(callback)</code></dt> + <dd>Ajoute un écouteur à cet événement.</dd> + <dt><code>removeListener(listener)</code></dt> + <dd>Arrêtez d'écouter cet événement. L'argument <code>listener</code> est l'écouteur à supprimer.</dd> + <dt><code>hasListener(listener)</code></dt> + <dd>Vérifiez si <code>listener</code> est enregistré pour cet événement. Renvoie <code>true</code>s'il écoute, sinon <code>false</code>.</dd> +</dl> + +<h2 id="syntaxe_addListener">syntaxe addListener</h2> + +<h3 id="Paramètres">Paramètres</h3> + +<dl> + <dt><code>callback</code></dt> + <dd> + <p>Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :</p> + + <dl class="reference-values"> + <dt><code>notificationId</code></dt> + <dd><code>string</code>. ID de la notification qui a été affichée.</dd> + </dl> + </dd> +</dl> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.onShown")}}</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Ajoutez un écouteur à l'événement {{WebExtAPIRef("notifications.onShown")}} et consignez ses détails :</p> + +<pre class="brush: js">function logShown(itemId) { + console.log(`shown: ${itemId}`); + browser.notifications.getAll().then((all) => { + console.log(all[itemId]); + }) +} + +browser.notifications.onShown.addListener(logShown);</pre> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.html new file mode 100644 index 0000000000..ff80ce05bf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.html @@ -0,0 +1,69 @@ +--- +title: notifications.TemplateType +slug: Mozilla/Add-ons/WebExtensions/API/notifications/TemplateType +tags: + - API + - Add-ons + - Extensions + - Non-standard + - Notifications + - Reference + - TemplateType + - Type + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/TemplateType +--- +<div>{{AddonSidebar()}}</div> + +<p>Ceci est une chaîne et représente le type de notification à créer. Il existe quatre types de notification : "basic", "image", "list", "progress".</p> + +<p>Ceci est passé dans {{WebExtAPIRef("notifications.create()")}} et {{WebExtAPIRef("notifications.update()")}} comme propriété de <code>type</code> {{WebExtAPIRef("notifications.NotificationOptions", "NotificationOptions")}}.</p> + +<h2 id="Type">Type</h2> + +<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p> + +<ul> + <li><code>"basic"</code>: la notification comprend : + + <ul> + <li>un titre (<code><a href="/fr/Add-ons/WebExtensions/API/notifications/NotificationOptions#title">NotificationOptions.title</a></code>)</li> + <li>un message (<code><a href="/fr/Add-ons/WebExtensions/API/notifications/NotificationOptions#message">NotificationOptions.message</a></code>)</li> + <li>une icône (<code><a href="/fr/Add-ons/WebExtensions/API/notifications/NotificationOptions#iconUrl">NotificationOptions.iconUrl</a></code>){{optional_inline}}</li> + <li>un message supplémentaire (<code><a href="/fr/Add-ons/WebExtensions/API/notifications/NotificationOptions#contextMessage">NotificationOptions.contextMessage</a></code>){{optional_inline}}</li> + <li>jusqu'à deux boutons (<code><a href="/fr/Add-ons/WebExtensions/API/notifications/NotificationOptions#buttons">NotificationOptions.buttons</a></code>){{optional_inline}}</li> + </ul> + </li> + <li><code>"image"</code>: tout dans <code>"basic"</code> et aussi : + <ul> + <li>Une image (<code><a href="/fr/Add-ons/WebExtensions/API/notifications/NotificationOptions#imageUrl">NotificationOptions.imageUrl</a></code>)</li> + </ul> + </li> + <li><code>"list"</code>: tout dans <code>"basic"</code> et aussi : + <ul> + <li>Une liste d'éléments (<code><a href="/fr/Add-ons/WebExtensions/API/notifications/NotificationOptions#items">NotificationOptions.items</a></code>)</li> + </ul> + </li> + <li><code>"progress"</code>: tout en <code>"basic"</code> et aussi : + <ul> + <li>Un indicator de progression (<code><a href="/fr/Add-ons/WebExtensions/API/notifications/NotificationOptions#progress">NotificationOptions.progress</a></code>)</li> + </ul> + </li> +</ul> + +<p>Actuellement Firefox ne supporte que "basic" ici.</p> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.TemplateType")}}</p> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> + +<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> +</div> diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.html new file mode 100644 index 0000000000..e4a0faf023 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.html @@ -0,0 +1,110 @@ +--- +title: notifications.update() +slug: Mozilla/Add-ons/WebExtensions/API/notifications/update +tags: + - API + - Add-ons + - Extensions + - Method + - Non-standard + - Notifications + - Reference + - Update + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/API/notifications/update +--- +<div>{{AddonSidebar()}}</div> + +<p>Met à jour une notification, compte tenu de son identifiant</p> + +<p>C'est une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</p> + +<h2 id="Syntaxe">Syntaxe</h2> + +<pre class="syntaxbox brush:js">var updating = browser.notifications.update( + id, // string + options // NotificationOptions +) +</pre> + +<h3 id="Paramètres">Paramètres</h3> + +<dl> + <dt><code>id</code></dt> + <dd><code>string</code>. L'ID de la notification à mettre à jour. C'est la même chose que l'ID transmis dans le callback {{WebExtAPIRef('notifications.create()')}}.</dd> + <dt><code>options</code></dt> + <dd>{{WebExtAPIRef('notifications.NotificationOptions')}}. Définit le nouveau contenu et le nouveau comportement de la notification.</dd> +</dl> + +<h3 id="Valeur_retournée">Valeur retournée</h3> + +<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un booléen : <code>true</code> si la notification a été mise à jour, ou <code>false</code> si ce n'est pas le cas (par exemple, parce que la notification référencée par <code>id</code> n'existe pas).</p> + +<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("webextensions.api.notifications.update")}}</p> + +<h2 id="Exemples">Exemples</h2> + +<p>Cet exemple utilise <code>update()</code> pour mettre à jour une notification de progression. Cliquez sur l'action du navigateur pour afficher la notification et lancer un {{WebExtAPIRef("alarms", "alarm")}}, que nous utilisons pour mettre à jour l'indicateur de progression de la notification.</p> + +<p>Notez que vous aurez besoin de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "alarms" pour créer des alarmes (ainsi que de la permission "notifications" pour créer des notifications). Notez également que Firefox ne prend pas en charge l'attribut de <code>progress</code>.</p> + +<pre class="brush: js">var cakeNotification = "cake-notification"; + +/* + +CAKE_INTERVAL is set to 0.3 seconds in this example. +Such a short period is chosen to make the extension's behavior +more obvious, but this is not recommended in real life. +Note that in Chrome, alarms cannot be set for less than +a minute. + +*/ +var CAKE_PREP_INTERVAL = 0.005; + +var progress = 0; + +browser.alarms.onAlarm.addListener(function(alarm) { + progress = progress + 10; + if (progress > 100) { + browser.notifications.clear(cakeNotification); + browser.alarms.clear("cake-progress"); + } else { + browser.notifications.update(cakeNotification, { + "progress": progress + }); + } +}); + +browser.browserAction.onClicked.addListener(function () { + browser.notifications.getAll((all) => { + if (all.length > 0) { + browser.notifications.clear(cakeNotification); + return; + } + progress = 0; + browser.notifications.create(cakeNotification, { + "type": "progress", + "iconUrl": browser.extension.getURL("icons/cake-48.png"), + "title": "Your cake is being prepared...", + "message": "Something something cake", + "progress": progress + }); + browser.alarms.create( + "cake-progress", + {periodInMinutes: CAKE_PREP_INTERVAL} + ); + }); +});</pre> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Remerciements :</strong> + +<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/notifications"><code>chrome.notifications</code></a>.</p> + +<p>Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.</p> +</div> |