blob: 8d8463f0692e9f8c4a825db3709f360d4cd2f8a3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
---
title: menus.overrideContext()
slug: Mozilla/Add-ons/WebExtensions/API/menus/menus.overrideContext()
tags:
- API
- Add-ons
- Extensions
- Méthode
- WebExtensions
- contextMenus
translation_of: Mozilla/Add-ons/WebExtensions/API/menus/menus.overrideContext()
---
<div>{{AddonSidebar()}}</div>
<p>Cette API permet aux extensions de masquer tous les éléments de menu par défaut de Firefox afin de fournir une interface utilisateur de menu contextuel personnalisée. Ce menu contextuel peut comprendre plusieurs éléments de menu de niveau supérieur de l'extension et éventuellement inclure des éléments de menu contextuel d'onglet ou de signet provenant d'autres extensions. Cela doit être appelé lors d'un gestionnaire d'événements DOM du menu <code>contextmenu</code>, et s'applique uniquement au menu qui s'ouvre après cet événement.</p>
<p>Cette API ne peut être appelée que si l'addon dispose de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"menus.overrideContext"</code>.</p>
<h2 id="Syntaxe">Syntaxe</h2>
<pre class="syntaxbox brush:js">browser.menus.overrideContext(
contextOptions // object
)
</pre>
<h3 id="Paramètres">Paramètres</h3>
<dl>
<dt><code>contextOptions</code></dt>
<dd><code>object</code>.Propriétés qui définissent le contexte du menu contextuel.</dd>
<dd>
<dl class="reference-values">
<dt><code>bookmarkId</code> {{optional_inline}}</dt>
<dd><code>string</code> Requis lorsque le contexte est un <code>signet</code>. Nécessite la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission </a> <code>"bookmark"</code> .</dd>
<dt><code>context</code> {{optional_inline}}</dt>
<dd><code>string</code>. pour passer outre, pour autoriser les éléments de menu d'autres extensions dans le menu. Actuellement, seuls <code>"bookmark"</code> et <code>"tab"</code> sont supportés. <code>showDefaults</code> ne peut pas être utilisé avec cette option.</dd>
<dt><code>showDefaults</code> {{optional_inline}}</dt>
<dd><code>boolean</code>. S'il faut également inclure des éléments de menu par défaut dans le menu.</dd>
<dt><code>tabId</code> {{optional_inline}}</dt>
<dd><code>string</code> Requis lorsque le contexte est <code>"tab"</code>. Nécessite la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"tabs"</code> .</dd>
</dl>
</dd>
</dl>
<h2 id="Exemples">Exemples</h2>
<p>Ouvrez le menu contextuel de l'onglet de votre interface utilisateur personnalisée, dans ce cas :</p>
<pre class="brush:js">document.addEventListener('contextmenu', event => {
const foo = event.target.closest('.foo');
if (foo) {
// When the context menu is opened on an element with the foo class
// set the context to "opening a tab context menu".
browser.menus.overrideContext({
context: 'tab',
tabId: parseInt(foo.dataset.tabId)
});
}
}, { capture: true });
</pre>
<p>Voir <a href="https://blog.mozilla.org/addons/2018/11/08/extensions-in-firefox-64/#cm">ce billet de blog</a> pour plus de détails.</p>
|