aboutsummaryrefslogtreecommitdiff
path: root/files/fr/mozilla/add-ons/webextensions/api
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
commit33058f2b292b3a581333bdfb21b8f671898c5060 (patch)
tree51c3e392513ec574331b2d3f85c394445ea803c6 /files/fr/mozilla/add-ons/webextensions/api
parent8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff)
downloadtranslated-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')
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.html46
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/alarms/clear/index.html64
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/alarms/clearall/index.html57
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/alarms/create/index.html105
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/alarms/get/index.html62
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/alarms/getall/index.html63
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/alarms/index.html60
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/alarms/onalarm/index.html88
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenode/index.html91
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.html35
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.html99
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.html105
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.html105
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.html121
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.html120
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.html130
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.html120
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.html138
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.html126
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.html123
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.html113
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.html113
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.html135
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.html137
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.html108
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.html114
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.html152
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.html126
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.html95
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.html91
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.html108
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.html102
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.html108
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.html116
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/index.html133
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.html58
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.html128
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.html116
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.html119
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.html194
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.html146
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.html126
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.html56
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.html48
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.html27
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.html40
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.html47
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.html36
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.html38
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.html71
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.html36
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.html36
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.html38
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.html40
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.html40
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.html46
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/proxyconfig/index.html73
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.html45
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.html49
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.html45
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.html55
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.html101
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.html128
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.html89
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.html129
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.html100
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.html132
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.html125
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.html124
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.html125
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.html123
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.html124
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.html109
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.html60
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.html64
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.html90
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.html100
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.html102
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/clipboard/index.html39
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/commands/command/index.html46
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.html61
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/commands/index.html91
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.html98
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.html59
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/commands/update/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.html45
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.html106
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.html69
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.html67
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.html76
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.html108
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.html65
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.html65
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.html98
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.html98
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.html98
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.html85
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.html67
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.html114
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.html113
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.html99
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.html122
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.html120
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.html101
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/index.html169
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.html128
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.html92
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.html121
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.html35
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.html124
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/eval/index.html219
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/index.html82
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/reload/index.html100
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/tabid/index.html85
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.network/gethar/index.html88
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.network/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.network/onnavigated/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.network/onrequestfinished/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/create/index.html110
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elements/index.html29
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/createsidebarpane/index.html107
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/index.html73
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/onselectionchanged/index.html74
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionpanel/index.html93
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/index.html89
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/onhidden/index.html80
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/onshown/index.html78
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setexpression/index.html106
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setobject/index.html104
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setpage/index.html89
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/onthemechanged/index.html72
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools.panels/themename/index.html39
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/devtools/index.html72
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/dns/index.html31
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.html102
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.html74
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.html101
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.html93
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.html145
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.html111
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.html122
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.html79
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.html80
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.html123
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.html79
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.html124
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/index.html132
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.html119
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.html150
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.html110
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.html115
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.html96
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.html118
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.html99
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.html168
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.html84
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.html111
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.html83
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/events/event/index.html87
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/events/index.html72
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/events/rule/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.html142
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.html100
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.html88
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.html94
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.html117
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/index.html109
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.html64
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.html94
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.html92
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.html64
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.html117
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.html116
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.html97
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.html80
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.html76
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.html24
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.html76
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/find/find/index.html292
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.html53
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/find/index.html32
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.html41
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.html150
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.html96
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.html107
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.html142
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.html119
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.html83
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/index.html134
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.html117
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.html113
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.html122
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/search/index.html155
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.html93
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.html115
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.html92
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.html119
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/i18n/index.html57
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/i18n/languagecode/index.html69
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.html129
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.html55
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/identity/index.html106
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.html124
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/idle/idlestate/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/idle/index.html88
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.html113
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.html100
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.html84
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/index.html60
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.html128
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/get/index.html98
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/getall/index.html96
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/getself/index.html90
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/install/index.html85
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.html106
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.html106
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.html106
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.html106
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.html105
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.html111
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.html121
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.html66
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/create/index.html228
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.html130
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.html74
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/index.html203
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/menus.overridecontext()/index.html62
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.html105
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.html118
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.html153
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.html46
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.html66
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.html113
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.html107
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/menus/update/index.html193
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.html80
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.html149
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.html88
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/index.html66
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.html91
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.html69
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.html77
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.html77
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.html69
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.html110
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/omnibox/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputcancelled/index.html60
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputchanged/index.html153
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentered/index.html153
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentereddisposition/index.html45
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputstarted/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/omnibox/setdefaultsuggestion/index.html58
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/omnibox/suggestresult/index.html43
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/getpopup/index.html114
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.html109
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.html88
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.html77
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.html114
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.html58
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/seticon/index.html130
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.html107
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.html107
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.html95
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/permissions/getall/index.html56
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/permissions/index.html84
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/permissions/onadded/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/permissions/onremoved/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/permissions/permissions/index.html41
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/permissions/remove/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/permissions/request/index.html90
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pkcs11/getmoduleslots/index.html94
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.html90
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.html73
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.html57
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.html53
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/privacy/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.html116
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.html60
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.html160
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/proxy/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/proxy/onproxyerror/index.html60
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.html107
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.html63
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.html161
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/proxy/requestdetails/index.html60
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.html55
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/connect/index.html161
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.html122
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.html63
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/getmanifest/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.html88
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.html90
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.html97
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/index.html171
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.html124
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.html155
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.html140
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.html125
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.html79
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.html327
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.html157
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.html100
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.html74
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.html105
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.html108
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.html116
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.html77
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.html77
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.html83
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.html248
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.html83
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.html110
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.html77
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.html167
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.html114
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.html97
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/search/get/index.html71
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/search/index.html32
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/search/search/index.html102
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.html80
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.html77
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.html115
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.html66
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.html66
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/index.html137
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.html62
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.html123
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.html84
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.html82
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.html71
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.html56
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.html109
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.html116
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.html67
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.html101
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.html59
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.html137
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.html138
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.html125
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.html56
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/index.html107
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/local/index.html94
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.html136
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.html127
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.html62
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/get/index.html135
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/getbytesinuse/index.html54
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/index.html83
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/set/index.html101
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.html88
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.html102
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.html105
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.html122
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.html145
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.html127
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.html119
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.html114
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.html176
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.html97
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.html90
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.html100
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.html93
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.html116
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.html103
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.html101
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.html101
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.html88
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.html102
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/index.html225
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.html144
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.html168
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.html54
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.html127
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.html120
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.html133
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.html121
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.html133
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.html112
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.html126
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.html133
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.html129
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.html124
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.html119
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.html281
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.html134
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.html92
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.html50
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.html66
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.html190
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.html115
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.html116
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.html121
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.html148
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.html93
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.html107
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.html102
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.html73
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.html127
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.html72
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.html85
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.html172
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.html79
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.html79
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.html66
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/theme/index.html50
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.html85
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.html80
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.html25
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/theme/update/index.html86
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.html145
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/topsites/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.html79
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.html98
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.html121
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.html85
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.html128
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.html127
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/types/index.html64
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/userscripts/apiscript/index.html43
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/userscripts/index.html70
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.html51
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.html78
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.html34
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/registereduserscript.unregister()/index.html49
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.html47
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/userscripts/travailler_avec_userscripts/index.html115
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.html48
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.html135
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.html126
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.html143
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.html142
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.html148
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.html141
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.html156
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.html142
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.html144
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.html147
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.html149
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.html126
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.html85
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.html95
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.html97
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.html79
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.html76
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.html106
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.html115
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.html77
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/index.html200
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.html367
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.html208
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.html301
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.html286
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.html209
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.html196
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.html248
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.html205
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.html200
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.html81
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.html120
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.html98
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.html63
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.html67
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.html46
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.html126
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.html197
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.html51
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.html47
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.html51
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.html63
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.html72
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.html63
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.html76
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.html75
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/create/index.html192
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.html79
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/get/index.html123
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.html120
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.html119
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.html117
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/index.html115
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.html110
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.html114
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.html111
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.html120
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/update/index.html134
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/window/index.html96
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.html67
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.html68
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.html83
-rw-r--r--files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.html79
543 files changed, 54468 insertions, 0 deletions
diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.html b/files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.html
new file mode 100644
index 0000000000..a5500ca765
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.html
@@ -0,0 +1,46 @@
+---
+title: alarms.Alarm
+slug: Mozilla/Add-ons/WebExtensions/API/alarms/Alarm
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - alarm
+ - alarms
+translation_of: Mozilla/Add-ons/WebExtensions/API/alarms/Alarm
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Cette interface fournit des informations sur une alarme donnée. Cet objet est retourné à partir de {{WebExtAPIRef('alarms.get()')}} et {{WebExtAPIRef('alarms.getAll()')}} et est passé au gestionnaire d'évènement {{WebExtAPIRef('alarms.onAlarm')}}.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets contenant les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>name</code></dt>
+ <dd><code>string</code> Une chaîne de caractères contenant le nom de l'alarme. Ce nom provient de celui qui a été fourni à la méthode {{WebExtAPIRef('alarms.create()')}} lors de la création de l'alarme.</dd>
+ <dt><code>scheduledTime</code></dt>
+ <dd><code>double</code> Un nombre qui représente l'heure à laquelle l'alarme doit être déclenchée, exprimée <a href="https://fr.wikipedia.org/wiki/Heure_Unix">en nombre de millisecondes depuis epoch</a>.</dd>
+ <dt><code>periodInMinutes</code>{{optional_inline}}</dt>
+ <dd><code>double</code> Un nombre qui, s'il n'est pas <code>null</code>, indique que l'alarme est périodique et fournit la période.</dd>
+</dl>
+
+<h2 id="Compatibilité_des_navigateur">Compatibilité des 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.alarms.Alarm")}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note">&lt;<strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/alarms"><code>chrome.alarms</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/alarms/clear/index.html b/files/fr/mozilla/add-ons/webextensions/api/alarms/clear/index.html
new file mode 100644
index 0000000000..505237ce9d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/clear/index.html
@@ -0,0 +1,64 @@
+---
+title: alarms.clear()
+slug: Mozilla/Add-ons/WebExtensions/API/alarms/clear
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - alarms
+ - clear
+translation_of: Mozilla/Add-ons/WebExtensions/API/alarms/clear
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Cette méthode supprime une alarme à partir du nom passé en argument. Il s'agit d'une fonction asynchrone qui renvoie une {{jsxref("Promise")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox">var clearAlarm = browser.alarms.clear(
+ name // string
+);
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>name</code>{{optional_inline}}</dt>
+ <dd><code><code>string</code></code>. Le nom de l'alarme à supprimer. Si le paramètre n'est pas fourni, c'est la chaîne vide "" qui sera utilisée.</dd>
+</dl>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une promesse ({{jsxref("Promise")}}) qui sera tenue avec un booléen. Ce booléen vaudra <code>true</code> si l'alarme a bien été effacée et <code>false</code> sinon.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onCleared(wasCleared) {
+ console.log(wasCleared); // true/false
+}
+
+var clearAlarm = browser.alarms.clear("my-periodic-alarm");
+clearAlarm.then(onCleared);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</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.alarms.clear")}}</p>
+
+<p> </p>
+
+<div class="note">&lt;<strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/alarms"><code>chrome.alarms</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/alarms/clearall/index.html b/files/fr/mozilla/add-ons/webextensions/api/alarms/clearall/index.html
new file mode 100644
index 0000000000..f183256ffb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/clearall/index.html
@@ -0,0 +1,57 @@
+---
+title: alarms.clearAll()
+slug: Mozilla/Add-ons/WebExtensions/API/alarms/clearAll
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - alarms
+ - clearAll
+translation_of: Mozilla/Add-ons/WebExtensions/API/alarms/clearAll
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Cette méthode supprime toutes les alarmes actives. C'est une fonction asynchrone qui renvoie une promesse {{jsxref("Promise")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var clearAlarms = browser.alarms.clearAll()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</p>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une promesse ({{jsxref("Promise")}}) qui sera tenue avec une valeur booléenne. Ce dernier vaudra <code>true</code> si certaines alarmes ont bien été effacées et <code>false</code> sinon. On notera que Chrome renvoie toujours <code>true</code>.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onClearedAll(wasCleared) {
+ console.log(wasCleared); // true/false
+}
+
+var clearAlarms = browser.alarms.clearAll();
+clearAlarms.then(onClearedAll);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</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.alarms.clearAll")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/alarms"><code>chrome.alarms</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/alarms/create/index.html b/files/fr/mozilla/add-ons/webextensions/api/alarms/create/index.html
new file mode 100644
index 0000000000..97b8a189af
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/create/index.html
@@ -0,0 +1,105 @@
+---
+title: alarms.create()
+slug: Mozilla/Add-ons/WebExtensions/API/alarms/create
+tags:
+ - API
+ - Add-ons
+ - Créations
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - alarms
+translation_of: Mozilla/Add-ons/WebExtensions/API/alarms/create
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Cette méthode permet de créer une nouvelle alarme pour la session de navigation en cours. Une alarme peut se déclencher une ou plusieurs fois. Une alarme est effacée après qu'elle se soit déclenchée pour la dernière fois.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="brush: js">browser.alarms.create(
+ name, // une valeur string optionnelle
+ alarmInfo // une valeur object optionnelle
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>name</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Le nom utilisé pour l'alarme. Par défaut, la chaîne utilisée sera la chaîne vide.</dd>
+ <dd>Cette valeur pourra être utilisée pour indiquer une alarme donnée avec les méthodes {{WebExtAPIRef('alarms.get()')}} et {{WebExtAPIRef('alarms.clear()')}}. Il sera également disponible pour {{WebExtAPIRef('alarms.onAlarm')}} sous la forme de la propriété <code>name</code> de l'objet {{WebExtAPIRef('alarms.Alarm')}} passé au gestionnaire d'évènement.</dd>
+ <dd>Pour une extension donnée, les noms d'alarmes sont toujours uniques (dans le cadre d'une seule extension). Si le nom donné ici correspond à une alarme existante pour cette extension, l'alarme existante sera supprimée et ne se déclenchera pas.</dd>
+ <dt><code>alarmInfo</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet de configuration qui indique le moment du premier déclenchement comme valeur absolue (<code>when</code>) ou relative (<code>delayInMinutes</code>). Pour que l'alarme se repète, on utilisera le champ <code>periodInMinutes</code>.</p>
+
+ <p>Sur Chrome, à moins que l'extension ne soit chargée, les alarmes créées ne sont pas autorisées à se déclencher plus d'une fois par minute. Si une extension tente de définir <code>delayInMinutes</code> avec une valeur strictement inférieure à 1 ou avec une valeur strictement inférieure à 1 dans le futur, l'alarme se déclenchera 1 minute après ce délai. Si une extension essaie de définir <code>periodInMinutes</code> avec une valeur strictement inférieure à 1, l'alarme se déclenchera alors chaque minute.</p>
+
+ <p>L'objet <code>alarmInfo</code> peut contenir les propriétés suivantes :</p>
+ </dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>when</code>{{optional_inline}}</dt>
+ <dd><code>double</code>. Le moment où l'alarme se déclenchera en premier. L'instant est indiquée comme une valeur absolue, exprimée en <a href="https://fr.wikipedia.org/wiki/Heure_Unix">millisecondes depuis epoch</a>. Pour obtenir le nombre de millisecondes entre l'époque et l'heure actuelle, on pourra utiliser {{jsxref("Date.now")}}. Si cette valeur est utilisée, il ne faut pas fournir <code>delayInMinutes</code>.</dd>
+ <dt><code>delayInMinutes</code>{{optional_inline}}</dt>
+ <dd><code>double</code>. Le moment où l'alarme se déclenchera en premier exprimée de façon relative au moment où l'alarme est créée. Si cette option est utilisée, il ne faut pas fournir <code>when</code>.</dd>
+ <dt><code>periodInMinutes</code>{{optional_inline}}</dt>
+ <dd><code>double</code>. Si cette valeur est indiquée, l'alarme sera répétée périodiquement (toutes les <code>periodInMinutes</code> minutes) après le premier déclenchement. Si cette valeur est indiquée, il n'est pas obligatoire de fournir <code>when</code> ou <code>delayInMinutes</code> : l'alarme se déclenchera au bout de <code>periodInMinutes</code>. Si <code>periodInMinutes</code> n'est pas indiquée, l'alarme ne se déclenchera qu'une seule fois.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<h3 id="Alarme_vide">Alarme vide</h3>
+
+<pre class="brush: js">const delayInMinutes = 5;
+
+<span class="pl-smi">browser</span>.<span class="pl-smi">alarms</span>.<span class="pl-en">create</span>({
+ delayInMinutes
+});</pre>
+
+<h3 id="Alarme_relative_périodique">Alarme relative périodique</h3>
+
+<pre class="brush: js">const delayInMinutes = 5;
+const periodInMinutes = 2;
+
+browser.alarms.create("my-periodic-alarm", {
+ delayInMinutes,
+ periodInMinutes
+});</pre>
+
+<h3 id="Alarme_périodique_absolue">Alarme périodique absolue</h3>
+
+<pre class="brush: js">const when = 1545696000;
+const periodInMinutes = 2;
+
+browser.alarms.create("my-periodic-alarm", {
+ when,
+ periodInMinutes
+});</pre>
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </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.alarms.create")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/alarms"><code>chrome.alarms</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/alarms/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/alarms/get/index.html
new file mode 100644
index 0000000000..95b27d40b2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/get/index.html
@@ -0,0 +1,62 @@
+---
+title: alarms.get()
+slug: Mozilla/Add-ons/WebExtensions/API/alarms/get
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - alarms
+ - get
+translation_of: Mozilla/Add-ons/WebExtensions/API/alarms/get
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Cette méthode permet d'obtenir une alarme en fonction de son nom. Cette fonction est une fonction asynchrone qui renvoie une promesse ({{jsxref("Promise")}}).</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var getAlarm = browser.alarms.get(
+ name // optional string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>name</code>{{optional_inline}}</dt>
+ <dd><code><code>string</code></code>. Le nom de l'alarme qu'on souhaite récupérer. La valeur par défaut, utilisée si aucun argument n'est fournie, sera la chaîne vide (<code>""</code>).</dd>
+</dl>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une promesse ({{jsxref("Promise")}}) qui sera tenue avec un objet {{WebExtAPIRef('alarms.Alarm', "Alarm")}}. Cette valeur correspond à l'alarme dont le nom correspond au paramètre <code>name</code>. Si aucune alarme ne correspond, la valeur renvoyée sera <code>undefined</code>.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function gotAlarm(alarm) {
+ if (alarm) {
+ console.log(alarm.name);
+ }
+}
+
+var getAlarm = browser.alarms.get("my-periodic-alarm");
+getAlarm.then(gotAlarm);</pre>
+
+<p>{{WebExtExamples}}</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.alarms.get")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/alarms"><code>chrome.alarms</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/alarms/getall/index.html b/files/fr/mozilla/add-ons/webextensions/api/alarms/getall/index.html
new file mode 100644
index 0000000000..eef00b26c2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/getall/index.html
@@ -0,0 +1,63 @@
+---
+title: alarms.getAll()
+slug: Mozilla/Add-ons/WebExtensions/API/alarms/getAll
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - alarms
+ - getAll
+translation_of: Mozilla/Add-ons/WebExtensions/API/alarms/getAll
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Obtient toutes les alarmes actives pour le poste.</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 getAlarms = browser.alarms.getAll()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun</p>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> dont la valeur de résolution sera un tableau d'objets <code><a href="/fr/Add-ons/WebExtensions/API/alarms/Alarm" title="Information about a single alarm. This object is returned from alarms.get() and alarms.getAll(), and is passed into the alarms.onAlarm listener."><code>Alarm</code></a></code>. Chaque élément de ce tableau représente une alarme active de l'extension. Si aucune alarme n'est active, le tableau sera vide.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function gotAll(alarms) {
+ for (var alarm of alarms) {
+ console.log(alarm.name);
+ }
+}
+
+var getAlarms = browser.alarms.getAll();
+getAlarms.then(gotAll);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</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.alarms.getAll")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/alarms"><code>chrome.alarms</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/alarms/index.html b/files/fr/mozilla/add-ons/webextensions/api/alarms/index.html
new file mode 100644
index 0000000000..bb5388ccaa
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/index.html
@@ -0,0 +1,60 @@
+---
+title: alarms
+slug: Mozilla/Add-ons/WebExtensions/API/alarms
+tags:
+ - API
+ - Besoins Privilèges
+ - Extensions
+ - Interface
+ - Reference
+ - WebExtensions
+ - alarms
+translation_of: Mozilla/Add-ons/WebExtensions/API/alarms
+---
+<div>{{AddonSidebar}}</div>
+
+<p><span class="seoSummary">Programmer le code pour qu'il soit exécuté à un moment précis dans le futur.</span> C'est comme <code><a href="/fr/docs/Web/API/WindowTimers/setTimeout">setTimeout()</a></code> and <code><a href="/fr/docs/Web/API/WindowTimers/setInterval">setInterval()</a></code> sauf que ces fonctions ne fonctionnent pas avec les pages d'arrière-plan qui sont chargées à la demande. Les alarmes ne persistent pas d'une session à l'autre du navigateur</p>
+
+<p>Pour pouvoir utiliser cette API, vous devez disposer de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"alarms"</code>.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("alarms.Alarm")}}</dt>
+ <dd>Ce type permet d'obtenir des informations à propos d'une alarme donnée.</dd>
+</dl>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("alarms.create()")}}</dt>
+ <dd>Cette fonction permet de créer une nouvelle alarme.</dd>
+ <dt>{{WebExtAPIRef("alarms.get()")}}</dt>
+ <dd>Cette fonction permet de récupérer une alarme donnée en fonction de son nom.</dd>
+ <dt>{{WebExtAPIRef("alarms.getAll()")}}</dt>
+ <dd>Cette fonction permet de récupérer l'ensemble des alarmes qui sont planifiées.</dd>
+ <dt>{{WebExtAPIRef("alarms.clear()")}}</dt>
+ <dd>Cette fonction permet de supprimer une alarme donnée en fonction de son nom.</dd>
+ <dt>{{WebExtAPIRef("alarms.clearAll()")}}</dt>
+ <dd>Cette fonction permet de supprimer l'ensemble des alarmes qui sont planifiées.</dd>
+</dl>
+
+<h2 id="Évènements">Évènements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("alarms.onAlarm")}}</dt>
+ <dd>Cet évènement est déclenché lorsque l'alarme s'éteint.</dd>
+</dl>
+
+<p>{{WebExtExamples("h2")}}</p>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<p>{{Compat("webextensions.api.alarms")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/alarms"><code>chrome.alarms</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/alarms/onalarm/index.html b/files/fr/mozilla/add-ons/webextensions/api/alarms/onalarm/index.html
new file mode 100644
index 0000000000..654714b328
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/onalarm/index.html
@@ -0,0 +1,88 @@
+---
+title: alarms.onAlarm
+slug: Mozilla/Add-ons/WebExtensions/API/alarms/onAlarm
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - alarms
+ - onAlarm
+translation_of: Mozilla/Add-ons/WebExtensions/API/alarms/onAlarm
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Cet évènement est déclenché lorsque l'alarme se déclenche.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.alarms.onAlarm.addListener(listener)
+browser.alarms.onAlarm.removeListener(listener)
+browser.alarms.onAlarm.hasListener(listener)
+</pre>
+
+<p>Cet évènement possède trois méthodes :</p>
+
+<dl>
+ <dt><code>addListener(listener)</code></dt>
+ <dd>Cette méthode ajoute un gestionnaire à l'évènement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Cette méthode retire le gestionnaire d'évènement passé en argument.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Cette méthode permet de vérifier si le gestionnaire d'évènement passé en argument est enregistré : elle renvoie <code>true</code> s'il est déjà présent et <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>listener</code></dt>
+ <dd>
+ <p>La fonction qui sera appelée lorsque l'événement se produira. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>alarm</code></dt>
+ <dd>{{WebExtAPIRef('alarms.Alarm')}}. L'alarme qui s'est déclenchée. La propriété <code>Alarm.name</code> pourra être utilisée afin de déterminer l'alarme qui s'est déclenchée.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Voici un exemple illustrant ce qui se produit quand l'alarme se déclenche</p>
+
+<pre class="brush: js">function handleAlarm(alarmInfo) {
+  console.log("L'alarme " + alarmInfo.name + " s'est déclenchée");
+}
+
+browser.alarms.onAlarm.addListener(handleAlarm);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</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.alarms.onAlarm")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/alarms"><code>chrome.alarms</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/bookmarks/bookmarktreenode/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenode/index.html
new file mode 100644
index 0000000000..9b38ea5811
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenode/index.html
@@ -0,0 +1,91 @@
+---
+title: bookmarks.BookmarkTreeNode
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNode
+tags:
+ - API
+ - Add-ons
+ - BookmarkTreeNode
+ - Bookmarks
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNode
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet de type <code>bookmarks.BookmarkTreeNode</code> représente un nœud dans l'arborescence de signets, où chaque nœud est un signet, un dossier de signet ou un séparateur. Les noeuds enfants sont classés par <code>index</code> dans leurs dossiers parents respectifs.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Un {{jsxref("object")}} avec les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>children</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("array")}} d'objets {{WebExtAPIRef('bookmarks.BookmarkTreeNode')}} qui représentent les enfants du noeud. La liste est classée dans la liste dans laquelle les enfants apparaissent dans l'interface utilisateur. Ce champ est omis si le noeud n'est pas un dossier.</dd>
+ <dt><code>dateAdded</code> {{optional_inline}}</dt>
+ <dd>Un nombre représentant la date de création du noeud en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>dateGroupModified</code> {{optional_inline}}</dt>
+ <dd>Un nombre représentant la date et l'heure de la dernière modification du contenu de ce dossier, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>id</code></dt>
+ <dd>Un {{jsxref("string")}} qui identifie le nœud de manière unique. Chaque ID est unique dans le profil de l'utilisateur et reste inchangé dans les redémarrages du navigateur.</dd>
+ <dt><code>index</code> {{optional_inline}}</dt>
+ <dd>Un nombre qui représente la position zéro de ce noeud dans son dossier parent, où zéro représente la première entrée.</dd>
+ <dt><code>parentId</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} qui spécifie l'ID du dossier parent. Cette propriété n'est pas présente dans le noeud racine.</dd>
+ <dt><code>title</code></dt>
+ <dd>Un {{jsxref("string")}} qui contient le texte affiché pour le nœud dans les menus et les listes de signets.</dd>
+ <dt><code>type</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef("bookmarks.BookmarkTreeNodeType")}} indiquant s'il s'agit d'un signet, d'un dossier ou d'un séparateur. La valeur par défaut est <code>"bookmark"</code> sauf si l'<code>url</code> est omise, auquel cas elle est par défaut <code>"folder"</code>.</dd>
+ <dt><code>unmodifiable</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} comme décrit par le type  {{WebExtAPIRef('bookmarks.BookmarkTreeNodeUnmodifiable')}}. Représente la raison pour laquelle le noeud ne peut pas être modifié. Si le nœud peut être changé, ceci est omis.</dd>
+ <dt><code>url</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} qui représente l'URL du signet. Si le nœud représente un dossier, cette propriété est omise.</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.bookmarks.BookmarkTreeNode", 10)}}</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/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.html
new file mode 100644
index 0000000000..1d5c34917f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.html
@@ -0,0 +1,35 @@
+---
+title: bookmarks.BookmarkTreeNodeType
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNodeType
+tags:
+ - API
+ - Add-ons
+ - BookmarkTreeNodeType
+ - Bookmarks
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNodeType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <strong><code>bookmarks.BookmarkTreeNodeType</code></strong> est utilisé pour décrire si un nœud de l'arborescence de signets est un signet, un dossier ou un séparateur.</p>
+
+<h2 id="Type">Type</h2>
+
+<p><code>bookmarks.BookmarkTreeNodeType</code> est un {{jsxref("string")}}qui peut avoir l'une des trois valeurs suivantes :</p>
+
+<ul>
+ <li><code>"bookmark"</code>: le noeud est un signet.</li>
+ <li><code>"folder"</code>: le noeud est un dossier.</li>
+ <li><code>"separator"</code>: le noeud est un séparateur.</li>
+</ul>
+
+<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.bookmarks.BookmarkTreeNodeType", 10)}}</p>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.html
new file mode 100644
index 0000000000..4fcd153861
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.html
@@ -0,0 +1,68 @@
+---
+title: bookmarks.BookmarkTreeNodeUnmodifiable
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNodeUnmodifiable
+tags:
+ - API
+ - Add-ons
+ - BookmarkTreeNodeUnmodifiable
+ - Bookmarks
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNodeUnmodifiable
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un type <strong><code>bookmarks.BookmarkTreeNodeUnmodifiable</code></strong> est utilisé pour indiquer la raison pour laquelle un nœud de l'arborescence de signets (où chaque nœud est un signet ou un dossier de signets) ne peut pas être modifié. Ceci est utilisé comme valeur du champ {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "bookmarks.BookmarkTreeNode.unmodifiable", "unmodifiable")}} sur les nœuds de signets.</p>
+
+<h2 id="Type">Type</h2>
+
+<p><code>bookmarks.BookmarkTreeNodeUnmodifiable</code> est un {{jsxref("string")}} qui ne peut actuellement avoir qu'une seule valeur : <code>"managed"</code>. Cela indique que le nœud de signet a été configuré par un administrateur ou par le dépositaire d'un utilisateur supervisé (tel qu'un parent, dans le cas des contrôles parentaux).</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.bookmarks.BookmarkTreeNodeUnmodifiable")}}</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/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.html
new file mode 100644
index 0000000000..d48d6b124b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.html
@@ -0,0 +1,103 @@
+---
+title: bookmarks.create()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/create
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Create
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/create
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Crée un signet ou un dossier en tant qu'enfant de {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} avec  <code>parentId</code> spécifié. Pour créer un dossier, omettez ou laissez vide le paramètre  {{WebExtAPIRef("bookmarks.CreateDetails", "CreateDetails", "url")}}.</p>
+
+<div class="blockIndicator warning">
+<p>Si votre extension tente de créer un nouveau signet dans le nœud racine de l'arborescence du signet, une erreur est générée: "<em>La racine du signet ne peut pas être modifiée</em>" et le signet ne sera pas créé.</p>
+</div>
+
+<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 createBookmark = browser.bookmarks.create(
+ bookmark // CreateDetails object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>bookmark</code></dt>
+ <dd>Un objet {{WebExtAPIRef("bookmarks.CreateDetails")}}.</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 {{WebExtAPIRef('bookmarks.BookmarkTreeNode', 'BookmarkTreeNode')}} qui décrit le nouveau noeud de marque pages.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple crée un signet pour cette page, en le plaçant dans le dossier par défaut ("Autres signets" dans Firefox et Chrome).</p>
+
+<pre class="brush: js">function onCreated(node) {
+ console.log(node);
+}
+
+var createBookmark = browser.bookmarks.create({
+  title: "bookmarks.create() on MDN",
+  url: "https://developer.mozilla.org/Add-ons/WebExtensions/API/bookmarks/create"
+});
+
+createBookmark.then(onCreated);</pre>
+
+<p>{{WebExtExamples}}</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.bookmarks.create")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.html
new file mode 100644
index 0000000000..96103113b2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.html
@@ -0,0 +1,81 @@
+---
+title: bookmarks.CreateDetails
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/CreateDetails
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - CreateDetails
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/CreateDetails
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>CreateDetails</code> est utilisé pour décrire les propriétés d'un nouveau, d'un signet, d'un dossier de signets ou d'un séparateur lors de l'appel de la méthode {{WebExtAPIRef("bookmarks.create()")}}.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Un {{jsxref("object")}} contenant une combinaison des champs suivants :</p>
+
+<dl class="reference-values">
+ <dt><code>index</code> {{optional_inline}}</dt>
+ <dd>Un entier {{jsxref("Number")}} qui spécifie la position à laquelle placer le nouveau signet sous son parent. Une valeur de 0 le placera en haut de la liste.</dd>
+ <dt><code>parentId</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} qui indique l'ID du dossier parent dans lequel placer le nouveau signet ou dossier de signets. Sur Chrome et Firefox, la valeur par défaut est le dossier "Autres signets" du menu Signets.</dd>
+ <dt><code>title</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} qui spécifie le titre du signet ou le nom du dossier à créer. Si ce n'est pas spécifié, le titre est <code>""</code>.</dd>
+ <dt><code>type</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef("bookmarks.BookmarkTreeNodeType")}}indiquant s'il s'agit d'un signet, d'un dossier ou d'un séparateur. La valeur par défaut est <code>"bookmark"</code> sauf si l'<code>url</code> est omise, auquel cas elle est par défaut <code>"folder"</code>.</dd>
+ <dt><code>url</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Un {{jsxref("string")}} qui spécifie l'URL de la page à mettre en signet. Si ceci est omis ou est <code>null</code>, un dossier est créé à la place d'un signet.</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.bookmarks.CreateDetails", 10)}}</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/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.html
new file mode 100644
index 0000000000..b807af5126
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.html
@@ -0,0 +1,99 @@
+---
+title: bookmarks.get()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/get
+tags:
+ - API
+ - Add-ons
+ - Bookmraks
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - get
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/get
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Étant donné l'ID d'un {{WebExtAPIRef("bookmarks.BookmarkTreeNode")}} ou d'un tableau de ces ID, la méthode <strong><code>bookmarks.get()</code></strong> récupère les nœuds correspondants.</p>
+
+<p>C'est une fonction asynchrone qui renvoie une {{jsxref("promise")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var getBookmarks = browser.bookmarks.get(
+ idOrIdList // string or string array
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>idOrIdList</code></dt>
+ <dd><code><code>string</code></code> Une {{jsxref("string")}} ou un {{jsxref("array")}} de chaînes spécifiant les ID d'un ou plusieurs objets {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} à récupérer.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une {{jsxref("promise")}} qui sera remplie avec un tableau de {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}}, un pour chaque nœud correspondant. Les séparateurs ne sont pas inclus dans les résultats. Si aucun noeud n'a pu être trouvé, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple essaie d'obtenir le signet dont l'ID est <code>bookmarkAAAA</code>. Si aucun signet avec cet ID n'existe, <code>onRejected</code> est appelé :</p>
+
+<pre class="brush: js">function onFulfilled(bookmarks) {
+ console.log(bookmarks);
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+var gettingBookmarks = browser.bookmarks.get("bookmarkAAAA");
+gettingBookmarks.then(onFulfilled, onRejected);</pre>
+
+<p>{{WebExtExamples}}</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.bookmarks.get")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.html
new file mode 100644
index 0000000000..c02e5b07a3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.html
@@ -0,0 +1,105 @@
+---
+title: bookmarks.getChildren()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/getChildren
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getChildren
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/getChildren
+---
+<div>{{AddonSidebar()}}</div>
+
+<p><strong><code>bookmarks.getChildren()</code></strong> récupère tous les enfants immédiats d'un dossier de signets donné, identifié comme {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} ID.</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 gettingChildren = browser.bookmarks.getChildren(
+ id // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd>Un {{jsxref("string")}} qui spécifie l'ID du dossier dont les enfants doivent être récupérés.</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 tableau d'objets <a href="/fr/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNode" title="An object of type bookmarks.BookmarkTreeNode represents a node in the bookmark tree, where each node is a bookmark or bookmark folder. Child nodes are ordered by an index within their respective parent folders."><code>BookmarkTreeNode</code></a>. Chaque entrée représente un seul noeud enfant. La liste est triée dans le même ordre dans lequel les signets apparaissent dans l'interface utilisateur. Les séparateurs ne sont actuellement pas inclus dans les résultats. La liste inclut les sous-dossiers, mais n'inclut aucun enfant contenu dans les sous-dossiers.</p>
+
+<p>Si le noeud spécifié n'a pas d'enfants, le tableau est vide.Si le noeud identifié par <code>id</code> n'est pas trouvé, la promise est rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onFulfilled(children) {
+ for (child of children) {
+ console.log(child.id);
+ }
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+var gettingChildren = browser.bookmarks.getChildren("unfiled_____");
+gettingChildren.then(onFulfilled, onRejected);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </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.bookmarks.getChildren")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.html
new file mode 100644
index 0000000000..b91d1f7530
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.html
@@ -0,0 +1,105 @@
+---
+title: bookmarks.getRecent()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/getRecent
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getRecent
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/getRecent
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <code>bookmarks.getRecent()</code> récupère un nombre spécifié de signets ajoutés le plus récemment en tant que tableau d'objets {{WebExtAPIRef('bookmarks.BookmarkTreeNode', 'BookmarkTreeNode')}}.</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 gettingRecent = browser.bookmarks.getRecent(
+ numberOfItems // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>numberOfItems</code></dt>
+ <dd>Un nombre représentant le nombre maximum d'éléments à renvoyer. La liste renvoyée contiendra jusqu'à ce nombre des éléments les plus récemment ajoutés. La valeur minimale autorisée ici est 1. Si vous transmettez 0 ou moins, la fonction génère une erreur.</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 tableau d'objets <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNode" title="An object of type bookmarks.BookmarkTreeNode represents a node in the bookmark tree, where each node is a bookmark or bookmark folder. Child nodes are ordered by an index within their respective parent folders."><code>BookmarkTreeNode</code></a>.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p id="Find_the_most_recently_added_bookmark"><span id="result_box" lang="fr"><span>Cet exemple enregistre l'URL du dernier signet ajouté </span></span>:</p>
+
+<pre class="brush: js">function onFulfilled(bookmarks) {
+ for (bookmark of bookmarks) {
+ console.log(bookmark.url);
+ }
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+var gettingRecent = browser.bookmarks.getRecent(1);
+gettingRecent.then(onFulfilled, onRejected);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </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.bookmarks.getRecent")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.html
new file mode 100644
index 0000000000..f7f86a64c1
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.html
@@ -0,0 +1,121 @@
+---
+title: bookmarks.getSubTree()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/getSubTree
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getSubTree
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/getSubTree
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <strong><code>bookmarks.getSubTree()</code></strong> récupère de façon asynchrone un {{WebExtAPIRef("bookmarks.BookmarkTreeNode")}}, étant donné son ID.</p>
+
+<p>Si l'élément est un dossier, vous pouvez accéder à tous ses descendants de manière récursive en utilisant sa propriété <code>children</code> et la propriété <code>children</code> de ses descendants, s'ils sont eux-mêmes des dossiers.</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 gettingSubTree = browser.bookmarks.getSubTree(
+ id // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd>Un {{jsxref("string")}} spécifiant l'ID de la racine du sous-arbre à récupérer.</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 tableau contenant un objet unique, un objet {{WebExtAPIRef('bookmarks.BookmarkTreeNode')}}, représentant l'élément avec l'ID donné.Si un nœud correspondant à <code>id</code> n'a pas pu être trouvé, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple imprime récursivement le sous-arbre sous un noeud donné :</p>
+
+<pre class="brush: js">function makeIndent(indentLength) {
+ return ".".repeat(indentLength);
+}
+
+function logItems(bookmarkItem, indent) {
+ if (bookmarkItem.url) {
+ console.log(makeIndent(indent) + bookmarkItem.url);
+ } else {
+ console.log(makeIndent(indent) + "Folder: " + bookmarkItem.id);
+ indent++;
+ }
+ if (bookmarkItem.children) {
+ for (var child of bookmarkItem.children) {
+ logItems(child, indent);
+ }
+ }
+}
+
+function logSubTree(bookmarkItems) {
+ logItems(bookmarkItems[0], 0);
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+var subTreeID = "root_____";
+
+var gettingSubTree = browser.bookmarks.getSubTree(subTreeID);
+gettingSubTree.then(logSubTree, onRejected);</pre>
+
+<p>{{WebExtExamples}}</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.bookmarks.getSubTree")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.html
new file mode 100644
index 0000000000..5913043085
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.html
@@ -0,0 +1,120 @@
+---
+title: bookmarks.getTree()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/getTree
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getTree
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/getTree
+---
+<div>{{AddonSidebar()}}</div>
+
+<p><strong><code>bookmarks.getTree()</code></strong> renvoie un tableau contenant la racine de l'arborescence des signets en tant qu'objet {{WebExtAPIRef("bookmarks.BookmarkTreeNode")}}.</p>
+
+<p>Vous pouvez accéder à l'intégralité de l'arborescence de manière récursive en utilisant sa propriété <code>children</code> et la propriété <code>children</code> de ses descendants, s'ils sont eux-mêmes des dossiers.</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 gettingTree = browser.bookmarks.getTree()
+</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 remplie avec un tableau contenant un objet, un objet  <a href="/fr/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNode" title="An object of type bookmarks.BookmarkTreeNode represents a node in the bookmark tree, where each node is a bookmark or bookmark folder. Child nodes are ordered by an index within their respective parent folders."><code>bookmarks.BookmarkTreeNode</code></a> le noeud racine.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p><span class="short_text" id="result_box" lang="fr"><span>Cet exemple imprime l'intégralité de l'arborescence des signets :</span></span></p>
+
+<pre class="brush: js">function makeIndent(indentLength) {
+ return ".".repeat(indentLength);
+}
+
+function logItems(bookmarkItem, indent) {
+ if (bookmarkItem.url) {
+ console.log(makeIndent(indent) + bookmarkItem.url);
+ } else {
+ console.log(makeIndent(indent) + "Folder");
+ indent++;
+ }
+ if (bookmarkItem.children) {
+ for (child of bookmarkItem.children) {
+ logItems(child, indent);
+ }
+ }
+ indent--;
+}
+
+function logTree(bookmarkItems) {
+ logItems(bookmarkItems[0], 0);
+}
+
+function onRejected(error) {
+  console.log(`An error: ${error}`);
+}
+
+var gettingTree = browser.bookmarks.getTree();
+gettingTree.then(logTree, onRejected);
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </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.bookmarks.getTree")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.html
new file mode 100644
index 0000000000..9779eaab49
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.html
@@ -0,0 +1,130 @@
+---
+title: bookmarks
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks
+---
+<div>{{AddonSidebar}}</div>
+
+<p>L’API de la <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions">WebExtensions</a> {{WebExtAPIRef("bookmarks")}} permet à une extension d’interagir et de manipuler le système de Bookmarking du navigateur. Vous pouvez l’utiliser pour enregistrer des marque-pages, récupérer des marque-pages existants et éditer, supprimer ou organiser des marque-pages.</p>
+
+<p>Pour utiliser cette API, une extension doit demander la <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> « bookmarks » dans son fichier <code><a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a></code>.</p>
+
+<p>Les extensions ne peuvent pas créer, modifier ou supprimer des signets dans le nœud racine de l'arborescence de signets. Cela provoquerait une erreur avec le message: <em>"La racine du signet ne peut pas être modifiée"</em></p>
+
+<h2 id="Les_Types">Les Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("bookmarks.BookmarkTreeNode")}}</dt>
+ <dd>Représente un marque-page ou un dossier dans l'arborescence des marque-pages.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.BookmarkTreeNodeType")}}</dt>
+ <dd>Un énumérateur {{jsxref("String")}} qui décrit si un nœud de l’arbre est un marque-page, un dossier ou un séparateur.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.BookmarkTreeNodeUnmodifiable")}}</dt>
+ <dd>Un {{jsxref("String")}} énumère ce qui spécifie pourquoi un marque-page ou un dossier n’est pas possible.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.CreateDetails")}}</dt>
+ <dd>Contient des informations passées à la fonction {{WebExtAPIRef("bookmarks.create()")}} lors de la création d’un nouveau marque-page.</dd>
+</dl>
+
+<h2 id="Les_fonctions">Les fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("bookmarks.create()")}}</dt>
+ <dd>Créer un marque-page ou un dossier.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.get()")}}</dt>
+ <dd>Récupère un ou plusieurs {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}}s, compte tenu d’un identifiant de marque-page ou d’un ensemble d’identifiants de marque-pages.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.getChildren()")}}</dt>
+ <dd>Récupère les enfants spécifiés {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}}.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.getRecent()")}}</dt>
+ <dd>Récupère un nombre demandé de marque-page récemment ajoutés.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.getSubTree()")}}</dt>
+ <dd>Récupère un nombre demandé de favoris récemment ajoutés.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.getTree()")}}</dt>
+ <dd>Récupère l’intégralité de l’arborescence des marques pages dans un tableau d’objets  {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}}.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.move()")}}</dt>
+ <dd>Déplace le {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} vers un nouvel emplacement dans l’arborescence de marque-pages.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.remove()")}}</dt>
+ <dd>Supprime un marque page ou un dossier de marque-pages vide, en fonction de l’ID du noeud.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.removeTree()")}}</dt>
+ <dd>Supprime de manière récursive un dossier de marque-pages ; c’est-à-dire, étant donné l’ID d’un noeud de dossier, supprime ce noeud et tous ses descendants.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.search()")}}</dt>
+ <dd>Recherche {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} une correspondant à un ensemble de critères spécifié.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.update()")}}</dt>
+ <dd>Met à jour le titre et/ou l’URL d’un marque-page, ou un nom de dossier de marque-pages, en fonction de l’ID d’un marque-page.</dd>
+</dl>
+
+<h2 id="Events">Events</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("bookmarks.onCreated")}}</dt>
+ <dd>Déclenché lorsqu’un marque-page ou un dossier est créé.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.onRemoved")}}</dt>
+ <dd>Déclenché lorsqu’un marque-page ou un dossier est supprimé. Lorsqu’un dossier est supprimé de manière récursive, une seule notification est envoyée pour le dossier et aucune pour son contenu.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.onChanged")}}</dt>
+ <dd>Déclenché lorsqu’un marque-page ou un dossier change. Actuellement, seuls les changements de titre et d’URL déclenchent ce type d’événement.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.onMoved")}}</dt>
+ <dd>Déclenché lorsqu’un marque-page ou un dossier est déplacé vers un dossier parent différent ou vers un nouveau décalage dans son dossier.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.onChildrenReordered")}}</dt>
+ <dd>Déclenché lorsque l’utilisateur a trié les enfants d’un dossier dans l’interface utilisateur du navigateur. Ceci n’est pas déclenché par un appel {{WebExtAPIRef("bookmarks.move", "move()")}}.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.onImportBegan")}}</dt>
+ <dd>Déclenché lorsqu’une session d’importation de marque-pages est commencée. Les observateurs coûteux doivent ignorer les {{WebExtAPIRef("bookmarks.onCreated")}} mises à jour jusqu’à ce que {{WebExtAPIRef("bookmarks.onImportEnded")}} soit déclenché. Les observateurs doivent toujours gérer d’autres notifications immédiatement.</dd>
+ <dt>{{WebExtAPIRef("bookmarks.onImportEnded")}}</dt>
+ <dd>Déclenché lorsqu’une session d’importation de marque-pages est terminée.</dd>
+</dl>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<p>{{Compat("webextensions.api.bookmarks")}}</p>
+
+<div class="hidden note">
+<p>The "Chrome incompatibilities" section is included from <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities"> https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a> using the <a href="/en-US/docs/Template:WebExtChromeCompat">WebExtChromeCompat</a> macro.</p>
+
+<p>If you need to update this content, edit <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities">https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a>, then shift-refresh this page to see your changes.</p>
+</div>
+
+<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/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.html
new file mode 100644
index 0000000000..62e1f22e0b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.html
@@ -0,0 +1,120 @@
+---
+title: bookmarks.move()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/move
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - move
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/move
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <strong><code>bookmarks.move()</code></strong> déplace le  {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} à la destination spécifiée dans l'arborescence des signets. Cela vous permet de déplacer un signet vers un nouveau dossier et / ou une position dans le dossier.</p>
+
+<div class="blockIndicator warning">
+<p>Si votre extension tente de déplacer un signet dans le nœud racine de l’arborescence de signets, l’appel déclenche une erreur avec le message suivant: "<em>La racine du signet ne peut pas être modifiée</em>" et le déplacement ne sera pas terminé.</p>
+</div>
+
+<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 movingBookmark = browser.bookmarks.move(
+ id, // string
+ destination // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres :</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd>Un {{jsxref("string")}} contenant l'ID du signet ou du dossier à déplacer.</dd>
+ <dt><code>destination</code></dt>
+ <dd>Un {{jsxref("object")}} qui spécifie la destination du signet. Cet objet doit contenir un ou les deux champs suivants :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>parentId</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} qui spécifie l'ID du dossier de destination. Si cette valeur est omise, le signet est déplacé vers un nouvel emplacement dans son dossier actuel.</dd>
+ <dt><code>index</code> {{optional_inline}}</dt>
+ <dd>Un index basé sur 0 spécifiant la position dans le dossier vers lequel déplacer le signet. La valeur 0 déplace le signet vers le haut du dossier. Si cette valeur est omise, le signet est placé à la fin du nouveau dossier parent..</dd>
+ </dl>
+ </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 seul objet <a href="/fr/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNode" title="An object of type bookmarks.BookmarkTreeNode represents a node in the bookmark tree, where each node is a bookmark or bookmark folder. Child nodes are ordered by an index within their respective parent folders."><code>bookmarks.BookmarkTreeNode</code></a>  décrivant le noeud déplacé.Si le noeud correspondant au paramètre <code>id</code> ne peut pas être trouvé, la promesse est rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple déplace un signet afin qu'il soit le premier signet dans son dossier actuel.</p>
+
+<pre class="brush: js">function onMoved(bookmarkItem) {
+ console.log(bookmarkItem.index);
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+var bookmarkId = "abcdefghilkl";
+
+var movingBookmark = browser.bookmarks.move(bookmarkId, {index: 0});
+movingBookmark.then(onMoved, onRejected);</pre>
+
+<p>{{WebExtExamples}}</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.bookmarks.move")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.html
new file mode 100644
index 0000000000..6697cf801e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.html
@@ -0,0 +1,138 @@
+---
+title: bookmarks.onChanged
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/onChanged
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onChanged
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/onChanged
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Mise en place quand il y a un changement à :</p>
+
+<ul>
+ <li>le titre ou l'URL d'un signet</li>
+ <li>le nom d'un dossier.</li>
+</ul>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.bookmarks.onChanged.addListener(listener)
+browser.bookmarks.onChanged.removeListener(listener)
+browser.bookmarks.onChanged.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>id</code></dt>
+ <dd><code>string</code>. ID de l'article qui a changé.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>changeInfo</code></dt>
+ <dd><a href="#changeInfo"><code>object</code></a>. Objet contenant deux propriétés : <code>title</code>, une chaîne contenant le titre de l'élément et <code>url</code>, une chaîne contenant l'URL de l'élément. Si l'élément est un dossier, l'<code>url</code> est omise.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<div class="blockIndicator note">
+<p>Plusieurs événements peuvent se produire lorsqu'un signet change, et cet objet changeInfo peut contenir uniquement les données qui ont changé, plutôt que toutes les données du signet. En d'autres termes, si l'<code>url</code> d'un signet change, le changeInfo ne peut contenir que les nouvelles informations de l'<code>url</code>.</p>
+</div>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleChanged(id, changeInfo) {
+ console.log("Item: " + id + " changed");
+ console.log("Title: " + changeInfo.title);
+ console.log("Url: " + changeInfo.url);
+}
+
+function handleClick() {
+ browser.bookmarks.onChanged.addListener(handleChanged);
+}
+
+browser.browserAction.onClicked.addListener(handleClick);
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </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.bookmarks.onChanged")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.html
new file mode 100644
index 0000000000..4664c9ef60
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.html
@@ -0,0 +1,126 @@
+---
+title: bookmarks.onChildrenReordered
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/onChildrenReordered
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onChildrenReordered
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/onChildrenReordered
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque les enfants d'un dossier ont changé leur commande en raison de la commande triée dans l'interface utilisateur. Cela n'est pas appelé à la suite d'un appel à  {{WebExtAPIRef("bookmarks.move()")}} ou une opération glisser dans l'interface utilisateur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.bookmarks.onChildrenReordered.addListener(listener)
+browser.bookmarks.onChildrenReordered.removeListener(listener)
+browser.bookmarks.onChildrenReordered.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="Synatxe_addListener">Synatxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>callback</code></dt>
+ <dd>
+ <p>Fonction qui sera très semblable à cet événement. La fonction suivante les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>id</code></dt>
+ <dd><code>string</code>. ID du dossier dont les enfants ont été réorganisés.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>reorderInfo</code></dt>
+ <dd><a href="#reorderInfo"><code>object</code></a>. Objet contenant des objets supplémentaires.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="reorderInfo">reorderInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>childIds</code></dt>
+ <dd><code>array</code> de <code><code>string</code></code>. Tableau contenant les ID de tous les éléments de signets de ce dossier, dans l'ordre où ils apparaissent maintenant dans l'interface utilisateur.</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.bookmarks.onChildrenReordered")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleChildrenReordered(id, reorderInfo) {
+ console.log("Item: " + id + " children reordered");
+ console.log("Children: " + reorderInfo.childIds);
+}
+
+function handleClick() {
+ browser.bookmarks.onChildrenReordered.addListener(handleChildrenReordered);
+}
+
+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/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.html
new file mode 100644
index 0000000000..c893980e4e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.html
@@ -0,0 +1,123 @@
+---
+title: bookmarks.onCreated
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/onCreated
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onCreated
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/onCreated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un élément de signet (un signet ou un dossier) est créé.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.bookmarks.onCreated.addListener()
+browser.bookmarks.onCreated.removeListener(listener)
+browser.bookmarks.onCreated.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>id</code></dt>
+ <dd><code>string</code>. L'ID du nouvel élément de favori.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>bookmark</code></dt>
+ <dd>{{WebExtAPIRef('bookmarks.BookmarkTreeNode')}}. Informations sur le nouvel élément de favori.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleCreated(id, bookmarkInfo) {
+ console.log(`New bookmark ID: ${id}`);
+ console.log(`New bookmark URL: ${bookmarkInfo.url}`);
+}
+
+browser.bookmarks.onCreated.addListener(handleCreated);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </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><span class="diff_add">{{Compat("webextensions.api.bookmarks.onCreated")}}</span></p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.html
new file mode 100644
index 0000000000..d8b8ef851f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.html
@@ -0,0 +1,113 @@
+---
+title: bookmarks.onImportBegan
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/onImportBegan
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onImportBegan
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/onImportBegan
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque le navigateur a commencé à importer un ensemble de signet.</p>
+
+<p>Pendant l'importation d'un ensemble de signets, {{WebExtAPIRef("bookmarks.onCreated", "onCreated")}} peut déclencher plusieurs fois. Si votre extension écoute <code>onCreated</code>, et que l'écouteur est cher, vous devez également écouter <code>onImportBegan</code> et {{WebExtAPIRef("bookmarks.onImportEnded", "onImportEnded")}}. Lorsque vous recevez <code>onImportBegan</code>, ignorez <code>onCreated</code> jusqu'à ce que vous receviez <code>onImportEnded</code>. Vous pouvez gérer toutes les autres notifications comme d'habitude.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.bookmarks.onImportBegan.addListener(listener)
+browser.bookmarks.onImportBegan.removeListener(listener)
+browser.bookmarks.onImportBegan.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="Parameters">Parameters</h3>
+
+<dl>
+ <dt><code>callback</code></dt>
+ <dd>
+ <p>Fonction qui sera appelée lorsque cet événement se produit. Il n'y a pas de paramètres.</p>
+ </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><span class="diff_add">{{Compat("webextensions.api.bookmarks.onImportBegan")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleImportBegan() {
+ console.log("Importing...");
+}
+
+function handleImportEnded() {
+ console.log("...finished.");
+}
+
+function handleClick() {
+ browser.bookmarks.onImportBegan.addListener(handleImportBegan);
+ browser.bookmarks.onImportEnded.addListener(handleImportEnded);
+}
+
+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/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.html
new file mode 100644
index 0000000000..534e2c9ef4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.html
@@ -0,0 +1,113 @@
+---
+title: bookmarks.onImportEnded
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/onImportEnded
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onImportEnded
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/onImportEnded
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque le navigateur a fini d'importer un ensemble de signets.</p>
+
+<p>Voir {{WebExtAPIRef("bookmarks.onImportBegan")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.bookmarks.onImportEnded.addListener(listener)
+browser.bookmarks.onImportEnded.removeListener(listener)
+browser.bookmarks.onImportEnded.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. Il n'a pas passé de paramètres.</p>
+ </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><span class="diff_add">{{Compat("webextensions.api.bookmarks.onImportEnded")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleImportBegan() {
+ console.log("Importing...");
+}
+
+function handleImportEnded() {
+ console.log("...finished.");
+}
+
+function handleClick() {
+ browser.bookmarks.onImportBegan.addListener(handleImportBegan);
+ browser.bookmarks.onImportEnded.addListener(handleImportEnded);
+}
+
+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/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.html
new file mode 100644
index 0000000000..b8ff60940c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.html
@@ -0,0 +1,135 @@
+---
+title: bookmarks.onMoved
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/onMoved
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onMoved
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/onMoved
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un signet ou un dossier est déplacé vers un autre dossier parent et / ou position dans un dossier.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.bookmarks.onMoved.addListener(listener)
+browser.bookmarks.onMoved.removeListener(listener)
+browser.bookmarks.onMoved.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="Parameters">Parameters</h3>
+
+<dl>
+ <dt><code>callback</code></dt>
+ <dd>
+ <p>Function that will be called when this event occurs. The function will be passed the following arguments:</p>
+
+ <dl class="reference-values">
+ <dt><code>id</code></dt>
+ <dd><code>string</code>. ID of the item that was moved.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>moveInfo</code></dt>
+ <dd><a href="#moveInfo"><code>object</code></a>. Object containing more details about the move.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="moveInfo">moveInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>parentId</code></dt>
+ <dd><code>string</code>. Le nouveau dossier parent.</dd>
+ <dt><code>index</code></dt>
+ <dd><code>integer</code>. Le nouvel index de cet élément dans son parent.</dd>
+ <dt><code>oldParentId</code></dt>
+ <dd><code>string</code>. L'ancien dossier parent.</dd>
+ <dt><code>oldIndex</code></dt>
+ <dd><code>integer</code>. L'ancien index de l'élément dans son parent.</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><span class="diff_add">{{Compat("webextensions.api.bookmarks.onMoved")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleMoved(id, moveInfo) {
+ console.log("Item: " + id + " moved");
+ console.log("Old index: " + moveInfo.oldIndex);
+ console.log("New index: " + moveInfo.index);
+ console.log("Old folder: " + moveInfo.oldParentId);
+ console.log("New folder: " + moveInfo.parentId);
+}
+
+function handleClick() {
+ browser.bookmarks.onMoved.addListener(handleMoved);
+}
+
+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/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.html
new file mode 100644
index 0000000000..0f09e6369e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.html
@@ -0,0 +1,137 @@
+---
+title: bookmarks.onRemoved
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/onRemoved
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onRemoved
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/onRemoved
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un signet ou un dossier est supprimé. Lorsqu'un dossier est supprimé de manière récursive, une seule notification est envoyée pour le dossier et aucune pour son contenu.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.bookmarks.onRemoved.addListener(listener)
+browser.bookmarks.onRemoved.removeListener(listener)
+browser.bookmarks.onRemoved.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>id</code></dt>
+ <dd><code>string</code>. ID de l'article qui a été supprimé.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>removeInfo</code></dt>
+ <dd><a href="#removeInfo"><code>object</code></a>. Plus de détails sur l'élément supprimé.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="removeInfo">removeInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>parentId</code></dt>
+ <dd><code>string</code>. ID du parent de l'élément dans l'arborescence.</dd>
+ <dt><code>index</code></dt>
+ <dd><code>integer</code>. Position d'index basée sur zéro de cet élément dans son parent.</dd>
+ <dt><code>node</code></dt>
+ <dd>{{WebExtAPIRef('bookmarks.BookmarkTreeNode')}}. Informations détaillées sur l'élément qui a été supprimé.</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleRemoved(id, removeInfo) {
+ console.log("Item: " + id + " removed");
+ console.log("Title: " + removeInfo.node.title);
+ console.log("Url: " + removeInfo.node.url);
+}
+
+function handleClick() {
+ browser.bookmarks.onRemoved.addListener(handleRemoved);
+}
+
+browser.browserAction.onClicked.addListener(handleClick);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl class="reference-values">
+</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><span class="diff_add">{{Compat("webextensions.api.bookmarks.onRemoved")}}</span></p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.html
new file mode 100644
index 0000000000..d3c38e7661
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.html
@@ -0,0 +1,108 @@
+---
+title: bookmarks.remove()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/remove
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - remove
+ - supprimer
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/remove
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <strong><code>bookmarks.remove()</code></strong> supprime un seul signet ou un dossier de signets vide.</p>
+
+<div class="blockIndicator warning">
+<p>Si votre extension tente de supprimer un signet du nœud racine de l’arborescence de signets, l’appel déclenche une erreur avec le message suivant: "<em>La racine du signet ne peut pas être modifiée</em>" et le signet ne sera pas supprimé.</p>
+</div>
+
+<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 removingBookmark = browser.bookmarks.remove(
+ id // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd>Un {{jsxref("string")}} spécifiant l'ID du signet ou du dossier vide à supprimer.</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 accomplie sans arguments..Si le nœud correspondant au paramètre <code>id</code> ne peut être trouvé ou s'il s'agit d'un dossier non vide, la promesse est rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("Removed!");
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+var bookmarkId = "abcdefghijkl";
+
+var removingBookmark = browser.bookmarks.remove(bookmarkId);
+removingBookmark.then(onRemoved, onRejected);</pre>
+
+<p>{{WebExtExamples}}</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.bookmarks.remove")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.html
new file mode 100644
index 0000000000..36b876b655
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.html
@@ -0,0 +1,114 @@
+---
+title: bookmarks.removeTree()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/removeTree
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - removeTree
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/removeTree
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <strong><code>bookmarks.removeTree()</code></strong> supprime récursivement un dossier de signets et tout son contenu.</p>
+
+<div class="blockIndicator warning">
+<p>Si votre extension tente de supprimer une arborescence de signets du nœud racine de cette dernière, l'appel déclenche une erreur avec le message suivant: "La racine de signet ne peut pas être modifiée" et le signet ne sera pas supprimé.</p>
+</div>
+
+<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 removingTree = browser.bookmarks.removeTree(
+ id // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd>Un {{jsxref("string")}} spécifiant l'ID du noeud de dossier à supprimer avec ses descendants.</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 sans arguments lorsque l'arbre a été retiré.Si le noeud correspondant au paramètre <code>id</code> ne peut pas être trouvé, la promesse est rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple localise un dossier de signets nommé "MDN" et le supprime avec tout son contenu.</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("bookmark item removed!");
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+function removeMDN(searchResults) {
+ if (searchResults.length) {
+ var removing = browser.bookmarks.removeTree(searchResults[0].id);
+ removing.then(onRemoved, onRejected);
+ }
+}
+
+var searchingBookmarks = browser.bookmarks.search({ title: "MDN" });
+searchingBookmarks.then(removeMDN, onRejected);</pre>
+
+<p>{{WebExtExamples}}</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.bookmarks.removeTree")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.html
new file mode 100644
index 0000000000..9ed539bba5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.html
@@ -0,0 +1,152 @@
+---
+title: bookmarks.search()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/search
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Method
+ - Non-standard
+ - Recherche
+ - Reference
+ - Search
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/search
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <strong><code>bookmarks.search()</code></strong> recherche les nœuds d'arborescence de signets correspondant à la requête donnée.</p>
+
+<p>Cette fonction déclenche une exception si l'un des paramètres d'entrée n'est pas valide ou n'est pas d'un type approprié ; regardez dans la <a href="/fr/Add-ons/WebExtensions/Debugging">console</a> pour le message d'erreur. Les exceptions n'ont pas d'ID d'erreur et les messages eux-mêmes peuvent changer, donc n'écrivez pas de code qui essaie de les interpréter.</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 searching = browser.bookmarks.search(
+ query // string or object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>query</code></dt>
+ <dd>Un {{jsxref("string")}} ou {{jsxref("object")}} décrivant la requête à effectuer.</dd>
+ <dd>
+ <p>Si la <code>query</code> est une chaîne, elle comprend zéro ou plusieurs termes de recherche. Les termes de recherche sont délimités par des espaces et peuvent être placés entre guillemets pour permettre la recherche dans des expressions de plusieurs mots. Chaque terme de recherche correspond s'il correspond à une sous-chaîne dans l'URL ou le titre du signet. La correspondance est insensible à la casse. Pour qu'un signet corresponde à la requête, tous les termes de recherche de la requête doivent correspondre.</p>
+
+ <p>Si la <code>query</code> un objet, elle possède zéro ou plus des trois propriétés suivantes : <code>query</code>, <code>title</code>, et <code>url</code>, qui sont décrites ci-dessous. Pour qu'un signet corresponde à la requête, tous les termes de propriétés fournis doivent correspondre aux valeurs spécifiées.</p>
+ </dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>query</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} spécifiant un ou plusieurs termes à comparer; le format est identique à la forme de chaîne du paramètre du <code>query</code>. Si ce n'est pas une chaîne, une exception est levée.</dd>
+ <dt><code>url</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} qui doit correspondre exactement à l'URL du signet. La correspondance est insensible à la casse et les barres obliques de fin sont ignorées.</dd>
+ <dd>
+ <p>Si vous passez une URL invalide ici, la fonction lèvera une exception.</p>
+ </dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>title</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} Ceci doit correspondre exactement au titre du noeud de l'arbre du signet. La correspondance est sensible à la casse.</dd>
+ </dl>
+ </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> sera accompli avec un tableau d'objets {{WebExtAPIRef('bookmarks.BookmarkTreeNode')}}, chacun représentant un seul nœud d'arbre de signet correspondant. Les résultats sont renvoyés dans l'ordre de création des nœuds. Le tableau est vide si aucun résultat n'a été trouvé.Le <code><a href="/fr/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNode">BookmarkTreeNodes</a></code>—même du type <code>"folder"</code> — renvoyé par  <code>bookmarks.search()</code> ne contiennent pas la propriété children. Pour obtenir un  <code>BookmarkTreeNode</code> utilisez <code><a href="/fr/Add-ons/WebExtensions/API/bookmarks/getSubTree">bookmarks.getSubTree()</a></code>.</p>
+
+<h2 id="Exemple">Exemple</h2>
+
+<p>Cet exemple enregistre les ID de tous les signets :</p>
+
+<pre class="brush: js">function onFulfilled(bookmarkItems) {
+ for (item of bookmarkItems) {
+ console.log(item.id);
+ }
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+var searching = browser.bookmarks.search({});
+
+searching.then(onFulfilled, onRejected);</pre>
+
+<p>Cet exemple cherche à voir si l'onglet actuellement actif est marqué d'un signet :</p>
+
+<pre class="brush: js">function onFulfilled(bookmarkItems) {
+ if (bookmarkItems.length) {
+ console.log("active tab is bookmarked");
+ } else {
+ console.log("active tab is not bookmarked");
+ }
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+function checkActiveTab(tab) {
+ var searching = browser.bookmarks.search({url: tab.url});
+ searching.then(onFulfilled, onRejected);
+}
+
+browser.browserAction.onClicked.addListener(checkActiveTab);
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </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.bookmarks.search")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.html
new file mode 100644
index 0000000000..a1085f4ec4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.html
@@ -0,0 +1,126 @@
+---
+title: bookmarks.update()
+slug: Mozilla/Add-ons/WebExtensions/API/bookmarks/update
+tags:
+ - API
+ - Add-ons
+ - Bookmarks
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - Update
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/bookmarks/update
+---
+<div>{{AddonSidebar()}}</div>
+
+<p><strong><code>bookmarks.update()</code></strong> met à jour le titre et / ou l'URL d'un signet ou le nom d'un dossier de signets.</p>
+
+<div class="blockIndicator warning">
+<p>Si votre extension tente de mettre à jour un signet dans le nœud racine de l'arborescence de signets, l'appel déclenche une erreur avec le message suivant: "La racine du signet ne peut pas être modifiée" et le signet ne sera pas mis à jour.</p>
+</div>
+
+<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.bookmarks.update(
+ id, // string
+ changes // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd>Un {{jsxref("string")}} spécifiant l'ID du dossier de signet ou de dossier de signets à mettre à jour.</dd>
+ <dt><code>changes</code></dt>
+ <dd>Un {{jsxref("object")}} spécifiant les changements à appliquer, avec une combinaison des champs suivants. Tous les éléments non spécifiés ne sont pas modifiés dans le signet ou le dossier référencé :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>title</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} contenant le nouveau titre du signet, ou le nouveau nom du dossier si l'<code>id</code> fait référence à un dossier.</dd>
+ <dt><code>url</code> {{optional_inline}}</dt>
+ <dd>Un {{jsxref("string")}} fournissant une nouvelle URL pour le signet.</dd>
+ </dl>
+ </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 satisfaite avec un seul objet <a href="/fr/Add-ons/WebExtensions/API/bookmarks/BookmarkTreeNode" title="An object of type bookmarks.BookmarkTreeNode represents a node in the bookmark tree, where each node is a bookmark or bookmark folder. Child nodes are ordered by an index within their respective parent folders."><code>bookmarks.BookmarkTreeNode</code></a> représentant le signet mis à jour. Si l'élément de signet correspondant au paramètre <code>id</code> ne peut pas être trouvé, la promesse est rejetée.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple renomme tous les dossiers nommés "MDN" en "Mozilla Developer Network (MDN)".</p>
+
+<pre class="brush: js">function onFulfilled(bookmarkItem) {
+ console.log(bookmarkItem.title);
+}
+
+function onRejected(error) {
+ console.log(`An error: ${error}`);
+}
+
+function updateFolders(items) {
+ for (item of items) {
+ // only folders, so skip items with a `url`
+ if (!item.url) {
+ var updating = browser.bookmarks.update(item.id, {
+ title: "Mozilla Developer Network (MDN)"
+ });
+ updating.then(onFulfilled, onRejected);
+ }
+ }
+}
+
+var searching = browser.bookmarks.search({ title: "MDN" });
+searching.then(updateFolders, onRejected);</pre>
+
+<p>{{WebExtExamples}}</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><span class="diff_add">{{Compat("webextensions.api.bookmarks.update")}}</span></p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/bookmarks"><code>chrome.bookmarks</code></a>. Cette documentation provient de  <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/bookmarks.json"><code>bookmarks.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.html
new file mode 100644
index 0000000000..0420be9740
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.html
@@ -0,0 +1,75 @@
+---
+title: browserAction.ColorArray
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/ColorArray
+tags:
+ - API
+ - Add-ons
+ - ColorArray
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - browserAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/ColorArray
+---
+<div>{{AddonSidebar()}}</div>
+
+<h2 id="Type">Type</h2>
+
+<p>Un tableau de quatre nombres entiers entre 0-255 définie une couleur RGBA. Les quatres couleurs spécifient les canaux suivants :</p>
+
+<ol>
+ <li>Rouge</li>
+ <li>Vert</li>
+ <li>Bleu</li>
+ <li>Alpha (opacité).</li>
+</ol>
+
+<p>Par exemple , le rouge opaque est  <code>[255, 0, 0, 255]</code>.</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><span class="diff_add">{{Compat("webextensions.api.browserAction.ColorArray")}}</span></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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.html
new file mode 100644
index 0000000000..2bb60d19e9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.html
@@ -0,0 +1,95 @@
+---
+title: browserAction.disable()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/disable
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - disable
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/disable
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Désactive l'action du navigateur pour un onglet, ce qui signifie qu'il ne peut pas être cliqué lorsque cet onglet est actif.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.disable(
+ tabId // optional integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'identifiant (ID) de l'onglet pour lequel vous souhaitez désactiver l'action du navigateur.</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.browserAction.disable")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Désactive l'action du navigateur lorsque vous cliquez et réactivez-le chaque fois qu'un nouveau onglet est ouvert :</p>
+
+<pre class="brush: js">browser.tabs.onCreated.addListener(() =&gt; {
+ browser.browserAction.enable();
+});
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ browser.browserAction.disable();
+});
+</pre>
+
+<p>Désactivez l'action du navigateur uniquement pour l'onglet actif :</p>
+
+<pre class="brush: js">browser.browserAction.onClicked.addListener((tab) =&gt; {
+ browser.browserAction.disable(tab.id);
+});</pre>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.html
new file mode 100644
index 0000000000..2d603e989c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.html
@@ -0,0 +1,91 @@
+---
+title: browserAction.enable()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/enable
+tags:
+ - API
+ - Add-ons
+ - Enable
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/enable
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Active l'action du navigateur pour un onglet. Par défaut, les actions du navigateur sont activées pour tous les onglets.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.enable(
+ tabId // optional integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'identifiant (ID) de l'onglet pour lequel vous souhaitez activer l'action du navigateur.</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><span class="diff_add">{{Compat("webextensions.api.browserAction.enable")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p> Désactivez l'option du navigateur lorsque vous cliquez et réactivez-le chaque fois qu'un nouveau onglet est ouvert :</p>
+
+<pre class="brush: js">browser.tabs.onCreated.addListener(() =&gt; {
+ browser.browserAction.enable();
+});
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ browser.browserAction.disable();
+});
+</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.html
new file mode 100644
index 0000000000..a56d080c7c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.html
@@ -0,0 +1,112 @@
+---
+title: browserAction.getBadgeBackgroundColor()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeBackgroundColor
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - getBadgeBackgroundColor
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeBackgroundColor
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient la couleur d'arrière plan du badge de l'action du navigateur.</p>
+
+<p>Il s'agit d'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">browser.browserAction.getBadgeBackgroundColor (
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p><code>details</code></p>
+
+<dl>
+ <dd><code>object</code>.
+
+ <dl class="reference-values">
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Specifie l'onglet pour obtenir la couleur d'arrière-plan du badge.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Spécifie la fenêtre à partir de laquelle obtenir la couleur de fond du badge.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux fournis, la fonction échoue..</li>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux omis, la couleur de fond du badge global est retournée.</li>
+</ul>
+
+<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 la couleur récupérée en tant que  {{WebExtAPIRef('browserAction.ColorArray')}}.</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.browserAction.getBadgeBackgroundColor",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez la couleur de fond du badge :</p>
+
+<pre class="brush: js">function onGot(color) {
+ console.log(color);
+}
+
+function onFailure(error) {
+ console.log(error);
+}
+
+browser.browserAction.getBadgeBackgroundColor({}).then(onGot, onFailure);</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.html
new file mode 100644
index 0000000000..ef015e0537
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.html
@@ -0,0 +1,108 @@
+---
+title: browserAction.getBadgeText()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeText
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - getBadgeText
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeText
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient le texte du badge de l'action du navigateur.</p>
+
+<p>Il s'agit d'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 gettingText = browser.browserAction.getBadgeText (
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Spécifie l'onglet pour obtenir le texte du badge.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Spécifie la fenêtre à partir de laquelle obtenir le texte du badge.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si windowId et tabId sont tous les deux fournis, la fonction échoue.</li>
+ <li>Si windowId et tabId sont tous les deux omis, le texte global du badge est renvoyé.</li>
+</ul>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec une chaîne contenant le texte du badge.</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.browserAction.getBadgeText",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez le texte du badge : </p>
+
+<pre class="brush: js">function gotBadgeText(text) {
+ console.log(text);
+}
+
+var gettingBadgeText = browser.browserAction.getBadgeText({});
+gettingBadgeText.then(gotBadgeText);</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.html
new file mode 100644
index 0000000000..51f6c2a162
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.html
@@ -0,0 +1,102 @@
+---
+title: browserAction.getBadgeTextColor()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeTextColor
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeTextColor
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient la couleur du texte du badge de l'action du navigateur.</p>
+
+<p>A partir de Firefox 63, à moins que la couleur du texte du badge ne soit explicitement définie à l'aide de {{WebExtAPIRef("browserAction.setBadgeTextColor()")}}, la couleur du texte du badge sera automatiquement définie en noir ou blanc afin d'optimiser le contraste avec la couleur de fond du badge spécifié. Par exemple, si vous définissez la couleur de fond du badge sur blanc, la couleur par défaut du texte du badge sera définie sur noir, et vice versa.</p>
+
+<p>Les autres navigateurs utilisent toujours une couleur de texte blanche.</p>
+
+<p>C'est une fonction asynchrone qui renvoie une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.getBadgeTextColor(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.
+ <dl class="reference-values">
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Spécifie l'onglet pour obtenir la couleur du texte du badge.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Spécifie la fenêtre à partir de laquelle obtenir la couleur du texte du badge.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux fournis, la fonction échoue.</li>
+ <li>SI <code>windowId</code> et <code>tabId</code> sont tous deux omis, la couleur globale du texte du badge est retournée.</li>
+</ul>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code> qui sera remplie avec la couleur récupérée comme un {{WebExtAPIRef('browserAction.ColorArray')}}.</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.browserAction.getBadgeTextColor",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrer la couleur du texte du badge :</p>
+
+<pre class="brush: js">function onGot(color) {
+ console.log(color);
+}
+
+function onFailure(error) {
+ console.log(error);
+}
+
+browser.browserAction.getBadgeTextColor({}).then(onGot, onFailure);</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.html
new file mode 100644
index 0000000000..60805e0ed3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.html
@@ -0,0 +1,108 @@
+---
+title: browserAction.getPopup()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/getPopup
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - getPopup
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/getPopup
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient le document HTML défini comme la popup pour cette action du navigateur.</p>
+
+<p>Il s'agit d'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 gettingPopup = browser.browserAction.getPopup(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'onglet dont le menu déroulant reçoit un entier.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Les fenêtres dont le popup à obtenir.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux fournis, la fonction échoue.</li>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux omis, la fenêtre contextuelle globale est retournée.</li>
+</ul>
+
+<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 une chaine cntenant l'URL du document contextuel. Ce sera une URL entièrement qualifiée, telle que <code>moz-extension://d1d8a2eb-fe60-f646-af30-a866c5b39942/popups/popup2.html</code>.</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.browserAction.getPopup",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez l'URL du Popup:</p>
+
+<pre class="brush: js">function gotPopup(popupURL) {
+ console.log(popupURL)
+}
+
+var gettingPopup = browser.browserAction.getPopup({});
+gettingPopup.then(gotPopup); </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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.html
new file mode 100644
index 0000000000..61362efb6c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.html
@@ -0,0 +1,116 @@
+---
+title: browserAction.getTitle()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/getTitle
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - getTitle
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/getTitle
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient le titre de l'action du navigateur.</p>
+
+<p>Tout comme vous pouvez définir le titre par onglet en utilisant  {{WebExtAPIRef("browserAction.setTitle()")}}, vous pouvez donc récupérer un titre spécifique à un onglet en passant l'ID de l'onglet dans cette fonction.</p>
+
+<p>Il s'agit d'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 gettingTitle = browser.browserAction.getTitle(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Spécifiez l'onglet pour obtenir le titre.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Spécifiez la fenêtre à partir de laquelle vous souhaitez obtenir le titre.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux fournis, la fonction échoue et la promesse qu'elle renvoie est rejetée.</li>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux omis, le titre global est renvoyé.</li>
+</ul>
+
+<h3 id="Return_value">Return value</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec une chaîne contenant le titre de l'action du navigateur.</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.browserAction.getTitle",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code change le titre entre "ceci" et "cela" chaque fois que l'utilisateur clique sur l'action du navigateur :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">toggleTitle</span><span class="punctuation token">(</span>title<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">if</span> <span class="punctuation token">(</span>title <span class="operator token">==</span> <span class="string token">"this"</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ browser<span class="punctuation token">.</span>browserAction<span class="punctuation token">.</span><span class="function token">setTitle</span><span class="punctuation token">(</span><span class="punctuation token">{</span>title<span class="punctuation token">:</span> <span class="string token">"that"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span> <span class="keyword token">else</span> <span class="punctuation token">{</span>
+ browser<span class="punctuation token">.</span>browserAction<span class="punctuation token">.</span><span class="function token">setTitle</span><span class="punctuation token">(</span><span class="punctuation token">{</span>title<span class="punctuation token">:</span> <span class="string token">"this"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>browserAction<span class="punctuation token">.</span>onClicked<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="operator token">=</span><span class="operator token">&gt;</span> <span class="punctuation token">{</span>
+ <span class="keyword token">var</span> gettingTitle <span class="operator token">=</span> browser<span class="punctuation token">.</span>browserAction<span class="punctuation token">.</span><span class="function token">getTitle</span><span class="punctuation token">(</span><span class="punctuation token">{</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ gettingTitle<span class="punctuation token">.</span><span class="function token">then</span><span class="punctuation token">(</span>toggleTitle<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.html
new file mode 100644
index 0000000000..826dca0ce1
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.html
@@ -0,0 +1,68 @@
+---
+title: browserAction.ImageDataType
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/ImageDataType
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - ImageDataType
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - browserAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/ImageDataType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Données en pixels pour une image. Doit être un objet <code><a href="/fr/docs/Web/API/ImageData">ImageData</a></code>  (par exemple, un élément  {{htmlelement("canvas")}}).</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Un objet <code><a href="/fr/docs/Web/API/ImageData">ImageData</a></code>.</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><span class="diff_add">{{Compat("webextensions.api.browserAction.ImageDataType")}}</span></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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/index.html
new file mode 100644
index 0000000000..da7b551bba
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/index.html
@@ -0,0 +1,133 @@
+---
+title: browserAction
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Ajoute un bouton à la barre d'outils du navigateur.</p>
+
+<p>Une <a href="/fr/Add-ons/WebExtensions/Browser_action">action du navigateur</a> est un bouton dans la barre d'outils du navigateur.</p>
+
+<p>Vous pouvez associer une fenêtre contextuelle au bouton. La fenêtre contextuelle est spécifée en utilisant HTML, CSS et JavaScript, tout comme une page Web normale. JavaScript en cours d'exécution dans le popup accède à toutes les mêmes API WebExtension que vos scripts de fond, mais son contexte global est le popup, et non la page courrante affichée dans le navigateur. Pour effectuer les pages Web, vous devez communiquer avec eux par des <a href="/fr/Add-ons/WebExtensions/Modify_a_web_page#Messaging">messages</a>.</p>
+
+<p>Si vous spécifiez une fenêtre contextuelle, elle sera affichée — et le contenu sera chargé — quand l'utilisateur clique sur l'icône. Si vous ne spécifiez pas de fenêtre contextuelle, alors lorsque l'utilisateur clique sur l'icône, un événement est envoyé à votre extension.</p>
+
+<p>Vous pouvez définir la plupart des propriétés d'une action de navigateur en utilisant la clé <code><a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_action">browser_action</a></code> dans le manifest.json.</p>
+
+<p>Quand l'API <code>browserAction</code>, vous pouvez :</p>
+
+<ul>
+ <li>Utiliser {{WebExtAPIRef("browserAction.onClicked")}} pour écouter les clics sur l'icône.</li>
+ <li>Obtenir et définir les propriétés de l'icône — icône, titre, popup, etc. Vous pouvez les définir globalement dans tous les onglets ou pour un onglet spécifique en passant l'ID de l'onglet comme un argument supplémentaire.</li>
+</ul>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("browserAction.ColorArray")}}</dt>
+ <dd>Un tableau de quatre nombres entiers entre 0-255 définie une couleur RGBA.</dd>
+ <dt>{{WebExtAPIRef("browserAction.ImageDataType")}}</dt>
+ <dd>Données en pixels pour une image. Doit être un objet <code><a href="/fr/docs/Web/API/ImageData">ImageData</a></code> (par exemple, un élément {{htmlelement("canvas")}} ).</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("browserAction.setTitle()")}}</dt>
+ <dd>Définit le titre de l'action du navigateur. Cela sera affiché dans une info-bulle.</dd>
+ <dt>{{WebExtAPIRef("browserAction.getTitle()")}}</dt>
+ <dd>Obtient le titre de l'action du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browserAction.setIcon()")}}</dt>
+ <dd>Définit l'icône de l'action du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browserAction.setPopup()")}}</dt>
+ <dd>Définit le document HTML à ouvrir en popup lorsque l'utilisateur clique  sur l'icône de l'action du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browserAction.getPopup()")}}</dt>
+ <dd>Permet de définir le document HTML en tant que popup de l'action du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browserAction.openPopup()")}}</dt>
+ <dd>Ouvrez le popup de l'action du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browserAction.setBadgeText()")}}</dt>
+ <dd>Définit le texte du badge de l'action du navigateur. Le badge est affiché en haut de l'icône.</dd>
+ <dt>{{WebExtAPIRef("browserAction.getBadgeText()")}}</dt>
+ <dd>Obtient le texte du badge de l'action du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browserAction.setBadgeBackgroundColor()")}}</dt>
+ <dd>Définit la couleur de fond du badge.</dd>
+ <dt>{{WebExtAPIRef("browserAction.getBadgeBackgroundColor()")}}</dt>
+ <dd>Obtient la couleur de fond du badge.</dd>
+ <dt>{{WebExtAPIRef("browserAction.setBadgeTextColor()")}}</dt>
+ <dd>Définit la couleur du texte du badge.</dd>
+ <dt>{{WebExtAPIRef("browserAction.getBadgeTextColor()")}}</dt>
+ <dd>Obtient la couleur du texte du badge.</dd>
+ <dt>{{WebExtAPIRef("browserAction.enable()")}}</dt>
+ <dd>Active l'action du navigateur pour un onglet. Par défaut, les actions du navigateur sont activées pour tous les onglets.</dd>
+ <dt>{{WebExtAPIRef("browserAction.disable()")}}</dt>
+ <dd>Désactive l'action du navigateur pour un onglet, ce qui signifie  qu'il ne peut pas être cliqué lorsque cet onglet est actif.</dd>
+ <dt>{{WebExtAPIRef("browserAction.isEnabled()")}}</dt>
+ <dd>Vérifie si l'action du navigateur est activée ou non.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("browserAction.onClicked")}}</dt>
+ <dd>Action quand l'icone d'action du navigateur est cliqué. Cet événement ne déclenchera pas si l'action du navigateur comporte une fenêtre contextuelle.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.browserAction")}}</p>
+
+<div class="hidden note">
+<p>La section "incompatibilités Chrome" est inclused dans  <a href="/fr/Add-ons/WebExtensions/Chrome_incompatibilities"> https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a> à l'aide de la macro <a href="/fr/docs/Template:WebExtChromeCompat">WebExtChromeCompat</a>.</p>
+
+<p>Si vous devez mettre à jour ce contenu, editez <a href="/fr/Add-ons/WebExtensions/Chrome_incompatibilities">https://developer.mozilla.org/fr/Add-ons/WebExtensions/Chrome_incompatibilities</a>, puis déplacez-actualisez cette page pour voir les modifications.</p>
+</div>
+
+<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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.html
new file mode 100644
index 0000000000..a6f3d2f2f1
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.html
@@ -0,0 +1,86 @@
+---
+title: browserAction.isEnabled()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/isEnabled
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - browserAction
+ - isEnabled
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/isEnabled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoie <code>true</code> si l'action du navigateur est activée.</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">let gettingIsEnabled = browser.browserAction.isEnabled(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet contenant éventuellement le <code>tabId</code> ou <code>windowId</code> à vérifier.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. ID d'un onglet à vérifier</dd>
+ <dt><code>windowId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. ID d'une fenêtre à vérifier.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si windowId et tabId sont tous les deux fournis, la fonction échoue.</li>
+ <li>Si windowId et tabId sont tous les deux omis, l'état global activé/désactivé est renvoyé.</li>
+</ul>
+
+<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 <code>true</code> si l'action du navigateur de l'extension est activée, et <code>false</code> dans le cas contraire.</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.browserAction.isEnabled",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Vérifiez l'état global :</p>
+
+<pre class="brush: js">browser.browserAction.isEnabled({}).then(result =&gt; {
+  console.log(result);
+});</pre>
+
+<p>Vérifiez l'état de l'onglet actuellement actif :</p>
+
+<pre class="brush: js">async function enabledInActiveTab() {
+  let tabs = await browser.tabs.query({
+ currentWindow:true,
+ active: true
+ });
+  let enabled = await browser.browserAction.isEnabled({
+ tabId: tabs[0].id
+ });
+  console.log(enabled);
+}</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.html
new file mode 100644
index 0000000000..e98bd575f5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.html
@@ -0,0 +1,112 @@
+---
+title: browserAction.onClicked
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/onClicked
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - onClicked
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/onClicked
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Action quand l'icone d'action du navigateur est cliqué. Cet événement ne déclenchera pas si l'action du navigateur comporte une fenêtre contextuelle.</p>
+
+<p>Pour définir une action de clic droit, utilisez l'API <a href="/fr/Add-ons/WebExtensions/API/contextMenus"><code>contextMenus</code></a>  avec le <a href="/fr/Add-ons/WebExtensions/API/contextMenus/ContextType" title="The different contexts a menu can appear in.">type de contexte</a> "browser_action".</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.onClicked.addListener(<code>listener</code>)
+browser.browserAction.onClicked.removeListener(listener)
+browser.browserAction.onClicked.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</code></dt>
+ <dd>Ajoutez un auditeur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arretez d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifier si l'autditeur est enregistré pour cet événement. Renvoie <code>true</code> si elle est écouté, sinon  <code>false</code>.</dd>
+</dl>
+
+<h2 id="addListener_syntaxe">addListener syntaxe</h2>
+
+<h3 id="Paramètre">Paramètre</h3>
+
+<dl>
+ <dt><code>callback</code></dt>
+ <dd>
+ <p>Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :</p>
+
+ <dl class="reference-values">
+ <dt><code>tab</code></dt>
+ <dd>{{WebExtAPIRef('tabs.Tab')}}. L'onglet qui était actif lorsque l'icône a été cliqué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.browserAction.onClicked")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Lorsque l'utilisateur clique sur l'icône, désactivez-la pour l'onglet actif et enregistrez l'URL de l'onglet</p>
+
+<pre class="brush: js">browser.browserAction.onClicked.addListener((tab) =&gt; {
+ // disable the active tab
+ browser.browserAction.disable(tab.id);
+ // requires the "tabs" or "activeTab" permission
+ console.log(tab.url);
+});
+</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.html
new file mode 100644
index 0000000000..4db9186ce5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.html
@@ -0,0 +1,58 @@
+---
+title: browserAction.openPopup()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/openPopup
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - openPopup
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/openPopup
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Ouvrez le popup de l'action du navigateur.</div>
+
+<div></div>
+
+<div>
+<p>Vous pouvez uniquement appeler cette fonction à partir du gestionnaire pour une <a href="/fr/Add-ons/WebExtensions/User_actions">action utilisateur</a>.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.openPopup()
+</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> cela est résolu sans arguments.</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.browserAction.openPopup", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ouvrez la fenêtre contextuelle lorsque l'utilisateur sélectionne un élément de menu contextuel :</p>
+
+<pre class="brush: js">browser.menus.create({
+ id: "open-popup",
+ title: "open popup",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() =&gt; {
+ browser.browserAction.openPopup();
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.html
new file mode 100644
index 0000000000..e5494f6b6e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.html
@@ -0,0 +1,128 @@
+---
+title: browserAction.setBadgeBackgroundColor()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/setBadgeBackgroundColor
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - setBadgeBackgroundColor
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/setBadgeBackgroundColor
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit la couleur de fond du badge. Les onglets sans couleur de fond de badge spécifique hériteront de la couleur de fond de badge globale, qui par défaut est <code>[217, 0, 0, 255]</code> dans Firefox.</p>
+
+<p>A partir de Firefox 63, à moins que la couleur du texte du badge ne soit explicitement définie à l'aide de {{WebExtAPIRef("browserAction.setBadgeTextColor()")}}, la couleur du texte du badge sera automatiquement définie en noir ou blanc afin d'optimiser le contraste avec la couleur de fond du badge spécifié. Par exemple, si vous définissez la couleur de fond du badge sur blanc, la couleur par défaut du texte du badge sera définie sur noir, et vice versa.</p>
+
+<p>D'autres navigateurs utilisent toujours une couleur de texte blanche, il est donc préférable d'utiliser un fond foncé pour assurer la lisibilité du texte</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.setBadgeBackgroundColor(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.
+ <dl class="reference-values">
+ <dt><code>color</code></dt>
+ <dd>La couleur, spécifiée comme l'un des suivants :</dd>
+ <dd>
+ <ul>
+ <li>une chaîne : toute valeur CSS <a href="/en-US/docs/Web/CSS/color_value">&lt;color&gt;</a> , par exemple <code>"red"</code>, <code>"#FF0000"</code>, ou <code>"rgb(255,0,0)"</code>. Si la chaîne n'est pas une couleur valide, la promesse renvoyée sera rejetée et la couleur d'arrière-plan ne sera pas modifiée.</li>
+ <li>Un objet <code>{{WebExtAPIRef('browserAction.ColorArray')}}</code>.</li>
+ <li><code>null</code>. Si un <code>tabId</code> est spécifié, il supprime la couleur d'arrière-plan du badge spécifique à l'onglet pour que l'onglet hérite de la couleur d'arrière-plan du badge global. Sinon, la couleur d'arrière-plan du badge global revient à la valeur par défaut.</li>
+ </ul>
+ </dd>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit la couleur d'arrière-plan du badge uniquement pour l'onglet donné. La couleur est réinitialisée lorsque l'utilisateur navigue sur cet onglet vers une nouvelle page.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit la couleur d'arrière-plan du badge uniquement pour l'onglet donné.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux fournis, la fonction échoue et la couleur n'est pas définie.</li>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux omis, la couleur d'arrière-plan du badge global est définie à la place.</li>
+</ul>
+
+<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.browserAction.setBadgeBackgroundColor",2)}}</p>
+
+<p>La couleur par défaut dans Firefox est : <code>[217, 0, 0, 255]</code>.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Une couleur d'arrière plan qui commence en rouge et devient  verte lorsque l'action du navigateur est cliquée :</p>
+
+<pre class="brush: js">browser.browserAction.setBadgeText({text: "1234"});
+browser.browserAction.setBadgeBackgroundColor({color: "red"});
+
+browser.browserAction.onClicked.addListener(()=&gt; {
+ browser.browserAction.setBadgeBackgroundColor({color: "green"});
+});</pre>
+
+<p>Réglez la couleur d'arrière-plan du badge uniquement pour l'onget actif :</p>
+
+<pre class="brush: js">browser.browserAction.setBadgeText({text: "1234"});
+browser.browserAction.setBadgeBackgroundColor({color: "red"});
+
+browser.browserAction.onClicked.addListener((tab)=&gt; {
+ browser.browserAction.setBadgeBackgroundColor({
+ color: "green",
+ tabId: tab.id
+ });
+});</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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 class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.html
new file mode 100644
index 0000000000..25ae031bb4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.html
@@ -0,0 +1,116 @@
+---
+title: browserAction.setBadgeText()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/setBadgeText
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - setBadgeText
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/setBadgeText
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit le texte du badge pour l'action du navigateur. Le badge est affiché en haut de l'icône.</p>
+
+<p>Les onglets sans texte de badge spécifique hériteront du texte global du badge, qui est <code>""</code> par défaut.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.setBadgeText(
+ details // object
+)
+</pre>
+
+<p>Cette API est également disponible sous <code>chrome.browserAction.setBadgeText()</code>.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.
+ <dl class="reference-values">
+ <dt><code>text</code></dt>
+ <dd>
+ <p><code>string</code> or <code>null</code>. N'importe quel nombre de caractères peut être passé, mais seulement quatre environ peuvent tenir dans l'espace.</p>
+
+ <p>Utilisez une chaîne vide - <code>""</code> - si vous ne voulez pas de badge.</p>
+
+ <p>Si un <code>tabId</code> est spécifié, <code>null</code> supprime le texte du badge spécifique à l'onglet afin que l'onglet hérite du texte global du badge. Dans le cas contraire, le texte du badge global devient <code>""</code>.</p>
+
+ <p>Si un <code>windowId</code> est spécifié, <code>null</code> supprime le texte du badge spécifique à la fenêtre afin que l'onglet hérite du texte global du badge. Dans le cas contraire, le texte du badge global devient <code>""</code>.</p>
+ </dd>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définir le texte du badge uniquement pour l'onglet donné. Le texte est réinitialisé lorsque l'utilisateur navigue dans cet onglet vers une nouvelle page.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définir le texte du badge pour la fenêtre donnée.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>si <code>windowId</code> et <code>tabId</code> sont tous les deux fournis, la fonction échoue.</li>
+ <li>si <code>windowId</code> et <code>tabId</code> sont tous les deux omis, le badge global est défini.</li>
+</ul>
+
+<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.browserAction.setBadgeText",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ajouter un badge indiquant combien de fois l'utilisateur a cliqué sur le bouton : </p>
+
+<pre class="brush: js">var clicks = 0;
+
+function increment() {
+ browser.browserAction.setBadgeText({text: (++clicks).toString()});
+}
+
+browser.browserAction.onClicked.addListener(increment);</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.html
new file mode 100644
index 0000000000..75b5d426ab
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.html
@@ -0,0 +1,119 @@
+---
+title: browserAction.setBadgeTextColor()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/setBadgeTextColor
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - browserAction
+ - setBadgeTextColor
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/setBadgeTextColor
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit la couleur du texte du badge de l'action du navigateur. Les onglets sans couleur de texte de badge spécifique hériteront de la couleur globale du texte de badge.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.setBadgeTextColor(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.
+ <dl class="reference-values">
+ <dt><code>color</code></dt>
+ <dd>La couleur, spécifiée comme l'une des couleurs :</dd>
+ <dd>
+ <ul>
+ <li> une chaîne : toute valeur CSS <a href="/fr/docs/Web/CSS/color_value">&lt;color&gt;</a>, par exemple <code>"red"</code>, <code>"#FF0000"</code>, ou <code>"rgb(255,0,0)"</code>. Si la chaîne n'est pas une couleur valide, la promesse retournée sera rejetée et la couleur du texte ne sera pas modifiée.</li>
+ <li>Un objet <code>{{WebExtAPIRef('browserAction.ColorArray')}}</code>.</li>
+ <li><code>null</code>. Si un <code>tabId</code> est spécifié, il supprime la couleur du texte du badge spécifique à l'onglet afin que l'onglet hérite de la couleur globale du texte du badge. Dans le cas contraire, la couleur globale du texte du badge est ramenée à la valeur par défaut.</li>
+ </ul>
+ </dd>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit la couleur du texte du badge uniquement pour l'onglet donné. La couleur est réinitialisée lorsque l'utilisateur navigue dans cet onglet vers une nouvelle page.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit la couleur du texte du badge uniquement pour l'onglet donné.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux fournis, la fonction échoue et la couleur n'est pas définie.</li>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux omis, la couleur globale du texte du badge est définie à la place.</li>
+</ul>
+
+<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.browserAction.setBadgeTextColor",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Une couleur de texte de badge qui commence par le rouge et passe au vert lorsque l'on clique sur l'action du navigateur :</p>
+
+<pre class="brush: js">browser.browserAction.setBadgeText({text: "1234"});
+browser.browserAction.setBadgeTextColor({color: "red"});
+
+browser.browserAction.onClicked.addListener(()=&gt; {
+ browser.browserAction.setBadgeTextColor({color: "green"});
+});</pre>
+
+<p>Définissez la couleur du texte du badge uniquement pour l'onglet actif :</p>
+
+<pre class="brush: js">browser.browserAction.setBadgeText({text: "1234"});
+browser.browserAction.setBadgeTextColor({color: "red"});
+
+browser.browserAction.onClicked.addListener((tab)=&gt; {
+ browser.browserAction.setBadgeTextColor({
+ color: "green",
+ tabId: tab.id
+ });
+});</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.html
new file mode 100644
index 0000000000..8200bf3f65
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.html
@@ -0,0 +1,194 @@
+---
+title: browserAction.setIcon()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/setIcon
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - setIcon
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/setIcon
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit l'icône pour l'action du navigateur.</p>
+
+<p>Vous pouvez spécifier une seule icône comme chemin d'accès à un fichier ou un objet {{WebExtAPIRef('browserAction.ImageDataType')}} .</p>
+
+<p>Vous pouvez spécifier plusieurs icônes dans différentes tailles en fournissant un dictionnaire contenant plusieurs chemins ou des objets  <code>ImageData</code>. Cela signifie que l'icône ne doit pas être mise à l'échelle pour un périphérique avec une densité de pixels différente.</p>
+
+<p>Les onglets sans icône spécifique hériteront de l'icône globale, qui par défaut est  <a href="/fr/Add-ons/WebExtensions/manifest.json/browser_action"><code>default_icon</code></a> specifié dans le manifest.</p>
+
+<p>Il s'agit d'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 settingIcon = browser.browserAction.setIcon(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet contenant des propriétés <code>imageData</code> ou <code>path</code>, et éventuellement une propriété <code>tabId</code> .</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>imageData</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>{{WebExtAPIRef('browserAction.ImageDataType')}}</code> ou <code><code>object</code></code>. Il s'agit soit d'un seul objet <code>ImageData</code> ou un dictionnaire d'objet.</p>
+
+ <p>Utilisez un dictionnaire d'objet pour spécifier plusieurs objets <code>ImageData</code> dans différentes tailles, de sorte que l'icône ne doit pas  être mise à l'échelle pour un périphérique avec une densité de pixel différentes. Si <code>imageData</code> est un dictionnaire, la valeur de chaque propriété  est un objet<code>ImageData</code>, et son nom est sa taille, comme ceci :</p>
+
+ <pre class="brush: json line-numbers language-json"><code class="language-json"><span class="punctuation token">{</span>
+ <span class="key token">16:</span> <span class="string token">image16</span><span class="punctuation token">,</span>
+ <span class="key token">32:</span> image32
+<span class="punctuation token">}</span></code></pre>
+
+ <p>Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir <a href="/fr/Add-ons/WebExtensions/manifest.json/browser_action#Choosing_icon_sizes">Choix de la tailles d'icônes</a> pour plus d'informations à ce sujet.</p>
+ </dd>
+ <dt><code>path</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code><code>string</code></code> or <code><code>object</code></code>. Il s'agit du chemin relatif d'un fichier d'icône ou d'un objet de dictionnaire. </p>
+
+ <p>Utilisez un dictionnaire d'objet pour spécifier plusieurs fichiers d'icônes dans différentes tailles, de sorte que l'icône ne doit pas être mise à l'échelle pour un périphérique avec une densité de pixels différentes. Si <code>path</code> est un dictionnaire, la valeur de chaque propriété est un chemin relatif , et son nom est sa taille, comme ceci :</p>
+
+ <pre class="brush: json line-numbers language-json"><code class="language-json"><span class="punctuation token">{</span>
+ <span class="key token">16:</span> "path/to/image16.jpg<span class="punctuation token">",</span>
+ <span class="key token">32:</span> "path/to/image32.jpg<span class="punctuation token">"</span>
+<span class="punctuation token">}</span></code></pre>
+
+ <p>Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir <a href="/fr/Add-ons/WebExtensions/manifest.json/browser_action#Choosing_icon_sizes">Choix de la tailles d'icônes</a> pour plus d'informations à ce sujet.</p>
+ </dd>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit l'icône uniquement pour l'onglet donné. L'icône est réinitialisée lorsque l'utilisateur navigue dans cet onglet vers une nouvelle page.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit l'icône de la fenêtre donnée.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>si <code>windowId</code> et <code>tabId</code> sont tous deux fournis, la fonction échoue et l'icône n'est pas définie.</li>
+ <li>si <code>windowId</code> et <code>tabId</code> sont tous les deux omis, l'icône globale est définie.</li>
+</ul>
+
+<p>Si chaque <code>imageData</code> et <code>path</code> est un objet <code>undefined</code>, <code>null</code> ou vide :</p>
+
+<ul>
+ <li>si <code>tabId</code> est spécifié, et que l'onglet a un jeu d'icônes spécifique à l'onglet, alors l'onglet héritera de l'icône de la fenêtre à laquelle il appartient.</li>
+ <li>si <code>windowId</code> est spécifié et que la fenêtre a un jeu d'icônes spécifiques à la fenêtre, alors la fenêtre héritera de l'icône globale.</li>
+ <li>Sinon, l'icône globale sera réinitialisée à l'icône du manifest.</li>
+</ul>
+
+<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 sans arguments une fois que l'icône a été définie.</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.browserAction.setIcon",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Le code ci-dessous utilise une action du navigateur pour basculer un auditeur pour {{WebExtAPIRef("webRequest.onHeadersReceived")}}, et utilise <code>setIcon()</code> pour indiquer si l'écoute est activée ou désactivée :</p>
+
+<pre class="brush: js">function logResponseHeaders(requestDetails) {
+ console.log(requestDetails);
+}
+
+function startListening() {
+ browser.webRequest.onHeadersReceived.addListener(
+ logResponseHeaders,
+ {urls: ["&lt;all_urls&gt;"]},
+ ["responseHeaders"]
+ );
+ browser.browserAction.setIcon({path: "icons/listening-on.svg"});
+}
+
+function stopListening() {
+ browser.webRequest.onHeadersReceived.removeListener(logResponseHeaders);
+ browser.browserAction.setIcon({path: "icons/listening-off.svg"});
+}
+
+function toggleListener() {
+ if (browser.webRequest.onHeadersReceived.hasListener(logResponseHeaders)) {
+ stopListening();
+ } else {
+ startListening();
+ }
+}
+
+browser.browserAction.onClicked.addListener(toggleListener);</pre>
+
+<p>Le code ci-dessous définit l'icône à l'aide d'un objet<code><a href="/fr/docs/Web/API/ImageData">ImageData</a></code> :</p>
+
+<pre class="brush: js">function getImageData() {
+ var canvas = document.createElement("canvas");
+ var ctx = canvas.getContext("2d");
+
+ ctx.fillStyle = "green";
+ ctx.fillRect(10, 10, 100, 100);
+
+ return ctx.getImageData(50, 50, 100, 100);
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ browser.browserAction.setIcon({imageData: getImageData()});
+});
+</pre>
+
+<p>L'extrait suivant met à jour l'icône lorsque l'utilisateur clique, mais uniquement pour l'onglet actif :</p>
+
+<pre class="brush: js">browser.browserAction.onClicked.addListener((tab) =&gt; {
+ browser.browserAction.setIcon({
+ tabId: tab.id, path: "icons/updated-48.png"
+ });
+});</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.html
new file mode 100644
index 0000000000..eed41b71f6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.html
@@ -0,0 +1,146 @@
+---
+title: browserAction.setPopup()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/setPopup
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - setPopup
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/setPopup
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit le document HTML qui sera ouvert en tant que popup lorsque l'utilisateur clique sur l'icône de l'action du navigateur. Les onglets sans popup spécifique hériteront de la popup globale, qui par défaut est la <a href="/fr/Add-ons/WebExtensions/manifest.json/browser_action"><code>default_popup</code></a> spécifiée dans le manifest.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.setPopup(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit la fenêtre contextuelle uniquement pour un onglet spécifique. La fenêtre contextuelle est réinitialisée lorsque l'utilisateur navigue dans cet onglet vers une nouvelle page.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit le popup uniquement pour la fenêtre spécifiée.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>popup</code></dt>
+ <dd>
+ <p><code>string</code> ou <code>null</code>. Le fichier HTML à afficher dans un popup, spécifié comme URL.</p>
+
+ <p>Ceci peut pointer vers un fichier empaqueté dans l'extension (par exemple, créé à l'aide de {{WebExtAPIRef("extension.getURL")}}), ou un document distant (par exemple <code>https://example.org/</code>).</p>
+
+ <p>Si une chaîne vide (<code>""</code>) est passée ici, le popup est désactivé, et l'extension recevra les événements {{WebExtAPIRef("browserAction.onClicked")}}.</p>
+
+ <p>Si le <code>popup</code> est <code>null</code>:</p>
+
+ <p>Si <code>tabId</code> est spécifié, supprime la fenêtre popup spécifique à l'onglet afin que l'onglet hérite de la fenêtre popup globale..</p>
+
+ <p>Si <code>windowId</code> est spécifié, supprime le popup spécifique à la fenêtre afin que la fenêtre hérite du popup global.</p>
+
+ <p>Sinon, la fenêtre contextuelle globale revient à la valeur par défaut.</p>
+ </dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux fournis, la fonction échoue et le popup n'est pas défini.</li>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux omis, la fenêtre contextuelle globale est définie.</li>
+</ul>
+
+<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.browserAction.setPopup",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code ajoute une paire d'éléments de menu contextuel que vous pouvez utiliser pour basculer entre deux fenêtres contextuelles. Notez que vous aurez besoin de la <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "contextMenus" définie dans le manifest de l'extension pour créer des éléments du menu contextuel.</p>
+
+<pre class="brush: js">function onCreated() {
+ if (browser.runtime.lastError) {
+ console.log("error creating item:" + browser.runtime.lastError);
+ } else {
+ console.log("item created successfully");
+ }
+}
+
+browser.contextMenus.create({
+ id: "popup-1",
+ type: "radio",
+ title: "Popup 1",
+ contexts: ["all"],
+ checked: true
+}, onCreated);
+
+browser.contextMenus.create({
+ id: "popup-2",
+ type: "radio",
+ title: "Popup 2",
+ contexts: ["all"],
+ checked: false
+}, onCreated);
+
+browser.contextMenus.onClicked.addListener(function(info, tab) {
+ if (info.menuItemId == "popup-1") {
+ browser.browserAction.setPopup({popup: "/popup/popup1.html"})
+ } else if (info.menuItemId == "popup-2") {
+ browser.browserAction.setPopup({popup: "/popup/popup2.html"})
+ }
+});</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.html
new file mode 100644
index 0000000000..21f801818f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.html
@@ -0,0 +1,126 @@
+---
+title: browserAction.setTitle()
+slug: Mozilla/Add-ons/WebExtensions/API/browserAction/setTitle
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserAction
+ - setTitle
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/setTitle
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Définit le titre de l'action du navigateur. Le titre est affiché dans une infobulle au-dessus de l'icône de l'action du navigateur. Vous pouvez passer un <code>tabId</code> dans ou une <code>windowId</code> comme paramètre optionnel — si vous le faites, le titre est changé seulement pour l'onglet donné ou la fenêtre donnée. Les onglets ou les fenêtres sans titre spécifique hériteront du texte du titre global, qui est par défaut à l'option <a href="/fr/Add-ons/WebExtensions/manifest.json/browser_action"><code>default_title</code></a> ou <a href="/fr/Add-ons/WebExtensions/manifest.json/name"><code>name</code></a> specifié dans le manifest.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.browserAction.setTitle(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Le nouveau titre et éventuellement l'ID de l'onglet ou de la fenêtre à cibler.
+ <dl class="reference-values">
+ <dt><code>title</code></dt>
+ <dd>
+ <p><code>string</code> ou <code>null</code>. La chaîne de caractères que l'action du navigateur doit afficher lorsqu'il y a une souris.</p>
+
+ <p>Si <code>title</code> est une chaîne vide, le titre utilisé sera le nom de l'extension, mais {{WebExtAPIRef("browserAction.getTitle")}} fournira toujours la chaîne vide.</p>
+
+ <p>Si <code>title</code> est <code>null</code>:</p>
+
+ <ul>
+ <li>Si <code>tabId</code> est spécifié, et que l'onglet a un jeu de titres spécifiques aux onglets, alors l'onglet héritera du titre de la fenêtre à laquelle il appartient.</li>
+ <li>Si <code>windowId</code> est spécifié, et que la fenêtre a un titre spécifique à la fenêtre, alors la fenêtre héritera du titre global.</li>
+ <li>Sinon, le titre global sera réinitialisé au titre du manifest.</li>
+ </ul>
+ </dd>
+ <dt><code>tabId</code>{{Optional_Inline}}</dt>
+ <dd>
+ <p><code>integer</code>. Définit le titre uniquement pour l'onglet donné.</p>
+ </dd>
+ <dt><code>windowId</code>{{Optional_Inline}}</dt>
+ <dd>
+ <p><code>integer</code>. Définit le titre de la fenêtre donnée.</p>
+ </dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux fournis, la fonction échoue et le titre n'est pas défini.</li>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux omis, le titre global est défini.</li>
+</ul>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.browserAction.setTitle",10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code change le titre entre "ceci" et "ça" chaque fois  que l'utilisateur clique sur l'action du navigateur :</p>
+
+<pre class="brush: js">function toggleTitle(title) {
+ if (title == "this") {
+ browser.browserAction.setTitle({title: "that"});
+ } else {
+ browser.browserAction.setTitle({title: "this"});
+ }
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ var gettingTitle = browser.browserAction.getTitle({});
+ gettingTitle.then(toggleTitle);
+});
+</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/browserAction"><code>chrome.browserAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/browser_action.json"><code>browser_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.html
new file mode 100644
index 0000000000..e02853701c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.html
@@ -0,0 +1,56 @@
+---
+title: browserSettings.allowPopupsForUserEvents
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/allowPopupsForUserEvents
+tags:
+ - API
+ - Add-ons
+ - BrowserSetting
+ - Extensions
+ - Property
+ - WebExtensions
+ - allowPopupsForUserEvents
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/allowPopupsForUserEvents
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut etre utilisé pour activer ou désactiver la capacité des pages web d'ouvrir des popups en réponse aux actions de l'utilisateur.</p>
+
+<p>La valeur sous-jacente  est un booléen.</p>
+
+<p>Par défaut, les navigateurs permettent aux pages Web d'ouvrir des fenêtres contextuelles en réponse à un ensemble particulier d'événements : par exemple <a href="/fr/docs/Web/Events/click">click</a>, <a href="/fr/docs/Web/Events/mouseup">mouseup</a>, <a href="/fr/docs/Web/Events/submit">submit</a>. Si <code>allowPopupsForUserEvents</code> est défini sur <code>false</code>, aucun événement utilisateur ne pourra ouvrir des fenêtres contextuelles. Si elle est définie sur <code>true</code>, l'ensemble d'événements par défaut sera autorisé à ouvrir des fenêtres contextuelles.</p>
+
+<p>Par exemple, supposons qu'une page web comporte un code comme celui-ci :</p>
+
+<pre class="brush: js">window.addEventListener("click", (e) =&gt; {
+ window.open("https://example.com","myPopup",'height=400,width=400');
+});
+</pre>
+
+<p>Par défaut, cela ouvrira une fenêtre contextuelle. Si vos extensions définient <code>allowPopupsForUserEvents</code> à <code>false</code>, cela n'ouvrira pas la fenêtre contextuelle, et l'utilisateur sera informé que le popup était bloqué.</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.browserSettings.allowPopupsForUserEvents")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Basculer le réglage :</p>
+
+<pre class="brush: js">function toggleAllowPopup() {
+
+ function toggle(current) {
+ console.log(`Current value: ${current.value}`);
+ browser.browserSettings.allowPopupsForUserEvents.set({value: !current.value});
+ }
+
+ browser.browserSettings.allowPopupsForUserEvents.get({}).then(toggle);
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ toggleAllowPopup();
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.html
new file mode 100644
index 0000000000..7c1a346c8b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.html
@@ -0,0 +1,48 @@
+---
+title: browserSettings.cacheEnabled
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/cacheEnabled
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - cacheEnabled
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/cacheEnabled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour activer ou désactiver globalement le cache du navigateur.</p>
+
+<p>La valeur sous-jacente est un booléen.</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.browserSettings.cacheEnabled")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenir une valeur actuelle de ce paramètre :</p>
+
+<pre class="brush: js">function logResult(result) {
+ console.log(`Current value: ${result.value}`);
+ console.log(`Current level of control: ${result.levelOfControl}`);
+}
+
+browser.browserSettings.cacheEnabled.get({}).
+ then(logResult);</pre>
+
+<p>Désactivation du cache du navigateur :</p>
+
+<pre class="brush: js">function logResult(result) {
+ console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.cacheEnabled.set({value: false}).
+ then(logResult);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.html
new file mode 100644
index 0000000000..46749ff050
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.html
@@ -0,0 +1,27 @@
+---
+title: browserSettings.closeTabsByDoubleClick
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/closeTabsByDoubleClick
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - closeTabsByDoubleClick
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/closeTabsByDoubleClick
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour activer ou désactiver la possibilité pour l'utilisateur de fermer un onglet en double-cliquant.</p>
+
+<p>La valeur sous-jacente est un booléen.</p>
+
+<p>Par défaut, closeTabsByDoubleClick est faux. Le réglage peut être modifié par l'utilisateur dans about:config.</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.browserSettings.closeTabsByDoubleClick")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.html
new file mode 100644
index 0000000000..326f91e65f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.html
@@ -0,0 +1,40 @@
+---
+title: contextMenuShowEvent
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/contextMenuShowEvent
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - contextMenuShowEvent
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/contextMenuShowEvent
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui détermine si le menu contextuel du navigateur est affiché sur l'événement mouseup ou sur l'événement mousedown.</p>
+
+<p>Sa valeur sous-jacente est une chaîne qui peut être "mouseup" ou "mousedown".</p>
+
+<p>La valeur par défaut est "mouseup" sur Windows, et "mousedown" sur macOS et Linux. 'affectation à Windows n'a aucun effet - le paramètre est uniquement conçu pour permettre l'ouverture du menu contextuel sur mouseup au lieu de mousedown, pas l'inverse.</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.browserSettings.contextMenuShowEvent")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Réglez le paramètre sur "mouseup":</p>
+
+<pre class="brush: js">function logResult(result) {
+ console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.contextMenuShowEvent.set({value: "mouseup"}).
+ then(logResult);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.html
new file mode 100644
index 0000000000..ac1c7db716
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.html
@@ -0,0 +1,47 @@
+---
+title: browserSettings.ftpProtocolEnabled
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/ftpProtocolEnabled
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - contextMenuShowEvent
+ - ftpProtocolEnabled
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/ftpProtocolEnabled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui détermine si le protocole FTP est activé dans le navigateur.</p>
+
+<p>La valeur sous-jaccente est un booléen.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p class="hidden">La table de compatibilité de cette page est générée depuis des données structurées. Si vous souhaitez contribuer à cette donnée, vous devriez aller à <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> et nous envoyer une pull request.</p>
+
+<p>{{Compat("webextensions.api.browserSettings.ftpProtocolEnabled")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Changer le réglage:</p>
+
+<pre class="brush: js">function toggleAllowFtp() {
+
+ function toggle(current) {
+ console.log(`Valeur actuelle: ${current.value}`);
+ browser.browserSettings.ftpProtocolEnabled.set({value: !current.value});
+ }
+
+ browser.browserSettings.ftpProtocolEnabled.get({}).then(toggle);
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ toggleAllowFtp();
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.html
new file mode 100644
index 0000000000..dc0363042b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.html
@@ -0,0 +1,36 @@
+---
+title: browserSettings.homepageOverride
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/homepageOverride
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - homepageOverride
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/homepageOverride
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour obtenir une chaîne représentant l'URL actuellement définie comme page d'accueil du navigateur.</p>
+
+<p>Notez qu'il s'agit d'un paramètre en lecture seule. Pour changer la page d'accueil, voir <a href="/fr/Add-ons/WebExtensions/manifest.json/chrome_settings_overrides">chrome_settings_overrides</a>.</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.browserSettings.homepageOverride", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez la valeur actuelle de l'URL de la page d'accueil :</p>
+
+<pre class="brush: js">browser.browserSettings.homepageOverride.get({}).then(result =&gt; {
+ console.log(result.value);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.html
new file mode 100644
index 0000000000..4797de6b5e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.html
@@ -0,0 +1,38 @@
+---
+title: browserSettings.imageAnimationBehavior
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/imageAnimationBehavior
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - browserSettings
+ - imageAnimationBehavior
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/imageAnimationBehavior
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour modifier la façon dont le navigateur traite les images animées, telles que les GIF.</p>
+
+<p>La valeur sous-jacente est une chaîne qui peut prendre l'une des trois valeurs suivantes:</p>
+
+<ul>
+ <li>"normal": la valeur par défaut Jouer des images animées comme d'habitude.</li>
+ <li>"none": n'anime pas les images du tout.</li>
+ <li>"once": joue une fois l'animation.</li>
+</ul>
+
+<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.browserSettings.imageAnimationBehavior", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Désactiver les images animées :</p>
+
+<pre class="brush: js"> browser.browserSettings.imageAnimationBehavior.set({value: "none"});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.html
new file mode 100644
index 0000000000..12e941e6e6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.html
@@ -0,0 +1,71 @@
+---
+title: browserSettings
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browserSettings
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings
+---
+<div>{{AddonSidebar}}</div>
+
+<div>Permet à une extension de modifier certaines paramètres globaux du navigateur. Chaque propriété de cette API est un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}}, fournissant la possibilité de modifier un paramètre particulier.</div>
+
+<div></div>
+
+<div>Parce que ce sont les paramètres globaux, il est possible d'étendre les conflits des extensions. voir la documentation de <code><a href="/fr/Add-ons/WebExtensions/API/types/BrowserSetting/set">BrowserSetting.set()</a></code> pour plus détails sur la façon dont les conflits sont traités.</div>
+
+<div></div>
+
+<div>
+<p>Pour utiliser cette API, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "browserSettings".</p>
+</div>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("browserSettings.allowPopupsForUserEvents")}}</dt>
+ <dd>Déterminer si le code exécuté dans les pages Web peut afficher les fenêtres contextuelles en réponse aux événements utilisateur.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.cacheEnabled")}}</dt>
+ <dd>Déterminer si le cache du navigateur est activé ou pas.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.closeTabsByDoubleClick")}}</dt>
+ <dd>Détermine si l'onglet sélectionné peut être fermé en double-cliquant</dd>
+ <dt>{{WebExtAPIRef("browserSettings.contextMenuShowEvent")}}</dt>
+ <dd>Détermine l'événement de souris qui déclenche un menu contextuel.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.ftpProtocolEnabled")}}</dt>
+ <dd>Détermine si le protocole FTP est activé.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.homepageOverride")}}</dt>
+ <dd>Lire la valeur de la page d'accueil du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.imageAnimationBehavior")}}</dt>
+ <dd>Détermine comment le navigateur traite les images animées.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.newTabPageOverride")}}</dt>
+ <dd>Lire la valeur de la nouvelle page de l'onglet du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.newTabPosition")}}</dt>
+ <dd><span id="result_box" lang="fr"><span>Contrôle la position des onglets nouvellement ouverts par rapport aux onglets déjà ouverts.</span></span></dd>
+ <dt>{{WebExtAPIRef("browserSettings.openBookmarksInNewTabs")}}</dt>
+ <dd>Détermine si les signets sont ouverts dans l'onglet actuel ou dans un nouvel onglet.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.openSearchResultsInNewTabs")}}</dt>
+ <dd>Détermine si les résultats de recherche sont ouverts dans l'onglet actuel ou dans un nouvel onglet.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.openUrlbarResultsInNewTabs")}}</dt>
+ <dd>Détermine si les suggestions de saisie semi-automatique de la barre d'adresse sont ouvertes dans l'onglet actuel ou dans un nouvel onglet.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.overrideDocumentColors")}}</dt>
+ <dd>Contrôle si les couleurs choisies par l'utilisateur remplacent les couleurs de la page.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.useDocumentFonts")}}</dt>
+ <dd>Contrôle si le navigateur utilisera les polices spécifiées par une page Web ou n'utilisera que des polices intégrées.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.webNotificationsDisabled")}}</dt>
+ <dd>Empêche les sites Web d'afficher des notifications à l'aide de la web API  <code><a href="/fr/docs/Web/API/notification">Notification</a></code>.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.zoomFullPage")}}</dt>
+ <dd>Contrôle si le zoom est appliqué à la page entière ou seulement au texte.</dd>
+ <dt>{{WebExtAPIRef("browserSettings.zoomSiteSpecific")}}</dt>
+ <dd>Contrôle si le zoom est appliqué sur un modèle par-site ou par-onglet. Si {{WebExtAPIRef("privacy.websites")}}<code>.resistFingerprinting</code> est à vrai, ce réglage n'a aucun effet et le modèle de zoom appliqué reste par-onglet.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.browserSettings")}}</p>
+
+<p>{{WebExtExamples("h2")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.html
new file mode 100644
index 0000000000..5a4ee1bcf7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.html
@@ -0,0 +1,36 @@
+---
+title: browserSettings.newTabPageOverride
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/newTabPageOverride
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - newTabPageOverride
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/newTabPageOverride
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour obtenir une chaîne représentant l'URL de la page "nouvel onglet": c'est-à-dire, la page chargée lorsque l'utilisateur ouvre une nouvelle onglet vide.</p>
+
+<p>Notez qu'il s'agit d'un paramètre en lecture seule.</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.browserSettings.newTabPageOverride", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenir la valeur actuelle de la nouvelle URL de l'onglet :</p>
+
+<pre class="brush: js">browser.browserSettings.newTabPageOverride.get({}).then(result =&gt; {
+ console.log(result.value);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.html
new file mode 100644
index 0000000000..9499f509b7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.html
@@ -0,0 +1,36 @@
+---
+title: browserSettings.newTabPosition
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/newTabPosition
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/newTabPosition
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour contrôler la position des onglets nouvellement ouverts par rapport aux onglets déjà ouverts.</p>
+
+<p>La valeur sous-jacente est une chaîne qui peut prendre l'une des trois valeurs suivantes :</p>
+
+<ul>
+ <li>"afterCurrent": ouvre tous les nouveaux onglets à côté de l'onglet actuel.</li>
+ <li>"relatedAfterCurrent": La valeur par défaut. Ouvrez les nouveaux onglets à côté de l'onglet en cours s'ils sont liés à l'onglet en cours (par exemple, s'ils ont été ouverts via un lien dans l'onglet en cours). Sinon, ouvrez les nouveaux onglets à la fin de la bande d'onglets.</li>
+ <li>"atEnd": ouvre tous les onglets à la fin de la bande d'onglets.</li>
+</ul>
+
+<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.browserSettings.newTabPosition", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code définit la valeur à "afterCurrent" puis enregistre la nouvelle valeur :</p>
+
+<pre class="brush: js">async function setAfterCurrent() {
+  let result = await browser.browserSettings.newTabPosition.set({value: "afterCurrent"});
+  console.log(`Result: ${result}`);
+  let newValue = await browser.browserSettings.newTabPosition.get({});
+  console.log(`New value: ${newValue.value}`);
+}
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.html
new file mode 100644
index 0000000000..cb2115b259
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.html
@@ -0,0 +1,38 @@
+---
+title: browserSettings.openBookmarksInNewTabs
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/openBookmarksInNewTabs
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browsetSettings
+ - openBookmarksInNewTabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/openBookmarksInNewTabs
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.</p>
+
+<p>Si la valeur est <code>true</code>, alors lorsque l'utilisateur sélectionne un signet, il sera ouvert dans un nouvel onglet. Si la valeur est<code>false</code> (valeur par défaut), les marque-pages sont ouverts dans l'onglet en cours.</p>
+
+<h2 id="Compatibilité_de_navigateur">Compatibilité de 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.browserSettings.openBookmarksInNewTabs")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définissez le paramètre sur <code>true</code>:</p>
+
+<pre class="brush: js">function logResult(result) {
+ console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.openBookmarksInNewTabs.set({value: true}).
+ then(logResult);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.html
new file mode 100644
index 0000000000..7e45c22689
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.html
@@ -0,0 +1,40 @@
+---
+title: browserSettings.openSearchResultsInNewTabs
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/openSearchResultsInNewTabs
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - openSearchResultsInNewTabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/openSearchResultsInNewTabs
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.</p>
+
+<p>Si la valeur est définie à <code>true</code>, lorsque l'utilisateur sélectionne un terme dans la zone de recherche du navigateur, les résultats de la recherche s'affichent dans un nouvel onglet. Si la valeur est <code>false</code> (valeur par défaut), les résultats de la recherche apparaissent dans l'onglet en cours.</p>
+
+<p>Notez que cela n'affecte pas le comportement lors de la sélection des éléments de omnibox/awesomebar, uniquement la zone de recherche dédiée..</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.browserSettings.openSearchResultsInNewTabs")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définissez le paramètre sur <code>true</code>:</p>
+
+<pre class="brush: js">function logResult(result) {
+ console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.openSearchResultsInNewTabs.set({value: true}).
+ then(logResult);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.html
new file mode 100644
index 0000000000..3db154acfe
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.html
@@ -0,0 +1,40 @@
+---
+title: browserSettings.openUrlbarResultsInNewTabs
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/openUrlbarResultsInNewTabs
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - openUrlbarResultsInNewTabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/openUrlbarResultsInNewTabs
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.</p>
+
+<p>Quand l'utilisateur facalise la barre d'adresse et commence à taper, le navigateur propose des suggestions de saisie semi-automatique : une liste déroulante de pages web basée sur l'entrée incomplète de l'utilisateur et son historique de navigation.</p>
+
+<p>Si la valeur est <code>true</code>, alors lorsque l'utiliseur sélectionne l'un des éléments, l'élément est ouvert dans un nouvel onglet. Si la valeur est <code>false</code> (valeur par défaut) l'élément est ouvert dans l'onglet en cours.</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.browserSettings.openUrlbarResultsInNewTabs")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définit le paramètre à <code>true</code>:</p>
+
+<pre class="brush: js">function logResult(result) {
+ console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.openUrlbarResultsInNewTabs.set({value: true}).
+ then(logResult);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.html
new file mode 100644
index 0000000000..2850c4089d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.html
@@ -0,0 +1,46 @@
+---
+title: browserSettings.overrideDocumentColors
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/overrideDocumentColors
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - overrideDocumentColors
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/overrideDocumentColors
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est une chaîne.</p>
+
+<p>Firefox permet à l'utilisateur de définir ses propres couleurs pour les arrière-plans et le texte du document. Par défaut, ces valeurs ne sont appliquées que lorsqu'un thème à fort contraste est sélectionné (un thème à contraste élevé est une caractéristique de certaines interfaces utilisateur du système d'exploitation qui augmente le contraste pour une meilleure accessibilité). Cependant, les utilisateurs peuvent également choisir d'appliquer ces couleurs toujours ou jamais. Ce paramètre du navigateur expose cette préférence.</p>
+
+<p>Sa valeur sous-jacente est une chaîne qui peut prendre l'une des valeurs suivantes:</p>
+
+<ul>
+ <li>"high-contrast-only": applique les choix de l'utilisateur uniquement lorsqu'un thème à contraste élevé est sélectionné. C'est la valeur par défaut.</li>
+ <li>"never":  n'applique jamais les choix de l'utilisateur</li>
+ <li>"always": Toujours appliquer les choix de l'utilisateur.</li>
+</ul>
+
+<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.browserSettings.openUrlbarResultsInNewTabs")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définissez le paramètre sur "always":</p>
+
+<pre class="brush: js">function logResult(result) {
+ console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.overrideDocumentColors.set({value: "always"}).
+ then(logResult);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/proxyconfig/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/proxyconfig/index.html
new file mode 100644
index 0000000000..8ebc5822c2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/proxyconfig/index.html
@@ -0,0 +1,73 @@
+---
+title: browserSettings.proxyConfig
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/proxyConfig
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - proxyConfig
+translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/settings
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour modifier les paramètres de proxy du navigateur.</p>
+
+<div class="blockIndicator note">
+<p><strong>Note</strong>: La possibilité de modifier les paramètres de proxy nécessite un accès à une fenêtre privée car les paramètres de proxy affectent à la fois les fenêtres privées et non privées. Par conséquent, si une extension n'a pas reçu l'autorisation de fenêtre privée, les appels à  <code>proxy.settings.set()</code> lanceront une exception.</p>
+</div>
+
+<p>La valeur sous-jacente est un objet avec les propriétés énumérées ci-dessous.</p>
+
+<p>Lors de la définition de cet objet, toutes les propriétés sont facultatives. Notez que les propriétés omises seront réinitialisées à leur valeur par défaut.</p>
+
+<dl>
+ <dt><code>autoConfigUrl</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Une URL à utiliser pour configurer le proxy.</dd>
+ <dt><code>autoLogin</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Ne pas demander l'authentification si le mot de passe est enregistré. Par défaut à <code>false</code>.</dd>
+ <dt><code>ftp</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'adresse du proxy FTP. Peut inclure un port.</dd>
+ <dt><code>http</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'adresse du proxy HTTP. Peut inclure un port.</dd>
+ <dt><code>httpProxyAll</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Utilisez le serveur proxy HTTP pour tous les protocoles. Par défaut à <code>false</code>.</dd>
+ <dt><code>passthrough</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Une liste d'hôtes séparés par des virgules qui ne doivent pas être mandatés. La valeur par défaut est "localhost, 127.0.0.1".</dd>
+ <dt><code>proxyDNS</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. DNS proxy lors de l'utilisation de SOCKS5. Par défaut à <code>false</code>.</dd>
+ <dt><code>proxyType</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Le type de proxy à utiliser. Cela peut prendre l'une des valeurs suivantes : "none", "autoDetect", "system", "manual", "autoConfig". Par défaut à "system".</dd>
+ <dt><code>socks</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'adresse du proxy SOCKS. Peut inclure un port.</dd>
+ <dt><code>socksVersion</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. La version du proxy SOCKS. Peut être 4 ou 5. Par défaut à 5.</dd>
+ <dt><code>ssl</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'adresse du proxy SSL. Peut inclure un port.</dd>
+</dl>
+
+<p> </p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">let proxySettings = {
+ proxyType: "manual",
+ http: "http://proxy.org:8080",
+ socksVersion: 4,
+ passthrough: ".example.org"
+};
+
+browser.proxy.settings.set({value: proxySettings});</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </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.proxy.settings", 10)}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.html
new file mode 100644
index 0000000000..ced60928ec
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.html
@@ -0,0 +1,45 @@
+---
+title: browserSettings.useDocumentFonts
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/useDocumentFonts
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - useDocumentFonts
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/useDocumentFonts
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.</p>
+
+<p>Par défaut, bien sûr, les pages Web peuvent spécifier les polices qu'ils veulent utiliser les propriétés CSS comme <code><a href="/fr/docs/Web/CSS/font-family">font-family</a></code>. Ce paramètre permet à une extension d'indiquer à Firefox d'ignorer les polices spécifiées par la page et d'utiliser uniquement les polices système.</p>
+
+<p>Sa valeur sous-jacente est un booléen :</p>
+
+<ul>
+ <li><code>true</code>: utilise les polices spécifiées par la page Web. C'est la valeur par défaut.</li>
+ <li><code>false</code>:  utilise les polices du système.</li>
+</ul>
+
+<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.browserSettings.useDocumentFonts")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définissez le paramètre sur <code>false</code>:</p>
+
+<pre class="brush: js">function logResult(result) {
+ console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.useDocumentFonts.set({value: false}).
+ then(logResult);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.html
new file mode 100644
index 0000000000..215ca7aa1b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.html
@@ -0,0 +1,49 @@
+---
+title: browserSettings.webNotificationsDisabled
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/webNotificationsDisabled
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - webNotificationsDisabled
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/webNotificationsDisabled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour empêcher les sites Web d'afficher des <code><a href="/fr/docs/Web/API/Notifications_API">Notifications</a></code> à l'aide de l'API Web de notifications.</p>
+
+<p>L'API <code>Notifications</code> est utilisée pour afficher les notifications de bureau à l'utilisateur. Il existe trois niveaux d'autorisation pour les notifications :<em> allow</em>,<em> deny</em>, et <em>prompt</em>. Les utilisateurs peuvent définir cette autorisation pour chaque site. Si l'utilisateur n'a pas défini d'autorisation pour un site particulier, le navigateur reviendra à une autorisation globale, qui sera par défaut <em>invité</em>e.</p>
+
+<p>Définir <code>browserSettings.webNotificationsDisabled</code> à <code>true</code> change l'autorisation globale à<em> refuser</em>.</p>
+
+<p>Notez que cela n'affectera pas les sites pour lesquels l'utilisateur a défini une préférence par site. Par exemple, si l'utilisateur définit <a href="https://example.org">https://example.org</a> pour<em> autoriser</em>, et une extension place ensuite <code>browserSettings.webNotificationsDisabled</code> à <code>true</code>, alors les pages sous <a href="https://example.org">https://example.org </a>seront toujours autorisées à afficher des notifications..</p>
+
+<p>Si vous définissez <code>browserSettings.webNotificationsDisabled</code> à <code>false</code> la valeur par défaut globale est rétablie.</p>
+
+<p>Notez que ce paramètre n'a aucun effet sur les notifications créées par des extensions à l'aide de l'API de <code><a href="/fr/Add-ons/WebExtensions/API/notifications">notifications</a></code>.</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.browserSettings.webNotificationsDisabled")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Basculer le paramètre :</p>
+
+<pre class="brush: js">async function toggleWebNotifications() {
+ let current = await browser.browserSettings.webNotificationsDisabled.get({});
+ console.log(`Current value: ${current.value}`);
+ browser.browserSettings.webNotificationsDisabled.set({value: !current.value});
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ toggleWebNotifications();
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.html
new file mode 100644
index 0000000000..45284a9291
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.html
@@ -0,0 +1,45 @@
+---
+title: browserSettings.zoomFullPage
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/zoomFullPage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - Reference
+ - WebExtensions
+ - browserSettings
+ - zoomFullPage
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/zoomFullPage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jaccente est un booléen.</p>
+
+<p>Par défaut, le zoom s'applique à la page web entière. En utilisant le <span class="menu"><a href="https://support.mozilla.org/fr/kb/taille-police-zoom-augmenter-taille-pages#w_daefinir-un-niveau-de-zoom-par-daefaut-pour-tous-les-sites-web">Zoom Text Only setting</a> les utilisateurs/utilisatrices peuvent choisir de zoomer uniquement le texte de la page</span>. Ce réglage permet à une web extension de modifier et de déterminer la valeur du paramètre, le zoom est appliqué à la page entière ou bien au texte seulement.</p>
+
+<p>Valeurs du paramètre:</p>
+
+<ul>
+ <li><code>true</code>: le zoom s'applique à la page web en entier (par défaut).</li>
+ <li><code>false</code>: le zoom s'applique au texte de la page web seulement.</li>
+</ul>
+
+<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.browserSettings.zoomFullPage")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Mettre le réglage à <code>false</code>:</p>
+
+<pre class="brush: js">function afficherResultat(resultat) {
+ console.log(`Le paramètre a été modifié: ${resultat}`);
+}
+
+browser.browserSettings.zoomFullPage.set({value: false}).
+ then(afficherResultat);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.html
new file mode 100644
index 0000000000..0ebeafd102
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.html
@@ -0,0 +1,55 @@
+---
+title: browserSettings.zoomSiteSpecific
+slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/zoomSiteSpecific
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Property
+ - WebExtensions
+ - browserSettings
+ - zoomSiteSpecific
+translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/zoomSiteSpecific
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jaccente est un booléen.</p>
+
+<p>Cette propriété contrôle le <a href="https://support.mozilla.org/fr/kb/editeur-configuration-firefox">réglage de configuration</a><code> browser.zoom.siteSpecific</code>, qui règle comment le zoom est appliqué aux sites et onglets.</p>
+
+<p>Si <code>browser.zoom.siteSpecific</code> est à vrai, les opérations de zoom s'appliquent à toutes les pages du même site selon les règles :</p>
+
+<ul>
+ <li>quand une page charge, si il existe un niveau de zoom pour ce site alors il est appliqué par le navigateur sinon le niveau de zoom par défaut "global" est appliqué.</li>
+ <li>quand le niveau de zoom change pour une page, le niveau des autres pages (dans d'autres onglets) de ce site sont mises à jour.</li>
+</ul>
+
+<p>Si la préférence <code>browser.zoom.siteSpecific</code> est à faux, les opérations de zoom s'appliquent uniquement à l'onglet actif selon les règles :</p>
+
+<ul>
+ <li>quand un nouvel onglet s'ouvre, le niveau de zoom par défaut "global" est appliqué.</li>
+ <li>quand le niveau de zoom change dans un onglet, il sera appliqué durant toute la navigation dans cet onglet et n'affectera pas le niveau de zoom des autres onglets.</li>
+</ul>
+
+<p>Lors de l'installation de Firefox, <code>browser.zoom.siteSpecific</code> est à vrai.</p>
+
+<p>Si <a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/privacy/websites" title="The documentation about this has not yet been written; please consider contributing!"><code>privacy.websites</code></a><code>.resistFingerprinting</code> est à vrai, ce réglage ne peut pas être changé et le niveau de zoom est appliqué sur le schéma par-onglet.</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.browserSettings.zoomSiteSpecific")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Mettre le réglage à <code>false</code>:</p>
+
+<pre class="brush: js">function logResult(result) {
+ console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.zoomSiteSpecific.set({value: false}).
+ then(logResult);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.html
new file mode 100644
index 0000000000..d715750689
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.html
@@ -0,0 +1,101 @@
+---
+title: browsingData.DataTypeSet
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/DataTypeSet
+tags:
+ - API
+ - Add-ons
+ - DataTypeSet
+ - Extensions
+ - Reference
+ - Type
+ - WebExtensions
+ - browsingData
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/DataTypeSet
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <strong><code>browsingData.DataTypeSet</code></strong>  décrit un ensemble de types de données.</p>
+
+<p>Il contient un certains nombres de propriétés booléennes. Le nom de chaque propriété est le nom d'un type particulier de données de navigations : "Téléchargements", "historique" et ainsi de suite. Toutes les propriétés sont facultatives.</p>
+
+<p>Ce type est utilisé :</p>
+
+<ul>
+ <li>dans {{WebExtAPIRef("browsingData.remove()")}} pour décrire les types  de données à supprimer</li>
+ <li>dans {{WebExtAPIRef("browsingData.settings()")}} pour décrire les types de données actuellement sélectionnés dans la fonction  "effacer l'historique" du navigateur.</li>
+</ul>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>cache</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Le cache du navigateur</dd>
+ <dt><code>cookies</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Cookies acquis en cours de la navigation.</dd>
+ <dt><code>downloads</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. L'historique de téléchargement de l'utilisateur.</dd>
+ <dt><code>fileSystems</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Les systèmes de fichiers du site Web.</dd>
+ <dt><code>formData</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Données de formulaire enregistrées, pour la saisie semi-automatique.</dd>
+ <dt><code>history</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. L'histoire de navigation de l'utilisateur.</dd>
+ <dt><code>indexedDB</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Données IndexedDB.</dd>
+ <dt><code>localStorage</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Données de stockage local.</dd>
+ <dt><code>passwords</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Mots de pass enregistrés, pour la saisie semi-automatique.</dd>
+ <dt><code>pluginData</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Données stockées associées aux plugins.</dd>
+ <dt><code>serverBoundCertificates</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Certificats liés au serveur stockés.</dd>
+ <dt><code>serviceWorkers</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Données mises en cache par les travailleurs du service.</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.browsingData.DataTypeSet")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.html
new file mode 100644
index 0000000000..018f8507c0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.html
@@ -0,0 +1,128 @@
+---
+title: browsingData
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - browsingData
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Permet aux extensions d'effacer les données accumulées pendant la navigation de l'utilisateur.</p>
+
+<p>Dans l'API <code>browsingData</code>, les données de navigations sont divisées en types :</p>
+
+<ul>
+ <li>cache du navigateur</li>
+ <li>cookies</li>
+ <li>Téléchargements</li>
+ <li>historique</li>
+ <li>stockage local</li>
+ <li>données du plugin</li>
+ <li>données de formulaire enregistrées</li>
+ <li>Mots de passe enregistrés</li>
+</ul>
+
+<p>Vous pouvez utiliser la fonction {{WebExtAPIRef("browsingData.remove()")}} pour supprimer toute combinaison de ces types. Il existe également des fonctions dédiées pour supprimer chaque type particulier de données, comme {{WebExtAPIRef("browsingData.removePasswords()", "removePasswords()")}}, {{WebExtAPIRef("browsingData.removeHistory()", "removeHistory()")}} etc.</p>
+
+<p>Toutes les fonctions <code>browsingData.remove[X]()</code> prennent un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}} que vous pouvez utiliser pour contrôler deux autres aspects de la suppression des données :</p>
+
+<ul>
+ <li>dans quelle mesure remonter dans le temps pour supprimer des données</li>
+ <li>qu'il s'agisse de supprimer des données uniquement de pages Web normales ou d'applications Web hébergées et de modules complémentaires. Notez que cette option n'est pas encore supportée dans Firefox.</li>
+</ul>
+
+<p>Enfin, cette API vous donne une fonction {{WebExtAPIRef("browsingData.settings()")}} qui vous donne la valeur actuelle des paramètres de la fonction "Effacer l'historique" du navigateur.</p>
+
+<p>Pour utiliser cette API, vous devez disposer de l'<a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">API permission</a> "browseData".</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("browsingData.DataTypeSet")}}</dt>
+ <dd>Objet utilisé pour spécifier le type de données à supprimer: par exemple, l'historique, les téléchargements, les mots de passe, etc.</dd>
+ <dt>{{WebExtAPIRef("browsingData.RemovalOptions")}}</dt>
+ <dd>Objet utilisé pour spécifier le retour arrière des données, et la suppression des données ajoutées par le biais de la navigation Web normale, des applications hébergées ou des modules complémentaires.</dd>
+</dl>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("browsingData.remove()")}}</dt>
+ <dd>Supprime les données de navigation pour les types de données spécifiés.</dd>
+ <dt>{{WebExtAPIRef("browsingData.removeCache()")}}</dt>
+ <dd>Efface le cache du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browsingData.removeCookies()")}}</dt>
+ <dd>Supprime les cookies</dd>
+ <dt>{{WebExtAPIRef("browsingData.removeDownloads()")}}</dt>
+ <dd>Supprime la liste des fichiers téléchargés.</dd>
+ <dt>{{WebExtAPIRef("browsingData.removeFormData()")}}</dt>
+ <dd>Efface les données de formulaire enregistrées.</dd>
+ <dt>{{WebExtAPIRef("browsingData.removeHistory()")}}</dt>
+ <dd>Efface l'historique du navigateur.</dd>
+ <dt>{{WebExtAPIRef("browsingData.removeLocalStorage()")}}</dt>
+ <dd>Efface tout <a href="/fr/docs/Web/API/Window/localStorage">stockage local</a> créé par des sites web.</dd>
+ <dt>{{WebExtAPIRef("browsingData.removePasswords()")}}</dt>
+ <dd>Efface les mots de passe enregistrés.</dd>
+ <dt>{{WebExtAPIRef("browsingData.removePluginData()")}}</dt>
+ <dd>Efface les données associées aux plugins.</dd>
+ <dt>{{WebExtAPIRef("browsingData.settings()")}}</dt>
+ <dd>Obtient la valeur actuelle des paramètres dans la fonction "Effacer l'historique" du navigateur</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.browsingData", 2)}}</p>
+
+<div class="note hidden">
+<p>The "Chrome incompatibilities" section is included from <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities"> https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a> using the <a href="/en-US/docs/Template:WebExtChromeCompat">WebExtChromeCompat</a> macro.</p>
+
+<p>If you need to update this content, edit <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities">https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a>, then shift-refresh this page to see your changes.</p>
+</div>
+
+<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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.html
new file mode 100644
index 0000000000..0ddbe4d663
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.html
@@ -0,0 +1,89 @@
+---
+title: browsingData.RemovalOptions
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/RemovalOptions
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - RemovalOptions
+ - Type
+ - WebExtensions
+ - browsingData
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/RemovalOptions
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <strong><code>browsingData.RemovalOptions</code></strong> contient des options permettant de contrôler certains aspects de la suppression des données de navigation.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes:</p>
+
+<dl class="reference-values">
+ <dt><code>hostnames</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>Array</code> of <code>string</code>. Cette propriété s'applique uniquement aux cookies et aux éléments de stockage locaux. Ne supprimez que les cookies et les éléments de stockage locaux associés à ces noms d'hôte.</p>
+
+ <p>Vous devez indiquer ici un nom d'hôte, sans protocole (par exemple : "google.com" et non https://google.com"). Vous pouvez utiliser l'interface  <code><a href="/fr/docs/Web/API/URL">URL</a></code> pour analyser une URL brute  et récupérer uniquement le nom d'hôte. Les sous-domaines d'un nom d'hôte donné ne seront pas supprimés: vous devez explicitement lister les sous-domaines.</p>
+ </dd>
+ <dt><code>originTypes</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Permet de contrôler si les données doivent être supprimées uniquement des pages Web normales ou des applications et extensions Web hébergées. Si cette option est omise, seules les données des pages Web normales ("<code>unprotectedWeb</code>") sont supprimées. Avant de supprimer des données d'applications ou d'extensions Web, veillez à ce que ce soit vraiment ce que l'utilisateur souhaite.</p>
+
+ <p>Cet objet peut contenir l'une des propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>unprotectedWeb</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si présent et <code>true</code>, supprime les données de la pages Web normales.</dd>
+ <dt><code>protectedWeb</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si présent et <code>true</code>, supprime les données de site Web qui ont été installés en tant qu'applications hébergées.</dd>
+ <dt><code>extension</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si présent et <code>true</code>, supprime les données d'extensions.</dd>
+ </dl>
+ </dd>
+ <dt><code>since</code> {{optional_inline}}</dt>
+ <dd><code>number</code>. Jusqu'à quand remontent les données, données en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque UNIX</a>. Notez que lorsque vous supprimez le cache du navigateur, le cache entier est toujours supprimé et cette option est ignorée. Si la propriété <code>since</code> est omise, la valeur par défaut est 0, ce qui signifie "pour toujours".</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.browsingData.RemovalOptions", 2)}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/browsingData"><code>chrome.browsingData</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.html
new file mode 100644
index 0000000000..231db0d7d4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.html
@@ -0,0 +1,129 @@
+---
+title: browsingData.remove()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/remove
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - browsingData
+ - remove
+ - supprimer
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/remove
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime les données de navigation spécifiées.</p>
+
+<p>Les données de navigation à supprimer sont spécifiées dans l'option  <code>dataTypes</code>, qui est un objet  {{WebExtAPIRef("browsingData.DataTypeSet")}}.</p>
+
+<p>Vous pouvez utiliser l'option <code>removalOptions</code>, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, pour contrôler à quelle distance remonter dans le temps pour supprimer des données et supprimer les données uniquement à partir de pages Web normales ou pour supprimer des données hébergées d'applications et extensions aussi.</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 removing = browser.browsingData.remove(
+ removalOptions, // RemovalOptions object
+ dataTypes // DataTypeSet object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>removalOptions</code></dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, qui peut être utilisé pour contrôler à quelle distance remonter dans le temps pour supprimer des données, et si vous souhaitez supprimer des données des applications Web hébergées et des extensions ou simplement des pages Web normales.</dd>
+ <dt><code>dataTypes</code></dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.DataTypeSet")}}, décrit les types de données à supprimer (par exemple, historique, les téléchargements,...).</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 sans argument lorsque la suppression est terminée. Si une erreur se produit, la promise sera rejetée avec un message d'erreur.</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.browsingData.remove")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprimer l'historique des téléchargements et de l'histoire de navigation de la semaine dernière :</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("removed");
+}
+
+function onError(error) {
+ console.error(error);
+}
+
+function weekInMilliseconds() {
+ return 1000 * 60 * 60 * 24 * 7;
+}
+
+var oneWeekAgo = (new Date()).getTime() - weekInMilliseconds();
+
+browser.browsingData.remove(
+ {since: oneWeekAgo},
+ {downloads: true, history: true}).
+then(onRemoved, onError);
+</pre>
+
+<p>Supprimer tout l'historique de téléchargement et de navigation :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onRemoved</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"removed"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onError</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>browsingData<span class="punctuation token">.</span><span class="function token">remove</span><span class="punctuation token">(</span><span class="punctuation token">{</span><span class="punctuation token">}</span><span class="punctuation token">,</span>
+ <span class="punctuation token">{</span>downloads<span class="punctuation token">:</span> <span class="keyword token">true</span><span class="punctuation token">,</span> history<span class="punctuation token">:</span> <span class="keyword token">true</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">.</span>
+<span class="function token">then</span><span class="punctuation token">(</span>onRemoved<span class="punctuation token">,</span> onError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.html
new file mode 100644
index 0000000000..6ea0d422b3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.html
@@ -0,0 +1,100 @@
+---
+title: browsingData.removeCache()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/removeCache
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - browsingData
+ - removeCache
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/removeCache
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Effacer le cache du navigateur.</p>
+
+<p>Notez que cette fonction puisse prendre un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}}, elle sera ignorée. <span id="result_box" lang="fr"><span>Le cache entier est toujours effacé lors de l'utilisation de cette fonction</span></span>.</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 removing = browser.browsingData.removeCache(
+ removalOptions // RemovalOptions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>removalOptions </code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}. Ce paramètre n'a aucun effet</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 rempli sans arguments lorsque la suppression est terminée.<span id="result_box" lang="fr"><span> Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</span></span></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.browsingData.removeCache")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Effacer le cache du navigateur :</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("removed");
+}
+
+function onError(error) {
+ console.error(error);
+}
+
+browser.browsingData.removeCache({}).
+then(onRemoved, onError);</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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.html
new file mode 100644
index 0000000000..122981271d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.html
@@ -0,0 +1,132 @@
+---
+title: browsingData.removeCookies()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/removeCookies
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - browsingData
+ - removeCookies
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/removeCookies
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Efface les cookies du navigateur</p>
+
+<p>Vous pouvez utiliser le paramètre <code>removalOptions</code>, qui est un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :</p>
+
+<ul>
+ <li>Efface seulement les cookies créés après un temps donné</li>
+ <li>Contrôlez si les cookies doivent être supprimés uniquement à partir des pages Webnormales ou si vous souhaitez supprimer les cookies des applications et des extensions hébergées.</li>
+</ul>
+
+<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 removing = browser.browsingData.removeCookies(
+ removalOptions // RemovalOptions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>removalOptions</code></dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, qui peut être utilisé pour effacer uniquement les cookies créés après un délais donné, et pour supprimer les cookies uniquement des pages Web normales ou pour supprimer les cookies des applications et extensions hébergées.</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 sans argument lorsque la suppression est terminée. Si une erreur se produit, la promise sera rejetée avec un message d'erreur.</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><span class="diff_add">{{Compat("webextensions.api.browsingData.removeCookies")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprime les cookies créés la semaine dernière :</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("removed");
+}
+
+function onError(error) {
+ console.error(error);
+}
+
+function weekInMilliseconds() {
+ return 1000 * 60 * 60 * 24 * 7;
+}
+
+var oneWeekAgo = (new Date()).getTime() - weekInMilliseconds();
+
+browser.browsingData.removeCookies(
+ {since: oneWeekAgo}).
+then(onRemoved, onError);</pre>
+
+<p>Supprime tous les cookies :</p>
+
+<div class="warning">
+<p><strong>Avertissement</strong><br>
+ L'utilisation de l'API pour supprimer tous les cookies effacera simultanément tous les objets de stockage locaux (y compris ceux des autres extensions).<br>
+ <br>
+ Si vous souhaitez simplement effacer tous les cookies sans perturber les installations de stockage locales, utilisez <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/cookies">browser.cookies</a> pour faire une boucle et supprimer le contenu de tous les magasins de cookies.</p>
+</div>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onRemoved</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"removed"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onError</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>browsingData<span class="punctuation token">.</span><span class="function token">removeCookies</span><span class="punctuation token">(</span><span class="punctuation token">{</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">.</span>
+<span class="function token">then</span><span class="punctuation token">(</span>onRemoved<span class="punctuation token">,</span> onError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.html
new file mode 100644
index 0000000000..1eb017ae3c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.html
@@ -0,0 +1,125 @@
+---
+title: browsingData.removeDownloads()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/removeDownloads
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - browsingData
+ - removeDownloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/removeDownloads
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Efface l'historique de téléchargement du navigateur. Notez que cela ne supprime pas les objets téléchargés eux-mêmes, seulement les enregistrements de téléchargements dans l'historique du navigateur.</p>
+
+<p>Vous pouvez utiliser le paramètre <code>removalOptions</code>, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :</p>
+
+<ul>
+ <li>Efface les enregistrements des élements téléchargés après un temps donné</li>
+ <li>contrôle si vous souhaitez effacer uniquement les enregistrements d'éléments téléchargés à partir de pages Web normales ou pour supprimer également les enregistrements des applications hébergées et des extensions.</li>
+</ul>
+
+<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 removing = browser.browsingData.removeDownloads(
+ removalOptions // RemovalOptions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>removalOptions</code></dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, qui peut-être utilisé pour effacer uniquement les enregistrements créés après une heure donnée, et pour effacer uniquement les enregistrements d'éléments téléchargés depuis les pages Web normales ou pour effacer des enregistrements d'applications hébergées et extensions aussi bien.</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 sans argument lorsque la suppression est terminée. Si une erreur se produit, la promise sera rejetée avec un message d'erreur.</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.browsingData.removeDownloads")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprime les enregistrements d'objets téléchargés la semaine dernière :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onRemoved</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"removed"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onError</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">weekInMilliseconds</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">return</span> <span class="number token">1000</span> <span class="operator token">*</span> <span class="number token">60</span> <span class="operator token">*</span> <span class="number token">60</span> <span class="operator token">*</span> <span class="number token">24</span> <span class="operator token">*</span> <span class="number token">7</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">var</span> oneWeekAgo <span class="operator token">=</span> <span class="punctuation token">(</span><span class="keyword token">new</span> <span class="class-name token">Date</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">)</span><span class="punctuation token">.</span><span class="function token">getTime</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="operator token">-</span> <span class="function token">weekInMilliseconds</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+browser<span class="punctuation token">.</span>browsingData<span class="punctuation token">.</span><span class="function token">removeDownloads</span><span class="punctuation token">(</span>
+ <span class="punctuation token">{</span>since<span class="punctuation token">:</span> oneWeekAgo<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">.</span>
+<span class="function token">then</span><span class="punctuation token">(</span>onRemoved<span class="punctuation token">,</span> onError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>Supprime tous les enregistrements d'objets téléchargés :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onRemoved</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"removed"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onError</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>browsingData<span class="punctuation token">.</span><span class="function token">removeDownloads</span><span class="punctuation token">({</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">.</span>
+<span class="function token">then</span><span class="punctuation token">(</span>onRemoved<span class="punctuation token">,</span> onError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.html
new file mode 100644
index 0000000000..d272a08b2d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.html
@@ -0,0 +1,124 @@
+---
+title: browsingData.removeFormData()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/removeFormData
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - browsingData
+ - removeDownloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/removeFormData
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Efface les données que le navigateur a enregistré pour les formulaires de remplissage automatique.</p>
+
+<p>Vous pouvez utiliser le paramètre <code>removalOptions</code>, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, pour :</p>
+
+<ul>
+ <li>Efface uniquement les données de formulaire entrées après une heure donnée</li>
+ <li>Contrôle si vous souhaitez supprimer uniquement les données saisies dans les pages Web normales ou effacer les données saisies dans les applications et extensions hébergées.</li>
+</ul>
+
+<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 removing = browser.browsingData.removeFormData(
+ removalOptions // RemovalOptions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}},  qui peut être utilisé pour effacer uniquement les données de formulaire saisies après une heure donnée, et pour effacer uniquement les données saisies dans les pages Web normales ou pour effacer les données saisies dans les applications hébergées et des extensions aussi..</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 sans argument lorsque la suppression est terminée. Si une erreur se produit, la promise sera rejetée avec un message d'erreur.</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.browsingData.removeFormData")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprimer les données de formulaire enregistrées la semaine dernière :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onRemoved</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"removed"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onError</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">weekInMilliseconds</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">return</span> <span class="number token">1000</span> <span class="operator token">*</span> <span class="number token">60</span> <span class="operator token">*</span> <span class="number token">60</span> <span class="operator token">*</span> <span class="number token">24</span> <span class="operator token">*</span> <span class="number token">7</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">var</span> oneWeekAgo <span class="operator token">=</span> <span class="punctuation token">(</span><span class="keyword token">new</span> <span class="class-name token">Date</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">)</span><span class="punctuation token">.</span><span class="function token">getTime</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="operator token">-</span> <span class="function token">weekInMilliseconds</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+browser<span class="punctuation token">.</span>browsingData<span class="punctuation token">.</span><span class="function token">removeFormData</span><span class="punctuation token">(</span>
+ <span class="punctuation token">{</span>since<span class="punctuation token">:</span> oneWeekAgo<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">.</span>
+<span class="function token">then</span><span class="punctuation token">(</span>onRemoved<span class="punctuation token">,</span> onError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>Supprimer tous les données de formulaire enregistrées :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onRemoved</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"removed"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onError</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>browsingData<span class="punctuation token">.</span><span class="function token">removeFormData</span><span class="punctuation token">(</span><span class="punctuation token">{</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">.</span>
+<span class="function token">then</span><span class="punctuation token">(</span>onRemoved<span class="punctuation token">,</span> onError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.html
new file mode 100644
index 0000000000..c2ab2918ef
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.html
@@ -0,0 +1,125 @@
+---
+title: browsingData.removeHistory()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/removeHistory
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - browsingData
+ - removeHistory
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/removeHistory
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Efface l'enregistrement des pages Web que l'utilisateur a visité (historique de navigation).</p>
+
+<p>Vous pouvez utiliser le paramètre <code>removalOptions</code>, qui est un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :</p>
+
+<ul>
+ <li>Effacer uniquement les eenregistrements des pages Web visitées après un certain temps.</li>
+ <li>Contrôlez si vous souhaitez effacer uniquement les enregistrements des pages web normales ou effacer les enregistrements des applications hébergées et des extensions.</li>
+</ul>
+
+<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 removing = browser.browsingData.removeHistory(
+ removalOptions // RemovalOptions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>removalOptions</code></dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, qui peut-être utilisé pour effacer uniquement les enregistrements des pages Web visitées après un certain temp, et pour effacer uniquement les enregistrements des pages Web normales ou pour effacer les enregistrements des applications hébergées et extensions aussi bien.</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> sera rempli sans arguments lorsque la suppression est terminée. Si une erreur se produit, la promise sera rejetée avec un message d'erreur.</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.browsingData.removeHistory", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprimer les enregistrements de la page visitées de la semaine dernière :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onRemoved</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"removed"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onError</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">weekInMilliseconds</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">return</span> <span class="number token">1000</span> <span class="operator token">*</span> <span class="number token">60</span> <span class="operator token">*</span> <span class="number token">60</span> <span class="operator token">*</span> <span class="number token">24</span> <span class="operator token">*</span> <span class="number token">7</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">var</span> oneWeekAgo <span class="operator token">=</span> <span class="punctuation token">(</span><span class="keyword token">new</span> <span class="class-name token">Date</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">)</span><span class="punctuation token">.</span><span class="function token">getTime</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="operator token">-</span> <span class="function token">weekInMilliseconds</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+browser<span class="punctuation token">.</span>browsingData<span class="punctuation token">.</span><span class="function token">removeHistory</span><span class="punctuation token">(</span>
+ <span class="punctuation token">{</span>since<span class="punctuation token">:</span> oneWeekAgo<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">.</span>
+<span class="function token">then</span><span class="punctuation token">(</span>onRemoved<span class="punctuation token">,</span> onError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>Supprimer tous les enregistrements des pages visitées :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onRemoved</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"removed"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onError</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>browsingData<span class="punctuation token">.</span><span class="function token">removeHistory</span><span class="punctuation token">({</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">.</span>
+<span class="function token">then</span><span class="punctuation token">(</span>onRemoved<span class="punctuation token">,</span> onError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.html
new file mode 100644
index 0000000000..2d2882ceff
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.html
@@ -0,0 +1,103 @@
+---
+title: browsingData.removeLocalStorage()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/removeLocalStorage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - browsingData
+ - removeLocalStorage
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/removeLocalStorage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Efface tout le <a href="/fr/docs/Web/API/Window/localStorage">stockage local</a> créé par des sites Web.</p>
+
+<p>Vous pouvez utiliser le paramètre <code>removalOptions</code>, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :</p>
+
+<ul>
+ <li>Effacer uniquement les objets de stockage locaux créés après un délai donné</li>
+ <li>Controler si vous souhaitez effacer uniquement les objets de stockage locaux créés par des pages Web normales ou supprimer des objets créés par des applications et des extensions hébergées.</li>
+</ul>
+
+<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 removing = browser.browsingData.removeLocalStorage(
+ removalOptions // RemovalOptions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>removalOptions</code></dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, qui peut etre utilisé pour effacer uniquement les objets de stockage locaux créés par des pages Web normales ou pour effacer des objets créés par des applications et des extensions hébergées.</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 sans argument lorsque la suppression est terminée. Si une erreur se produit, la promise sera rejetée avec un message d'erreur.</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.browsingData.removeLocalStorage", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprime tout le stockage local :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onRemoved</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"removed"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onError</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>error<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>browsingData<span class="punctuation token">.</span></code>removeLocalStorage<code class="language-js"><span class="punctuation token">({</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">.</span>
+<span class="function token">then</span><span class="punctuation token">(</span>onRemoved<span class="punctuation token">,</span> onError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/browsingData"><code>chrome.browsingData</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.html
new file mode 100644
index 0000000000..d8e2955197
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.html
@@ -0,0 +1,123 @@
+---
+title: browsingData.removePasswords()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/removePasswords
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - browsingData
+ - removePasswords
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/removePasswords
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Efface les mots de passes enregistrés</p>
+
+<p>Vous pouvez utiliser le paremètre <code>removalOptions</code>, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :</p>
+
+<ul>
+ <li>Effacer uniquement les mots de passe enregistrés après un certain temp</li>
+ <li>Contrôlez si vous souhaitez supprimer les mots de passe enregistrés sur les pages Web normales ou effacer les mots de passe enregistrés sur les applications et les extensions hébergées.</li>
+</ul>
+
+<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 removing = browser.browsingData.removePasswords(
+ removalOptions // RemovalOptions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>removalOptions</code></dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, qui peut être utilisé pour effacer uniquement les mots de passe enregistrés après un certain temps, et pour effacer les mots de passe enregistrés sur les pages Web normales ou pour effacer les mots de passe enregistrés sur les applications et les extensions hébergées.</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 sans arguments lorsque la suppression est terminée. Si une erreur se produit, la promise sera rejetée avec un message d'erreur.</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.browsingData.removePasswords")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprimer les mots de passe enregistrés la semaine dernière :</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("removed");
+}
+
+function onError(error) {
+ console.error(error);
+}
+
+function weekInMilliseconds() {
+ return 1000 * 60 * 60 * 24 * 7;
+}
+
+var oneWeekAgo = (new Date()).getTime() - weekInMilliseconds();
+
+browser.browsingData.removePasswords({since: oneWeekAgo}).
+then(onRemoved, onError);</pre>
+
+<p>Supprime tous les mots de passe enregistrés :</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("removed");
+}
+
+function onError(error) {
+ console.error(error);
+}
+
+browser.browsingData.removePasswords({}).then(onRemoved, onError);</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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.html
new file mode 100644
index 0000000000..1635ed4a62
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.html
@@ -0,0 +1,124 @@
+---
+title: browsingData.removePluginData()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/removePluginData
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - browsingData
+ - removePluginData
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/removePluginData
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Efface les données stockées par les plugins du navigateur.</p>
+
+<p>Vous pouvez utiliser le paramètre <code>removalOptions</code>, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, pour :</p>
+
+<ul>
+ <li>effacer seulement les données du plugins stockées après un temps donné</li>
+ <li>controler si vous souhaitez effacer uniquement les données stockées par les plugins qui s'exécutent dans les pages Web normales ou effacer les données par les plugins qui s'exécutent dans les applications et les extensions hébergées.</li>
+</ul>
+
+<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 removing = browser.browsingData.removePluginData(
+ removalOptions // RemovalOptions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>removalOptions</code></dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, qui peut être utilisé pour effacer uniquement les données de plugin stockées après un certain temps, et pour effacer uniquement les données stockées par des plugins fonctionnant sur des pages web normales ou pour effacer des données stockées par des plugins fonctionnant dans des applications et extensions hébergées.</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 rempli sans arguments lorsque la suppression est terminée. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</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.browsingData.removePluginData")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprimer les données stockées par les plugins au cours de la dernière semaine :</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("removed");
+}
+
+function onError(error) {
+ console.error(error);
+}
+
+function weekInMilliseconds() {
+ return 1000 * 60 * 60 * 24 * 7;
+}
+
+var oneWeekAgo = (new Date()).getTime() - weekInMilliseconds();
+
+browser.browsingData.removePluginData({since: oneWeekAgo}).
+then(onRemoved, onError);</pre>
+
+<p>Supprimer toutes les données stockées par les plugins :</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("removed");
+}
+
+function onError(error) {
+ console.error(error);
+}
+
+browser.browsingData.removePluginData({}).
+then(onRemoved, onError);</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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.html
new file mode 100644
index 0000000000..bd8422265f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.html
@@ -0,0 +1,109 @@
+---
+title: browsingData.settings()
+slug: Mozilla/Add-ons/WebExtensions/API/browsingData/settings
+tags:
+ - API
+ - Extensions
+ - Method
+ - Reference
+ - Settings
+ - WebExtensions
+ - add-on
+ - browsingData
+translation_of: Mozilla/Add-ons/WebExtensions/API/browsingData/settings
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Les navigateurs disposent d'une fonction "Effacer l'historique" intégrée, qui permet à l'utilisateur d'effacer différents types de données de navigation. Cela a une interface utilisateur qui permet à l'utilisateur de sélectionner le type de données à supprimer (par exemple l'historique, les téléchargements, ...) et à quelle distance remonter dans le temps pour supprimer des données.</p>
+
+<p>Cette fonction renvoie la valeur actuelle de ces paramètres.</p>
+
+<p>Notez que tous les types de données ne peuvent pas toujours être supprimés via l'interface utilisateur et certaines options d'interface utilisateur peuvent correspondre à plusieurs types de données.</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 getSettings = browser.browsingData.settings()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</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 remplie avec un objet contenant les informations sur les paramètres. Cet objet a trois propriétés :</p>
+
+<dl class="reference-values">
+ <dt><code>options</code></dt>
+ <dd><code>{{WebExtAPIRef("browsingData.RemovalOptions")}}</code>. Un objet  <code>RemovalOptions</code> décrivant les options de suppression actuellement sélectionnées.</dd>
+ <dt><code>dataToRemove</code></dt>
+ <dd><code>{{WebExtAPIRef("browsingData.DataTypeSet")}}</code>. Cela contiendra une propriété pour chaque type de données pouvant être basculé dans l'interface utilisateur du navigateur. Chaque propriété aura une valeur <code>true</code> si ce type est sélectionné pour la suppression et <code>false</code> dans le cas contraire.</dd>
+ <dt><code>dataRemovalPermitted</code></dt>
+ <dd><code>{{WebExtAPIRef("browsingData.DataTypeSet")}}</code>. Cela contiendra une propriété pour chaque type de données pouvant être basculé dans l'interface utilisateur du navigateur. Chacune aura la valeur  <code>true</code> si l'administrateur du périphérique a autorisé l'utilisateur à supprimer ce type, et <code>false</code> dans le cas contraire.</dd>
+</dl>
+
+<p>Si une erreur se produit, la  promise sera rejetée avec un message d'erreur.</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.browsingData.settings")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Paramètres des Logs courrants :</p>
+
+<pre class="brush: js">function onGotSettings(settings) {
+ console.log(settings.options);
+ console.log(settings.dataToRemove);
+ console.log(settings.dataRemovalPermitted);
+}
+
+function onError(error) {
+ console.error(error);
+}
+
+browser.browsingData.settings().then(onGotSettings, onError);</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/browsingData"><code>chrome.browsingData</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.html b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.html
new file mode 100644
index 0000000000..3f29ef2e9f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.html
@@ -0,0 +1,60 @@
+---
+title: captivePortal.canonicalURL
+slug: Mozilla/Add-ons/WebExtensions/API/captivePortal/canonicalURL
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - canonicalURL
+ - captivePortal
+translation_of: Mozilla/Add-ons/WebExtensions/API/captivePortal/canonicalURL
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoyer l'URL canonique de la page de détection du portail des prisonniers. En lecture seule.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.captivePortal.canonicalURL")}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/tabs#property-TAB_ID_NONE"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence américaine Creative Commons Attribution 3.0.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.html b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.html
new file mode 100644
index 0000000000..af5644d765
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.html
@@ -0,0 +1,68 @@
+---
+title: getLastChecked
+slug: Mozilla/Add-ons/WebExtensions/API/captivePortal/getLastChecked
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - captivePortal
+translation_of: Mozilla/Add-ons/WebExtensions/API/captivePortal/getLastChecked
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Retourne le temps écoulé depuis que la dernière demande a été complétée.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var state = browser.captivePortal.getLastChecked()
+</pre>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a> qui est remplie avec un nombre entier représentant le temps en millisecondes.</p>
+
+<div class="hidden">
+<h2 id="Exemples">Exemples</h2>
+</div>
+
+<p>{{WebExtExamples}}</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.captivePortal.getLastChecked")}}</p>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.html b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.html
new file mode 100644
index 0000000000..a0259bd623
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.html
@@ -0,0 +1,64 @@
+---
+title: getState
+slug: Mozilla/Add-ons/WebExtensions/API/captivePortal/getState
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - captivePortal
+translation_of: Mozilla/Add-ons/WebExtensions/API/captivePortal/getState
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoie l'état du portail comme <code>unknown</code>, <code>not_captive</code>, <code>unlocked_portal</code>, ou <code>locked_portal</code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js notranslate">var state = browser.captivePortal.getState()
+</pre>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a> qui est remplie avec une chaîne de caractères contenant l'un des éléments suivants <code>unknown</code>, <code>not_captive</code>, <code>unlocked_portal</code>, ou <code>locked_portal</code>.</p>
+
+<p>{{WebExtExamples}}</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.captivePortal.getState")}}</p>
+
+<div class="hidden">
+<pre class="notranslate">// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.html b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.html
new file mode 100644
index 0000000000..41e7655362
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.html
@@ -0,0 +1,90 @@
+---
+title: captivePortal
+slug: Mozilla/Add-ons/WebExtensions/API/captivePortal
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - NeedsTranslation
+ - Non-standard
+ - Reference
+ - TopicStub
+ - WebExtensions
+ - captivePortal
+translation_of: Mozilla/Add-ons/WebExtensions/API/captivePortal
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Déterminer l'état du portail captif de la connexion de l'utilisateur. Un portail captif est une page web qui s'affiche lorsqu'un utilisateur se connecte pour la première fois à un réseau Wi-Fi. L'utilisateur fournit des informations ou agit sur la page web du portail captif afin d'obtenir un accès plus large aux ressources du réseau, par exemple en acceptant les conditions générales ou en effectuant un paiement.</p>
+
+<p>Pour utiliser cette API, vous devez disposer de la <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "captivePortal".</p>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("captivePortal.canonicalURL")}}</dt>
+ <dd>Renvoyer l'URL canonique de la page de détection du portail des prisonniers. En lecture seule.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("captivePortal.getLastChecked()")}}</dt>
+ <dd>Retourne le temps, en millisecondes, depuis que la dernière demande a été complétée.</dd>
+ <dt>{{WebExtAPIRef("captivePortal.getState()")}}</dt>
+ <dd>Renvoie l'état du portail comme étant inconnu, <code>unknown</code>, <code>not_captive</code>, <code>unlocked_portal</code>, ou <code>locked_portal</code>.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("captivePortal.onConnectivityAvailable")}}</dt>
+ <dd>S'allume lorsque le service de portail captif détermine que l'utilisateur peut se connecter à l'internet.</dd>
+ <dt>{{WebExtAPIRef("captivePortal.onStateChanged")}}</dt>
+ <dd>
+ <p>S'allume lorsque l'état de portail captif change</p>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.captivePortal")}}</p>
+
+<div class="hidden note">
+<p>La section "Incompatibilités avec le chrome" est incluse à partir de<a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities"> https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a> en utilisant la macro <a href="/en-US/docs/Template:WebExtChromeCompat">WebExtChromeCompat</a>.</p>
+
+<p>Si vous avez besoin de mettre à jour ce contenu, modifiez  <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities">https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a>, puis réactualisez cette page pour voir vos modifications.</p>
+</div>
+
+<p>{{WebExtExamples("h2")}}</p>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.html b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.html
new file mode 100644
index 0000000000..aa8119a48b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.html
@@ -0,0 +1,100 @@
+---
+title: onConnectivityAvailable
+slug: Mozilla/Add-ons/WebExtensions/API/captivePortal/onConnectivityAvailable
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - captivePortal
+translation_of: Mozilla/Add-ons/WebExtensions/API/captivePortal/onConnectivityAvailable
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>S'allume lorsque le service de portail captif détermine que l'utilisateur peut se connecter à l'internet.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js notranslate">browser.captivePortal.onConnectivityAvailable.addListener(callback)
+browser.captivePortal.onConnectivityAvailable.removeListener(listener)
+browser.captivePortal.onConnectivityAvailable.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un auditeur à 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'auditeur à retirer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est inscrit à cet événement. Renvoie <code>true</code> si c'est un auditeur, 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 est appelée lorsque cet événement se produit. La fonction se voit transmettre les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>status</code></dt>
+ <dd><code>string</code> Le statut du service, étant celui de <code>captive</code> s'il y a un portail captif déverrouillé présent ou <code>clear</code> si aucun portail captif n'est détecté</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Gérer la capacité d'un utilisateur de changement à se connecter à l'internet :</p>
+
+<pre class="brush: js notranslate">function handleConnectivity(connectivityInfo) {
+ console.log("The captive portal status: " + connectivityInfo.status);
+}
+
+browser.captivePortal.onConnectivityAvailable.addListener(handleConnectivity);
+</pre>
+
+<p>{{WebExtExamples}}</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.captivePortal.onConnectivityAvailable")}}</p>
+
+<div class="hidden">
+<pre class="notranslate">// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.html
new file mode 100644
index 0000000000..9b4625be0f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.html
@@ -0,0 +1,102 @@
+---
+title: onStateChanged
+slug: Mozilla/Add-ons/WebExtensions/API/captivePortal/onStateChanged
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - captivePortal
+translation_of: Mozilla/Add-ons/WebExtensions/API/captivePortal/onStateChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>S'allume lorsque l'état de portail captif change.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js notranslate">browser.captivePortal.onStateChanged.addListener(callback)
+browser.captivePortal.onStateChanged.removeListener(listener)
+browser.captivePortal.onStateChanged.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un auditeur à 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'auditeur à retirer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est inscrit à cet événement. Renvoie <code>true</code> si c'est un auditeur, 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 est appelée lorsque cet événement se produit. La fonction se voit transmettre les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd>
+ <p><code>string</code> L'État portail captif, étant l'un des <code>unknown</code>, <code>not_captive</code>, <code>unlocked_portal</code>, ou <code>locked_portal</code>.</p>
+ </dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Gérer un changement de statut de portail captif :</p>
+
+<pre class="brush: js notranslate">function handlePortalStatus(portalstatusInfo) {
+ console.log("The portal status is now: " + portalstatusInfo.details);
+}
+
+browser.captivePortal.onStateChanged.addListener(handlePortalStatus)
+</pre>
+
+<p>{{WebExtExamples}}</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.captivePortal.onStateChanged")}}</p>
+
+<div class="hidden">
+<pre class="notranslate">// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/clipboard/index.html b/files/fr/mozilla/add-ons/webextensions/api/clipboard/index.html
new file mode 100644
index 0000000000..ca3b1fe724
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/clipboard/index.html
@@ -0,0 +1,39 @@
+---
+title: clipboard
+slug: Mozilla/Add-ons/WebExtensions/API/clipboard
+tags:
+ - API
+ - Add-ons
+ - Clipboard
+ - Extensions
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/clipboard
+---
+<div>{{AddonSidebar}}</div>
+
+<p>L'API <code>presse-papiers</code> permet à une extension de copier des éléments dans le presse papier du système. Actuellement l'API ne prend en charge que la copie d'images, mais elle est destinée à prendre en charge la copie de texte et HTML dans l'avenir.</p>
+
+<p>Cette API WebExtension existe principalement parce que l'API standard du presse-papiers Web <a href="https://w3c.github.io/clipboard-apis/#writing-to-clipboard">ne prend pas en charge l'écriture d'images dans le presse-papiers</a>. Cette API peut être dépréciée une fois que le support de l'API Clipboard pour les contenus non textuels du presse-papiers est entré en usage général.</p>
+
+<p>La lecture depuis le presse-papiers n'est pas prise en charge par cette API, car le presse-papiers peut déjà être lu à l'aide des API de plate-forme Web standard. Voir <a href="/fr/Add-ons/WebExtensions/Interact_with_the_clipboard#Reading_from_the_clipboard">Interaction avec le presse-papier</a>.</p>
+
+<p>Cette API est basée sur l'API de <code><a class="external external-icon" href="https://developer.chrome.com/apps/clipboard">clipboard</a></code> de Chrome, mais cette API n'est disponible que pour les applications Chrome et non pour les extensions.</p>
+
+<p>Pour utiliser cette API, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"clipboardWrite"</code>.</p>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("clipboard.setImageData()")}}</dt>
+ <dd>Copiez une image dans le presse-papiers.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.clipboard", 1, 1)}} {{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/apps/clipboard"><code>chrome.clipboard</code></a>.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.html b/files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.html
new file mode 100644
index 0000000000..751b5d1b8a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.html
@@ -0,0 +1,81 @@
+---
+title: clipboard.setImageData()
+slug: Mozilla/Add-ons/WebExtensions/API/clipboard/setImageData
+tags:
+ - API
+ - Add-ons
+ - Clipboard
+ - Extensions
+ - Method
+ - Referece
+ - WebExtensions
+ - setImageData
+translation_of: Mozilla/Add-ons/WebExtensions/API/clipboard/setImageData
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Copie une image dans le presse-papiers. L'image est recodée avant d'être écrite dans le presse-papiers. Si l'image n'est pas valide, le presse-papiers n'est pas modifié.</p>
+
+<p>L'image est fournie en tant que <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/ArrayBuffer">ArrayBuffer</a></code> contenant l'image codée. Les formats JPEG et PNG sont pris en charge.</p>
+
+<p>Bien que cette API soit basée sur l'API <code><a href="https://developer.chrome.com/apps/clipboard">clipboard.setImageData()</a></code> de Chrome, il existe certaines différentes :</p>
+
+<ul>
+ <li>L'API Chrome est réservée aux applications et non aux extensions.</li>
+ <li>Cette API nécessite uniquement la permission <code>"clipboardWrite"</code>, tandis que la version Chrome nécessite également la permission <code>"clipboard"</code>.</li>
+ <li>L'API de Chrome utilise des rappels et cette API ne prend en charge que les promises.</li>
+ <li>Cette API ne prend pas en charge le paramètre <code>additionalItems</code>.</li>
+</ul>
+
+<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">browser.clipboard.setImageData(<em>imageData</em>, <em>imageType</em>)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>imageData</code></dt>
+ <dd><code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/ArrayBuffer">ArrayBuffer</a></code>. Les données de l'image codées.</dd>
+ <dt><code>imageType</code></dt>
+ <dd>Un {{domxref("DOMString")}} indiquant le type d'image contenue dans le fichier <code>imageData</code>: <code>"png"</code> ou <code>"jpeg"</code>.</dd>
+</dl>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie sans arguments si l'opération a réussi, ou rejetée, s'il y a une erreur (par exemple parce que les données ne représentaient pas une image valide).</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.clipboard.setImageData", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Copiez une image distante :</p>
+
+<pre class="brush: js" id="ct-71"><span class="quote">// requires:
+// * the host permission for "<a href="https://cdn.mdn.mozilla.net/" rel="nofollow">https://cdn.mdn.mozilla.net/</a>*"
+// * the API permission "clipboardWrite"
+
+fetch('<a class="hoverZoomLink" href="https://cdn.mdn.mozilla.net/static/img/favicon144.png" rel="nofollow">https://cdn.mdn.mozilla.net/static/img/favicon144.png</a>')
+.then(response =&gt; response.arrayBuffer())
+.then(buffer =&gt; browser.clipboard.setImageData(buffer, 'png'));</span></pre>
+
+<p>Copiez une image fournie avec l'extension :</p>
+
+<pre class="brush: js" id="ct-70">// requires <span class="quote">the API permission </span>"clipboardWrite"
+
+fetch(browser.runtime.getURL('image.png'))
+.then(response =&gt; response.arrayBuffer())
+.then(buffer =&gt; browser.clipboard.setImageData(buffer, 'png'));</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/apps/clipboard"><code>chrome.clipboard</code></a>.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/command/index.html b/files/fr/mozilla/add-ons/webextensions/api/commands/command/index.html
new file mode 100644
index 0000000000..cd84951bfb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/commands/command/index.html
@@ -0,0 +1,46 @@
+---
+title: Command
+slug: Mozilla/Add-ons/WebExtensions/API/commands/Command
+tags:
+ - API
+ - Add-ons
+ - Command
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - commands
+translation_of: Mozilla/Add-ons/WebExtensions/API/commands/Command
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Information sur une commande. Cela contient les informations spécifiées pour la commande dans la  <a href="/fr/Add-ons/WebExtensions/manifest.json/commands"><code>commande</code> clef manifest.json</a>.</p>
+
+<p>Un tableau de ces objets est renvoyé par {{WebExtAPIRef('commands.getAll()')}}.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type  sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>name</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Nom de la commande. Cela sera passé dans l'écouteur de l'événement  {{WebExtAPIRef('commands.onCommand')}}.</dd>
+ <dt><code>description</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Description de cette commande. Ceci est principalement utilisé pour expliquer à l'utilisateur ce que cette commande fait.</dd>
+ <dt><code>shortcut</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. clef(s) utilisée pour exécuter cette commande , spécifiée comme une chaîne comme "Ctrl+Shift+Y".</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.commands.Command")}}</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/commands"><code>chrome.commands</code></a>.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.html b/files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.html
new file mode 100644
index 0000000000..76c2f8a5e6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.html
@@ -0,0 +1,61 @@
+---
+title: getAll()
+slug: Mozilla/Add-ons/WebExtensions/API/commands/getAll
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - commands
+ - getAll
+translation_of: Mozilla/Add-ons/WebExtensions/API/commands/getAll
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obient toutes les commandes pour l'exécution que vous avez enregistré à l'aide d'une des <a href="/fr/Add-ons/WebExtensions/manifest.json/commands"><code>commandes</code> clef du manifest.json</a>.</p>
+
+<p>Les commandes sont renvoyées sous la forme d'un tableau d'objets   {{WebExtAPIRef('commands.Command')}}. Altenativement, si vous utilisez la version de base promise de l'API, <code>browser.commands.getAll()</code>,  les commandes sont passées dans l'argument <code>onFulfilled</code> à <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise/then">Promise.then()</a></code>.</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 getCommands = browser.commands.getAll();
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</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 accompli avec un tableau  d'objets <code>{{WebExtAPIRef('commands.Command')}}</code>, un pour  chaque commande enregistrée pour l'extension. Si aucune n'a été enregistrée, le tableau  sera vide.</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.commands.getAll")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function logCommands(commands) {
+  commands.forEach(function(command) {
+    console.log(command);
+  });
+}
+
+var getCommands = browser.commands.getAll();
+getCommands.then(logCommands);</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/commands"><code>chrome.commands</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/commands/index.html b/files/fr/mozilla/add-ons/webextensions/api/commands/index.html
new file mode 100644
index 0000000000..9e9beb6cd3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/commands/index.html
@@ -0,0 +1,91 @@
+---
+title: commands
+slug: Mozilla/Add-ons/WebExtensions/API/commands
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - commands
+translation_of: Mozilla/Add-ons/WebExtensions/API/commands
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Écoutez l'utilisateur exécutant les commandes que vous avez enregistrées à l'aide des <a href="/fr/Add-ons/WebExtensions/manifest.json/commands">clés <code>commandes</code> du fichier manifest.json</a>.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("commands.Command")}}</dt>
+ <dd>Objet représentant une commande. Il contient les informations spécifiées pour la commande dans les <a href="/fr/Add-ons/WebExtensions/manifest.json/commands">clés <code>commands</code> du fichier manifest.json</a>.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("commands.getAll")}}</dt>
+ <dd>
+ <p>Obtient toutes les commandes enregistrées pour cette extension.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("commands.reset")}}</dt>
+ <dd>
+ <p>Réinitialiser la description de la commande donnée et le raccourci vers les valeurs données dans la clé “manifest”.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("commands.update")}}</dt>
+ <dd>
+ <p>Modifiez la description ou le raccourci de la commande donnée.</p>
+ </dd>
+</dl>
+
+<h2 id="Événements">Événements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("commands.onCommand")}}</dt>
+ <dd>
+ <div>Activé lorsqu'une commande est exécutée à l'aide du raccourci clavier associé.</div>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<p>{{Compat("webextensions.api.commands")}} {{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/commands"><code>chrome.commands</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.html b/files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.html
new file mode 100644
index 0000000000..85c98b3207
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.html
@@ -0,0 +1,98 @@
+---
+title: onCommand
+slug: Mozilla/Add-ons/WebExtensions/API/commands/onCommand
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - commands
+ - onCommand
+translation_of: Mozilla/Add-ons/WebExtensions/API/commands/onCommand
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Lancer quand une commande est exécutée à l'aide de son raccourci clavier associé.</div>
+
+<div></div>
+
+<div>L'écouteur reçoit  le nom de la commande. Cela correspond au nom donnée à la commande dans une  <a href="/fr/Add-ons/WebExtensions/manifest.json/commands">entrée manifest.json</a>.</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.commands.onCommand.addListener(listener)
+browser.commands.onCommand.removeListener(listener)
+browser.commands.onCommand.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un écouteur à un événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêter d'écouter un événement. L'arguement <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, <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètre">Paramètre</h3>
+
+<dl>
+ <dt><code>callback</code></dt>
+ <dd>
+ <p>Fonction qui sera appelée lorsqu'un utilisateur entre dans le raccourci de la commande. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Nom de la commande. Cela correspond au nom donné à la commande dans son <a href="/fr/Add-ons/WebExtensions/manifest.json/commands">entrée manifest.json</a>.</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.commands.onCommand")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<div>Etant donnée une entrée manifest.json comme ceci :</div>
+
+<div></div>
+
+<div>
+<pre class="brush: json line-numbers language-json"><code class="language-json"><span class="key token">"commands":</span> <span class="punctuation token">{</span>
+ <span class="key token">"toggle-feature":</span> <span class="punctuation token">{</span>
+ <span class="key token">"suggested_key":</span> <span class="punctuation token">{</span>
+ <span class="key token">"default":</span> <span class="string token">"Ctrl+Shift+Y"</span>
+ <span class="punctuation token">}</span><span class="punctuation token">,</span>
+ <span class="key token">"description":</span> <span class="string token">"Send a 'toggle-feature' event"</span>
+ <span class="punctuation token">}</span>
+<span class="punctuation token">}</span></code></pre>
+</div>
+
+<div>Vous pouvez écouter cette commande particulière comme ceci :</div>
+
+<div></div>
+
+<div>
+<pre class="brush: js line-numbers language-js"><code class="language-js">browser<span class="punctuation token">.</span>commands<span class="punctuation token">.</span>onCommand<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span>command<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">if</span> <span class="punctuation token">(</span>command <span class="operator token">==</span> <span class="string token">"toggle-feature"</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"toggling the feature!"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+</div>
+
+<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/commands"><code>chrome.commands</code></a>.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.html b/files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.html
new file mode 100644
index 0000000000..136a24cc18
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.html
@@ -0,0 +1,59 @@
+---
+title: commands.reset()
+slug: Mozilla/Add-ons/WebExtensions/API/commands/reset
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - commands
+ - reset
+translation_of: Mozilla/Add-ons/WebExtensions/API/commands/reset
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Réinitialise la description de la commande donnée et le raccourci clavier aux valeurs indiquées dans <a href="/fr/Add-ons/WebExtensions/manifest.json/commands"><code>commands</code> de la clé du manifest.json</a> de l'extension.</p>
+
+<p>Cela annule efficacement les modifications apportées à la commande à l'aide de la fonction {{WEbExtAPIRef("commands.update()")}}.</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">browser.commands.reset(
+ name // string
+);
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Nom de la commande à réinitialiser, comme indiqué par la propriété <code>name</code> de l'objet {{WebExtAPIRef("commands.Command")}}.</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 sans arguments lorsque le raccourci a été réinitialisé.</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.commands.reset")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Réinitialise la commande "my-command" lorsque l'utilisateur clique sur le bouton "reset" :</p>
+
+<pre class="brush: js">const commandName = 'my-command';
+
+function resetShortcut() {
+ browser.commands.reset(commandName);
+}
+
+document.querySelector('#reset').addEventListener('click', resetShortcut);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/update/index.html b/files/fr/mozilla/add-ons/webextensions/api/commands/update/index.html
new file mode 100644
index 0000000000..35365ccb34
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/commands/update/index.html
@@ -0,0 +1,70 @@
+---
+title: commands.update()
+slug: Mozilla/Add-ons/WebExtensions/API/commands/update
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - Update
+ - WebExtensions
+ - commands
+translation_of: Mozilla/Add-ons/WebExtensions/API/commands/update
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Changez la description ou le raccourci clavier pour la commande donnée.</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">browser.commands.update(
+ details // object
+);
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet avec les propriétés suivantes:</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. e nom de la commande à mettre à jour. Cela doit correspondre au nom d'une commande existante, comme indiqué par exemple dans la propriété <code>name</code> de l'objet {{WebExtAPIRef("commands.Command")}}.</dd>
+ <dt><code>description</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Une nouvelle description à définir pour la commande.</dd>
+ <dt><code>shortcut</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Un nouveau raccourci à définir pour la commande. Cela doit correspondre au format donné dans la documentation pour les <a href="/fr/Add-ons/WebExtensions/manifest.json/commands"><code>commands</code> de la clé manifest.json</a>. S'il ne correspond pas à ce format, la fonction va générer une erreur.</dd>
+ </dl>
+ </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 sans arguments lorsque le raccourci a été réinitialisé. La promesse sera rejetée avec une erreur si la commande n'a pas pu être trouvée.</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.commands.update")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Met à jour la commande "my-command" avec la valeur de raccourci donnée, lorsque l'utilisateur clique sur "update" :</p>
+
+<pre class="brush: js">const commandName = 'my-command';
+
+function updateShortcut() {
+ browser.commands.update({
+ name: commandName,
+ shortcut: document.querySelector('#shortcut').value
+ });
+}
+
+document.querySelector('#update').addEventListener('click', updateShortcut);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.html b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.html
new file mode 100644
index 0000000000..ff9ccb42bb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.html
@@ -0,0 +1,45 @@
+---
+title: contentScripts
+slug: Mozilla/Add-ons/WebExtensions/API/contentScripts
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - WebExtensions
+ - contentScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/contentScripts
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Utilisez cette API pour enregistrer des scripts de contenu. L'enregistrement d'un script de contenu demande au navigateur d'insérer les scripts de contenu donnés dans des pages correspondant aux modèles d'URL donnés.</p>
+
+<p>Cette API est très similaire à la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">"content_scripts"</a></code> du manifest.json, à l'exception de <code>"content_scripts"</code> , l'ensemble des scripts de contenu et des motifs associés est fixé au moment de l'installation. <span class="seoSummary">Avec l'API <code>contentScripts</code>, une extension peut enregistrer et  </span>désenregistrer des scripts au moment de l'exécution<span class="seoSummary">.</span></p>
+
+<p>Pour utiliser l'API, appelez {{WebExtAPIRef("contentScripts.register()")}} en passant dans un objet définissant les scripts à enregistrer, les modèles d'URL, et d'autres options. Ceci retourne une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui est résolue avec un objet {{WebExtAPIRef("contentScripts.RegisteredContentScript")}}.</p>
+
+<p>L'objet <code>RegisteredContentScript</code> représente les scripts enregistrés dans l'appel <code>register()</code> . Il définit une méthode <code>unregister()</code> que vous pouvez utiliser pour annuler l'inscription des scripts de contenu. Les scripts de contenu sont également désenregistrés automatiquement lorsque la page qui les a créés est détruite. Par exemple, s'ils sont enregistrés à partir de la page d'arrière-plan, ils seront automatiquement désenregistrés lorsque la page d'arrière-plan est détruite et s'ils sont enregistrés depuis une barre latérale ou une fenêtre contextuelle, ils seront automatiquement désinscrits.</p>
+
+<p>Il n'y a pas de permission de l'API <code>contentScripts</code>, mais une extension doit disposer des <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions d'hôte</a> appropriées pour tous les modèles qu'elle transmet à <code>register()</code>.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("contentScripts.RegisteredContentScript")}}</dt>
+ <dd>
+ <p>Un objet de ce type est renvoyé par la fonction  {{WebExtAPIRef("contentScripts.register()")}}. Il représente les scripts de contenu enregistrés par cet appel et peut être utilisé pour annuler l'enregistrement du script de contenu.</p>
+ </dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("contentScripts.register()")}}</dt>
+ <dd>Enregistre les scripts de contenu donnés.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.contentScripts", 10, 1)}}</p>
+
+<p> {{WebExtExamples("h2")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.html b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.html
new file mode 100644
index 0000000000..821f078eae
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.html
@@ -0,0 +1,106 @@
+---
+title: contentScripts.register()
+slug: Mozilla/Add-ons/WebExtensions/API/contentScripts/register
+tags:
+ - API
+ - Extensions
+ - Méthode
+ - Reference
+ - contentScripts
+ - register
+translation_of: Mozilla/Add-ons/WebExtensions/API/contentScripts/register
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Utilisez cette fonction pour enregistrer un ou plusieurs scripts de contenu.</p>
+
+<p>Il accepte un paramètre, qui est un objet avec des propriétés similaires aux objets donnés dans la clé du manifest <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code> (mais notez que <code>content_scripts</code> est un tableau d'objets, tandis que l'argument de <code>register()</code> est un simple objet).</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 registering = browser.contentScripts.register(
+ contentScriptOptions // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>contentScriptOptions</code></dt>
+ <dd>
+ <p><code>object</code>. Un objet <code>RegisteredContentScriptOptions</code> représentant les scripts de contenu à enregistrer. Sa syntaxe est similaire à celle des objets du tableau de clés de manifest <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.  Les différences sont :</p>
+
+ <ul>
+ <li>les noms de propriété utilisent camelCase plutôt que des traits de soulignement (par exemple, <code>excludeMatches</code>, pas <code>exclude_matches</code></li>
+ <li>les propriétés <code>js</code> et <code>css</code> vous permettent d'enregistrer des chaînes ainsi que des URL, leur syntaxe doit donc distinguer ces types.</li>
+ </ul>
+
+ <p>L'objet <code>RegisteredContentScriptOptions</code> a les propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>allFrames</code>{{optional_inline}}</dt>
+ <dd>Identique à <code>all_frames</code> dans la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>css</code>{{optional_inline}}</dt>
+ <dd>Un tableau d'objets. Chaque objet possède soit une propriété nommée <code>file</code>, qui est une URL commençant par manifest.json de l'extension et pointant vers un fichier CSS à enregistrer, soit une propriété nommée <code>code</code>, qui est un code CSS à enregistrer.</dd>
+ <dt><code>excludeGlobs</code>{{optional_inline}}</dt>
+ <dd>Identique à <code>exclude_globs</code> dans la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>excludeMatches</code>{{optional_inline}}</dt>
+ <dd>Identique à <code>exclude_matches</code> dans la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>includeGlobs</code>{{optional_inline}}</dt>
+ <dd>Identique à <code>include_globs</code> dans la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>js</code>{{optional_inline}}</dt>
+ <dd>Un tableau d'objets. Chaque objet possède soit une propriété nommée <code>file</code>, qui est une URL commençant par manifest.json de l'extension et pointant vers un fichier JavaScript à enregistrer, soit une propriété nommée <code>code</code>, qui est du code JavaScript à enregistrer.</dd>
+ <dt><code>matchAboutBlank</code>{{optional_inline}}</dt>
+ <dd>Identique à <code>match_about_blank</code> dans la clé <code><a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>matches</code></dt>
+ <dd>Identique à <code>matches</code> dans la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>runAt</code>{{optional_inline}}</dt>
+ <dd>Identique à <code>run_at</code> dans la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Return_value">Return value</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un objet {{WebExtAPIRef("contentScripts.RegisteredContentScript")}} que vous pouvez utiliser pour annuler l'enregistrement des scripts de contenu.</p>
+
+<p>Actuellement, les scripts de contenu ne sont pas enregistrés lorsque la page d'extension correspondante (à partir de laquelle les scripts de contenu ont été enregistrés) est déchargée, vous devez donc enregistrer un script de contenu depuis une page d'extension qui persiste au moins aussi longtemps que vous voulez que les scripts de contenu restent enregistrés.</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.contentScripts.register", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple enregistre le script de contenu <code>defaultCode</code>  pour toutes les URL <code>.org</code> :</p>
+
+<pre class="brush: js">const defaultHosts = "*://*.org/*";
+const defaultCode = "document.body.innerHTML = '&lt;h1&gt;This page has been eaten&lt;h1&gt;'";
+
+async function register(hosts, code) {
+
+ return await browser.contentScripts.register({
+ matches: [hosts],
+ js: [{code}],
+ runAt: "document_idle"
+ });
+
+}
+
+var registered = register(defaultHosts, defaultCode);</pre>
+
+<p>Ce code enregistre le fichier JS à l'adresse content_scripts/example.js:</p>
+
+<pre class="brush: js" id="ct-3">const scriptObj = await browser.contentScripts.register({
+ "js": [{file: "/content_scripts/example.js"}],
+ "matches": ["&lt;all_urls&gt;"],
+ "allFrames": true,
+ "runAt": "document_start"
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.html b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.html
new file mode 100644
index 0000000000..140a7246dc
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.html
@@ -0,0 +1,69 @@
+---
+title: contentScripts.RegisteredContentScript
+slug: Mozilla/Add-ons/WebExtensions/API/contentScripts/RegisteredContentScript
+tags:
+ - API
+ - Extensions
+ - NeedsTranslation
+ - Reference
+ - RegisteredContentScript
+ - TopicStub
+ - Type
+ - contentScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/contentScripts/RegisteredContentScript
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un <code>RegisteredContentScript</code> est renvoyé par un appel à  {{WebExtAPIRef("contentScripts.register()")}} et représente les scripts de contenu enregistrés dans cet appel.</p>
+
+<p>Il définit une seule fonction {{WebExtAPIRef("contentScripts.RegisteredContentScript.unregister()", "unregister()")}}, qui peut être utilisée pour annuler l'enregistrement des scripts de contenu.</p>
+
+<div class="blockIndicator note">
+<p><strong>Note:</strong> Si cet objet est détruit (par exemple parce qu'il est hors de portée), les scripts de contenu seront automatiquement désinscrits. Vous devriez donc garder une référence à cet objet aussi longtemps que vous voulez que les scripts de contenu restent enregistrés.</p>
+</div>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("contentScripts.RegisteredContentScript.unregister","unregister()")}}</dt>
+ <dd>Annule l'inscription des scripts de contenu représentés par cet objet.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p class="hidden">The compatibility table on 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.contentScripts.RegisteredContentScript", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code permet de basculer un script de contenu enregistré sur un clic d'action du navigateur :</p>
+
+<pre class="brush: js">var registered = null;
+
+async function register() {
+
+ registered = await browser.contentScripts.register({
+ matches: ["*://*.org/*"],
+ js: [{
+ code: "document.body.innerHTML = '&lt;h1&gt;This page has been eaten&lt;h1&gt;'"
+ }],
+ runAt: "document_idle"
+ });
+
+}
+
+function toggle() {
+ if (registered) {
+ registered.unregister();
+ registered = null;
+ } else {
+ register();
+ }
+}
+
+browser.browserAction.onClicked.addListener(toggle);
+
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.html b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.html
new file mode 100644
index 0000000000..90c045d86b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.html
@@ -0,0 +1,67 @@
+---
+title: contentScripts.RegisteredContentScript.unregister()
+slug: >-
+ Mozilla/Add-ons/WebExtensions/API/contentScripts/RegisteredContentScript/unregister
+tags:
+ - API
+ - Extensions
+ - Reference
+ - RegisteredContentScript.unregister
+ - contentScripts
+translation_of: >-
+ Mozilla/Add-ons/WebExtensions/API/contentScripts/RegisteredContentScript/unregister
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Annule l'inscription des scripts de contenu représentés par cet objet <code>RegisteredContentScript</code>.</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">registered.unregister()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>None.</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.contentScripts.RegisteredContentScript.unregister", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code permet de basculer un script de contenu enregistré sur un clic d'action du navigateur :</p>
+
+<pre class="brush: js">var registered = null;
+
+async function register() {
+
+ registered = await browser.contentScripts.register({
+ matches: ["*://*.org/*"],
+ js: [{
+ code: "document.body.innerHTML = '&lt;h1&gt;This page has been eaten&lt;h1&gt;'"
+ }],
+ runAt: "document_idle"
+ });
+
+}
+
+function toggle() {
+ if (registered) {
+ registered.unregister();
+ registered = null;
+ } else {
+ register();
+ }
+}
+
+browser.browserAction.onClicked.addListener(toggle);
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.html
new file mode 100644
index 0000000000..d1e6657309
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.html
@@ -0,0 +1,76 @@
+---
+title: contextualIdentitities.ContextualIdentity
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/ContextualIdentity
+tags:
+ - API
+ - Add-ons
+ - ContextualIdentity
+ - Extensions
+ - Reference
+ - Type
+ - WebExtensions
+ - contextalIdentities
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/ContextualIdentity
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code><strong>contextualIdentities</strong></code><strong><code>.ContextualIdentity</code></strong> décrit une identité contextuelle unique.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>cookieStoreId</code></dt>
+ <dd><code>string</code>. L'ID du magasin de cookies pour l'identité. Puisque les identités contextuelles ne partagent pas les banques de cookies, elles servent d'identificateur unique.</dd>
+ <dt><code>color</code></dt>
+ <dd>
+ <p><code>string</code>. La couleur pour l'identité. Cela sera montré dans les onglets appartenant à cette identité. Les valeurs suivantes sont valides :</p>
+
+ <ul>
+ <li>"blue"</li>
+ <li>"turquoise"</li>
+ <li>"green"</li>
+ <li>"yellow"</li>
+ <li>"orange"</li>
+ <li>"red"</li>
+ <li>"pink"</li>
+ <li>"purple"</li>
+ <li>"toolbar"</li>
+ </ul>
+
+ <p>La valeur "toolbar" représente une couleur dépendant du thème. Les identités avec la couleur "toolbar" seront affichées dans la même couleur que le texte de la barre d'outils (correspondant à la <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/theme#colors">clé thème</a> <code>"toolbar_field_text"</code>).</p>
+ </dd>
+ <dt><code>colorCode</code></dt>
+ <dd><code>string</code>. Un code hexadécimal représentant la couleur exacte utilisée pour l'identité. Par exemple : <code>"#37adff"</code>. Dans le cas particulier de la couleur "toolbar", <code>colorCode</code> est toujours <code>"#7c7c7d"</code>, quelle que soit la couleur affichée.</dd>
+ <dt><code>icon</code></dt>
+ <dd>
+ <p><code>string</code>. Le nom d'une icône pour l'identité. Cela s'affichera dans la barre d'URL pour les onglets appartenant à cette identité. Les valeurs suivantes sont valides :</p>
+
+ <ul>
+ <li>"fingerprint"</li>
+ <li>"briefcase"</li>
+ <li>"dollar"</li>
+ <li>"cart"</li>
+ <li>"circle"</li>
+ <li>"gift"</li>
+ <li>"vacation"</li>
+ <li>"food"</li>
+ <li>"fruit"</li>
+ <li>"pet"</li>
+ <li>"tree"</li>
+ <li>"chill"</li>
+ <li>"fence"</li>
+ </ul>
+ </dd>
+ <dt><code>iconUrl</code></dt>
+ <dd><code>string</code>. Une URL complète resource:// pointant vers l'icône de l'identité. Par exemple : "resource://usercontext-content/fingerprint.svg".</dd>
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Nom de l'identité. Cela s'affichera dans la barre d'URL pour les onglets appartenant à cette identité. Notez que les noms ne doivent pas nécessairement être uniques .</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.contextualIdentities.ContextualIdentity")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.html
new file mode 100644
index 0000000000..de4913c645
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.html
@@ -0,0 +1,108 @@
+---
+title: contextualIdentities.create()
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/create
+tags:
+ - API
+ - Add-ons
+ - Create
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - contextualIdentities
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/create
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Crée une nouvelle identité contextuelle. Une fois créée, l'utilisateur pourra créer de nouveaux onglets appartenant à cette identité contextuelle, tout comme ils peuvent le faire avec les identités intégrées.</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 createContext = browser.contextualIdentities.create(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant des propriétés pour la nouvelle identité contextuelle. Cela contient les propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>name</code></dt>
+ <dd>
+ <p><code>string</code>. Le nom de la nouvelle identité. Cela sera affiché dans l'interface utilisateur du navigateur, leur permettant d'ouvrir un nouvel onglet appartenant à l'identité. Il sera également affiché dans la barre d'URL pour les onglets appartenant à cette identité.</p>
+ </dd>
+ <dt><code>color</code></dt>
+ <dd>
+ <p><code><code>string</code></code>. La couleur associée à la nouvelle identité. Cela sera utilisé pour mettre en évidence les onglets appartenant à cette identité. Vous pouvez fournir l'une des valeurs suivantes ici :</p>
+
+ <ul>
+ <li>"blue"</li>
+ <li>"turquoise"</li>
+ <li>"green"</li>
+ <li>"yellow"</li>
+ <li>"orange"</li>
+ <li>"red"</li>
+ <li>"pink"</li>
+ <li>"purple"</li>
+ <li>"toolbar"<span style="display: none;"> </span></li>
+ </ul>
+ </dd>
+ <dt><code>icon</code></dt>
+ <dd>
+ <p><code>string</code>. Le nom d'une icône à afficher dans la barre d'URL pour les onglets appartenant à cette identité. Vous pouvez fournir l'une des valeurs suivantes ici :</p>
+
+ <ul>
+ <li>"fingerprint"</li>
+ <li>"briefcase"</li>
+ <li>"dollar"</li>
+ <li>"cart"</li>
+ <li>"circle"</li>
+ <li>"gift"</li>
+ <li>"vacation"</li>
+ <li>"food"</li>
+ <li>"fruit"</li>
+ <li>"pet"</li>
+ <li>"tree"</li>
+ <li>"chill"</li>
+ <li>"fence"</li>
+ </ul>
+ </dd>
+ </dl>
+ </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 {{WebExtAPIRef('contextualIdentities.ContextualIdentity', 'ContextualIdentity')}} qui décrit la nouvelle identité. Si la fonctionnalité d'identités contextuelles n'est pas activée, la promesse est rejetée.</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.contextualIdentities.create")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple crée une nouvelle identité contextuelle et enregistre son ID de cookie :</p>
+
+<pre class="brush: js">function onCreated(context) {
+ console.log(`New identity's ID: ${context.cookieStoreId}.`);
+}
+
+function onError(e) {
+ console.error(e);
+}
+
+browser.contextualIdentities.create({
+ name: "my-thing",
+ color: "purple",
+ icon: "briefcase"
+}).then(onCreated, onError);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.html
new file mode 100644
index 0000000000..56ad56f47f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.html
@@ -0,0 +1,65 @@
+---
+title: contextualIdentities.get()
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/get
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - contextualIdentities
+ - get
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/get
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient des informations sur une identité contextuelle, compte tenu de son ID de cookie.</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 getContext = browser.contextualIdentities.get(
+ cookieStoreId // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>cookieStoreId</code></dt>
+ <dd>
+ <p><code>string</code>. L'identifiant du cookie store de cette identité contextuelle. Étant donné que les identités contextuelles ont chacune leur propre magasin de cookies, cela sert d'identifiant pour l'identité contextuelle elle-même.</p>
+ </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 {{WebExtAPIRef('contextualIdentities.ContextualIdentity', 'ContextualIdentity')}} qui décrit l'identité. Si l'identité n'a pas pu être trouvée ou si la fonctionnalité d'identités contextuelles n'est pas activée, la promesse est rejetée.</p>
+
+<h2 id="Comptatiblité_du_navigateur">Comptatiblité 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.contextualIdentities.get")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple tente de récupérer l'identité contextuelle dont l'ID est "firefox-container-1":</p>
+
+<pre class="brush: js">function onGot(context) {
+ if (!context) {
+ console.error("Context not found");
+ } else {
+ console.log(`Name: ${context.name}`);
+ }
+}
+
+function onError(e) {
+ console.error(e);
+}
+
+browser.contextualIdentities.get("firefox-container-1").then(onGot, onError);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.html
new file mode 100644
index 0000000000..1b54fb8291
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.html
@@ -0,0 +1,65 @@
+---
+title: contextualIdentities
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities
+tags:
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Travailler avec des identités contextuelles : lister, créer, supprimer et mettre à jour des identités contextuelles.</p>
+
+<p>Les « identités contextuelles », également appelées « conteneurs », sont des fonctions de navigation qui répondent à l’idée que les utilisateurs assument plusieurs identités lorsqu’ils naviguent sur le web, et souhaitent maintenir une certaine séparation entre ces identités. Par exemple, un utilisateur peut considérer que son « identité de travail » est distincte de son « identité personnelle » et ne veut pas partager les cookies entre ces deux contextes.</p>
+
+<p>Avec la fonctionnalité d’identités contextuelles, chaque identité contextuelle a un nom, une couleur et une icône. De nouveaux onglets peuvent être assignés à une identité et le nom, l’icône et la couleur apparaîtront dans la barre d’adresse. En interne, chaque identité possède son propre magasin de cookies qui n’est pas partagé avec d’autres onglets…</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/14719/containers.png" style="display: block; height: 259px; margin-left: auto; margin-right: auto; width: 515px;">Les identités contextuelles sont une fonctionnalité expérimentale de Firefox et ne sont activées par défaut dans Firefox Nightly. Pour activer dans d’autres versions de Firefox, définissez la préférence <code>privacy.userContext.enabled</code> sur <code>true</code>. Notez que bien que les identités contextuelles soient disponibles dans Firefox pour Android, il n'y a pas d’interface utilisateur pour travailler avec eux dans cette version pour travailler avec eux dans cette versiondu navigateur.</p>
+
+<p>Avant Firefox 57, l’API <code>contextualIdentities</code> n’était disponible que si la fonctionnalité d’identités contextuelles était activée. Si une extension essayait d’utiliser l’API <code>contextualIdentities</code> sans activer la fonctionnalité, les appels de méthode résolvaient leurs promesses avec <code>false</code>.</p>
+
+<p>À partir de Firefox 57, si une extension utilisant l’API  <code>contextualIdentities</code> est installée, la fonctionnalité d’identités contextuelles est automatiquement activée. Notez cependant qu’il est toujours possible pour l’utilisateur de désactiver la fonctionnalité en utilisant la préférence « privacy.userContext.enabled ». Si cela se produit, les appels de méthode <code>contextualIdentities</code> rejetteront leurs promesses avec un message d’erreur.</p>
+
+<p>Pour plus d’informations sur les identités contextuelles, consultez <a href="https://wiki.mozilla.org/Security/Contextual_Identity_Project/Containers">ce guide</a>.</p>
+
+<p>Les identités contextuelles ne sont actuellement pas supportes dans les autres navigateurs.</p>
+
+<p>Pour utiliser cette API, vous devez inclure la <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> « contextualIdentities » dans votre fichier <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json</a>.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("contextualIdentities.ContextualIdentity")}}</dt>
+ <dd>Contient des informations sur une identité contextuelle.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("contextualIdentities.create()")}}</dt>
+ <dd>Crée une nouvelle identité contextuelle.</dd>
+ <dt>{{WebExtAPIRef("contextualIdentities.get()")}}</dt>
+ <dd>Récupère une identité contextuelle unique, compte tenu de son ID de cookie.</dd>
+ <dt>{{WebExtAPIRef("contextualIdentities.query()")}}</dt>
+ <dd>Récupère toutes les identités contextuelles ou toutes les identités contextuelles avec un nom particulier.</dd>
+ <dt>{{WebExtAPIRef("contextualIdentities.update()")}}</dt>
+ <dd>Met à jour les propriétés d’une identité contextuelle existante.</dd>
+ <dt>{{WebExtAPIRef("contextualIdentities.remove()")}}</dt>
+ <dd>Supprime une identité contextuelle.</dd>
+ <dt>
+ <h2 id="Événements">Événements</h2>
+ </dt>
+ <dt>{{WebExtAPIRef("contextualIdentities.onCreated")}}</dt>
+ <dd>Lancé lorsqu’une identité contextuelle est créée</dd>
+ <dt>{{WebExtAPIRef("contextualIdentities.onRemoved")}}</dt>
+ <dd>Lancé lorsqu’une identité contextuelle est supprimée</dd>
+ <dt>{{WebExtAPIRef("contextualIdentities.onUpdated")}}</dt>
+ <dd>Lancé lorsqu’une ou plusieurs propriétés d’une identité contextuelle sont mises à jour</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.contextualIdentities")}}</p>
+
+<p>{{WebExtExamples("h2")}}</p>
+
+<p> </p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.html
new file mode 100644
index 0000000000..76673a8943
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.html
@@ -0,0 +1,98 @@
+---
+title: contextualIdentities.onCreated
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/onCreated
+tags:
+ - API
+ - APIReference
+ - Add-ons
+ - Evènement
+ - Extensions
+ - WebExtensions
+ - contextualIdentities
+ - onCreated
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/onCreated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'une nouvelle identité contextuelle est créée. Les identités contextuelles peuvent être créées par des extensions en utilisant l'API <code>contextualIdentities</code>, ou directement par l'utilisateur, en utilisant l'interface utilisateur du navigateur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.contextualIdentities.onCreated.addListener(listener)
+browser.contextualIdentities.onCreated.removeListener(listener)
+browser.contextualIdentities.onCreated.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</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>changeInfo</code></dt>
+ <dd><code>object</code>. Un objet contenant une seule propriété, <code>contextualIdentity</code>, qui est un objet {{WebExtAPIRef("contextualIdentities.ContextualIdentity")}} représentant l'identité créé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.contextualIdentities.onCreated")}}</p>
+
+<h2 id="Examples">Examples</h2>
+
+<pre class="brush: js">function handleCreated(changeInfo) {
+ console.log(`Created: ${changeInfo.contextualIdentity.name}`);
+}
+
+browser.contextualIdentities.onCreated.addListener(handleCreated);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.html
new file mode 100644
index 0000000000..9d0426cbf9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.html
@@ -0,0 +1,98 @@
+---
+title: contextualIdentities.onRemoved
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/onRemoved
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Reference
+ - WebExtensions
+ - contextualIdentities
+ - onRemoved
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/onRemoved
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'une nouvelle identité contextuelle est supprimée. Les identités contextuelles peuvent être supprimées par des extensions en utilisant l'API <code>contextualIdentities</code>,  ou directement par l'utilisateur, en utilisant l'interface utilisateur du navigateur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.contextualIdentities.onRemoved.addListener(listener)
+browser.contextualIdentities.onRemoved.removeListener(listener)
+browser.contextualIdentities.onRemoved.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</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>changeInfo</code></dt>
+ <dd><code>object</code>. Un objet qui contient une seule propriété, <code>contextualIdentity</code>, qui est un objet {{WebExtAPIRef("contextualIdentities.ContextualIdentity")}} représentant l'identité qui a été supprimé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.contextualIdentities.onRemoved")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleRemoved(changeInfo) {
+ console.log(`Removed: ${changeInfo.contextualIdentity.name}`);
+}
+
+browser.contextualIdentities.onRemoved.addListener(handleRemoved);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.html
new file mode 100644
index 0000000000..7966a6f8a7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.html
@@ -0,0 +1,98 @@
+---
+title: contextualIdentities.onUpdated
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/onUpdated
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Reference
+ - WebExtensions
+ - contextualIdentities
+ - onUpdated
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/onUpdated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque les propriétés d'une identité contextuelle, telles que son nom, son icône ou sa couleur, sont modifiées. Les identités contextuelles peuvent être mises à jour par des extensions en utilisant l'API <code>contextualIdentities</code> , ou directement par l'utilisateur, en utilisant l'interface utilisateur du navigateur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.contextualIdentities.onUpdated.addListener(listener)
+browser.contextualIdentities.onUpdated.removeListener(listener)
+browser.contextualIdentities.onUpdated.hasListener(listener)
+</pre>
+
+<p>Events have three functions:</p>
+
+<dl>
+ <dt><code>addListener(listener)</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 le <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>changeInfo</code></dt>
+ <dd><code>object</code>. Un objet qui contient une seule propriété, <code>contextualIdentity</code>, qui est un objet {{WebExtAPIRef("contextualIdentities.ContextualIdentity")}} représentant l'identité dont les propriétés ont été mises à jour.</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.contextualIdentities.onUpdated")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleUpdated(changeInfo) {
+ console.log(`Updated: ${changeInfo.contextualIdentity.name}`);
+}
+
+browser.contextualIdentities.onUpdated.addListener(handleUpdated);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.html
new file mode 100644
index 0000000000..e7578e6417
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.html
@@ -0,0 +1,85 @@
+---
+title: contextualIdentities.query()
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/query
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - contextualIdentities
+ - query
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/query
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient des informations sur toutes les identités contextuelles ou sur les identités contextuelles correspondant à un argument de filtre donné.</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 getContext = browser.contextualIdentities.query(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd>
+ <p><code>object</code>. Un objet qui peut être utilisé pour filtrer les identités contextuelles renvoyées. Cela peut contenir l'une des propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>name</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Renvoie uniquement les identités contextuelles avec ce nom.</dd>
+ </dl>
+ </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 tableau d'objets  {{WebExtAPIRef('contextualIdentities.ContextualIdentity', 'ContextualIdentity')}} chacun décrivant une seule identité. Si la fonctionnalité d'identités contextuelles n'est pas activée, la promesse est rejetée.</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.contextualIdentities.query")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Retrieve all contextual identities, and log their names :</p>
+
+<pre class="brush: js">function onGot(contexts) {
+ for (let context of contexts) {
+ console.log(`Name: ${context.name}`);
+ }
+}
+
+function onError(e) {
+ console.error(e);
+}
+
+browser.contextualIdentities.query({}).then(onGot, onError);</pre>
+
+<p>Récupérez toutes les identités contextuelles dont les noms sont "my-thing", et consignez leurs noms :</p>
+
+<pre class="brush: js">function onGot(contexts) {
+ for (let context of contexts) {
+ console.log(`Name: ${context.name}`);
+ }
+}
+
+function onError(e) {
+ console.error(e);
+}
+
+browser.contextualIdentities.query({
+ name: "my-thing"
+}).then(onGot, onError);
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.html
new file mode 100644
index 0000000000..c2001bcc8a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.html
@@ -0,0 +1,67 @@
+---
+title: contextualIdentities.remove()
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/remove
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - contextualIdentities
+ - remove
+ - supprimer
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/remove
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime une identité contextuelle, compte tenu de son ID de cookie.</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 removeContext = browser.contextualIdentities.remove(
+ cookieStoreId // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>cookieStoreId</code></dt>
+ <dd>
+ <p><code>string</code>. L'identifiant du cookie store de l'identité contextuelle. Étant donné que les identités contextuelles ont chacune leur propre magasin de cookies, cela sert d'identifiant pour l'identité contextuelle elle-même.</p>
+ </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 {{WebExtAPIRef('contextualIdentities.ContextualIdentity', 'ContextualIdentity')}} décrivant l'identité qui a été supprimée. Si l'identité n'a pas pu être trouvée ou si la fonctionnalité d'identités contextuelles n'est pas activée, la promesse est rejetée.</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.contextualIdentities.remove")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p><span id="result_box" lang="fr"><span>Cet exemple tente de supprimer l'identité contextuelle dont l'ID est "firefox-container-1" </span></span>:</p>
+
+<pre class="brush: js">function onRemoved(context) {
+ if (!context) {
+ console.error("Context not found");
+ } else {
+ console.log(`Removed identity: ${context.cookieStoreId}.`);
+ }
+}
+
+function onError(e) {
+ console.error(e);
+}
+
+browser.contextualIdentities.remove("firefox-container-1").
+ then(onRemoved, onError);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.html
new file mode 100644
index 0000000000..226780b24a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.html
@@ -0,0 +1,114 @@
+---
+title: contextualIdentities.update()
+slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/update
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - Update
+ - WebExtensions
+ - contextualIdentities
+translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities/update
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Met à jour les propriétés d'une identité contextuelle, compte tenu de son ID de cookie.</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 createContext = browser.contextualIdentities.update(
+ cookieStoreId, // string
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>cookieStoreId</code></dt>
+ <dd>
+ <p><code>string</code>. L'identifiant du cookie store de cette identité contextuelle. Étant donné que les identités contextuelles ont chacune leur propre magasin de cookies, cela sert d'identifiant pour l'identité contextuelle elle-même.</p>
+ </dd>
+ <dt><code>details</code></dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant de nouvelles valeurs pour les propriétés que vous souhaitez modifier. Cela peut contenir l'une des propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>name</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. Un nouveau nom pour l'identité. Cela sera affiché dans l'interface utilisateur du navigateur, leur permettant d'ouvrir un nouvel onglet dans l'identité. Il sera également affiché dans la barre d'URL pour les onglets appartenant à cette identité.</p>
+ </dd>
+ <dt><code>color</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code><code>string</code></code>. Une nouvelle couleur pour l'identité. Cela sera utilisé pour mettre en évidence les onglets appartenant à cette identité. Vous pouvez fournir l'une des valeurs suivantes ici :</p>
+
+ <ul>
+ <li>"blue"</li>
+ <li>"turquoise"</li>
+ <li>"green"</li>
+ <li>"yellow"</li>
+ <li>"orange"</li>
+ <li>"red"</li>
+ <li>"pink"</li>
+ <li>"purple"</li>
+ <li>"toolbar"<span style="display: none;"> </span></li>
+ </ul>
+ </dd>
+ <dt><code>icon</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. Une nouvelle icône pour l'identité. Vous pouvez fournir l'une des valeurs suivantes ici :</p>
+
+ <ul>
+ <li>"fingerprint"</li>
+ <li>"briefcase"</li>
+ <li>"dollar"</li>
+ <li>"cart"</li>
+ <li>"circle"</li>
+ <li>"gift"</li>
+ <li>"vacation"</li>
+ <li>"food"</li>
+ <li>"fruit"</li>
+ <li>"pet"</li>
+ <li>"tree"</li>
+ <li>"chill"</li>
+ <li>"fence"</li>
+ </ul>
+ </dd>
+ </dl>
+ </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 {{WebExtAPIRef('contextualIdentities.ContextualIdentity', 'ContextualIdentity')}} qui décrit l'identité mise à jour. Si l'identité n'a pas pu être trouvée ou si la fonctionnalité d'identités contextuelles n'est pas activée, la promesse est rejetée.</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.contextualIdentities.update")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple met à jour l'identité contextuelle dont l'ID est "firefox-container-1" pour avoir un nouveau nom, une nouvelle couleur et une nouvelle icône :</p>
+
+<pre class="brush: js">function onUpdated(context) {
+ console.log(`New identity's name: ${context.name}.`);
+}
+
+function onError(e) {
+ console.error(e);
+}
+
+browser.contextualIdentities.update(
+ "firefox-container-1", {
+ name: "my-thing",
+ color: "purple",
+ icon: "briefcase"
+ }).then(onUpdated, onError);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.html
new file mode 100644
index 0000000000..edf72e7b14
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.html
@@ -0,0 +1,113 @@
+---
+title: cookies.Cookie
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/Cookie
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - cookie
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/Cookie
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>Cookie</code> de l'API {{WebExtAPIRef("cookies")}} représente des informations sur un cookie HTTP.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets, qui peuvent contenir les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>domain</code></dt>
+ <dd>Une <code>chaîne</code> représentant le domaine auquel appartient le cookie (par exemple "www.google.com", "example.com").</dd>
+ <dt><code>expirationDate</code>{{optional_inline}}</dt>
+ <dd>Un <code>number</code> représentant la date d'expiration du cookie en tant que nombre de secondes depuis l'époque UNIX. Non fourni pour les cookies de session.</dd>
+ <dt><code>firstPartyDomain</code></dt>
+ <dd>Une <code>chaîne</code> représentant le domaine de la première partie associé au cookie. Cela sera une chaine vide si le cookie a été défini alors que l'isolation de la première partie est désactivée. Voir <a href="/fr/Add-ons/WebExtensions/API/cookies#Isolement_de_la_première_partie">Isolement de la première partie</a>.</dd>
+ <dt><code>hostOnly</code></dt>
+ <dd>Un <code>booléen</code>, <code>true</code> si le cookie est un cookie hôte uniquement (c'est à dire que l'hôte de la requête doit correspondre exactement au domaine du cookie), ou  <code>false</code> dans la case contraire.</dd>
+ <dt><code>httpOnly</code></dt>
+ <dd>Un <code>booléen</code>, <code>true</code> si le cookie est marqué comme  HttpOnly (c'est à dire le cookie est inaccessible aux scripts côté client), ou <code>false</code> dans le cas contraire.</dd>
+ <dt><code>name</code></dt>
+ <dd>Une <code>chaîne</code> représentant le nom du cookie.</dd>
+ <dt><code>path</code></dt>
+ <dd>Une <code>chaîne</code> représentant le chemin du cookie.</dd>
+ <dt><code>secure</code></dt>
+ <dd>Un <code>booléen</code>, true si le cookie est marqué comme sécurisé (c'est à dire que si sa portée est limitée aux canaux sécurisés, généralement HTTPS), ou <code>false</code> dans le cas contraire.</dd>
+ <dt><code>session</code></dt>
+ <dd>Un <code>boolean</code>, <code>true</code> si le cookie est un cookie de session, ou <code>false</code> s'il s'agit d'un cookie persistant avec une date expiration.</dd>
+ <dt><code>sameSite</code></dt>
+ <dd>Une valeur {{WebExtAPIRef("cookies.SameSiteStatus")}} qui indique l'état SameSite du cookie.</dd>
+ <dt><code>storeId</code></dt>
+ <dd>Une <code>chaine</code> représentant l'ID du cookie store contenant ce cookie, tel que fourni par {{WebExtAPIRef("cookies.getAllCookieStores()")}}.</dd>
+ <dt><code>value</code></dt>
+ <dd>Une <code>chaîne</code> représentant la valeur du cookie.</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.cookies.Cookie")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>La plupart des méthodes de l'API cookies impliquent qu'un objet <code>Cookie</code>    soit utilisé en tant que paramètre d'entrée ou en tant que partie de la valeur retournée. Par exemple, un appel à {{WebExtAPIRef("cookies.getAll()")}} retourne un tableau d'objets <code>Cookie</code>.</p>
+
+<p>Dans l'exemple ci-dessous, nous avons demandé tous les cookies, puis enregistré quelque-unes des valeurs de chacun des objets <code>Cookie</code> :</p>
+
+<pre class="brush: js">function logCookies(cookies) {
+ for (cookie of cookies) {
+ console.log(`Domain: ${cookie.domain}`);
+ console.log(`Name: ${cookie.name}`);
+ console.log(`Value: ${cookie.value}`);
+ console.log(`Persistent: ${!cookie.session}`);
+ }
+}
+
+var gettingAll = browser.cookies.getAll({});
+gettingAll.then(logCookies);</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.html
new file mode 100644
index 0000000000..a37e76b31f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.html
@@ -0,0 +1,99 @@
+---
+title: cookies.CookieStore
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/CookieStore
+tags:
+ - API
+ - Add-ons
+ - CookieStore
+ - Cookies
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/CookieStore
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>CookieStore</code> de l'API {{WebExtAPIRef("cookies")}} représente un cookie store dans le navigateur.</p>
+
+<p>Les fenperes dans les différents mode de navigations peut utiliser différents magasins de cookies — Une fenêtre de navigation privée/ mode navigation privée, par exemple utilisera un magasin de cookies séparé d'une fenêtre non-privée / privée.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets, qui peuvent contenir les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>id</code></dt>
+ <dd>Une <code>chaîne</code> représentant l'identification unique pour le cookie store.***</dd>
+ <dt><code>incognito</code></dt>
+ <dd>Une valeur booléenne qui indique s'il s'agit d'un magasin de cookies incognito.</dd>
+ <dt><code>tabIds</code></dt>
+ <dd>Un <code>tableau</code> d'<code><code>entiers</code></code>, qui identifie tous les onglets du navigateur qui partagent ce cookie store.</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.cookies.CookieStore")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans l'extrait suivant, la méthode {{WebExtAPIRef("cookies.getAllCookieStores()")}} permet de récupérer tous les magasins de cookies actuellement disponibles dans le navigateur et d'afficher chaque ID de cookie, ainsi que les onglets qui se partagent le cookie store.</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">logStores</span><span class="punctuation token">(</span>cookieStores<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">for</span><span class="punctuation token">(</span>store <span class="keyword token">of</span> cookieStores<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="template-string token"><span class="string token">`Cookie store: </span><span class="interpolation token"><span class="interpolation-punctuation punctuation token">${</span>store<span class="punctuation token">.</span>id<span class="interpolation-punctuation punctuation token">}</span></span><span class="string token">\n Tab IDs: </span><span class="interpolation token"><span class="interpolation-punctuation punctuation token">${</span>store<span class="punctuation token">.</span>tabIds<span class="interpolation-punctuation punctuation token">}</span></span><span class="string token">`</span></span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">var</span> getting <span class="operator token">=</span> browser<span class="punctuation token">.</span>cookies<span class="punctuation token">.</span><span class="function token">getAllCookieStores</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+getting<span class="punctuation token">.</span><span class="function token">then</span><span class="punctuation token">(</span>logStores<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>L'extrait de code suivant obtient tous les cookies stockés et enregistre ensuite le nombre total stocké et combien de ces cookies sont incognito.</p>
+
+<pre class="brush: js">browser.cookies.getAllCookieStores().then((stores) =&gt; {
+ var incognitoStores = stores.map(store =&gt; store.incognito);
+ console.log(`Of ${stores.length} cookie stores, ${incognitoStores.length} are incognito.`);
+});</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.html
new file mode 100644
index 0000000000..be23fa820d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.html
@@ -0,0 +1,122 @@
+---
+title: cookies.get()
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/get
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - get
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/get
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <strong><code>get()</code></strong> de l'API {{WebExtAPIRef("cookies")}} récupère les informations d'un seul cookie, par son nom et son URL.</p>
+
+<p>Si plus d'un cookie portant le même nom existent pour une URL donnée, celui contenant le chemin le plus long sera retourné. Pour les cookies ayant la même longueur de chemin, le plus ancien cookie sera retourné. Si aucun cookie ne correspond alors <code>null</code> est retourné.</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 getting = browser.cookies.get(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd>Un <code>objet</code> contenant les informations pouvant être utilisées pour récupérer un cookie. Il peut inclure les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>firstPartyDomain</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant le domaine de première partie avec lequel le cookie à récupérer est associé. Cette propriété doit être fournie si l'isolation de la première partie est activée sur le navigateur. Voir <a href="/fr/Add-ons/WebExtensions/API/cookies#Isolement_de_la_première_partie">Isolement de la première partie</a>.</dd>
+ <dt><code>name</code></dt>
+ <dd>Une <code>chaîne</code> représentant le nom du cookie à récupérer.</dd>
+ <dt><code>storeId</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant l'ID du {{WebExtAPIRef("cookies.CookieStore", "cookie store")}} dans lequel rechercher le cookie (tel que renvoyé par  {{WebExtAPIRef("cookies.getAllCookieStores()")}}). Par défault, le cookie store du contexte d'exécution actuel sera utilisé.</dd>
+ <dt><code>url</code></dt>
+ <dd>Une <code>chaîne</code> représentant l'URL avec laquelle le cookie à récupérer est associé. Cet argument peut être une URL complète, auquel cas toute donnée suivant le chemin d'URL (par exemple la chaîne de requête) est simplement ignorée. Si les  <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions"> permissions d'hôte</a> pour cette URL ne sont pas spécifiées dans le <a href="/fr/Add-ons/WebExtensions/manifest.json">fichier manifeste</a> de l'extension, l'appel de l'API échouera.</dd>
+ </dl>
+ </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 objet {{WebExtAPIRef('cookies.Cookie', 'Cookie')}} contenant des détails sur le cookie, ou <code>null</code> si le cookie n'a pas été trouvé.</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.cookies.get")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple tente d'obtenir le cookie nommé "favourite-colour", associé à l'URL de l'onglet actuellement actif :</p>
+
+<pre class="brush: js">function logCookie(cookie) {
+ if (cookie) {
+ console.log(cookie.value);
+ }
+}
+
+function getCookie(tabs) {
+ var getting = browser.cookies.get({
+ url: tabs[0].url,
+ name: "favourite-colour"
+ });
+ getting.then(logCookie);
+}
+
+var getActive = browser.tabs.query({
+ active: true,
+ currentWindow: true
+});
+getActive.then(getCookie);</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.html
new file mode 100644
index 0000000000..f0c9922312
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.html
@@ -0,0 +1,120 @@
+---
+title: cookies.getAll()
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/getAll
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getAll
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/getAll
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <strong><code>getAll()</code></strong> de l'API {{WebExtAPIRef("cookies")}} récupère tous les cookies d'un seul cookie store qui correspondent aux informations fournies.</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 getting = browser.cookies.getAll(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd>Un <code>object</code> contenant des détails pouvant être utilisés pour faire correspondre les cookies à extraire. Les propriétés incluses sont les suivantes (voir <a href="/fr/Add-ons/WebExtensions/API/cookies/Cookie#Type">type de cookie</a> pour plus d'informations sur celles-ci ) :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>domain</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant un domaine auquel les cookies doivent être associés (ils peuvent être associés soit à ce domaine exact, soit à l'un de ses sous-domaines).</dd>
+ <dt><code>firstPartyDomain</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant le domaine de première partie avec lequel le cookie à récupérer est associé.</dd>
+ <dd>Cette propriété doit être fournie si l'isolation de la première partie est activée sur le navigateur. Vous pouvez cependant passer <code>null</code> dans cette situation. Si vous faites cela, alors les cookies avec n'importe quelle valeur pour <code>firstPartyDomain</code>, ainsi que les cookies qui n'ont pas de set <code>firstPartyDomain</code> , seront inclus dans les résultats. Voir <a href="/fr/Add-ons/WebExtensions/API/cookies#Isolement_de_la_première_partie">Isolement de la première partie</a>.</dd>
+ <dt><code>name</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant un nom que les cookies devraient avoir.</dd>
+ <dt><code>path</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant un chemin - le chemin des cookies doit être identique à celui-ci.</dd>
+ <dt><code>secure</code>{{optional_inline}}</dt>
+ <dd>Un <code>booléen</code> — filtre les cookies par leur propriété <code>sécurisée</code>, vous permettant de filtrer les cookies sécurisés contre les cookies non sécurisés.</dd>
+ <dt><code>session</code>{{optional_inline}}</dt>
+ <dd>Un <code>booléen</code>— filtre les cookies en fonction de leur propriété de <code>session</code>, ce qui vous permet de filtrer les cookies de session par rapport aux cookies persistants.</dd>
+ <dt><code>storeId</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant le magasin de cookies pour récupérer les cookies. S'il est omi, le cookie store du contexte d'exécution actuel sera utilisé.</dd>
+ <dt><code>url</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant une URL à laquelle les cookies récupérés doivent être associés.</dd>
+ </dl>
+ </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 tableau d'objets   <code>{{WebExtAPIRef('cookies.Cookie')}}</code> correspondant aux propriétés données dans le paramètre <code>details</code>. Seuls les cookies non expirés sont renvoyés. Les cookies retournés seront triés par longueur de chemin, du plus long au plus court. Si plusieurs cookies ont la même longueur de chemin, ceux dont l'heure de création est la plus proche seront les premiers.</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.cookies.getAll")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans l'extrait suivant, nous appelons pour obtenir tous les cookies que le navigateur a actuellement stockés qui ont un nom de "favourite-colour". Lorsque le résultat est renvoyé, nous imprimons la valeur de chaque résultat à la console.</p>
+
+<pre class="brush: js">function logCookies(cookies) {
+ for (let cookie of cookies) {
+ console.log(cookie.value);
+ }
+}
+
+var gettingAll = browser.cookies.getAll({
+ name: "favourite-colour"
+});
+gettingAll.then(logCookies);</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.html
new file mode 100644
index 0000000000..4b5b2dbfa7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.html
@@ -0,0 +1,101 @@
+---
+title: cookies.getAllCookieStores()
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/getAllCookieStores
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getAllCookieStores
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/getAllCookieStores
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <strong><code>getAllCookieStores()</code></strong> de l'API {{WebExtAPIRef("cookies")}} retourne une liste de tous les cookies stores.</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 gettingStores = browser.cookies.getAllCookieStores()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</p>
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_renvoyée">Valeur renvoyée</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un <code>tableau</code> d'objets {{WebExtAPIRef('cookies.CookieStore')}} représentant tous les cookies stores existants.</p>
+
+<h2 id="Compatibibilité_du_navigateur">Compatibibilité 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.cookies.getAllCookieStores")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans l'extrait suivant, la méthode <code>getAllCookieStores()</code> permet de récupérer tous les cookies stores actuellement disponible dans le navigateur et d'afficher chaque ID de cookie et les onglets qui partagent actuellement chaque cookie store.</p>
+
+<pre class="brush: js">function logStores(cookieStores) {
+ for (let store of cookieStores) {
+ console.log(`Cookie store: ${store.id}\n Tab IDs: ${store.tabIds}`);
+ }
+}
+
+var getting = browser.cookies.getAllCookieStores();
+getting.then(logStores);</pre>
+
+<p>Chaque membre du tableau <code>cookieStores</code> est un objet  {{WebExtAPIRef("cookies.CookieStore")}}.</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</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 class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/index.html
new file mode 100644
index 0000000000..41e2ec1268
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/index.html
@@ -0,0 +1,169 @@
+---
+title: cookies
+slug: Mozilla/Add-ons/WebExtensions/API/cookies
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Permet aux extensions d'obtenir et de définir des cookies, et d'être averti quand ils changent.</p>
+
+<p>Pour utiliser cette API, vous devez inclure l'<a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">API permission</a> "cookies" dans votre fichier  <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a>, ainsi que les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions d'hôte</a>  pour les sites dont vous devez accéder aux cookies. Voir les <a href="/fr/Add-ons/WebExtensions/API/cookies#Permissions">permissions cookies</a>.</p>
+
+<h2 id="Permissions">Permissions</h2>
+
+<p>Pour utiliser cette API, un module complémentaire doit spécifier la  <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission d'API</a> "cookies" dans son manifest, ainsi que les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions host</a> pour tous les sites pour lesquels il souhaite accéder aux cookies. L'add-on peut lire ou écrire des cookies qui pourraient être lus ou écrits  par une URL correspondant aux permissions de l'hôte. Par exemple :</p>
+
+<dl>
+ <dt><code>http://*.example.com/</code></dt>
+ <dd>
+ <p>Un module complémentaire avec cette autorisation d'hôte peut :</p>
+
+ <ul>
+ <li>Lire un cookie non sécurisé pour <code>www.example.com</code>, avec n'importe quel chemin.</li>
+ <li>Écrire un cookie ou non sécurisé pour <code>www.example.com</code>, avec n'importe quel chemin.</li>
+ </ul>
+
+ <p>Il ne peut <em>pas</em> :</p>
+
+ <ul>
+ <li>Lire un cookie  sécurisé pour <code>www.example.com</code>.</li>
+ </ul>
+ </dd>
+ <dt><code>http://www.example.com/</code></dt>
+ <dd>
+ <p>Un module complémentaire avec cette permission d'hôte peut :</p>
+
+ <ul>
+ <li>Lire un cookie non sécurisé pour <code>www.example.com</code>, avec n'importe quel chemin.</li>
+ <li>Lire un cookie non sécurisé pour <code>.example.com</code>, avec n'importe quel chemin.</li>
+ <li>Écrire un cookie sécurisé ou non sécurisé pour  <code>www.example.com</code> avec n'importe quel chemin.</li>
+ <li>Écrire un cookie sécurisé ou non sécurisé pour  <code>.example.com</code> avec n'importe quel chemin.</li>
+ </ul>
+
+ <p>Il ne peut <em>pas</em> :</p>
+
+ <ul>
+ <li>Lire ou écrire un cookie pour <code>foo.example.com</code>.</li>
+ <li>Lire ou écrire un cookie pour <code>foo.www.example.com</code>.</li>
+ </ul>
+ </dd>
+ <dt><code>*://*.example.com/</code></dt>
+ <dd>
+ <p>Un module complémentaire avec çà permission d'hôtes n add-on with this host permission may:</p>
+
+ <ul>
+ <li>Read or write a secure or non-secure cookie for <code>www.example.com</code> with any path.</li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="Isolement_de_la_première_partie">Isolement de la première partie</h2>
+
+<p>Les cookies tiers sont des cookies qui sont définis par un site Web autre que celui sur lequel vous êtes actuellement. Par exemple :</p>
+
+<ol>
+ <li>Vous visitez <a href="http://bbc.com">bbc.com</a>. Il contient une annonce de <a href="http://tracker.com">tracker.com</a> qui définit un cookie associé au domaine "<a href="http://tracker.com">tracker.com</a>".</li>
+ <li>Vous visitez <a href="http://cnn.com">cnn.com</a>. Il contient également une annonce de  <a href="http://tracker.com">tracker.com</a> qui définit un cookie associé au domaine "<a href="http://tracker.com">tracker.com</a>".</li>
+ <li>Finalement, les deux cookies peuvent être envoyés à <a href="http://tracker.com">tracker.com</a>. qui peut alors comprendre que le même utilisateur a visité les deux sites.</li>
+</ol>
+
+<p>Lorsque l'isolement de la première partie est activé, les cookies sont en outre qualifiés par le domaine de la page d'origine visitée par l'utilisateur (essentiellement, le domaine montré à l'utilisateur dans la barre d'URL, également appelé "première partie du domaine"). Cela signifie qu'un tracker ne peut pas corréler son cookie de <a href="http://bbc.com">bbc.com</a> avec son cookie de <a href="http://cnn.com">cnn.com</a>, de sorte que le tracker ne peut pas suivre un seul utilisateur sur les deux sites.</p>
+
+<p>L'isolement de la première partie peut être activé directement par l'utilisateur en ajustant la configuration du navigateur et peut être défini par des extensions à l'aide du paramètre <code><a href="/en-US/Add-ons/WebExtensions/API/privacy/websites#Properties">firstPartyIsolate</a></code> de l'API de <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/privacy">privacy</a></code> Notez que l'isolation de première partie est activée par défaut dans le <a href="https://www.torproject.org/">Tor Browser</a>.</p>
+
+<p>Dans l'API <code>cookies</code>, le domaine de première partie est représenté à l'aide de l'attribut <code>firstPartyDomain</code>. Tous les cookies configurés pendant l'isolement de la première partie ont cet attribut défini sur le domaine de la page d'origine. Dans l'exemple ci-dessus, ce serait "<a href="http://bbc.com">bbc.com</a>" pour un cookie et "<a href="http://cnn.com">cnn.com</a>" pour l'autre. Tous les cookies définis par les sites Web alors que l'isolation de première partie est désactivée auront cette propriété définie sur une chaîne vide.<br>
+ <br>
+ Le {{WebExtAPIRef("cookies.get()")}}, {{WebExtAPIRef("cookies.getAll()")}}, {{WebExtAPIRef("cookies.set()")}} et {{WebExtAPIRef("cookies.remove()")}} Les API acceptent toutes une option <code>firstPartyDomain</code>.</p>
+
+<p>Lorsque l'isolation de première partie est activée, vous devez fournir cette option ou les appels de l'API échoueront. Pour <code>get()</code>, <code>set()</code>, et <code>remove()</code>vous devez passer une valeur de chaîne de caractères.</p>
+
+<p>Pour <code>getAll()</code>,  vous pouvez aussi passer <code>null</code> ici, et ceci obtiendra tous les cookies,<br>
+ qu'ils aient ou non une valeur non vide pour <code>firstPartyDomain.</code></p>
+
+<p>Lorsque l'isolation de la première partie est désactivée, le paramètre <code>firstPartyDomain</code> est optionnel et par défaut est une chaîne vide. Une chaîne non vide peut être utilisée pour récupérer ou modifier les cookies d'isolation de première partie. De même, passer  <code>null</code> comme <code>firstPartyDomain</code> pour <code>getAll()</code> retournera tous les cookies.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("cookies.Cookie")}}</dt>
+ <dd>Représente les informations sur un cookie HTTP.</dd>
+ <dt>{{WebExtAPIRef("cookies.CookieStore")}}</dt>
+ <dd>Représente un cookie store dans le navigateur.</dd>
+ <dt>{{WebExtAPIRef("cookies.OnChangedCause")}}</dt>
+ <dd>Représente la raison pour laquelle un cookie a été modifié.***</dd>
+ <dt>{{WebExtAPIRef("cookies.SameSiteStatus")}}</dt>
+ <dd>Représente le même statut du cookie sur le site.</dd>
+</dl>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("cookies.get()")}}</dt>
+ <dd>Récupère les informations sur un cookie unique.</dd>
+ <dt>{{WebExtAPIRef("cookies.getAll()")}}</dt>
+ <dd>Récupère tous les cookies correspondant à un ensemble de filtres données.</dd>
+ <dt>{{WebExtAPIRef("cookies.set()")}}</dt>
+ <dd>Définit un cookie avec les données d'un cookie donné ; peut remplacer les cookies équivalents s'ils existent.</dd>
+ <dt>{{WebExtAPIRef("cookies.remove()")}}</dt>
+ <dd>Supprime un cookie par son nom.</dd>
+ <dt>{{WebExtAPIRef("cookies.getAllCookieStores()")}}</dt>
+ <dd>Liste tous les cookies stores existants.</dd>
+</dl>
+
+<h2 id="Gestionnaire_dévénements">Gestionnaire d'événements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("cookies.onChanged")}}</dt>
+ <dd>Détails quand un cookie est défini ou supprimé.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.cookies")}}</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.html
new file mode 100644
index 0000000000..c2b067a931
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.html
@@ -0,0 +1,128 @@
+---
+title: cookies.onChanged
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/onChanged
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onChanged
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/onChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'événement <code>onChanged</code> de l'API {{WebExtAPIRef("cookies")}} est déclenché lorsqu'un cookie est défini ou supprimé.</p>
+
+<p>Notez que la mise à jour des propriétés d'un cookie est implémentée en deux étapes :</p>
+
+<ol>
+ <li>Tout d'abord, le cookie à mettre à jour est tout d'abord entiérement supprimé, généralement une notification avec un  {{WebExtAPIRef("cookies.OnChangedCause")}} d'écrasement.</li>
+ <li>Ensuite, un nouveau cookie est écrit avec les valeurs mises à jour, généralement une seconde notification avec un {{WebExtAPIRef("cookies.OnChangedCause")}} <code>explicite</code>.</li>
+</ol>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.cookies.onChanged.addListener(listener)
+browser.cookies.onChanged.removeListener(listener)
+browser.cookies.onChanged.hasListener(listener)
+</pre>
+
+<p>Cet API est également disponible en tant que  <code>browser.cookies.onChanged.*</code>.</p>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un écouteur à l'événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêtez d'écouter cet événement. L'argument de l'écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si l'écouteur est enregistré pour cet événement. Retourne <code>true</code> s'il écoute, <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>callback</code></dt>
+ <dd>
+ <p>Une fonction de rappel qui sera appelée lorsque l'événement se produira. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>changeInfo</code></dt>
+ <dd>Un <code>objet</code> contenant les détails de la modification survenue. Ses propriétés sont les suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>removed</code></dt>
+ <dd>Un <code>booléen</code> défini sur <code>true</code> si un cookie a été supprimé et sinon  false.</dd>
+ <dt><code>cookie</code></dt>
+ <dd>Un objet {{WebExtAPIRef('cookies.Cookie')}} contenant les informations sur le cookie qui a été défini ou supprimé.</dd>
+ <dt><code>cause</code></dt>
+ <dd>Une valeur {{WebExtAPIRef('cookies.OnChangedCause')}} représentant la raison sous-jacente de la modification du cookie.</dd>
+ </dl>
+ </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.cookies.onChanged")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple écoute les événements <code>onChanged</code> et enregistre les détails de l'argument  <code>changeInfo</code> :</p>
+
+<pre class="brush: js line-numbers language-js">browser.cookies.onChanged.addListener(function(changeInfo) {
+  console.log('Cookie changed: ' +
+              '\n * Cookie: ' + JSON.stringify(changeInfo.cookie) +
+              '\n * Cause: ' + changeInfo.cause +
+              '\n * Removed: ' + changeInfo.removed);
+});</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.html
new file mode 100644
index 0000000000..4ee6abaa1d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.html
@@ -0,0 +1,92 @@
+---
+title: cookies.OnChangedCause
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/OnChangedCause
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Extensions
+ - Non-standard
+ - OnChangedCause
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/OnChangedCause
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>OnChangedCause</code> de l'API {{WebExtAPIRef("cookies")}} représente la raison pour laquelle un cookie a été modifié.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt><code>evicted</code></dt>
+ <dd>Un cookie a été automatiquement supprimé en raison d'un nettoyage de mémoire.</dd>
+ <dt><code>expired</code></dt>
+ <dd>Un cookie a été automatiquement supprimé en raison de l'expiration.</dd>
+ <dt><code>explicit</code></dt>
+ <dd>Un cookie a été inséré ou supprimé via un appel explicite à {{WebExtAPIRef("cookies.remove()")}}.</dd>
+ <dt><code>expired_overwrite</code></dt>
+ <dd>Un cookie a été remplacé par un cookie dont la date d'expiration est déjà expirée.</dd>
+ <dt><code>overwrite</code></dt>
+ <dd>Un appel à {{WebExtAPIRef("cookies.set()")}} a remplacé ce cookie par un autre.</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.cookies.OnChangedCause")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Vous pouvez écouter l'événement {{WebExtAPIRef("cookies.onChanged")}} pour être averti lorsque les cookies changent. L'écouteur reçoit un objet  <code>changeInfo</code> qui contient une propriété <code>cause</code>, dont la valeur est une chaîne <code>OnChangeCaused</code> :</p>
+
+<pre class="brush: js">browser.cookies.onChanged.addListener(function(changeInfo) {
+  console.log('Cookie changed: ' +
+              '\n * Cookie: ' + JSON.stringify(changeInfo.cookie) +
+              '\n * Cause: ' + changeInfo.cause +
+              '\n * Removed: ' + changeInfo.removed);
+});</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.html
new file mode 100644
index 0000000000..68e82fb318
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.html
@@ -0,0 +1,121 @@
+---
+title: cookies.remove()
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/remove
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - remove
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/remove
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <strong><code>remove()</code></strong> de l'API {{WebExtAPIRef("cookies")}} supprime un cookie, compte tenu de son nom et de son URL.</p>
+
+<p>L'appel réussit uniquement si vous incluez la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API</a> "cookies" dans votre fichier <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a>, ainsi que les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions d'hôte</a> pour l'URL indiquée dans son manifest.</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 removing = browser.cookies.remove(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd>Un <code>objet</code> contenant des informations permettant d'identifier le cookie à supprimer. Il contient les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>firstPartyDomain</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant le domaine de première partie avec lequel le cookie sera associé. Cette propriété doit être fournie si l'isolation de la première partie est activée sur le navigateur. Voir <a href="/fr/Add-ons/WebExtensions/API/cookies#Isolement_de_la_première_partie">Isolement de la première partie</a>.</dd>
+ <dt><code>name</code></dt>
+ <dd>Une <code>chaîne</code> représenant le nom du cookie à supprimer.</dd>
+ <dt><code>storeId</code>{{optional_inline}}</dt>
+ <dd>Une<code> chaîne</code> représentant l'ID du cookie store pour trouver le cookie. Si elle n'est pas spécifiée, le cookie est recherché par défaut dans le cookie store du contexte d'exécution actuel.</dd>
+ <dt><code>url</code></dt>
+ <dd>Une <code>chaîne</code> représentant l'URL associée au cookie. Si l'extension n'a pas de <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions d'hôte</a> pour cette URL, l'appel de l'API échouera.</dd>
+ </dl>
+ </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 objet  {{WebExtAPIRef('cookies.Cookie')}} contenant des détails sur le cookie qui a été supprimé. Si un cookie correspondant au paramètre <code>details</code> n'a pas pu être trouvé, la promesse est remplie avec <code>null</code>.  Si l'appel échoue pour une raison quelconque, la promesse sera rejetée avec un message d'erreur.</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.cookies.remove")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple tente de supprimer le cookie nommé "favourite-colour", dont l'URL correspond à l'URL du document hébergé par l'onglet actuellement actif :</p>
+
+<pre class="brush: js">function onRemoved(cookie) {
+ console.log(`Removed: ${cookie}`);
+}
+
+function onError(error) {
+ console.log(`Error removing cookie: ${error}`);
+}
+
+function removeCookie(tabs) {
+ var removing = browser.cookies.remove({
+ url: tabs[0].url,
+ name: "favourite-colour"
+ });
+ removing.then(onRemoved, onError);
+}
+
+var getActive = browser.tabs.query({active: true, currentWindow: true});
+getActive.then(removeCookie);</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.html
new file mode 100644
index 0000000000..d52a8c54a5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.html
@@ -0,0 +1,35 @@
+---
+title: cookies.SameSiteStatus
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/SameSiteStatus
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/SameSiteStatus
+---
+<div>{{AddonSidebar()}}</div>
+
+<div></div>
+
+<p>Le type <code>SameSiteStatus</code> de l'API {{WebExtAPIRef("cookies")}} représente des informations sur l'état <code>SameSite</code> d'un cookie.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes de caractères. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt><code>no_restriction</code></dt>
+ <dd>Représente un ensemble de cookies sans attribut <code>SameSite</code>.</dd>
+ <dt><code>lax</code></dt>
+ <dd>Correspond au <code>SameSite=Lax</code></dd>
+ <dt><code>strict</code></dt>
+ <dd>Correspond à un ensemble de témoins avec <code>SameSite=Strict</code></dd>
+</dl>
+
+<p>Voir les <a href="/fr/docs/Web/HTTP/Cookies">cookies HTTP</a> pour plus d'informations.</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.html
new file mode 100644
index 0000000000..209857b300
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.html
@@ -0,0 +1,124 @@
+---
+title: cookies.set()
+slug: Mozilla/Add-ons/WebExtensions/API/cookies/set
+tags:
+ - API
+ - Add-ons
+ - Cookies
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - set
+translation_of: Mozilla/Add-ons/WebExtensions/API/cookies/set
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode <strong><code>set()</code></strong> de l'API {{WebExtAPIRef("cookies")}} définit un cookie contenant des données précises de cookie. Cette méthode équivaut à l'émission d'un en-tête HTTP <code>Set-Cookie</code> lors d'une requête à une URL donnée.</p>
+
+<p>L'appel réussit uniquement si vous incluez la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API</a> "cookies" dans votre fichier <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a>, ainsi que les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions d'hôte</a> pour l'URL indiquée dans son manifest. L’URL donnée a également besoin des permissions nécessaires pour créer un cookie avec les paramètres donnés.</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 setting = browser.cookies.set(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd>Un <code>objet</code> contenant les détails du cookie que vous souhaitez définir. Il peut avoir les propriétés suivantes :</dd>
+ <dt><code>domain</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant le domaine du cookie. S’il est omis, le cookie devient un cookie hôte uniquement.</dd>
+ <dt><code>expirationDate</code>{{optional_inline}}</dt>
+ <dd>Un <code>nombre</code> qui représente la date d'expiration du cookie en tant que nombre de secondes écoulées depuis l'époque UNIX. S’il est omis, le cookie devient un cookie de session.</dd>
+ <dt><code>firstPartyDomain</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant le domaine de première partie avec lequel le cookie sera associé. Cette propriété doit être fournie si l'isolation de la première partie est activée sur le navigateur. Voir <a href="/fr/Add-ons/WebExtensions/API/cookies#Isolement_de_la_première_partie">Isolement de la première partie</a>.</dd>
+ <dt><code>httpOnly</code>{{optional_inline}}</dt>
+ <dd>Un <code>booléen</code> qui spécifie si le cookie doit être marqué comme  HttpOnly (<code>true</code>), ou pas (false). S’il est omis, la valeur par défaut est <code>false</code>.</dd>
+ <dt><code>name</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant le nom du cookie. S’il est omis, il est vide par défaut.</dd>
+ <dt><code>path</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant le chemin du cookie. S’il est omis, la valeur par défaut est la partie du chemin du paramètre de l'URL.</dd>
+ <dt><code>sameSite{{optional_inline}}</code></dt>
+ <dd>Une valeur {{WebExtAPIRef("cookies.SameSiteStatus")}} qui indique l’état SameSite du cookie. Si omis, la valeur par défaut 0, 'no_restriction'.</dd>
+ <dt><code>secure</code>{{optional_inline}}</dt>
+ <dd>Un <code>booléen</code> qui spécifie si le cookie doit être marqué comme sécurisé (<code>true</code>), ou pas (false). S’il est omis, la valeur par défaut est <code>false</code>.</dd>
+ <dt><code>storeId</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant l’ID du cookie store dans lequel défini le cookie. S’il est omiS, le cookie est défini par défaut dans le cookie store du contexte d'exécution actuel.</dd>
+ <dt><code>url</code></dt>
+ <dd>Une <code>chaîne</code> représentant l'URI de requête à associer au cookie. Cette valeur peut affecter les valeurs par défaut du cookie créé. Si les autorisations d'hôte pour cette URL ne sont pas spécifiées dans le fichier manifest, l’appel de la méthode échouera.</dd>
+ <dt><code>value</code>{{optional_inline}}</dt>
+ <dd>Une <code>chaîne</code> représentant la valeur du cookie. S’il est omis, c’est vide par défaut.</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 objet  {{WebExtAPIRef('cookies.Cookie')}} contenant les détails sur le cookie qui a été défini. Si l'appel échoue pour une quelconque raison, la promesse sera rejetée avec un message d’erreur.</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.cookies.set")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple définit un cookie pour le document hébergé par l'onglet actuellement actif :</p>
+
+<pre class="brush: js">var getActive = browser.tabs.query({active: true, currentWindow: true});
+getActive.then(setCookie);
+
+function setCookie(tabs) {
+ browser.cookies.set({
+ url: tabs[0].url,
+ name: "favourite-colour",
+ value: "red"
+ });
+}
+</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/cookies"><code>chrome.cookies</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/cookies.json"><code>cookies.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/eval/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/eval/index.html
new file mode 100644
index 0000000000..f6cf7e86bb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/eval/index.html
@@ -0,0 +1,219 @@
+---
+title: devtools.inspectedWindow.eval()
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/eval
+tags:
+ - API
+ - Add-ons
+ - Devtools.inspectedWindows
+ - Extensions
+ - Reference
+ - WebExtensions
+ - eval
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/eval
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Exécute JavaScript dans la fenêtre à laquelle les devtools sont attachés.</p>
+
+<p>C'est un peu comme utiliser {{WebExtAPIRef("tabs.executeScript()")}} pour joindre un script de contenu, mais avec deux différences principales:</p>
+
+<p>Tout d'abord, le JavaScript peut utiliser un ensemble de <a href="#Helpers">commandes spéciales que les navigateurs fournissent généralement dans leur implémentation de console devtools </a>: par exemple, en utilisant "$0" pour designer l'élément actuellement sélectionné dans l'inspecteur.</p>
+
+<p>Deuxièmement, le JavaScript que vous exécutez peut voir les modifications apportées à la page par des scripts que la page a chargés. Cela contraste avec les scripts de contenu, qui voient la page <a href="/fr/Add-ons/WebExtensions/Content_scripts#DOM_access">telle qu'elle existerait si aucun script de page n'était pas chargé</a>. Cependant, notez que l'isolement fourni par les scripts de contenu est une fonction de sécurité délibérée, destinée à rendre plus difficile la confusion ou la subversion des WebExtensions par des pages web malveillantes ou simplement non coopératives en redéfinissant les fonctions et les propriétés du DOM. Cela signifie que vous devez être très prudent si vous renoncez à cette protection en utilisant eval(), et devrait utiliser les scripts de contenu, sauf si vous devez utiliser eval().</p>
+
+<p>Le script est évalué par défaut dans le cadre principal de la page. Le script doit évaluer une valeur qui peut être représentée comme JSON (ce qui signifie que, par exemple, il peut ne pas évaluer une fonction ou un objet contenant des fonctions). Par défaut, le script ne voit pas les scripts de contenu attachés à la page.</p>
+
+<p>Vous ne pouvez pas appeler eval() sur les fenêtres de navigateur privilégiées telles que "about: addons".</p>
+
+<p>Vous pouvez éventuellement fournir un paramètre d'options, qui comprend des options pour évaluer le script dans une image différente ou dans le contexte des scripts de contenu attachés. Notez que Firefox ne supporte pas encore le paramètre d'options.</p>
+
+<p>La fonction eval() renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui résout le résultat évalué du script ou une erreur.</p>
+
+<h2 id="Aides">Aides</h2>
+
+<p>Le script accède à un certain nombre d'objets qui aident le script injecté à interagir avec les outils du développeur. Les assistants suivants sont actuellement pris en charge:</p>
+
+<dl>
+ <dt><code>$0</code></dt>
+ <dd>Contient une référence à l'élément actuellement sélectionné dans l'inspecteur Devtools.</dd>
+ <dt><code>inspect()</code></dt>
+ <dd>Etant donné un objet, s'il s'agit d'un élément DOM dans la page, sélectionnez-le dans l'inspecteur devtools, sinon il crée un aperçu de l'objet dans la webconsole.</dd>
+</dl>
+
+<p><a href="#Examples">Voir quelques exemples.</a></p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var evaluating = browser.devtools.inspectedWindow.eval(
+ expression, // string
+ options // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>expression</code></dt>
+ <dd><code>string</code>. L'expression JavaScript à évaluer. La chaîne doit évaluer un objet qui peut être représenté comme JSON, ou une exception sera lancée. Par exemple, l'expression ne doit pas évaluer une fonction.</dd>
+ <dt><code>options</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Options pour la fonction  (Notez que Firefox ne supporte pas encore cette option), comme suit :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>frameURL</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'URL du cadre dans lequel à évaluer l'expression. Si cela est supprimé, l'expression est évaluée dans la trame principale de la fenêtre.</dd>
+ <dt><code>useContentScriptContext</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si c'est vrai, évaluez l'expression dans le contexte des scripts de contenu que cette extension a attachée à la page. Si vous définissez cette option, vous devez d'abord attacher certains scripts de contenu à la page ou une erreur Devtools sera lancée.</dd>
+ <dt><code>contextSecurityOrigin</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Evaluez l'expression dans le contexte d'un script de contenu attaché par une extension différente, dont l'origine correspond à la valeur donnée ici. Ces remplacements sont <code>useContentScriptContext</code>.</dd>
+ </dl>
+ </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 tableau contenant deux éléments.</p>
+
+<p>Si aucune erreur n'est survenue, l'élément 0 contiendra le résultat de l'évaluation de l'expression et l'élément 1 sera indéfini.</p>
+
+<p>Si une erreur s'est produite, l'élément 0 sera indéfini et l'élément 1 contiendra un objet donnant des détails sur l'erreur. Deux types différents d'erreurs sont distingués :</p>
+
+<ul>
+ <li>Des erreurs rencontrées lors de l'évaluation du JavaScript (par exemple, des erreurs de syntaxe dans l'expression). Dans ce cas, l'élément 1 contiendra :
+ <ul>
+ <li>Une propriété boolean isException, définie sur true</li>
+ <li>Une valeur de propriété de chaîne, en donnant plus de détails.</li>
+ </ul>
+ </li>
+ <li>D'autres erreurs (par exemple, une expression qui évalue sur un objet qui ne peut pas être représenté comme JSON). Dans ce cas, l'élément 1 contiendra:
+ <ul>
+ <li>Une propriété booléenne isError, définie sur true</li>
+ <li>Un code de propriété de chaîne contenant un code d'erreur.</li>
+ </ul>
+ </li>
+</ul>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<p>{{Compat("webextensions.api.devtools.inspectedWindow.eval")}}</p>
+
+<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>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ceci teste si jQuery est défini dans la fenêtre inspectée et enregistre le résultat. Notez que cela ne fonctionnerait pas dans un script de contenu, car même si jQuery était défini, le script de contenu ne le verrait pas.</p>
+
+<pre class="brush: js">function handleError(error) {
+ if (error.isError) {
+ console.log(`Devtools error: ${error.code}`);
+ } else {
+ console.log(`JavaScript error: ${error.value}`);
+ }
+}
+
+function handleResult(result) {
+ console.log(result);
+ if (result[0] !== undefined) {
+ console.log(`jQuery: ${result[0]}`);
+ } else if (result[1]) {
+ handleError(result[1]);
+ }
+}
+
+const checkjQuery = "typeof jQuery != 'undefined'";
+
+evalButton.addEventListener("click", () =&gt; {
+ browser.devtools.inspectedWindow.eval(checkjQuery)
+ .then(handleResult);
+});</pre>
+
+<h3 id="Exemples_d'aide">Exemples d'aide</h3>
+
+<p>Cela utilise l'aide de <code>$0</code> pour définir la couleur d'arrière-plan de l'élément, actuellement sélectionné dans l'inspecteur :</p>
+
+<pre class="brush: js">const evalButton = document.querySelector("#reddinate");
+const evalString = "$0.style.backgroundColor = 'red'";
+
+function handleError(error) {
+ if (error.isError) {
+ console.log(`Devtools error: ${error.code}`);
+ } else {
+ console.log(`JavaScript error: ${error.value}`);
+ }
+}
+
+function handleResult(result) {
+ if (result[1]) {
+ handleError(result[1]);
+ }
+}
+
+evalButton.addEventListener("click", () =&gt; {
+ browser.devtools.inspectedWindow.eval(evalString)
+ .then(handleResult);
+});
+</pre>
+
+<p>Cela utilise l'assistant l'inspection() pour sélectionner le premier élément &lt;h1&gt; dans la page:</p>
+
+<pre class="brush: js">const inspectButton = document.querySelector("#inspect");
+const inspectString = "inspect(document.querySelector('h1'))";
+
+function handleError(error) {
+ if (error.isError) {
+ console.log(`Devtools error: ${error.code}`);
+ } else {
+ console.log(`JavaScript error: ${error.value}`);
+ }
+}
+
+function handleResult(result) {
+ if (result[1]) {
+ handleError(result[1]);
+ }
+}
+
+inspectButton.addEventListener("click", () =&gt; {
+ browser.devtools.inspectedWindow.eval(inspectString)
+ .then(handleResult);
+});
+</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/devtools"><code>chrome.devtools</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/index.html
new file mode 100644
index 0000000000..2f077b4e9d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/index.html
@@ -0,0 +1,82 @@
+---
+title: devtools.inspectedWindow
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow
+tags:
+ - API
+ - Add-ons
+ - Devtools.inspectedWindows
+ - Extensions
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow
+---
+<div>{{AddonSidebar}}</div>
+
+<div class="note">
+<p>Cette page décrit les API de développement de WebExtensions telles qu'elles existent dans Firefox 54. Bien que les API soient basées sur les <a href="https://developer.chrome.com/extensions/devtools">APIs de devtools de Chrome</a>, il existe encore de nombreuses fonctionnalités qui ne sont pas encore implémentées dans Firefox et ne sont donc pas documentées ici. Pour voir les fonctionnalités actuellement manquantes, regarder  <a href="/fr/Add-ons/WebExtensions/Using_the_devtools_APIs#Limitations_of_the_devtools_APIs">Limitations des APIs devtools</a>.</p>
+</div>
+
+<p>L'API <code>devtools.inspectedWindow</code> permet à un extension de devtools d'interagir avec la fenêtre sur laquelle les outils de développement sont attachés.</p>
+
+<p>Comme toutes les APIs de <code>devtools</code>, cette API n'est disponible que pour exécuter le code dans le document défini dans la clé <a href="/fr/Add-ons/WebExtensions/manifest.json/devtools_page">devtools_page</a> du manifest.json, où dans d'autres documents devtools créés par l'extension (tels que le document hébergé par un panneau, l'extension créée). Voir <a href="/fr/Add-ons/WebExtensions/Extending_the_developer_tools">Extension des outils de développement </a> pour plus d'informations.</p>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.inspectedWindow/tabId">devtools.inspectedWindow.tabId</a></code></dt>
+ <dd>L'ID de la fenêtre sur laquelle sont attachés les outils du développeur.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.inspectedWindow/eval">devtools.inspectedWindow.eval()</a></code></dt>
+ <dd>Evaluez certains JavaScript dans la fenêtre de destination.</dd>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.inspectedWindow/reload">devtools.inspectedWindow.reload()</a></code></dt>
+ <dd>Rechargez le document de la fenêtre destination.</dd>
+</dl>
+
+<h2 id="Comptatibilité_navigateur">Comptatibilité navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.inspectedWindow")}}</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/devtools_inspectedWindow"><code>chrome.devtools.inspectedWindow</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>
+
+<div class="hidden">
+<p>// Copyright 2015 The Chromium Authors. All rights reserved.<br>
+ //<br>
+ // Redistribution and use in source and binary forms, with or without<br>
+ // modification, are permitted provided that the following conditions are<br>
+ // met:<br>
+ //<br>
+ //    * Redistributions of source code must retain the above copyright<br>
+ // notice, this list of conditions and the following disclaimer.<br>
+ //    * Redistributions in binary form must reproduce the above<br>
+ // copyright notice, this list of conditions and the following disclaimer<br>
+ // in the documentation and/or other materials provided with the<br>
+ // distribution.<br>
+ //    * Neither the name of Google Inc. nor the names of its<br>
+ // contributors may be used to endorse or promote products derived from<br>
+ // this software without specific prior written permission.<br>
+ //<br>
+ // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS<br>
+ // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT<br>
+ // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR<br>
+ // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT<br>
+ // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,<br>
+ // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT<br>
+ // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,<br>
+ // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY<br>
+ // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT<br>
+ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE<br>
+ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/reload/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/reload/index.html
new file mode 100644
index 0000000000..f2f7b8cdc8
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/reload/index.html
@@ -0,0 +1,100 @@
+---
+title: devtools.inspectedWindow.reload()
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/reload
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.inspectedWindow
+ - reload
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/reload
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Recharge la fenêtre à laquelle les devtools sont attachés.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.devtools.inspectedWindow.reload(
+ reloadOptions // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>reloadOptions</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Options pour la fonction, comme suit</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>ignoreCache</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. S'il est vrai, cela fait que le rechargement ignore le cache du navigateur (comme si l'utilisateur avait appuyé sur Shift+Ctrl+R).</dd>
+ <dt><code>userAgent</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Définissez un agent utilisateur personnalisé pour la page. Ici, la chaîne fournie sera envoyée dans l'en-tête de l'<a href="/fr/docs/Web/HTTP/Headers/User-Agent">Agent utilisateur</a>, et sera renvoyée par les appels à <code><a href="/fr/docs/Web/API/NavigatorID/userAgent">navigator.userAgent</a></code> réalisé par des scripts s'exécutant sur la page.</dd>
+ <dt><code>injectedScript</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Injectez l'expression JavaScript donnée dans toutes les images de la page, avant tout autre script.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.inspectedWindow.reload")}}</p>
+
+<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>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Rechargez la fenêtre inspectée, définissez l'agent utilisateur et injectez un script</p>
+
+<pre class="brush: js">const reloadButton = document.querySelector("#reload-button");
+
+reloadButton.addEventListener("click", () =&gt; {
+ browser.devtools.inspectedWindow.reload({
+ injectedScript:"alert(navigator.userAgent);",
+ userAgent: "Not a real UA"
+ });
+});
+</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/devtools"><code>chrome.devtools</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/tabid/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/tabid/index.html
new file mode 100644
index 0000000000..b5b3d3b0b2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.inspectedwindow/tabid/index.html
@@ -0,0 +1,85 @@
+---
+title: devtools.inspectedWindow.tabId
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/tabId
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.inpectedWindow
+ - tabId
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/tabId
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'ID de {{WebExtAPIRef("tabs.Tab", "tab")}} est que cette instance des devtools est jointe, représenté comme un nombre.</p>
+
+<p>Cela peut être envoyé à la page de fond de l'extension, de sorte que la page d'arrière plan peut utiliser l'API {{WebExtAPIRef("tabs")}} pour interargir avec l'onglet :</p>
+
+<pre class="brush: js">// devtools-panel.js
+
+const scriptToAttach = "document.body.innerHTML = 'Hi from the devtools';";
+
+attachContentScriptButton.addEventListener("click", () =&gt; {
+ browser.runtime.sendMessage({
+ tabId: browser.devtools.inspectedWindow.tabId,
+ script: scriptToAttach
+ });
+});</pre>
+
+<pre class="brush: js">// background.js
+
+function handleMessage(request, sender, sendResponse) {
+ browser.tabs.executeScript(request.tabId, {
+ code: request.script
+ });
+}
+
+browser.runtime.onMessage.addListener(handleMessage);</pre>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.inspectedWindow.tabId")}}</p>
+
+<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>{{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/devtools"><code>chrome.devtools</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.network/gethar/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.network/gethar/index.html
new file mode 100644
index 0000000000..abcdf667e6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.network/gethar/index.html
@@ -0,0 +1,88 @@
+---
+title: devtools.network.getHAR()
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.network/getHAR
+tags:
+ - Add-ons
+ - Extensions
+ - WebExtensions
+ - devtools.network
+ - getHAR
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.network/getHAR
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtenez un <a href="http://www.softwareishard.com/blog/har-12-spec/#log">journal HAR</a> pour la page chargée dans l'onglet en cours.</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 getting = browser.devtools.network.getHAR()
+</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 remplie avec un objet contenant le journal HAR pour l'onglet en cours. Pour plus de détails sur ce que contient l'objet journal, reportez-vous à la <a href="http://www.softwareishard.com/blog/har-12-spec/#log">spécification HAR</a>.</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.devtools.network.getHAR")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Consignez les URL des demandes contenues dans le journal HAR :</p>
+
+<pre class="brush: js">async function logRequests() {
+ let harLog = await browser.devtools.network.getHAR();
+ console.log(`HAR version: ${harLog.version}`);
+ for (let entry of harLog.entries) {
+ console.log(entry.request.url);
+ }
+}
+
+logRequestsButton.addEventListener("click", logRequests);
+</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/devtools_network"><code>chrome.devtools.network</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.network/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.network/index.html
new file mode 100644
index 0000000000..580a823371
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.network/index.html
@@ -0,0 +1,75 @@
+---
+title: devtools.network
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.network
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.network
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.network
+---
+<div>{{AddonSidebar}}</div>
+
+<p>L'API <code>devtools.network</code> permet à une extension devtools d'obtenir des informations sur les demandes de réseau associées à la fenêtre à laquelle les devtools sont attachés (la fenêtre inspectée).</p>
+
+<p>Comme toutes les APIs de devtools, cette API est uniquement disponible pour le code exécuté dans le document défini dans la clé <a href="/fr/Add-ons/WebExtensions/manifest.json/devtools_page">devtools_page</a> du manifest.json, ou dans d'autres documents de devtools créés par l'extension (tel que le document du panneau). Voir <a href="/fr/Add-ons/WebExtensions/Extending_the_developer_tools">Extension des outils de développement</a> pour plus d'informations.</p>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/devtools.network/getHAR">devtools.network.getHAR()</a></dt>
+ <dd>Obtenez le  <a class="external external-icon" href="http://www.softwareishard.com/blog/har-12-spec/#log" rel="noopener">journal HAR</a> pour la page chargée dans l'onglet en cours..</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.network/onNavigated">devtools.network.onNavigated</a></code></dt>
+ <dd>Attiré lorsque l'utilisateur navigue dans la fenêtre inspectée vers une nouvelle page.</dd>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.network/onRequestFinished">devtools.network.onRequestFinished</a></code></dt>
+ <dd>Lancé lorsque la demande réseau est terminée et que ses détails sont disponibles pour l'extension.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.network")}}</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/devtools_network"><code>chrome.devtools.network</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.network/onnavigated/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.network/onnavigated/index.html
new file mode 100644
index 0000000000..b7f0d0af31
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.network/onnavigated/index.html
@@ -0,0 +1,103 @@
+---
+title: devtools.network.onNavigated
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.network/onNavigated
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.network
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.network/onNavigated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Mise en place lorsque l'utilisateur navigue dans la fenêtre inspectée vers une nouvelle page</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.devtools.network.onNavigated.addListener(listener)
+browser.devtools.network.onNavigated.removeListener(listener)
+browser.devtools.network.onNavigated.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</code></dt>
+ <dd>Ajouter un auditeur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêter d'écouter un événement. L'argument de l'auditeur est l'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie <strong>vrai</strong> si elle écoute, sinon <strong>faux</strong>.</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 lors de l'événement. La fonction passera les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. La nouvelle URL pour la fenêtre.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.network.onNavigated")}}</p>
+
+<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>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleNavigated(url) {
+ console.log(url);
+}
+
+browser.devtools.network.onNavigated.addListener(handleNavigated);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/devtools"><code>chrome.devtools</code></a> de Chromium.</p>
+
+<p>Les données de compatibilité de  Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.network/onrequestfinished/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.network/onrequestfinished/index.html
new file mode 100644
index 0000000000..e2b4d930fc
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.network/onrequestfinished/index.html
@@ -0,0 +1,112 @@
+---
+title: devtools.network.onRequestFinished
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.network/onRequestFinished
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.network
+ - onRequestFinished
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.network/onRequestFinished
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'une requête réseau est terminée et que ses détails sont disponibles pour l'extension.</p>
+
+<p>La requête est donnée en tant qu'<a href="http://www.softwareishard.com/blog/har-12-spec/#entries">objet d'entrée HAR</a>, qui est également doté d'une méthode <code>getContent()</code> asynchrone qui récupère le contenu du corps de la réponse.</p>
+
+<p>Notez que bien que votre extension puisse ajouter un écouteur à tout moment,elle commencera seulement à se déclencher après que l'utilisateur a activé le <a href="/fr/docs/Outils/Moniteur_réseau">moniteur réseau</a> du navigateur au moins une fois.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.devtools.network.onRequestFinished.addListener(listener)
+browser.devtools.network.onRequestFinished.removeListener(listener)
+browser.devtools.network.onRequestFinished.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions</p>
+
+<dl>
+ <dt><code>addListener(listener)</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="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>request</code></dt>
+ <dd><code>object</code>. Un objet représentant la requête. Cet objet est un seul objet d'<a href="http://www.softwareishard.com/blog/har-12-spec/#entries">entrée HAR</a>. Il définit également une méthode <code>getContent()</code> asynchrone, qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui se résout avec le corps de la réponse.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.network.onRequestFinished")}}</p>
+
+<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>
+
+<h2 id="Examples">Examples</h2>
+
+<p>Ajoutez un écouteur qui consigne l'adresse IP du serveur et le corps de la réponse pour chaque requête réseau.</p>
+
+<pre class="brush: js">function handleRequestFinished(request) {
+ console.log("Server IP: ", request.serverIPAddress);
+ request.getContent().then(content =&gt; {
+ console.log("Content: ", content);
+ });
+}
+
+browser.devtools.network.onRequestFinished.addListener(handleRequestFinished);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/devtools"><code>chrome.devtools</code></a> de Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/create/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/create/index.html
new file mode 100644
index 0000000000..60de8f3871
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/create/index.html
@@ -0,0 +1,110 @@
+---
+title: devtools.panels.create()
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/create
+tags:
+ - API
+ - Add-ons
+ - Create
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels/create
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Ajoute un nouveau panneau aux devtools.</p>
+
+<p><span id="result_box" lang="fr"><span>Cette fonction prend </span></span>: un titre, une URL vers un fichier d'icône et une URL vers un fichier HTML. <span id="result_box" lang="fr"><span>Il crée un nouveau panneau dans les </span></span>devtools, dont le contenu est spécifié par le fichier HTML. Il renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui résout un objet <code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionPanel">ExtensionPanel</a></code> représentant le nouveau panneau.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var creating = browser.devtools.panels.create(
+ title, // string
+ iconPath, // string
+ pagePath // string
+)
+</pre>
+
+<h3 id="Parametères">Parametères</h3>
+
+<dl>
+ <dt><code>title</code></dt>
+ <dd><code>string</code>. Le titre du panneau. Cela apparaitra dans la rangée des onglets le long du haut de la fenêtre des devtools, et c'est la principale façon dont l'utilisateur pourra identifier votre panneau.</dd>
+ <dt><code>iconPath</code></dt>
+ <dd><code>string</code>. Spécifie une icône qui sera affichée à côté du titre. Il est fourni sous forme d'URL vers un fichier image qui a été fourni avec votre extension. L'URL est résolue par rapport à la page d'extension courante (sauf si elle est exprimée en url absolue, par exemple "/icons/panel.png").</dd>
+ <dt><code>pagePath</code></dt>
+ <dd>string. Spécifie un fichier HTML qui définit le contenu réel du panneau. Il est fourni sous la forme d'une URL d'un fichier HTML qui a été regroupé avec votre extension. L'URL est résolue par rapport à la page d'extension courante (sauf si elle est exprimée en url absolue, par exemple "/devtools/panel.html"). Le fichier HTML peut include des fichiers CSS et JavaScript, juste comme une page web normale. Le JavaScript en cours d'éxécution dans le panneau pourra utiliser les API devtools. Voir <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/Extending_the_developer_tools">Extention des outils de développement</a>.</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 objet <code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionPanel">ExtensionPanel</a></code> représentant le nouveau panneau.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.panels.create")}}</p>
+
+<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>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Créer un nouveau panneau, et ajoute des auditeurs à ces événements onShown et  onHidden :</p>
+
+<pre class="brush: js">function handleShown() {
+ console.log("panel is being shown");
+}
+
+function handleHidden() {
+ console.log("panel is being hidden");
+}
+
+browser.devtools.panels.create(
+ "My Panel", // title
+ "/icons/star.png", // icon
+ "/devtools/panel/panel.html" // content
+).then((newPanel) =&gt; {
+ newPanel.onShown.addListener(handleShown);
+ newPanel.onHidden.addListener(handleHidden);
+});
+</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/devtools_panels"><code>chrome.devtools.panels</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elements/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elements/index.html
new file mode 100644
index 0000000000..18223b2718
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elements/index.html
@@ -0,0 +1,29 @@
+---
+title: devtools.panels.elements
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/elements
+tags:
+ - API
+ - Add-ons
+ - Elements
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels/elements
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet <code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel">ElementsPanel</a></code> qui représente l'inspecteur HTML/CSS du navigateur</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.devtools.panels.elements", 10)}}</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/devtools_panels"><code>chrome.devtools.panels</code></a>.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/createsidebarpane/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/createsidebarpane/index.html
new file mode 100644
index 0000000000..7eee52fff5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/createsidebarpane/index.html
@@ -0,0 +1,107 @@
+---
+title: devtools.panels.ElementsPanel.createSidebarPane()
+slug: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/createSidebarPane
+tags:
+ - API
+ - Add-ons
+ - DevTools
+ - Extensions
+ - Reference
+ - WebExtensions
+ - createSidebarPane
+ - devtools.panels
+translation_of: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/createSidebarPane
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Ajoute un nouveau volet à la barre latérale dans l'inspecteur HTML / CSS.</p>
+
+<p>L'inspecteur HTML / CSS, appelé l'<a href="/fr/docs/Outils/Inspecteur">inspecteur de page</a> dans Firefox et le <a href="https://developers.google.com/web/tools/chrome-devtools/inspect-styles/">panneau éléments</a> dans Chrome, affiche la page DOM dans la partie principale de sa fenêtre et possède une barre latérale qui affiche divers autres aspects de la page HTML / CSS dans une interface à onglets. Par exemple, dans Firefox, la barre latérale peut afficher les règles CSS pour l'élément sélectionné, ou ses polices, ou son modèle de boîte.</p>
+
+<p>La fonction <code>createSidebarPane()</code> ajoute un nouveau volet à la barre latérale. ar exemple, la capture d'écran ci-dessous montre un nouveau volet intitulé "My pane", qui affiche un objet JSON :</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/15607/inspector-sidebar.png" style="display: block; height: 276px; margin-left: auto; margin-right: auto; width: 836px;"></p>
+
+<p>Cette fonction prend un argument, qui est une chaîne représentant le titre du volet. Il renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui se résout en un objet <code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane">ExtensionSidebarPane</a></code> représentant le nouveau volet. Vous pouvez utiliser cet objet pour définir le contenu et le comportement du volet.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var creating = browser.devtools.panels.elements.createSidebarPane(
+ title // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>title</code></dt>
+ <dd><code>string</code>. Cela apparaîtra dans la rangée d'onglets en haut de la barre latérale, et c'est la principale façon pour l'utilisateur d'identifier votre panneau.</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 objet <code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane">ExtensionSidebarPane</a></code> représentant le nouveau volet.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.panels.ElementsPanel.createSidebarPane", 10)}}</p>
+
+<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>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Créez un nouveau volet et remplissez-le avec un objet JSON. Vous pouvez exécuter ce code dans un script chargé par la <a href="/fr/Add-ons/WebExtensions/manifest.json/devtools_page">page devtools</a>.</p>
+
+<pre class="brush: js">function onCreated(sidebarPane) {
+ sidebarPane.setObject({
+ someBool: true,
+ someString: "hello there",
+ someObject: {
+ someNumber: 42,
+ someOtherString: "this is my pane's content"
+ }
+ });
+}
+
+browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
+</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/devtools_panels"><code>chrome.devtools.panels</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/index.html
new file mode 100644
index 0000000000..5c2a0413c7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/index.html
@@ -0,0 +1,73 @@
+---
+title: devtools.panels.ElementsPanel
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel
+tags:
+ - API
+ - Add-ons
+ - DevTools
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+ - devtools.panelsElementsPanel
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un <code>ElementsPanel</code> représente l'inspecteur HTML/CSS dans la devtools du navigateur. C'est ce qu'on appelle l'inspecteur de page dans Firefox et le panneau Éléments de Chrome.</p>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/createSidebarPane">devtools.panels.ElementsPanel.createSidebarPane()</a></code></dt>
+ <dd>Crée un volet dans la barre latérale de l'inspecteur.</dd>
+ <dt>
+ <h2 id="Evénements">Evénements</h2>
+ </dt>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/onSelectionChanged">devtools.panels.ElementsPanel.onSelectionChanged</a></code></dt>
+ <dd>Appèle lorsque l'utilisateur sélectionne un élément différent dans la page, par exemple en utilisant l'élément de menu contextuel "inspect élément".</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.devtools.panels.ElementsPanel", 10)}}</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/devtools_panels"><code>chrome.devtools.panels</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/onselectionchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/onselectionchanged/index.html
new file mode 100644
index 0000000000..e753d5aba1
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/elementspanel/onselectionchanged/index.html
@@ -0,0 +1,74 @@
+---
+title: onSelectionChanged
+slug: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/onSelectionChanged
+tags:
+ - API
+ - Add-ons
+ - DevTools
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+ - devtools.panelsElementsPanel
+translation_of: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/onSelectionChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Appelles lorsque l'utilisateur sélectionne un élément de page différent pour l'inspection avec les outils de développement du navigateur, par exemple en sélectionnant l'élément de menu contextuel "Inspect Element" dans Firefox.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.devtools.panels.elements.onSelectionChanged.addListener(listener)
+browser.devtools.panels.elements.onSelectionChanged.removeListener(listener)
+browser.devtools.panels.elements.onSelectionChanged.hasListener(listener)
+</pre>
+
+<p>L'événement a trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</code></dt>
+ <dd>Ajoute une écoute à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrête une écoute à l'événement. L'argument de l'auditeur est un auditeur supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie la valeur Vrai si elle l'écoute, sinon Faux.</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 lors de l'événement. La fonction ne passera pas d'arguments.</p>
+ </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.devtools.panels.ElementsPanel.onSelectionChanged", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ecoutez la sélection des événements modifiés, et enregistrez le contenu du texte de l'élément nouvellement sélectionné :</p>
+
+<pre class="brush: js">function handleSelectedElement() {
+ browser.devtools.inspectedWindow.eval("$0.textContent")
+ .then((result) =&gt; {
+ console.log(result[0]);
+ });
+}
+
+browser.devtools.panels.elements.onSelectionChanged.addListener(handleSelectedElement);</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/devtools"><code>chrome.devtools</code></a>.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionpanel/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionpanel/index.html
new file mode 100644
index 0000000000..e083ff02b3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionpanel/index.html
@@ -0,0 +1,93 @@
+---
+title: devtools.panels.ExtensionPanel
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionPanel
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionPanel
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Une <code>ExtensionPanel</code> représente un panneau ajouté aux devtools. C'est la résolution de la <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> renvoyé par <code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/create">browser.devtools.panels.create()</a></code>.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Définissez deux événements, <code>onShown</code> et <code>onHidden</code>.</p>
+
+<ul>
+ <li><code>onShown</code> est émis lorsque le panneau est affiché dans les devtools (par exemple, quand l'utilisateur a cliqué sur le panneau dans la fenêtre des  devtools).</li>
+ <li><code>onHidden</code> est émis lorsque le panneau est caché (par exemple, quand l'utilisateur a basculé sur un onglet différent dans la fenêtre devtools).</li>
+</ul>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.panels.ExtensionPanel")}}</p>
+
+<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>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code crée un nouveau panneau, puis ajoute des gestionnaires pour ces événements <code>onShown</code> et <code>onHidden</code>.</p>
+
+<pre class="brush: js">function handleShown(e) {
+ console.log(e);
+ console.log("panel is being shown");
+}
+
+function handleHidden(e) {
+ console.log(e);
+ console.log("panel is being hidden");
+}
+
+browser.devtools.panels.create(
+ "My Panel", // title
+ "icons/star.png", // icon
+ "devtools/panel/panel.html" // content
+).then((newPanel) =&gt; {
+ newPanel.onShown.addListener(handleShown);
+ newPanel.onHidden.addListener(handleHidden);
+});</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/devtools_panels"><code>chrome.devtools.panels</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/index.html
new file mode 100644
index 0000000000..02ee0a2073
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/index.html
@@ -0,0 +1,89 @@
+---
+title: devtools.panels.ExtensionSidebarPane
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane
+tags:
+ - API
+ - Add-ons
+ - DevTools
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+ - devtools.panels.ExtensionSidebarPane
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane
+---
+<div>{{AddonSidebar}}</div>
+
+<p>L'objet <code>ExtensionSidebarPane</code> représente un volet qu'une extension a ajouté à la barre latérale dans l'inspecteur HTML/CSS du navigateur.</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/15607/inspector-sidebar.png" style="display: block; height: 276px; margin-left: auto; margin-right: auto; width: 836px;"></p>
+
+<p>Pour créer un <code>ExtensionSidebarPane</code>, appelez la fonction <code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/createSidebarPane">browser.devtools.panels.elements.createSidebarane()</a></code>.</p>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setExpression">devtools.panels.ExtensionSidebarPane.setExpression()</a></code></dt>
+ <dd>
+ <p>Évaluer une expression JavaScript dans la page Web inspectée par l'inspecteur. Le résultat est affiché dans le volet de la barre latérale.</p>
+ </dd>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setObject">devtools.panels.ExtensionSidebarPane.setObject()</a></code></dt>
+ <dd>
+ <p>Définit un objet JSON qui sera affiché dans le volet de la barre latérale.</p>
+ </dd>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setPage">devtools.panels.ExtensionSidebarPane.setPage()</a></code></dt>
+ <dd>
+ <p>Charge la page pointée par l'URL fournie.</p>
+ </dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onShown">devtools.panels.ExtensionSidebarPane.onShown</a></code></dt>
+ <dd>Lancé lorsque le volet latéral est affiché.</dd>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onHidden">devtools.panels.ExtensionSidebarPane.onHidden</a></code></dt>
+ <dd>Lancé lorsque le volet de la barre latérale est masqué.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane", 10)}}</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/devtools_panels"><code>chrome.devtools.panels</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/onhidden/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/onhidden/index.html
new file mode 100644
index 0000000000..a1a18463e5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/onhidden/index.html
@@ -0,0 +1,80 @@
+---
+title: devtools.panels.ExtensionSidebarPane.onHidden
+slug: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onHidden
+tags:
+ - API
+ - Add-ons
+ - ExtensionSidebarPane
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+ - onHidden
+translation_of: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onHidden
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Appelé lorsque le volet de la barre latérale est masqué, suite à l'abandon de l'utilisateur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.devtools.panels.onHidden.addListener(listener)
+browser.devtools.panels.onHidden.removeListener(listener)
+browser.devtools.panels.onHidden.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ête d'écouter cet événement. L'argument <code>listener</code> est l'écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie 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 appelée lorsque cet événement se produit. Cette fonction sera passée sans arguments.</p>
+ </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.devtools.panels.ExtensionSidebarPane.onHidden", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Créez un volet de barre latérale et journal afficher et masquer les événements.</p>
+
+<pre class="brush: js">function onCreated(sidebarPane) {
+
+ sidebarPane.onShown.addListener(() =&gt; {
+ console.log("Shown");
+ });
+
+ sidebarPane.onHidden.addListener(() =&gt; {
+ console.log("Hidden");
+ });
+
+}
+
+browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
+</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/devtools_panels"><code>chrome.devtools.panels</code></a>.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/onshown/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/onshown/index.html
new file mode 100644
index 0000000000..3ca3412af2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/onshown/index.html
@@ -0,0 +1,78 @@
+---
+title: devtools.panels.ExtensionSidebarPane.onShown
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onShown
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - ExtesionsSidebarPane
+ - Reference
+ - WebExtensions
+ - devtools.panels
+ - onShown
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onShown
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque le volet latéral devient visible suite à un changement d'utilisateur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.devtools.panels.onShown.addListener(listener)
+browser.devtools.panels.onShown.removeListener(listener)
+browser.devtools.panels.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 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="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 sera passée sans arguments.</p>
+ </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.devtools.panels.ExtensionSidebarPane.onShown", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Créez un volet de barre latérale et journal afficher et masquer les événements.</p>
+
+<pre class="brush: js">function onCreated(sidebarPane) {
+
+ sidebarPane.onShown.addListener(() =&gt; {
+ console.log("Shown");
+ });
+
+ sidebarPane.onHidden.addListener(() =&gt; {
+ console.log("Hidden");
+ });
+
+}
+
+browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
+</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/devtools_panels"><code>chrome.devtools.panels</code></a>.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setexpression/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setexpression/index.html
new file mode 100644
index 0000000000..d2c97c5f82
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setexpression/index.html
@@ -0,0 +1,106 @@
+---
+title: devtools.panels.ElementsPanel.setExpression()
+slug: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setExpression
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+ - setExpression
+translation_of: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setExpression
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Evalue une expression dans le contexte de la page inspectée et affiche le résultat dans le volet de la barre latérale d'extension.</p>
+
+<p>Le contexte d'exécution de l'expression est le même que celui de <code><a href="/fr/Add-ons/WebExtensions/API/devtools.inspectedWindow/eval">inspectedWindow.eval()</a></code>.</p>
+
+<p> Les objets JSON et les noeuds DOM sont affichés en tant qu'arborescence extensible, comme dans la <a href="/fr/docs/Outils/JSON_viewer">visionneuse jSON</a> dans Firefox. Vous pouvez éventuellement spécifier une chaîne <code>rootTitle</code> : elle sera affichée comme le titre de la racine de l'arbre.</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 evaluating = browser.devtools.panels.setExpression(
+ expression, // string
+ rootTitle // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>expression</code></dt>
+ <dd><code>string</code>. L'expression à évaluer.</dd>
+ <dt><code>rootTitle</code> {{optional_inline}}</dt>
+ <dd>string. Le titre de la racine de l'arbre dans lequel les résultats sont affichés.</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> sera remplie sans arguments, une fois l'expression évaluée.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.setExpression", 10)}}</p>
+
+<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>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code crée un volet de barre latérale qui affiche le <code><a href="/fr/docs/Web/API/Element/tagName">tagName</a></code> de l'élément actuellement sélectionné :</p>
+
+<pre class="brush: js">function onCreated(sidebarPane) {
+
+ browser.devtools.panels.elements.onSelectionChanged.addListener(() =&gt; {
+ const exp = "$0 &amp;&amp; $0.tagName";
+ const title = "Selected Element tagName";
+ sidebarPane.setExpression(exp, title);
+ });
+
+}
+
+browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
+</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/devtools_panels"><code>chrome.devtools.panels</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setobject/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setobject/index.html
new file mode 100644
index 0000000000..90252a0c2f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setobject/index.html
@@ -0,0 +1,104 @@
+---
+title: devtools.panels.ExtensionSidebarPane.setObject()
+slug: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setObject
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+ - setObject
+translation_of: >-
+ Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setObject
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Affiche un objet JSON dans le volet de la barre latérale de l'extension.</p>
+
+<p>L'objet est affiché en tant qu'arborescence extensible, comme dans le <a href="/fr/docs/Outils/JSON_viewer">JSON viewer</a> dans Firefox. Vous pouvez éventuellement spécifier une chaîne <code>rootTitle</code> : elle sera affichée comme le titre de la racine de l'arbre.</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 setting = browser.devtools.panels.setObject(
+ jsonObject, // string, array, or JSON object
+ rootTitle // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>jsonObject</code></dt>
+ <dd><code>String</code> ou <code>Array</code> ou <code>Object</code>. L'objet à afficher. S'il s'agit d'un objet JSON-serialized, donc les propriétés comme les fonctions seront omises.</dd>
+ <dt><code>rootTitle</code> {{optional_inline}}</dt>
+ <dd><code>String</code>. Le titre de la racine de l'arbre dans lequel l'objet est affiché.</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 accomplie sans arguments, une fois l'objet défini.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.setObject", 10)}}</p>
+
+<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>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Créez un nouveau volet et remplissez-le avec un objet JSON. Vous pouvez exécuter ce code dans un script chargé par la <a href="/fr/Add-ons/WebExtensions/manifest.json/devtools_page">page devtools</a>. de votre extension</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onCreated</span><span class="punctuation token">(</span>sidebarPane<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ sidebarPane<span class="punctuation token">.</span><span class="function token">setObject</span><span class="punctuation token">(</span><span class="punctuation token">{</span>
+ someBool<span class="punctuation token">:</span> <span class="keyword token">true</span><span class="punctuation token">,</span>
+ someString<span class="punctuation token">:</span> <span class="string token">"hello there"</span><span class="punctuation token">,</span>
+ someObject<span class="punctuation token">:</span> <span class="punctuation token">{</span>
+ someNumber<span class="punctuation token">:</span> <span class="number token">42</span><span class="punctuation token">,</span>
+ someOtherString<span class="punctuation token">:</span> <span class="string token">"this is my pane's content"</span>
+ <span class="punctuation token">}</span>
+ <span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>devtools<span class="punctuation token">.</span>panels<span class="punctuation token">.</span>elements<span class="punctuation token">.</span><span class="function token">createSidebarPane</span><span class="punctuation token">(</span><span class="string token">"My pane"</span><span class="punctuation token">)</span><span class="punctuation token">.</span><span class="function token">then</span><span class="punctuation token">(</span>onCreated<span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/devtools_panels"><code>chrome.devtools.panels</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setpage/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setpage/index.html
new file mode 100644
index 0000000000..e4f98e3ff3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/extensionsidebarpane/setpage/index.html
@@ -0,0 +1,89 @@
+---
+title: devtools.panels.ExtensionSidebarPane.setPage()
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setPage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - setPage
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setPage
+---
+<p>Définit une page HTML à afficher dans le volet latéral.</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">browser.devtools.panels.setPage(
+ path // string containing relative path to page
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt>extensionPageURL</dt>
+ <dd><code>string</code>. Le chemin relatif d'une page HTML à afficher dans la barre latérale.</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 tenue sans arguments, une fois l'URL définie.</p>
+
+<p>La page sélectionnée ne sera pas chargée tant que l'utilisateur n'aura pas sélectionné la barre latérale devtools.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Créez un nouveau volet et remplissez-le d'une page HTML. Vous pouvez exécuter ce code dans un script chargé par la <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/manifest.json/devtools_page">page devtools</a> de votre extension.</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onCreated</span><span class="punctuation token">(</span>sidebarPane<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ sidebarPane<span class="punctuation token">.</span><span class="function token">setPage</span><span class="punctuation token">('sidebar/sidebar.html'</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+</code></pre>
+
+<p>{{WebExtExamples}}</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.setPage", 10)}}</p>
+
+<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>
+
+
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/devtools_panels"><code>chrome.devtools.panels</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/index.html
new file mode 100644
index 0000000000..9f2c06e2a0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/index.html
@@ -0,0 +1,103 @@
+---
+title: devtools.panels
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.panels
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels
+---
+<div>{{AddonSidebar}}</div>
+
+<div class="note">
+<p>Bien que les API soient basées sur les <a href="https://developer.chrome.com/extensions/devtools">APIs de devtools de Chrome</a>, il existe encore de nombreuses fonctionnalités qui ne sont pas encore implémentées dans Firefox et ne sont donc pas documentées ici. Pour voir les fonctionnalités actuellement manquantes, regarder  <a href="/fr/Add-ons/WebExtensions/Using_the_devtools_APIs#Limitations_of_the_devtools_APIs">Limitations des APIs devtools</a>.</p>
+</div>
+
+<p>L'API devtools.panels permet à une extension devtools de définir son interface utilisateur à l'intérieur de la fenêtre devtools.</p>
+
+<p>La fenêtre devtools héberge un certain nombre d'outils distincts - le débogueur JavaScript, le moniteur réseau, etc. Une rangée d'onglets sur le haut permet à l'utilisateur de basculer entre les différents outils. La fenêtre hébergeant l'interface utilisateur de chaque outil s'appelle un "panneau".</p>
+
+<p>Avec l'API devtools.panels, vous pouvez créer de nouveaux panneaux dans la fenêtre des devtools.</p>
+
+<p>Comme toutes les API de devtools, cette API est uniquement disponible pour le code exécuté dans le document défini dans la clé <a href="/fr/Add-ons/WebExtensions/manifest.json/devtools_page">devtools_page</a> du manifest.json, ou dans d'autres documents de déploiement créés par une extension (tel que le document du panneau). Voir <a href="/fr/Add-ons/WebExtensions/Extending_the_developer_tools">Extension des outils de développement</a> pour plus for d'informations.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel">devtools.panels.ElementsPanel</a></code></dt>
+ <dd>Représente l'inspecteur HTML/CSS dans le devtools du navigateur</dd>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionPanel">devtools.panels.ExtensionPanel</a></code></dt>
+ <dd>Représente un panneau de déploiement créé par l'extension.</dd>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane">devtools.panels.ExtensionSidebarPane</a></code></dt>
+ <dd>Représente un volet ajouté par une extension à l'inspecteur HTML/CC dans les devtools du navigateur.</dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/elements">devtools.panels.elements</a></code></dt>
+ <dd>Une référence à un objet <code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel">ElementsPanel</a></code>.</dd>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/themeName">devtools.panels.themeName</a></code></dt>
+ <dd>Le nom du thème actuel des devtools.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/create">devtools.panels.create()</a></code></dt>
+ <dd>Créé un nouveau panneau de développement</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt><code><a href="/fr/Add-ons/WebExtensions/API/devtools.panels/onThemeChanged">devtools.panels.onThemeChanged</a></code></dt>
+ <dd>Mise en place lorsque le thème Devtools change.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools.panels", 2)}}</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/devtools_panels"><code>chrome.devtools.panels</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/onthemechanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/onthemechanged/index.html
new file mode 100644
index 0000000000..75c9b94ccc
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/onthemechanged/index.html
@@ -0,0 +1,72 @@
+---
+title: devtools.panels.onThemeChanged
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/onThemeChanged
+tags:
+ - API
+ - Add-ons
+ - DevTools
+ - Reference
+ - WebExtensions
+ - devtools.panels
+ - onThemeChanged
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels/onThemeChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Remplacement quand le thème de devtools change</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.devtools.panels.onThemeChanged.addListener(listener)
+browser.devtools.panels.onThemeChanged.removeListener(listener)
+browser.devtools.panels.onThemeChanged.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un auditeur à cet événement</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêtez d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie Vrai si elle écoute, sinon Faux.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>callback</code></dt>
+ <dd>
+ <p>Function qui sera appelée lors de l'événement. La fonction passera les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>themeName</code></dt>
+ <dd><code>string</code>. Nom du nouveau thème : ce sera l'une des valeurs autorisées pour  <code><a href="/fr/docs/Mozilla/Add-ons/WebExtensions/API/devtools.panels/themeName">devtools.panels.themeName</a></code>.</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.devtools.panels.onThemeChanged")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">browser.devtools.panels.onThemeChanged.addListener((newThemeName) =&gt; {
+ console.log(`New theme: ${newThemeName}`);
+});
+</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/devtools_panels"><code>chrome.devtools.panels</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/devtools.panels/themename/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/themename/index.html
new file mode 100644
index 0000000000..abddedc962
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools.panels/themename/index.html
@@ -0,0 +1,39 @@
+---
+title: devtools.panels.themeName
+slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/themeName
+tags:
+ - API
+ - Add-ons
+ - DevTools
+ - Reference
+ - WebExtensions
+ - devtools.panels
+ - themeName
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools.panels/themeName
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le nom du thème de <strong>devtools</strong> actuellement sélectionné.</p>
+
+<p>Il s'agit d'une chaîne dont les valeurs possibles sont :</p>
+
+<ul>
+ <li>"lumière"</li>
+ <li>"foncé"</li>
+ <li>"firebug"</li>
+</ul>
+
+<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.devtools.panels.themeName")}}</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/devtools_panels"><code>chrome.devtools.panels</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/devtools/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools/index.html
new file mode 100644
index 0000000000..604a1cd590
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/index.html
@@ -0,0 +1,72 @@
+---
+title: devtools
+slug: Mozilla/Add-ons/WebExtensions/API/devtools
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - devtools.inspectedWindow
+ - devtools.network
+ - devtools.panels
+translation_of: Mozilla/Add-ons/WebExtensions/API/devtools
+---
+<p>{{AddonSidebar}}</p>
+
+<p>Permet aux extensions d'interagir avec le {{Glossary("Developer Tools")}} du navigateur. Vous pouvez utiliser cette API pour créer des pages d'outils de développement, interagir avec la fenêtre qui est inspectée, inspecter l'utilisation du réseau de pages.</p>
+
+<p>Pour utiliser cette API, vous devez disposer de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission API</a> <code>"devtools"</code> spécifiée dans votre fichier <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json</a>. Cette permission ne peut pas être facultative.</p>
+
+<h2 id="Interfaces">Interfaces</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("devtools.inspectedWindow")}}</dt>
+ <dd>Interagir avec la fenêtre à laquelle les outils de développement sont attachés (fenêtre inspectée). Cela inclut l'obtention de l'onglet ID pour la page inspectée, l'évaluation du code dans le contexte de la fenêtre inspectée, le rechargement de la page ou l'obtention de la liste des ressources dans la page.</dd>
+ <dt>{{WebExtAPIRef("devtools.network")}}</dt>
+ <dd>Obtenir des informations sur les requêtes de réseau associées à la fenêtre à laquelle les outils de développement sont attachés (la fenêtre inspectée).</dd>
+ <dt>{{WebExtAPIRef("devtools.panels")}}</dt>
+ <dd>Créer des panneaux d'interface utilisateur qui seront affichés dans les outils de développement de l'agent utilisateur.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.devtools")}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basé sur l'API  <a href="https://developer.chrome.com/extensions/downloads"><code>chrome.downloads</code></a> de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/dns/index.html b/files/fr/mozilla/add-ons/webextensions/api/dns/index.html
new file mode 100644
index 0000000000..aaac9b867d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/dns/index.html
@@ -0,0 +1,31 @@
+---
+title: dns
+slug: Mozilla/Add-ons/WebExtensions/API/dns
+tags:
+ - API
+ - Add-ons
+ - DNS
+ - Extensions
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/dns
+---
+<div>{{AddonSidebar}}</div>
+
+<div>Active une extension pour résoudre les noms de domaine.</div>
+
+<div></div>
+
+<div>Pour utiliser cette API, une extension doit demander la permission "dns" <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> dans son fichier <code><a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a></code> .</div>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("dns.resolve()")}}</dt>
+ <dd>Résout le nom d'hôte donné en un enregistrement DNS</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.dns")}}</p>
+
+<p>{{WebExtExamples("h2")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.html b/files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.html
new file mode 100644
index 0000000000..ecb976a87e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.html
@@ -0,0 +1,102 @@
+---
+title: dns.resolve()
+slug: Mozilla/Add-ons/WebExtensions/API/dns/resolve
+tags:
+ - API
+ - Add-ons
+ - DNS
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - resolve
+translation_of: Mozilla/Add-ons/WebExtensions/API/dns/resolve
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Résout le nom d'hôte donné en un enregistrement DNS.</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 resolving = browser.dns.resolve(
+ hostname, // string
+ flags // array of string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>hostname</code></dt>
+ <dd><code><code>string</code></code>. Le nom d'hôte à résoudre.</dd>
+ <dt><code>flags</code> {{optional_inline}}</dt>
+ <dd><code>array</code> de <code>string</code>. Drapeaux pour modifier la façon dont le nom d'hôte est résolu. Tous les indicateurs omis sont par défaut à <code>false</code>. Vous pouvez passer zéro ou plusieurs des indicateurs suivants :</dd>
+ <dd>
+ <ul>
+ <li><code>"allow_name_collisions"</code>: autorise les résultats de collision de noms qui sont normalement filtrés.</li>
+ <li><code>"bypass_cache"</code>: Supprime le cache de recherche DNS interne.</li>
+ <li><code>"canonical_name"</code>: Le nom canonique de l'hôte spécifié sera interrogé.</li>
+ <li><code>"disable_ipv4"</code>: Seules les adresses IPv6 seront renvoyées.</li>
+ <li><code>"disable_ipv6"</code>: Seules les adresses IPv4 seront renvoyées.</li>
+ <li><code>"disable_trr"</code>: n'utilisez pas le TRR (Trusted Recursive Resolver) pour résoudre le nom d'hôte. Un TRR permet la résolution des noms d'hôtes à l'aide d'un serveur <a href="https://tools.ietf.org/html/draft-ietf-doh-dns-over-https-02">DNS-over-HTTPS</a> dédié.</li>
+ <li><code>"offline"</code>: seuls les littéraux et les entrées mises en cache seront renvoyés.</li>
+ <li><code>"priority_low"</code>: La priorité est donnée à la requête. Si "priority_medium" est également donné, la requête est prioritaire.</li>
+ <li><code>"priority_medium"</code>: La priorité est donnée à la requête. Si "priority_low" est également donné, la requête est prioritaire</li>
+ <li><code>"speculate"</code>: Indique que la requête est spéculative. Les demandes spéculatives renvoient des erreurs si la prélecture est désactivée par la configuration du navigateur.</li>
+ </ul>
+ </dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>A <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promisee">Promise</a></code> qui sera remplie avec un objet <code>DNSRecord</code> object. Cet objet peut contenir les propriétés suivantes :</p>
+
+<dl>
+ <dt><code>addresses</code></dt>
+ <dd><code>array</code> of <code>string</code>. Les adresses IP associées à cet enregistrement DNS.</dd>
+ <dt><code>canonicalName</code></dt>
+ <dd><code>string</code>. Le nom canonique de cet enregistrement. Ceci n'est inclus dans la réponse que si le drapeau <code>"canonical_name"</code>a été passé à  <code>resolve()</code>.</dd>
+ <dt><code>isTRR</code></dt>
+ <dd><code>boolean</code>: <code>true</code> si l'enregistrement a été récupéré à l'aide d'un TRR (Trusted Recursive Resolver).</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function resolved(record) {
+ console.log(record.addresses);
+}
+
+let resolving = browser.dns.resolve("example.com");
+resolving.then(resolved);
+
+// &gt; e.g. Array [ "73.284.240.12" ]
+</pre>
+
+<p>Contournez le cache et demandez le nom canonique:</p>
+
+<pre class="brush: js">function resolved(record) {
+ console.log(record.canonicalName);
+ console.log(record.addresses);
+}
+
+let resolving = browser.dns.resolve("developer.mozilla.org",
+ ["bypass_cache", "canonical_name"]);
+resolving.then(resolved);
+
+// &gt; e.g. xyz.us-west-2.elb.amazonaws.com
+// &gt; e.g. Array [ "78.18.187.134", "34.79.135.234" ]</pre>
+
+<p>{{WebExtExamples}}</p>
+
+
+
+<dl>
+</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.dns.resolve")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.html
new file mode 100644
index 0000000000..a9e020816f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.html
@@ -0,0 +1,86 @@
+---
+title: downloads.acceptDanger()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/acceptDanger
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - acceptDanger
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/acceptDanger
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>acceptDanger</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} invite l'utilisateur à accepter ou à annuler un téléchargement potentiellement dangereux.</p>
+
+<p>Cette fonction ne peut pas être appelée à partir de scripts d'arrière-plan, uniquement dans les scripts qui s'exécutent dans une fenêtre visible (par exemple un navigateur ou une fenêtre d'action de page).</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 prompting = browser.downloads.acceptDanger(
+ downloadId // integer
+)
+</pre>
+
+<h3 id="Parameters">Parameters</h3>
+
+<dl>
+ <dt><code>downloadId</code></dt>
+ <dd>Un <code>integer</code> représentant l'<code>id</code> de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} en question.</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>. Lorsque la boîte de dialogue se ferme, la promesse sera remplie sans arguments.</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.downloads.acceptDanger")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.html
new file mode 100644
index 0000000000..cb51349e6f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.html
@@ -0,0 +1,74 @@
+---
+title: downloads.BooleanDelta
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/BooleanDelta
+tags:
+ - API
+ - Add-ons
+ - BooleanDelta
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/BooleanDelta
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>BooleanDelta</code> de l'API {{WebExtAPIRef("downloads")}} représente la différence entre deux booléens.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>current</code>{{optional_inline}}</dt>
+ <dd>Un <code>boolean</code> représentant la valeur booléenne actuelle.</dd>
+ <dt><code>previous</code>{{optional_inline}}</dt>
+ <dd>Un <code>boolean</code> représentant la valeur booléenne précédente.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p class="hidden"><span class="tlid-translation translation"><span title="">Le tableau de compatibilité de cette page est généré à partir de données structurées.</span> <span title="">Si vous souhaitez contribuer aux données, veuillez consulter</span></span>  <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> <span class="tlid-translation translation"><span title="">et envoyez-nous une </span></span><span class="gt-baf-term-text"><span class="gt-baf-cell gt-baf-word-clickable">requête</span></span><span class="tlid-translation translation"><span title=""> </span></span></p>
+
+<p>{{Compat("webextensions.api.downloads.BooleanDelta")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre> <span class="tlid-translation translation">// Copyright 2015 Les auteurs de chrome. Tous les droits sont réservés.
+//
+// Redistribution et utilisation sous forme source et binaire, avec ou sans
+// modification, sont autorisées à condition que les conditions suivantes soient
+// rencontré:
+//
+// * Les redistributions de code source doivent conserver le copyright ci-dessus
+// remarque, cette liste de conditions et la clause de non-responsabilité suivante.
+// * Les redistributions sous forme binaire doivent reproduire ce qui précède
+// avis de droit d'auteur, cette liste de conditions et la clause de non-responsabilité suivante // dans la documentation et / ou les autres éléments fournis avec le
+// Distribution.
+// * Ni le nom de Google Inc. ni les noms de ses
+// les contributeurs peuvent être utilisés pour approuver ou promouvoir des produits dérivés de
+// ce logiciel sans autorisation écrite préalable spécifique.
+//
+// CE LOGICIEL EST FOURNI PAR LES TITULAIRES DE COPYRIGHT ET LES CONTRIBUTEURS
+// "EN L'ETAT" ET TOUTE GARANTIE EXPRESSE OU IMPLICITE, Y COMPRIS MAIS NON
+// LIMITE AUX GARANTIES IMPLICITES DE QUALITÉ MARCHANDE ET D'ADÉQUATION À
+// UN OBJECTIF PARTICULIER EST REFUSÉ. EN AUCUN CAS, LE COPYRIGHT
+// LE PROPRIÉTAIRE OU LES CONTRIBUTEURS SONT RESPONSABLES DE TOUT ASSISTANCE DIRECTE, INDIRECTE, ACCESSOIRE,
+// DOMMAGES PARTICULIERS, EXEMPLAIRES OU CONSÉCUTIFS (Y COMPRIS, MAIS NON
+// LIMITÉE À L'ACQUISITION DE MARCHANDISES OU DE SERVICES DE SUBSTITUTION; PERTE D'USAGE,
+// DATA, OR PROFITS; OU INTERRUPTION COMMERCIALE) TOUTEFOIS CAUSÉE ET SUR TOUTE
+// THÉORIE DE LA RESPONSABILITÉ, QU'IL SOIT UN CONTRAT, UNE RESPONSABILITÉ STRICTE OU UN TORT
+// (INCLUANT LA NÉGLIGENCE OU AUTREMENT) SURVENANT DE TOUTE MANIÈRE DE L'UTILISER
+// DE CE LOGICIEL, MÊME SI AVISÉ DE LA POSSIBILITÉ D'UN TEL DOMMAGE.</span>
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.html
new file mode 100644
index 0000000000..da18864854
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.html
@@ -0,0 +1,101 @@
+---
+title: downloads.cancel()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/cancel
+tags:
+ - API
+ - Add-ons
+ - Annuler
+ - Extensions
+ - Metho
+ - Non-standard
+ - Reference
+ - Téléchargement
+ - WebExtensions
+ - cancel
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/cancel
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>cancel</strong></code><strong><code>()</code></strong> de l'API de {{WebExtAPIRef("downloads")}} annule un téléchargement. L'appel échouera si le téléchargement n'est pas actif : par exemple, parce qu'il a terminé le téléchargement..</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 canceling = browser.downloads.cancel(
+ downloadId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>downloadId</code></dt>
+ <dd><code>integer</code>. L'identifiant du téléchargement à annuler.</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>. Si la demande a été acceptée, la promesse sera remplie sans arguments. Si la demande a échoué, la promesse sera rejetée avec un message d'erreur.</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.downloads.cancel")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">var downloadId = 13;
+
+function onCanceled() {
+ console.log(`Canceled download`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var canceling = browser.downloads.cancel(downloadId);
+canceling.then(onCanceled, onError);</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.html
new file mode 100644
index 0000000000..c2172ceade
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.html
@@ -0,0 +1,93 @@
+---
+title: downloads.DangerType
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/DangerType
+tags:
+ - API
+ - Add-ons
+ - DangerType
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/DangerType
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>Le type <code>DangerType</code> de l'API {{WebExtAPIRef("downloads")}} définit un ensemble de raisons possibles pour lesquelles un fichier téléchargeable peut être considéré comme dangereux..</p>
+
+<p>Une propriété de <code>danger</code> {{WebExtAPIRef('downloads.DownloadItem')}} contiendra une chaîne tirée des valeurs définies dans ce type.</p>
+
+<div class="note">
+<p><strong>Remarque </strong>: Ces constantes de chaîne ne changeront jamais, mais l'ensemble de DangerTypes peut change.</p>
+</div>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt><code>file</code></dt>
+ <dd>Le nom de fichier du téléchargement est suspect.</dd>
+ <dt><code>url</code></dt>
+ <dd>L'URL du téléchargement est connue pour être malveillante.</dd>
+ <dt><code>content</code></dt>
+ <dd>Le fichier téléchargé est connu pour être malveillant.</dd>
+ <dt><code>uncommon</code></dt>
+ <dd>L'URL du téléchargement n'est pas généralement téléchargée.</dd>
+ <dt><code>host</code></dt>
+ <dd>Le téléchargement provenait d'un hôte connu pour distribuer des binaires malveillants.</dd>
+ <dt><code>unwanted</code></dt>
+ <dd>Le téléchargement est potentiellement indésirable ou dangereux..</dd>
+ <dt><code>safe</code></dt>
+ <dd>Le téléchargement ne présente aucun danger connu pour l'ordinateur de l'utilisateur.</dd>
+ <dt><code>accepted</code></dt>
+ <dd>L'utilisateur a accepté le téléchargement dangereux.</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.downloads.DangerType")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIEen-S, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.html
new file mode 100644
index 0000000000..cbb6f5bcd3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.html
@@ -0,0 +1,75 @@
+---
+title: downloads.DoubleDelta
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/DoubleDelta
+tags:
+ - API
+ - Add-ons
+ - DoubleDelta
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/DoubleDelta
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>DoubleDelta</code> de l'API {{WebExtAPIRef("downloads")}} représente la différence entre deux doubles.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>current</code>{{optional_inline}}</dt>
+ <dd>Un <code>number</code> représentant la double valeur actuelle.</dd>
+ <dt><code>previous</code>{{optional_inline}}</dt>
+ <dd>Un <code>number</code> représentant la valeur double précédente.</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.downloads.DoubleDelta")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.html
new file mode 100644
index 0000000000..91d8ac0098
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.html
@@ -0,0 +1,145 @@
+---
+title: downloads.download()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/download
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - download
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/download
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <strong><code>download()</code></strong> de l'API {{WebExtAPIRef("downloads")}} télécharge le fichier, compte tenu de son URL et d'autres préférences optionnelles.</p>
+
+<ul>
+ <li>Si l'<code>url</code> spécifiée utilise le protocole HTTP ou HTTPS, la requête inclura tous les cookies actuellement définis pour son nom d'hôte.</li>
+ <li>Si à la fois le  <code>nom de fichier</code> et <code>saveAs</code> sont spécifiés, la boîte de dialogue Enregistrer sous s'affiche, pré-remplie avec le <code>nom du fichier</code> spécifié.</li>
+</ul>
+
+<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 downloading = browser.downloads.download(
+ options // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>options</code></dt>
+ <dd>Un <code>object</code> spécifiant le fichier que vous souhaitez télécharger et toutes les autres préférences que vous souhaitez définir concernant le téléchargement. Il peut contenir les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>allowHttpErrors</code>{{optional_inline}}</dt>
+ <dd>Un tag <code>booléen</code> qui permet de poursuivre les téléchargements même s'ils rencontrent des erreurs HTTP. L'utilisation de ce drapeau, par exemple, permet le téléchargement des pages d'erreur du serveur. La valeur par défaut est <code>false</code>. Lorsqu'il est défini à :
+ <ul>
+ <li><code>false</code>, le téléchargement est annulé lorsqu'il rencontre une erreur HTTP.</li>
+ <li><code>true</code>, le téléchargement se poursuit lorsqu'une erreur HTTP est rencontrée et que l'erreur du serveur HTTP n'est pas signalée. Toutefois, si le téléchargement échoue en raison d'une erreur liée au fichier, au réseau, à l'utilisateur ou autre, cette erreur est signalée.</li>
+ </ul>
+ </dd>
+ <dt><code>body</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant le corps du message de la requête.</dd>
+ <dt><code>conflictAction</code>{{optional_inline}}</dt>
+ <dd>Une chaîne représentant l'action que vous voulez effectuer s'il y a un conflit de nom de fichier, tel que défini dans le  {{WebExtAPIRef('downloads.FilenameConflictAction')}} type (par défaut "uniquify" quand il n'est pas spécifié).</dd>
+ <dt><code>filename</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> eprésentant un chemin d'accès au fichier par rapport au répertoire de téléchargement par défaut,  qui indique l'emplacement où vous souhaitez enregistrer le fichier et le nom de fichier que vous souhaitez utiliser. Les chemins absolus, les chemins vides et les chemins contenant des références arrières  (<code>../</code>) provoqueront une erreur. Si elle est omise, cette valeur sera par défaut le nom de fichier déjà donné au fichier de téléchargement, et un emplacement immédiatement dans le répertoire de téléchargement.</dd>
+ <dt><code>headers</code>{{optional_inline}}</dt>
+ <dd>Si l'URL utilise les protocoles HTTP ou HTTPS, un <code>array</code> d'<code>objects</code> représentant des en-têtes HTTP supplémentaires à envoyer avec la requête. Chaque en-tête est représenté sous la forme d'un objet dictionnaire contenant le <code>name</code> des clés et soit la <code>value</code>, soit la valeur <code>binaryValue</code>. Les en-têtes interdits par <code>XMLHttpRequest</code> et <code>fetch</code> ne peuvent pas être spécifiés, cependant, Firefox 70 et les versions ultérieures permettent d'utiliser l'en-tête <code>Referer</code>. Tenter d'utiliser un en-tête interdit provoque une erreur.</dd>
+ <dt><code>incognito</code>{{optional_inline}}</dt>
+ <dd>Un <code>boolean</code>: s'il est présent et défini sur true, associez ce téléchargement à une session de navigation privée. Cela signifie qu'il n'apparaîtra dans le gestionnaire de téléchargement que pour les fenêtres privées actuellement ouvertes.</dd>
+ <dt><code>method</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant la méthode HTTP à utiliser si l'<code>url</code> utilise le protocole HTTP[S]. Cela peut être "GET" ou "POST".</dd>
+ <dt><code>saveAs</code>{{optional_inline}}</dt>
+ <dd>
+ <p>Un <code>boolean</code> qui spécifie s'il faut fournir une boîte de dialogue de sélection de fichier pour permettre à l'utilisateur de sélectionner un nom de fichier (<code>true</code>), ou non (<code>false</code>).</p>
+
+ <p>Si cette option est omise, le navigateur affichera le sélecteur de fichier ou non en fonction de la préférence générale de l'utilisateur pour ce comportement (dans Firefox cette préférence est intitulée "Toujours vous demander où enregistrer les fichiers" dans about:preferences, ou <code>browser.download.useDownloadDir</code> dans about:config).</p>
+
+ <div class="note">
+ <p><strong>Note</strong>: Firefox pour Android provoque une erreur si <code>saveAs</code> est à  <code>true</code>. Le paramètre est ignoré lorsque <code>saveAs</code> est <code>false</code> ou non inclus.</p>
+ </div>
+ </dd>
+ <dt><code>url</code></dt>
+ <dd>Un <code>string</code> représentant l'URL à télécharger.</dd>
+ </dl>
+ </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>. Si le téléchargement a démarré avec succès, la promesse sera remplie avec l'<code>id</code> de la nouvelle {{WebExtAPIRef("downloads.DownloadItem")}}. Sinon, la promesse sera rejetée avec un message d'erreur venant de  {{WebExtAPIRef("downloads.InterruptReason")}}.</p>
+
+<p>Si vous utilisez <a href="/fr/docs/Web/API/URL/createObjectURL">URL.createObjectURL()</a> pour télécharger des données créées en JavaScript et que vous voulez révoquer l'URL de l'objet (avec <a href="/fr/docs/Web/API/URL/revokeObjectURL">revokeObjectURL</a>) plus tard (comme il est fortement recommandé), vous devez le faire après le téléchargement. Pour ce faire, écoutez l'événement <a href="/fr/Add-ons/WebExtensions/API/downloads/onChanged">downloads.onChanged</a>.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p class="hidden"><span class="tlid-translation translation"><span title="">Le tableau de compatibilité de cette page est généré à partir de données structurées.</span> <span title="">Si vous souhaitez contribuer aux données, veuillez consulter</span></span>  <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> <span class="tlid-translation translation"><span title="">et envoyez-nous une demande</span></span> .</p>
+
+<p>{{Compat("webextensions.api.downloads.download")}}</p>
+
+<h2 id="Examples">Examples</h2>
+
+<p>Le fragment suivant tente de télécharger un exemple de fichier, en spécifiant également un nom de fichier et un emplacement pour l'enregistrer, ainsi que l'option <code>uniquify</code> <code>conflictAction</code>.</p>
+
+<pre class="brush: js">function onStartedDownload(id) {
+ console.log(`Started downloading: ${id}`);
+}
+
+function onFailed(error) {
+ console.log(`Download failed: ${error}`);
+}
+
+var downloadUrl = "https://example.org/image.png";
+
+var downloading = browser.downloads.download({
+ url : downloadUrl,
+ filename : 'my-image-again.png',
+ conflictAction : 'uniquify'
+});
+
+downloading.then(onStartedDownload, onFailed);</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/downloads"><code>chrome.downloads</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre> <span class="tlid-translation translation">// Copyright 2015 Les auteurs de chrome. Tous les droits sont réservés.
+//
+// Redistribution et utilisation sous forme source et binaire, avec ou sans
+// modification, sont autorisées à condition que les conditions suivantes soient
+// rencontré:
+//
+// * Les redistributions de code source doivent conserver le copyright ci-dessus
+// remarque, cette liste de conditions et la clause de non-responsabilité suivante.
+// * Les redistributions sous forme binaire doivent reproduire ce qui précède
+// avis de droit d'auteur, cette liste de conditions et la clause de non-responsabilité suivante // dans la documentation et / ou les autres éléments fournis avec le
+// Distribution.
+// * Ni le nom de Google Inc. ni les noms de ses
+// les contributeurs peuvent être utilisés pour approuver ou promouvoir des produits dérivés de
+// ce logiciel sans autorisation écrite préalable spécifique.
+//
+// CE LOGICIEL EST FOURNI PAR LES TITULAIRES DE COPYRIGHT ET LES CONTRIBUTEURS
+// "EN L'ETAT" ET TOUTE GARANTIE EXPRESSE OU IMPLICITE, Y COMPRIS MAIS NON
+// LIMITE AUX GARANTIES IMPLICITES DE QUALITÉ MARCHANDE ET D'ADÉQUATION À
+// UN OBJECTIF PARTICULIER EST REFUSÉ. EN AUCUN CAS, LE COPYRIGHT
+// LE PROPRIÉTAIRE OU LES CONTRIBUTEURS SONT RESPONSABLES DE TOUT ASSISTANCE DIRECTE, INDIRECTE, ACCESSOIRE,
+// DOMMAGES PARTICULIERS, EXEMPLAIRES OU CONSÉCUTIFS (Y COMPRIS, MAIS NON
+// LIMITÉE À L'ACQUISITION DE MARCHANDISES OU DE SERVICES DE SUBSTITUTION; PERTE D'USAGE,
+// DATA, OR PROFITS; OU INTERRUPTION COMMERCIALE) TOUTEFOIS CAUSÉE ET SUR TOUTE
+// THÉORIE DE LA RESPONSABILITÉ, QU'IL SOIT UN CONTRAT, UNE RESPONSABILITÉ STRICTE OU UN TORT
+// (INCLUANT LA NÉGLIGENCE OU AUTREMENT) SURVENANT DE TOUTE MANIÈRE DE L'UTILISER
+// DE CE LOGICIEL, MÊME SI AVISÉ DE LA POSSIBILITÉ D'UN TEL DOMMAGE.</span>
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.html
new file mode 100644
index 0000000000..852f9a66f2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.html
@@ -0,0 +1,111 @@
+---
+title: downloads.DownloadItem
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/DownloadItem
+tags:
+ - API
+ - Add-ons
+ - DownloadItem
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/DownloadItem
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>DownloadItem</code> de l'API {{WebExtAPIRef("downloads")}} représente un fichier téléchargé.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>byExtensionId</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant l'ID de l'extension qui a déclenché le téléchargement (si elle a été déclenchée par une extension). Cela ne change pas une fois réglé. Si le téléchargement n'a pas été déclenché par une extension, ceci n'est pas défini.</dd>
+ <dt><code>byExtensionName</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant le nom de l'extension qui a déclenché le téléchargement (si elle a été déclenchée par une extension). Cela peut changer si l'extension change de nom ou si l'utilisateur change ses paramètres régionaux. Si le téléchargement n'a pas été déclenché par une extension, ceci n'est pas défini.</dd>
+ <dt><code>bytesReceived</code></dt>
+ <dd>Un <code>number</code> représentant le nombre d'octets reçus jusqu'ici de l'hôte pendant le téléchargement ; cela ne prend pas en compte la compression de fichier.</dd>
+ <dt><code>canResume</code></dt>
+ <dd>Un <code>boolean</code> indiquant si un téléchargement actuellement interrompu (par exemple en pause) peut être repris à partir du point où il a été interrompu (<code>true</code>), ou non (<code>false</code>).</dd>
+ <dt><code>danger</code></dt>
+ <dd>Une chaîne indiquant si ce téléchargement est considéré comme sûr ou suspect. Ses valeurs possibles sont définies dans le type  {{WebExtAPIRef('downloads.DangerType')}}.</dd>
+ <dt><code>endTime</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> (au format <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a>) représentant le nombre de millisecondes entre l'époque UNIX et la fin de ce téléchargement. Ceci n'est pas défini si le téléchargement n'est pas encore terminé.</dd>
+ <dt><code>error</code>{{optional_inline}}</dt>
+ <dd>Une chaîne indiquant pourquoi un téléchargement a été interrompu. Les valeurs possibles sont définies dans le type {{WebExtAPIRef('downloads.InterruptReason')}}. Ceci n'est pas défini si une erreur ne s'est pas produite.</dd>
+ <dt><code>estimatedEndTime</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> (au format <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a>) représentant le nombre estimé de millisecondes entre l'époque UNIX et la date à laquelle ce téléchargement est estimé terminé. Ceci est indéfini s'il n'est pas connu (en particulier, il n'est pas défini dans le  <code>DownloadItem</code> qui est passé dans {{WebExtAPIRef("downloads.onCreated")}}).</dd>
+ <dt><code>exists</code></dt>
+ <dd>Un <code>boolean</code> indiquant si un fichier téléchargé existe toujours (<code>true</code>) ou non (<code>false</code>). Ces informations peuvent être périmées, car les navigateurs ne surveillent pas automatiquement la suppression des fichiers. Pour vérifier si un fichier existe, appelez la méthode {{WebExtAPIRef('downloads.search()')}}, en filtrant le fichier question.</dd>
+ <dt><code>filename</code></dt>
+ <dd>Un <code>string</code> représentant le chemin local absolu du fichier.</dd>
+ <dt><code>fileSize</code></dt>
+ <dd>Un <code>number</code> indiquant le nombre total d'octets dans le fichier entier, après décompression. La valeur -1 signifie que la taille totale du fichier est inconnue.</dd>
+ <dt><code>id</code></dt>
+ <dd>Un <code>integer</code> représentant un identifiant unique pour le fichier téléchargé qui est persistant entre les sessions du navigateur.</dd>
+ <dt><code>incognito</code></dt>
+ <dd>Un <code>boolean</code> qui indique si le téléchargement est enregistré dans l'historique du navigateur (<code>false</code>), ou non (<code>true</code>).</dd>
+ <dt><code>mime</code></dt>
+ <dd>Un <code>string</code> représentant le type MIME du fichier téléchargé.</dd>
+ <dt><code>paused</code></dt>
+ <dd>Un <code>boolean</code> indiquant si le téléchargement est en pause, c'est-à-dire si le téléchargement a cessé de lire les données de l'hôte mais a maintenu la connexion ouverte. Si c'est le cas, la valeur est <code>true</code>, sinon <code>false</code>.</dd>
+ <dt><code>referrer</code></dt>
+ <dd>Un <code>string</code> représentant le référent du fichier téléchargé.</dd>
+ <dt><code>startTime</code></dt>
+ <dd>Un <code>string</code> (au format <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a>) représentant le nombre de millisecondes entre l'époque UNIX et le début du téléchargement.</dd>
+ <dt><code>state</code></dt>
+ <dd>Un <code>string</code> Indique si le téléchargement progresse, est interrompu ou terminé. Les valeurs possibles sont définies dans le type {{WebExtAPIRef('downloads.State')}}.</dd>
+ <dt><code>totalBytes</code></dt>
+ <dd>Un <code>number</code> indiquant le nombre total d'octets dans le fichier en cours de téléchargement. Cela ne prend pas en compte la compression de fichier. Une valeur de -1 signifie que le nombre total d'octets est inconnu..</dd>
+ <dt><code>url</code></dt>
+ <dd>Un <code>string</code> représentant l'URL absolue à partir de laquelle le fichier a été téléchargé.</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.downloads.DownloadItem")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.html
new file mode 100644
index 0000000000..e2ec0675a5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.html
@@ -0,0 +1,122 @@
+---
+title: downloads.DownloadQuery
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/DownloadQuery
+tags:
+ - API
+ - Add-ons
+ - DownloadQuery
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/DownloadQuery
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>DownloadQuery</code> de l'API {{WebExtAPIRef("downloads")}} définit un ensemble de paramètres pouvant être utilisés pour rechercher dans le gestionnaire de téléchargements un ensemble spécifique de téléchargements.</p>
+
+<p>Ce type est utilisé par exemple dans {{WebExtAPIRef("downloads.search()")}} et {{WebExtAPIRef("downloads.erase()")}}, en tant qu'objet de requête pour filtrer l'ensemble de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} pour retourner ou effacer.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>query</code>{{optional_inline}}</dt>
+ <dd>Un <code>tableau</code> de<code><code>chaines</code></code>. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le <code>nom de fichier</code> ou l'<code>URL</code> contient toutes les chaînes données. Vous pouvez également inclure des termes commençant par un titet (-) — ces termes <strong>ne doivent pas</strong> figurer dans le <code>nom du fichier</code> ou l'<code>url</code> de l'élément à inclure.</dd>
+ <dt><code>startedBefore</code>{{optional_inline}}</dt>
+ <dd>Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui a démarré avant l'heure indiquée.</dd>
+ <dt><code>startedAfter</code>{{optional_inline}}</dt>
+ <dd>Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui a démarré après l'heure indiquée.</dd>
+ <dt><code>endedBefore</code>{{optional_inline}}</dt>
+ <dd>Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui s'est terminé avant l'heure indiquée.</dd>
+ <dt><code>endedAfter</code>{{optional_inline}}</dt>
+ <dd>Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui s'est terminé après l'heure indiquée.</dd>
+ <dt><code>totalBytesGreater</code>{{optional_inline}}</dt>
+ <dd>Un <code>number</code> représentant un nombre d'octets. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le  <code>totalBytes</code> est supérieur au nombre donné.</dd>
+ <dt><code>totalBytesLess</code>{{optional_inline}}</dt>
+ <dd>Un <code>number</code> représentant un nombre d'octets. Inclure seulement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le <code>totalBytes</code> est inférieur au nombre donné.</dd>
+ <dt><code>filenameRegex</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant une expression régulière. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le <code>nom du fichier</code> correspond à l'expression régulière donnée..</dd>
+ <dt><code>urlRegex</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant une expression régulière. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont la valeur d'<code>url</code> correspond à l'expression régulière donnée..</dd>
+ <dt><code>limit</code>{{optional_inline}}</dt>
+ <dd>Un <code>integer</code> représentant un nombre de résultats. Incluez uniquement le nombre spécifié de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}}.</dd>
+ <dt><code>orderBy</code>{{optional_inline}}</dt>
+ <dd>Un <code>tableau</code>de <code><code>chaînes</code></code> représentant les propriétés  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} les résultats de la recherche doivent être tirés par exemple, en incluant <code>startTime</code> puis <code>totalBytes</code> dans le tableau trierait {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} par leur heure de début, puis le total des octets — dans l'ordre croissant. Pour spécifier le tri par une propriété dans l'ordre décroissant, préfixez-le avec un trait d'union, par exemple <code>-startTime</code>.</dd>
+ <dt><code>id</code>{{optional_inline}}</dt>
+ <dd>Un <code>integer</code> représentant l'ID du {{WebExtAPIRef("downloads.DownloadItem")}} que vous souhaitez interroger.</dd>
+ <dt><code>url</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant l'URL absolue à partir de laquelle le téléchargement a été initié, avant toute redirection.</dd>
+ <dt><code>filename</code>{{optional_inline}}</dt>
+ <dd>Un string représentant le chemin local absolu du fichier téléchargé que vous souhaitez interroger.</dd>
+ <dt><code>danger</code>{{optional_inline}}</dt>
+ <dd>Une chaîne représentant un {{WebExtAPIRef('downloads.DangerType')}} — inclut uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur de <code>danger</code> .</dd>
+ <dt><code>mime</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant un type MIME. Incluez uniquement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur <code>mime</code>.</dd>
+ <dt><code>startTime</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant une heure au format <a class="external external-icon" href="https://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a>. Incluez seulement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur  <code>startTime</code>.</dd>
+ <dt><code>endTime</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant une heure au format <a class="external external-icon" href="https://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a>. Inclure uniquement sera limité à {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur <code>endTime</code>.</dd>
+ <dt><code>state</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant un téléchargement {{WebExtAPIRef('downloads.State')}} (<code>in_progress</code>, <code>interrupted</code>, or <code>complete</code>). Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur d' <code>état</code>.</dd>
+ <dt><code>paused</code>{{optional_inline}}</dt>
+ <dd>Un <code>boolean</code> qui indique si un téléchargement est en pause — c'est-à-dire qui a cessé de lire les données de l'hôte, mais qui a conservé la connexion ouverte (<code>true</code>), ou non (<code>false</code>). inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur de <code>pause</code>.</dd>
+ <dt><code>error</code>{{optional_inline}}</dt>
+ <dd>Une chaîne représentant un {{WebExtAPIRef('downloads.InterruptReason')}} — une raison pour laquelle un téléchargement a été interrompu. Inclure uniquement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur d'  <code>erreur</code> .</dd>
+ <dt><code>bytesReceived</code>{{optional_inline}}</dt>
+ <dd>Un <code>number</code> représentant le nombre d'octets reçus jusqu'ici de l'hôte, sans tenir compte de la compression de fichier. Inclure seulement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur <code>bytesReceived</code>.</dd>
+ <dt><code>totalBytes</code>{{optional_inline}}</dt>
+ <dd>Un <code>number</code> représentant le nombre total d'octets dans le fichier téléchargé, sans tenir compte de la compression de fichier. Inclure seulement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur  <code>totalBytes</code>.</dd>
+ <dt><code>fileSize</code>{{optional_inline}}</dt>
+ <dd><code>number</code>. Nombre d'octets dans le fichier entier après la décompression, ou -1 si inconnu. Un <code>nombre</code> représentant le nombre total d'octets dans le fichier après la décompression. Inclure seulement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur <code>fileSize</code>.</dd>
+ <dt><code>exists</code>{{optional_inline}}</dt>
+ <dd>Un <code>boolean</code> si un fichier téléchargé existe toujours (<code>true</code>) ou non (<code>false</code>). Inclure seulement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur <code>existe</code>.</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.downloads.DownloadQuery")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.html
new file mode 100644
index 0000000000..6f0a8c38cb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.html
@@ -0,0 +1,79 @@
+---
+title: downloads.DownloadTime
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/DownloadTime
+tags:
+ - API
+ - Add-ons
+ - DownloadTime
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/DownloadTime
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>DownloadTime</code> de l'API {{WebExtAPIRef("downloads")}} représente le temps nécessaire au téléchargement.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Un <code>DownloadTime</code> peut être l'un de trois types différents :</p>
+
+<ul>
+ <li>Un objet JavaScript <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date">Date</a></code>.</li>
+ <li>a string:
+ <ul>
+ <li>Si cela ne contient que des chiffres, il est interprété comme le nombre de millisecondes écoulées depuis l'époque UNI.</li>
+ <li>inon, il est interprété comme une chaîne <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO 8601</a>.</li>
+ </ul>
+ </li>
+ <li>un nombre : ceci est interprété comme le nombre de millisecondes écoulées depuis l'époque UNIX.</li>
+</ul>
+
+<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.downloads.DownloadTime")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.html
new file mode 100644
index 0000000000..a86ca1a48d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.html
@@ -0,0 +1,80 @@
+---
+title: downloads.drag()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/drag
+tags:
+ - API
+ - Add-ons
+ - Drag
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/drag
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction  <code><strong>drag</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} initie le glissement du fichier téléchargé vers une autre application.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">chrome.downloads.drag(
+ downloadId // integer
+)
+</pre>
+
+<p>Cette API est également disponible en tant que <code>browser.downloads.drag()</code>.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>downloadId</code></dt>
+ <dd>Un <code>integer</code> représentant l'<code>id</code> du {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} ein question.</dd>
+</dl>
+
+<h2 id="Browser_compatibility">Browser compatibility</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.downloads.drag")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.html
new file mode 100644
index 0000000000..ae4f84a452
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.html
@@ -0,0 +1,123 @@
+---
+title: downloads.erase()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/erase
+tags:
+ - API
+ - Add-ons
+ - Effacer
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+ - erase
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/erase
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>erase</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} efface la correspondance {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} de l'historique de téléchargement du navigateur sans supprimer les fichiers téléchargés du disque.</p>
+
+<p>Pour supprimer les fichiers du disque, vous devez utiliser {{WebExtAPIRef("downloads.removeFile()")}}.</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="note">
+<p><strong>Remarque </strong>: Si vous souhaitez supprimer un fichier téléchargé du disque et l'effacer de l'historique, vous devez appeler {{WebExtAPIRef("downloads.removeFile()")}} before you call <code>erase()</code>. Si vous l'essayez dans l'autre sens, vous obtiendrez une erreur lors de l'appel de {{WebExtAPIRef("downloads.removeFile()")}}, car il n'existe plus selon le navigateur.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var erasing = browser.downloads.erase(
+ query // DownloadQuery
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>query</code></dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.DownloadQuery')}}.</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>. Si l'appel a réussi, la promesse sera remplie avec un tableau d'entiers représentant les identifiants des {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} effacés. Si aucun élément correspondant au paramètre de requête n'a pu être trouvé, le tableau sera vide. Si l'appel a échoué, la promesse sera rejetée avec un message d'erreur.</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.downloads.erase")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Effacer le téléchargement le plus récent :</p>
+
+<pre class="brush: js">function onErased(ids) {
+ console.log(`Erased: ${ids}`);
+}
+
+function onError(error) {
+ console.log(`Error erasing item: ${error}`);
+}
+
+var erasing = browser.downloads.erase({
+ limit: 1,
+ orderBy: ["-startTime"]
+});
+
+erasing.then(onErased, onError);</pre>
+
+<p>Tout effacer :</p>
+
+<pre class="brush: js">function onErased(ids) {
+ console.log(`Erased: ${ids}`);
+}
+
+function onError(error) {
+ console.log(`Error erasing item: ${error}`);
+}
+
+var erasing = browser.downloads.erase({});
+erasing.then(onErased, onError);</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.html
new file mode 100644
index 0000000000..e5230302c3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.html
@@ -0,0 +1,79 @@
+---
+title: downloads.FilenameConflictAction
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/FilenameConflictAction
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - FilenameConflitAction
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/FilenameConflictAction
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>FilenameConflictAction</code> de l'API {{WebExtAPIRef("downloads")}} spécifie que faire si le nom d'un fichier téléchargé est en conflit avec un fichier existant.</p>
+
+<p>Ce type définit les valeurs pouvant être utilisées pour la propriété <code>conflictAction</code> du paramètre d'<code>options</code> {{WebExtAPIRef("downloads.download")}}.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt><code>"uniquify"</code></dt>
+ <dd>Le navigateur modifiera le nom de fichier pour le rendre unique.</dd>
+ <dt><code>"overwrite"</code></dt>
+ <dd>Le navigateur écrase l'ancien fichier avec le fichier nouvellement téléchargé.</dd>
+ <dt><code>"prompt"</code></dt>
+ <dd>Le navigateur invitera l'utilisateur, lui demandant de choisir s'il souhaite l'uniquifier ou l'écraser.</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.downloads.FilenameConflictAction")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.html
new file mode 100644
index 0000000000..93ed388d2d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.html
@@ -0,0 +1,124 @@
+---
+title: downloads.getFileIcon()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/getFileIcon
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+ - getFileIcon
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/getFileIcon
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>getFileIcon</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} récupère une icône pour le téléchargement spécifié.</p>
+
+<p>Pour les nouveaux téléchargements, les icônes de fichiers sont disponibles après la réception de l'événement {{WebExtAPIRef("downloads.onCreated")}}. L'image renvoyée par cette fonction pendant le téléchargement peut être différente de l'image renvoyée une fois le téléchargement terminé.</p>
+
+<p>La récupération d'icônes s'effectue en interrogeant la plateforme sous-jacente. L'icône renvoyée dépendra donc d'un certain nombre de facteurs, notamment l'état du téléchargement, la plate-forme, les types de fichiers enregistrés et le thème visuel.</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 gettingIcon = browser.downloads.getFileIcon(
+ downloadId, // integer
+ options // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>downloadId</code></dt>
+ <dd>Un <code>integer</code> eprésentant l'ID du téléchargement.</dd>
+ <dt><code>options</code>{{optional_inline}}</dt>
+ <dd>Un <code>object</code> d'options représentant les préférences pour l'icône à extraire. Il peut prendre les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>size</code>{{optional_inline}}</dt>
+ <dd>Un <code>integer</code> représentant la taille de l'icône. La taille de l'icône retournée sera la taille fournie au carré (en pixels). Si elle est omise, la taille par défaut de l'icône est 32x32 pixels.</dd>
+ </dl>
+ </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>. Si la requête réussit, la promesse sera remplie avec une chaîne représentant l'URL absolue de l'icône. Si la requête échoue, la promesse sera rejetée avec un message d'erreur.</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.downloads.getFileIcon")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple enregistre l'URL de l'icône pour le téléchargement le plus récent :</p>
+
+<pre class="brush: js">function gotIcon(iconUrl) {
+ console.log(iconUrl);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+function getIcon(downloadItems) {
+ if (downloadItems.length &gt; 0) {
+ latestDownloadId = downloadItems[0].id;
+ var gettingIcon = browser.downloads.getFileIcon(latestDownloadId);
+ gettingIcon.then(gotIcon, onError);
+ }
+ }
+
+var searching = browser.downloads.search({
+ limit: 1,
+ orderBy: ["-startTime"]
+});
+
+searching.then(getIcon, onError);</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/index.html
new file mode 100644
index 0000000000..1207f30d8c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/index.html
@@ -0,0 +1,132 @@
+---
+title: downloads
+slug: Mozilla/Add-ons/WebExtensions/API/downloads
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Permet aux extensions d'interagir avec le gestionnaire de téléchargement du navigateur. Vous pouvez utiliser ce module API pour télécharger des fichiers, annuler, suspendre, reprendre des téléchargements et afficher les fichiers téléchargés dans le gestionnaire de fichiers.</p>
+
+<p>Pour utiliser cette API, vous devez disposer de l' <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">API permission</a> "downloads" spécifiée dans votre fichier <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a>.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("downloads.FilenameConflictAction")}}</dt>
+ <dd>Définit les options pour ce qu'il faut faire si le nom d'un fichier téléchargé est en conflit avec un fichier existant.</dd>
+ <dt>{{WebExtAPIRef("downloads.InterruptReason")}}</dt>
+ <dd>Définit un ensemble de raisons possibles pour lesquelles un téléchargement a été interrompu.</dd>
+ <dt>{{WebExtAPIRef("downloads.DangerType")}}</dt>
+ <dd>Définit un ensemble d'avertissements communs des dangers possibles associés aux fichiers téléchargeables.</dd>
+ <dt>{{WebExtAPIRef("downloads.State")}}</dt>
+ <dd>Définit différents états dans lesquels un téléchargement en cours peut être.</dd>
+ <dt>{{WebExtAPIRef("downloads.DownloadItem")}}</dt>
+ <dd>Représente un fichier téléchargé.</dd>
+ <dt>{{WebExtAPIRef("downloads.StringDelta")}}</dt>
+ <dd>Représente la différence entre deux chaînes.</dd>
+ <dt>{{WebExtAPIRef("downloads.DoubleDelta")}}</dt>
+ <dd>Représente la différence entre deux doubles.</dd>
+ <dt>{{WebExtAPIRef("downloads.BooleanDelta")}}</dt>
+ <dd>Représente la différence entre deux booléens.</dd>
+ <dt>{{WebExtAPIRef("downloads.DownloadTime")}}</dt>
+ <dd>Représente le temps nécessaire au téléchargement pour terminer.</dd>
+ <dt>{{WebExtAPIRef("downloads.DownloadQuery")}}</dt>
+ <dd>Définit un ensemble de paramètres pouvant être utilisés pour rechercher dans le gestionnaire de téléchargements un ensemble de téléchargements spécifique.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("downloads.download()")}}</dt>
+ <dd>Télécharge un fichier, compte tenu de son URL et d'autres préférences optionnelles.</dd>
+ <dt>{{WebExtAPIRef("downloads.search()")}}</dt>
+ <dd>Interroge le {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} disponible dans le gestionnaire de téléchargements du navigateur et renvoie ceux qui correspondent aux critères de recherche spécifiés.</dd>
+ <dt>{{WebExtAPIRef("downloads.pause()")}}</dt>
+ <dd>Suspend un téléchargement.</dd>
+ <dt>{{WebExtAPIRef("downloads.resume()")}}</dt>
+ <dd>Reprend un téléchargement suspendu.</dd>
+ <dt>{{WebExtAPIRef("downloads.cancel()")}}</dt>
+ <dd>Annule un téléchargement.</dd>
+ <dt>{{WebExtAPIRef("downloads.getFileIcon()")}}</dt>
+ <dd>Récupère une icône pour le téléchargement spécifié.</dd>
+ <dt>{{WebExtAPIRef("downloads.open()")}}</dt>
+ <dd>Ouvre le fichier téléchargé avec son application associée.</dd>
+ <dt>{{WebExtAPIRef("downloads.show()")}}</dt>
+ <dd>Ouvre l'application du gestionnaire de fichiers de la plateforme pour afficher le fichier téléchargé dans son dossier conteneur.</dd>
+ <dt>{{WebExtAPIRef("downloads.showDefaultFolder()")}}</dt>
+ <dd>Ouvre l'application du gestionnaire de fichiers de la plateforme pour afficher le dossier de téléchargements par défaut.</dd>
+ <dt>{{WebExtAPIRef("downloads.erase()")}}</dt>
+ <dd>Efface la correspondance {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} de l'historique de téléchargement du navigateur, sans supprimer les fichiers téléchargés du disque.</dd>
+ <dt>{{WebExtAPIRef("downloads.removeFile()")}}</dt>
+ <dd>Supprime un fichier téléchargé du disque, mais pas de l'historique de téléchargement du navigateur.</dd>
+ <dt>{{WebExtAPIRef("downloads.acceptDanger()")}}</dt>
+ <dd>Invite l'utilisateur à accepter ou annuler un téléchargement dangereux.</dd>
+ <dt>{{WebExtAPIRef("downloads.drag()")}}</dt>
+ <dd>Lance le glissement du fichier téléchargé vers une autre application.</dd>
+ <dt>{{WebExtAPIRef("downloads.setShelfEnabled()")}}</dt>
+ <dd>Active ou désactive l'étagère grise en bas de chaque fenêtre associée au profil de navigateur actuel. L'étagère sera désactivée si au moins une extension l'a désactivée.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("downloads.onCreated")}}</dt>
+ <dd>Se déclenche avec l'objet {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} lorsqu'un téléchargement commence.</dd>
+ <dt>{{WebExtAPIRef("downloads.onErased")}}</dt>
+ <dd>Se déclenche avec <code>downloadId</code> lorsqu'un téléchargement est effacé de l'historique.</dd>
+ <dt>{{WebExtAPIRef("downloads.onChanged")}}</dt>
+ <dd>Lorsque l'une des propriétés de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} sauf les changements <code>bytesReceived</code>, cet événement se déclenche avec le <code>downloadId</code> et un objet contenant les propriétés qui ont changé.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.downloads")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.html
new file mode 100644
index 0000000000..d192c324d2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.html
@@ -0,0 +1,119 @@
+---
+title: downloads.InterruptReason
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/InterruptReason
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - InterruptReason
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/InterruptReason
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>InteruptReason</code> de l'API {{WebExtAPIRef("downloads")}} définit un ensemble de raisons possibles pour lesquelles un téléchargement a été interrompu.</p>
+
+<p>Une propriété {{WebExtAPIRef('downloads.DownloadItem')}} d'<code>erreur</code> contiendra une chaîne tirée des valeurs définies dans ce type.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont divisées en catégories, chaque ensemble ayant la même sous-chaîne au début:</p>
+
+<p>Erreurs liées au fichier :</p>
+
+<ul>
+ <li><code>"FILE_FAILED"</code></li>
+ <li><code>"FILE_ACCESS_DENIED"</code></li>
+ <li><code>"FILE_NO_SPACE"</code></li>
+ <li><code>"FILE_NAME_TOO_LONG"</code></li>
+ <li><code>"FILE_TOO_LARGE"</code></li>
+ <li><code>"FILE_VIRUS_INFECTED"</code></li>
+ <li><code>"FILE_TRANSIENT_ERROR"</code></li>
+ <li><code>"FILE_BLOCKED"</code></li>
+ <li><code>"FILE_SECURITY_CHECK_FAILED"</code></li>
+ <li><code>"FILE_TOO_SHORT"</code></li>
+</ul>
+
+<p>Erreurs liées au réseau :</p>
+
+<ul>
+ <li><code>"NETWORK_FAILED"</code></li>
+ <li><code>"NETWORK_TIMEOUT"</code></li>
+ <li><code>"NETWORK_DISCONNECTED"</code></li>
+ <li><code>"NETWORK_SERVER_DOWN"</code></li>
+ <li><code>"NETWORK_INVALID_REQUEST"</code></li>
+</ul>
+
+<p>Erreurs liées au serveur :</p>
+
+<ul>
+ <li><code>"SERVER_FAILED"</code></li>
+ <li><code>"SERVER_NO_RANGE"</code></li>
+ <li><code>"SERVER_BAD_CONTENT"</code></li>
+ <li><code>"SERVER_UNAUTHORIZED"</code></li>
+ <li><code>"SERVER_CERT_PROBLEM"</code></li>
+ <li><code>"SERVER_FORBIDDEN"</code></li>
+</ul>
+
+<p>Erreurs liées à l'utilisateur :</p>
+
+<ul>
+ <li><code>"USER_CANCELED"</code></li>
+ <li><code>"USER_SHUTDOWN"</code></li>
+</ul>
+
+<p>Divers :</p>
+
+<ul>
+ <li><code>"CRASH"</code></li>
+</ul>
+
+<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.downloads.InterruptReason")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.html
new file mode 100644
index 0000000000..eced6b4bae
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.html
@@ -0,0 +1,150 @@
+---
+title: downloads.onChanged
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/onChanged
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - Téléchargement
+ - WebExtensions
+ - downloads
+ - onChanged
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/onChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'événement <code><strong>onChanged</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} est déclenché lorsque l'une des propriétés de {{WebExtAPIRef('downloads.DownloadItem')}} change (à l'exception de <code>bytesReceived</code>).</p>
+
+<p>L'écouteur reçoit un fichier <code>downloadDelta</code> en tant que paramètre — un objet contenant le <code>downloadId</code> de l'objet {{WebExtAPIRef('downloads.DownloadItem')}} en question, plus le statut de toutes les propriétés qui ont changé.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.downloads.onChanged.addListener(listener)
+browser.downloads.onChanged.removeListener(listener)
+browser.downloads.onChanged.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 un <code>listener</code> donné 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>Une fonction de rappel qui sera appelée lorsque cet événement se produira. Cette fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>downloadDelta</code></dt>
+ <dd>Un <a href="#downloadDelta"><code>objet</code></a> représentant l'objet {{WebExtAPIRef('downloads.DownloadItem')}} qui a été modifié, ainsi que l'état de toutes les propriétés qui y ont été modifiées.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="downloadDelta">downloadDelta</h3>
+
+<p>L'objet <code>downloadDelta</code> a les propriétés suivantes disponibles :</p>
+
+<dl class="reference-values">
+ <dt><code>id</code></dt>
+ <dd>Un <code>integer</code> représentant l'identifiant de l'<code>id</code>  {{WebExtAPIRef('downloads.DownloadItem')}} qui a changé.</dd>
+ <dt><code>url</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant une modification d'une  <code>url</code> {{WebExtAPIRef('downloads.DownloadItem')}}.</dd>
+ <dt><code>filename</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un <code>filename</code> {{WebExtAPIRef('downloads.DownloadItem')}}</dd>
+ <dt><code>danger</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un <code>danger</code> {{WebExtAPIRef('downloads.DownloadItem')}}.</dd>
+ <dt><code>mime</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un <code>mime</code> {{WebExtAPIRef('downloads.DownloadItem')}}</dd>
+ <dt><code>startTime</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un <code>startTime</code> {{WebExtAPIRef('downloads.DownloadItem')}}.</dd>
+ <dt><code>endTime</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un  <code>endTime</code> {{WebExtAPIRef('downloads.DownloadItem')}}.</dd>
+ <dt><code>state</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un <code>état</code> {{WebExtAPIRef('downloads.DownloadItem')}}</dd>
+ <dt><code>canResume</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.BooleanDelta')}} décrivant un changement dans un état {{WebExtAPIRef('downloads.DownloadItem')}} <code>canResume</code>.</dd>
+ <dt><code>paused</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.BooleanDelta')}} décrivant un changement dans un état en <code>pause</code> {{WebExtAPIRef('downloads.DownloadItem')}}.</dd>
+ <dt><code>error</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un état d'<code>erreur</code> {{WebExtAPIRef('downloads.DownloadItem')}}.</dd>
+ <dt><code>totalBytes</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.DoubleDelta')}} décrivant un changement dans un <code>totalBytes</code> {{WebExtAPIRef('downloads.DownloadItem')}}.</dd>
+ <dt><code>fileSize</code>{{optional_inline}}</dt>
+ <dd>Un objet  {{WebExtAPIRef('downloads.DoubleDelta')}} décrivant une modification d'un  <code>fileSize</code> {{WebExtAPIRef('downloads.DownloadItem')}}.</dd>
+ <dt><code>exists</code>{{optional_inline}}</dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.BooleanDelta')}} décrivant un changement dans un état {{WebExtAPIRef('downloads.DownloadItem')}}.</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.downloads.onChanged")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez un message lorsque les téléchargements sont terminés :</p>
+
+<pre class="brush: js">function handleChanged(delta) {
+ if (delta.state &amp;&amp; delta.state.current === "complete") {
+ console.log(`Download ${delta.id} has completed.`);
+ }
+}
+
+browser.downloads.onChanged.addListener(handleChanged);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Acknowledgements</strong>
+
+<p>This API is based on Chromium's <a href="https://developer.chrome.com/extensions/downloads#event-onChanged"><code>chrome.downloads</code></a> API.</p>
+
+<p>Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.html
new file mode 100644
index 0000000000..cdc9aff971
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.html
@@ -0,0 +1,110 @@
+---
+title: downloads.onCreated
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/onCreated
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downlaods
+ - onCreated
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/onCreated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'événement <code><strong>onCreated</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} se déclenche lorsqu'un téléchargement commence, c'est à dire lorsque quand {{WebExtAPIRef("downloads.download()")}} est appelé avec succès.</p>
+
+<p>L'écouteur reçoit l'objet {{WebExtAPIRef('downloads.DownloadItem')}} en question en tant que paramètre.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.downloads.onCreated.addListener(listener)
+browser.downloads.onCreated.removeListener(listener)
+browser.downloads.onCreated.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 un <code>listener</code> donné 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>function</code></dt>
+ <dd>
+ <p>Une fonction de rappel qui sera appelée lorsque cet événement se produira. Cette fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>downloadItem</code></dt>
+ <dd>L'objet {{WebExtAPIRef('downloads.DownloadItem')}} en question.</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.downloads.onCreated")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Consignez l'URL des éléments au fur et à mesure qu'ils sont téléchargés :</p>
+
+<pre class="brush: js">function handleCreated(item) {
+ console.log(item.url);
+}
+
+browser.downloads.onCreated.addListener(handleCreated);</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.html
new file mode 100644
index 0000000000..055774ad4a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.html
@@ -0,0 +1,115 @@
+---
+title: downloads.onErased
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/onErased
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+ - onErased
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/onErased
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'événement <code><strong>onErased</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} se déclenche lorsqu'un téléchargement est effacé de l'historique du navigateur.</p>
+
+<p>L'écouteur reçoit le paramètre <code>downloadId</code> de l'objet {{WebExtAPIRef('downloads.DownloadItem')}}  en question en tant que paramètre.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.downloads.onErased.addListener(listener)
+browser.downloads.onErased.removeListener(listener)
+browser.downloads.onErased.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érifie si un <code>listener</code> donné 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>Une fonction de rappel qui sera appelée lorsque cet événement se produira. Cette fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>downloadId</code></dt>
+ <dd>Un <code>integer</code> représentant l'<code>id</code> du {{WebExtAPIRef('downloads.DownloadItem')}} qui a été effacé.</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.downloads.onErased")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ajoute un écouteur pour les événements <code>onErased</code> , puis effacez le téléchargement le plus récent :</p>
+
+<pre class="brush: js">function handleErased(item) {
+ console.log(`Erased: ${item}`);
+}
+
+browser.downloads.onErased.addListener(handleErased);
+
+var erasing = browser.downloads.erase({
+ limit: 1,
+ orderBy: ["-startTime"]
+});</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.html
new file mode 100644
index 0000000000..085f4fff38
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.html
@@ -0,0 +1,112 @@
+---
+title: downloads.open()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/open
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+ - open
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/open
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>open()</strong></code> de l'API {{WebExtAPIRef("downloads")}} ouvre le fichier téléchargé avec son application associée. Un événement {{WebExtAPIRef("downloads.onChanged")}} se déclenche lorsque l'élément est ouvert pour la première fois.</p>
+
+<p>Pour utiliser cette fonction dans votre extension, vous devez demander la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission manifest</a> "downloads.open", ainsi que la permission "downloads". En outre, vous pouvez uniquement appeler cette fonction à l'intérieur du gestionnaire pour une <a href="/fr/Add-ons/WebExtensions/User_actions">action utilisateur</a>.</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 opening = browser.downloads.open(
+ downloadId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>downloadId</code></dt>
+ <dd>Un <code>integer</code> représentant l'<code>id</code> du {{WebExtAPIRef("downloads.DownloadItem")}} que vous voulez ouvrir.</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>. Si la demande a été acceptée, la promesse sera remplie sans arguments. Si la demande a échoué, la promesse sera rejetée avec un message d'erreur.</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.downloads.open")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple ouvre l'élément le plus récemment téléchargé :</p>
+
+<pre class="brush: js">function onOpened() {
+ console.log(`Opened download item`);
+}
+
+function onError(error) {
+ console.log(`Error opening item: ${error}`);
+}
+
+function openDownload(downloadItems) {
+ if (downloadItems.length &gt; 0) {
+ var opening = browser.downloads.open(downloadItems[0].id);
+ opening.then(onOpened, onError);
+ }
+ }
+
+var searching = browser.downloads.search({
+ limit: 1,
+ orderBy: ["-startTime"]
+});
+
+searching.then(openDownload, onError);</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.html
new file mode 100644
index 0000000000..abde1025e6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.html
@@ -0,0 +1,96 @@
+---
+title: downloads.pause()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/pause
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+ - pause
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/pause
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>pause</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} interrompt un téléchargement.</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 pausing = browser.downloads.pause(
+ downloadId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>downloadId</code></dt>
+ <dd>Un <code>integer</code> représetant l'<code>id</code> du téléchargement à mettre en pause.</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>. Si l'appel a réussi, le téléchargement sera mis en pause et la promesse sera satisfaite sans aucun argument. Si l'appel échoue, la promesse sera rejetée avec un message d'erreur. L'appel échouera si le téléchargement n'est pas actif: par exemple, parce qu'il a fini le téléchargement.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p class="hidden"><span class="tlid-translation translation"><span title="">Le tableau de compatibilité de cette page est généré à partir de données structurées.</span> <span title="">Si vous souhaitez contribuer aux données, veuillez consulter</span></span>  <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data </a> <span class="tlid-translation translation"><span title="">et envoyez-nous une demande</span></span>.</p>
+
+<p>{{Compat("webextensions.api.downloads.pause")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onPaused() {
+ console.log(`Paused download`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var pausing = browser.downloads.pause(downloadId);
+pausing.then(onPaused, onError);</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre> <span class="tlid-translation translation">// Copyright 2015 Les auteurs de chrome. Tous les droits sont réservés.
+//
+// Redistribution et utilisation sous forme source et binaire, avec ou sans
+// modification, sont autorisées à condition que les conditions suivantes soient
+// rencontré:
+//
+// * Les redistributions de code source doivent conserver le copyright ci-dessus
+// remarque, cette liste de conditions et la clause de non-responsabilité suivante.
+// * Les redistributions sous forme binaire doivent reproduire ce qui précède
+// avis de droit d'auteur, cette liste de conditions et la clause de non-responsabilité suivante // dans la documentation et / ou les autres éléments fournis avec le
+// Distribution.
+// * Ni le nom de Google Inc. ni les noms de ses
+// les contributeurs peuvent être utilisés pour approuver ou promouvoir des produits dérivés de
+// ce logiciel sans autorisation écrite préalable spécifique.
+//
+// CE LOGICIEL EST FOURNI PAR LES TITULAIRES DE COPYRIGHT ET LES CONTRIBUTEURS
+// "EN L'ETAT" ET TOUTE GARANTIE EXPRESSE OU IMPLICITE, Y COMPRIS MAIS NON
+// LIMITE AUX GARANTIES IMPLICITES DE QUALITÉ MARCHANDE ET D'ADÉQUATION À
+// UN OBJECTIF PARTICULIER EST REFUSÉ. EN AUCUN CAS, LE COPYRIGHT
+// LE PROPRIÉTAIRE OU LES CONTRIBUTEURS SONT RESPONSABLES DE TOUT ASSISTANCE DIRECTE, INDIRECTE, ACCESSOIRE,
+// DOMMAGES PARTICULIERS, EXEMPLAIRES OU CONSÉCUTIFS (Y COMPRIS, MAIS NON
+// LIMITÉE À L'ACQUISITION DE MARCHANDISES OU DE SERVICES DE SUBSTITUTION; PERTE D'USAGE,
+// DATA, OR PROFITS; OU INTERRUPTION COMMERCIALE) TOUTEFOIS CAUSÉE ET SUR TOUTE
+// THÉORIE DE LA RESPONSABILITÉ, QU'IL SOIT UN CONTRAT, UNE RESPONSABILITÉ STRICTE OU UN TORT
+// (INCLUANT LA NÉGLIGENCE OU AUTREMENT) SURVENANT DE TOUTE MANIÈRE DE L'UTILISER
+// DE CE LOGICIEL, MÊME SI AVISÉ DE LA POSSIBILITÉ D'UN TEL DOMMAGE.</span>
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.html
new file mode 100644
index 0000000000..54981387d4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.html
@@ -0,0 +1,118 @@
+---
+title: downloads.removeFile()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/removeFile
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+ - removeFile
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/removeFile
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>removeFile</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} supprime un fichier téléchargé du disque.</p>
+
+<p>Cette API supprime le fichier du disque, mais ne le supprime pas de l'historique des téléchargements du navigateur, donc un appel  {{WebExtAPIRef("downloads.search()")}} renvoie toujours l'élément comme {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}}, mais son attribut <code>exists</code> sera <code>false</code>.</p>
+
+<p>Pour supprimer un fichier de l'historique des téléchargements, vous devez utiliser  {{WebExtAPIRef("downloads.erase()")}}.</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="note">
+<p><strong>Remarque </strong>: Si vous souhaitez supprimer un fichier téléchargé du disque et l'effacer de l'historique, vous devez appeler <code>removeFile()</code> avant d'appeler {{WebExtAPIRef("downloads.erase()")}}. Si vous l'essayez dans l'autre sens, vous obtiendrez une erreur lors de l'appel de <code>removeFile()</code>, car le navigateur n'aura plus d'enregistrement du téléchargement.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var removing = browser.downloads.removeFile(
+ downloadId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>downloadId</code></dt>
+ <dd>Un <code>integer</code> représentant l'identifiant de  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} que vous souhaitez supprimer du disque.</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>. Si la demande a été acceptée, la promesse sera remplie sans arguments. Si la demande a échoué, la promesse sera rejetée avec un message d'erreur.</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.downloads.removeFile")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p><span class="short_text" id="result_box" lang="fr"><span>Supprimer le dernier fichier téléchargé :</span></span></p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log(`Removed item`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+function remove(downloadItems) {
+ if (downloadItems.length &gt; 0) {
+ var removing = browser.downloads.removeFile(downloadItems[0].id);
+ removing.then(onRemoved, onError);
+ }
+}
+
+var searching = browser.downloads.search({
+ limit: 1,
+ orderBy: ["-startTime"]
+});
+
+searching.then(remove, onError);</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.html
new file mode 100644
index 0000000000..7f9770596f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.html
@@ -0,0 +1,99 @@
+---
+title: downloads.resume()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/resume
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+ - resume
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/resume
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>resume</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} reprend un téléchargement suspendu. Si la demande a abouti, le téléchargement ne sera pas interrompu et la progression reprendra. L'appel <code>resume()</code> échouera si le téléchargement n'est pas actif: par exemple, parce qu'il a fini le téléchargement.</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 resuming = browser.downloads.resume(
+ downloadId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>downloadId</code></dt>
+ <dd>Un <code>integer</code> représentant l'<code>id</code> du téléchargement à reprendre.</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>. Si la demande a été acceptée, la promesse sera remplie sans arguments. Si la demande a échoué, la promesse sera rejetée avec un message d'erreur.</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.downloads.resume")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">var downloadId = 2;
+
+function onResumed() {
+ console.log(`Resumed download`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var resuming = browser.downloads.resume(downloadId);
+resuming.then(onResumed, onError);</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.html
new file mode 100644
index 0000000000..8802c1f068
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.html
@@ -0,0 +1,168 @@
+---
+title: downloads.search()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/search
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Recherche
+ - Reference
+ - Search
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/search
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <strong><code>search()</code></strong> de l'API {{WebExtAPIRef("downloads")}} interroge les {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} disponibles dans le gestionnaire de téléchargements du navigateur, et renvoie celles qui correspondent aux spécifications critères de recherche.</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 searching = browser.downloads.search(query);
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>query</code></dt>
+ <dd>Un objet {{WebExtAPIRef('downloads.DownloadQuery')}}.</dd>
+</dl>
+
+<h3 id="Return_value">Return value</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>. La promise est remplie avec un <code>tableau d'objets</code> <code>{{WebExtAPIRef('downloads.DownloadItem')}}</code> qui correspondent aux critères donnés.</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.downloads.search")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>En général, vous restreignez les éléments récupérés à l'aide du paramètre de <code>requête</code>.</p>
+
+<h3 id="Obtenez_les_téléchargements_correspondant_à_query">Obtenez les téléchargements correspondant à "query"</h3>
+
+<pre class="brush: js">function logDownloads(downloads) {
+ for (let download of downloads) {
+ console.log(download.id);
+ console.log(download.url);
+ }
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var searching = browser.downloads.search({
+ query:["imgur"]
+});
+
+searching.then(logDownloads, onError);</pre>
+
+<h3 id="Obtenez_un_article_spécifique">Obtenez un article spécifique</h3>
+
+<p>Pour obtenir un {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}}, la méthode la plus simple consiste à définir uniquement le champ <code>id</code>, comme indiqué dans l'extrait ci-dessous :</p>
+
+<pre class="brush: js">function logDownloads(downloads) {
+ for (let download of downloads) {
+ console.log(download.id);
+ console.log(download.url);
+ }
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var id = 13;
+
+var searching = browser.downloads.search({id});
+searching.then(logDownloads, onError);
+</pre>
+
+<h3 id="Obtenez_tous_les_téléchargements">Obtenez tous les téléchargements</h3>
+
+<p>Si vous voulez renvoyer tout {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}}, définissez la <code>query</code> sur un objet vide.</p>
+
+<pre class="brush: js">function logDownloads(downloads) {
+ for (let download of downloads) {
+ console.log(download.id);
+ console.log(download.url);
+ }
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var searching = browser.downloads.search({});
+searching.then(logDownloads, onError);</pre>
+
+<h3 id="Obtenez_le_téléchargement_le_plus_récent">Obtenez le téléchargement le plus récent</h3>
+
+<p>Vous pouvez obtenir le téléchargement le plus récent en spécifiant les paramètres de recherche suivants :</p>
+
+<pre class="brush: js">function logDownloads(downloads) {
+ for (let download of downloads) {
+ console.log(download.id);
+ console.log(download.url);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var searching = browser.downloads.search({
+ limit: 1,
+ orderBy: ["-startTime"]
+});
+searching.then(logDownloads, onError);</pre>
+
+<p>Vous pouvez voir ce code en action par exemple dans notre <a href="https://github.com/mdn/webextensions-examples/blob/master/latest-download/popup/latest_download.js">dernier téléchargement</a>.</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.html
new file mode 100644
index 0000000000..28f79f1bf6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.html
@@ -0,0 +1,84 @@
+---
+title: downloads.setShelfEnabled()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/setShelfEnabled
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+ - setShelfEnabled
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/setShelfEnabled
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>La fonction  <code><strong>setShelfEnabled</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} active ou désactive l'étagère grise située en bas de chaque fenêtre associée au profil de navigateur actuel. L'étagère sera désactivée si au moins une extension l'a désactivée.</p>
+
+<p>Si vous essayez d'activer l'étagère lorsqu'au moins une autre extension l'a déjà désactivé, l'appel échouera et {{WebExtAPIRef("runtime.lastError")}} sera défini avec un message d'erreur approprié.</p>
+
+<div class="note">
+<p><strong>Remarque </strong>: Pour utiliser cette fonction dans votre extension, vous devez demander la <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission manifest</a>, <code>"downloads.shelf"</code>, ainsi que la permission <code>"downloads"</code>.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">chrome.downloads.setShelfEnabled(enabled);
+</pre>
+
+<p>Cette API est également disponible en tant que  <code>browser.downloads.setShelfEnabled()</code>.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>enabled</code></dt>
+ <dd>Un <code>boolean</code> l'état que vous souhaitez définir <code>setShelfEnabled()</code> à — <code>true</code> pour activer et <code>false</code> pour désactiver.</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.downloads.setShelfEnabled")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.html
new file mode 100644
index 0000000000..57f50fed3f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.html
@@ -0,0 +1,111 @@
+---
+title: downloads.show()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/show
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - downloads
+ - show
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/show
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>show</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} affiche le fichier téléchargé dans son dossier contenant dans le gestionnaire de fichiers de la plate-forme sous-jacente.</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 showing = browser.downloads.show(
+ downloadId // integer
+)
+</pre>
+
+<h3 id="Paramètes">Paramètes</h3>
+
+<dl>
+ <dt><code>downloadId</code></dt>
+ <dd>Un <code>integer</code> représentant l'ID du {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} à afficher.</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>. Si la demande est acceptée, la promise sera remplie avec un booléen indiquant si la demande a été acceptée. Si la demande échoue, la promise sera rejetée avec un message d'erreur.</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.downloads.show")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple montre l'élément le plus récemment téléchargé :</p>
+
+<pre class="brush: js">function onShowing(success) {
+  console.log(`Showing download item: ${success}`);
+}
+
+function onError(error) {
+ console.log(`Error opening item: ${error}`);
+}
+
+function openDownload(downloadItems) {
+ if (downloadItems.length &gt; 0) {
+ latestDownloadId = downloadItems[0].id;
+ var showing = browser.downloads.show(latestDownloadId);
+ showing.then(onShowing, onError);
+ }
+ }
+
+var searching = browser.downloads.search({
+ limit: 1,
+ orderBy: ["-startTime"]
+});
+
+searching.then(openDownload, onError);</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.html
new file mode 100644
index 0000000000..e254eaadd5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.html
@@ -0,0 +1,86 @@
+---
+title: downloads.showDefaultFolder()
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/showDefaultFolder
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Refernce
+ - ShwoDefaultFolder
+ - Téléchargement
+ - WebExtensions
+ - downloads
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/showDefaultFolder
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La fonction <code><strong>showDefaultFolder</strong></code><strong><code>()</code></strong> de l'API {{WebExtAPIRef("downloads")}} ouvre le dossier de téléchargement par défaut dans le gestionnaire de fichiers de la plateforme.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.downloads.showDefaultFolder();
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dd>None.</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.downloads.showDefaultFolder")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>L'extrait suivant contient un bouton d'affichage qui, lorsqu'il est cliqué, appelle <code>showDefaultFolder()</code> pour ouvrir le dossier de téléchargement par défaut dans le gestionnaire de fichiers de la plateforme :</p>
+
+<pre class="brush: js">var showBtn = document.querySelector('.show');
+
+showBtn.onclick = function() {
+ browser.downloads.showDefaultFolder();
+}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.html
new file mode 100644
index 0000000000..4b60116efe
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.html
@@ -0,0 +1,83 @@
+---
+title: downloads.State
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/State
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - downloads
+ - state
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/State
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>Le type d'<code>état</code> de l'API {{WebExtAPIRef("downloads")}} définit différents états dans lesquels un téléchargement en cours peut se trouver.</p>
+
+<p>Une propriété d'<code>state</code> {{WebExtAPIRef('downloads.DownloadItem')}}  contiendra une chaîne tirée des valeurs définies dans ce type.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt><code>in_progress</code></dt>
+ <dd>Le navigateur reçoit actuellement les données de téléchargement du serveur .</dd>
+ <dt><code>interrupted</code></dt>
+ <dd>Une erreur a rompu la connexion avec le serveur.</dd>
+ <dt><code>complete</code></dt>
+ <dd>Le téléchargement s'est terminé avec succès.</dd>
+</dl>
+
+<div class="note">
+<p><strong>Remarque </strong>: Ces constantes de chaîne ne changeront jamais, mais de nouvelles constantes peuvent être ajoutées.</p>
+</div>
+
+<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.downloads.State")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.html
new file mode 100644
index 0000000000..0fac27ea06
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.html
@@ -0,0 +1,75 @@
+---
+title: downloads.StringDelta
+slug: Mozilla/Add-ons/WebExtensions/API/downloads/StringDelta
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StringDelta
+ - Type
+ - Téléchargement
+ - WebExtensions
+ - download
+translation_of: Mozilla/Add-ons/WebExtensions/API/downloads/StringDelta
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>StringDelta</code> de l'API {{WebExtAPIRef("downloads")}} représente la différence entre deux chaînes.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes:</p>
+
+<dl class="reference-values">
+ <dt><code>current</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant la valeur de chaîne actuelle.</dd>
+ <dt><code>previous</code>{{optional_inline}}</dt>
+ <dd>Un <code>string</code> représentant la valeur de chaîne précédente.</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.downloads.StringDelta")}}</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/downloads"><code>chrome.downloads</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/events/event/index.html b/files/fr/mozilla/add-ons/webextensions/api/events/event/index.html
new file mode 100644
index 0000000000..7e535f112b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/events/event/index.html
@@ -0,0 +1,87 @@
+---
+title: events.Event
+slug: Mozilla/Add-ons/WebExtensions/API/events/Event
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - events
+translation_of: Mozilla/Add-ons/WebExtensions/API/events/Event
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet qui permet l'ajout et la suppression d'écouteurs pour un événement de navigateur.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets.</p>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("events.Event.addListener()")}}</dt>
+ <dd>Enregistre un rappel d'écouteur d'événement sur un événement.</dd>
+ <dt>{{WebExtAPIRef("events.Event.removeListener()")}}</dt>
+ <dd>Désinscrit un rappel d'écouteur d'événement d'un événement.</dd>
+ <dt>{{WebExtAPIRef("events.Event.hasListener()")}}</dt>
+ <dd>Teste l'état d'enregistrement d'un écouteur.</dd>
+ <dt>{{WebExtAPIRef("events.Event.hasListeners()")}}</dt>
+ <dd>Teste si des écouteurs sont enregistrés pour l'événement.</dd>
+ <dt>{{WebExtAPIRef("events.Event.addRules()")}}</dt>
+ <dd>Enregistre les règles pour gérer les événements.</dd>
+ <dt>{{WebExtAPIRef("events.Event.getRules()")}}</dt>
+ <dd>Renvoie les règles actuellement enregistrées.</dd>
+ <dt>{{WebExtAPIRef("events.Event.removeRules()")}}</dt>
+ <dd>Annule l'inscription des règles actuellement enregistrées.</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.events.Event")}}</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/events"><code>chrome.events</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/events.json"><code>events.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/events/index.html b/files/fr/mozilla/add-ons/webextensions/api/events/index.html
new file mode 100644
index 0000000000..0f5e711402
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/events/index.html
@@ -0,0 +1,72 @@
+---
+title: events
+slug: Mozilla/Add-ons/WebExtensions/API/events
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - events
+translation_of: Mozilla/Add-ons/WebExtensions/API/events
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Types communs utilisés par les API qui distribuent les événements.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("events.Rule")}}</dt>
+ <dd>Description d'une règle déclarative pour gérer les événements.</dd>
+ <dt>{{WebExtAPIRef("events.Event")}}</dt>
+ <dd>Un objet qui permet l'ajout et la suppression d'écouteurs pour un événement Chrome.</dd>
+ <dt>{{WebExtAPIRef("events.UrlFilter")}}</dt>
+ <dd>Filtre les URL pour différents critères. Si un critère donné correspond, alors tout le filtre correspond.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.events")}}</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/events"><code>chrome.events</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/events.json"><code>events.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/events/rule/index.html b/files/fr/mozilla/add-ons/webextensions/api/events/rule/index.html
new file mode 100644
index 0000000000..84e0066e51
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/events/rule/index.html
@@ -0,0 +1,81 @@
+---
+title: events.Rule
+slug: Mozilla/Add-ons/WebExtensions/API/events/Rule
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Rule
+ - Type
+ - WebExtensions
+ - events
+translation_of: Mozilla/Add-ons/WebExtensions/API/events/Rule
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>Description d'une règle déclarative pour la gestion des événements.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>id</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Identifiant facultatif permettant de référencer cette règle.</dd>
+ <dt><code>tags</code>{{optional_inline}}</dt>
+ <dd><code>array</code> of <code><code>string</code></code>. Les balises peuvent être utilisées pour annoter des règles et effectuer des opérations sur des ensembles de règles.</dd>
+ <dt><code>conditions</code></dt>
+ <dd><code>array</code> de <code><code>any</code></code>. Liste des conditions qui peuvent déclencher les actions.</dd>
+ <dt><code>actions</code></dt>
+ <dd><code>array</code> de <code><code>any</code></code>. Liste des actions qui sont déclenchées si l'une des conditions est remplie.</dd>
+ <dt><code>priority</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Priorité optionnelle de cette règle. Par défaut à 100.</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.events.Rule")}}</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/events"><code>chrome.events</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/events.json"><code>events.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.html b/files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.html
new file mode 100644
index 0000000000..0f77415edc
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.html
@@ -0,0 +1,142 @@
+---
+title: events.UrlFilter
+slug: Mozilla/Add-ons/WebExtensions/API/events/UrlFilter
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - UrlFilter
+ - WebExtensions
+ - events
+translation_of: Mozilla/Add-ons/WebExtensions/API/events/UrlFilter
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Décrit différents critères de filtrage des URL. Si tous les critères spécifiés dans les propriétés du filtre correspondent à l'URL, le filtre correspond. Les filtres sont souvent fournis aux méthodes API dans un <a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Array">Array</a> d'UrlFilters. Par exemple, les écouteurs  <a href="/fr/Add-ons/WebExtensions/API/webNavigation">webNavigation</a> peuvent être ajoutés avec un filtre qui est un objet avec une seule propriété url qui est un <a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Array">Array</a> de UrlFilters, par exemple <code>{url:[UrlFilter,UrlFilter,...]}</code>. Si un filtre dans le tableau de UrlFilters correspond, il est considéré comme une correspondance pour le tableau. En effet, les critères spécifiés dans un seul filtre sont associés ensemble, alors que tous les filtres individuels dans un tableau sont où.</p>
+
+<p>Tous les critères sont sensibles à la casse.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes:</p>
+
+<p>Toutefois, notez que ces deux derniers modèles ne correspondent pas au dernier composant du nom d'hôte, car aucun point implicite n'est ajouté à la fin du nom d'hôte. Ainsi, par exemple, <code>"org."</code> correspondra à "https://borg.com" mais pas "https://example.org". Pour faire correspondre ces modèles, utilisez <code>hostSuffix</code>.</p>
+
+<dl class="reference-values">
+ <dt><code>hostContains</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le <a href="/fr/docs/Web/API/HTMLHyperlinkElementUtils/hostname">hostname</a> de l'URL contient la chaîne donnée.
+ <ul>
+ <li>Pour tester si un composant de nom d'hôte commence par "foo", utilisez  <code>".foo"</code>. Cela correspond à "www.foobar.com" et "foo.com", car un point implicite est ajouté au début du nom d'hôte.</li>
+ <li>Pour tester si un composant de nom d'hôte se termine par "foo", utilisez <code>"foo."</code>.</li>
+ <li>Pour tester si un composant de nom d'hôte correspond exactement à "foo", utilisez <code>".foo."</code>.</li>
+ </ul>
+ </dd>
+ <dt><code>hostEquals</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le nom d'hôte de l'URL est égal à une chaîne spécifiée.</dd>
+ <dt><code>hostPrefix</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le nom d'hôte de l'URL commence par une chaîne spécifiée.</dd>
+ <dt><code>hostSuffix</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le nom d'hôte de l'URL se termine par une chaîne spécifiée.
+ <ul>
+ <li>Exemple: <code>".example.com"</code> correspond à "http://www.example.com/", mais pas à "http://example.com/".</li>
+ <li>Exemple: <code>"example.com"</code> correspond à "http://www.example.com/", et  "http://fakeexample.com/".</li>
+ </ul>
+ </dd>
+ <dt><code>pathContains</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le segment de chemin de l'URL contient une chaîne spécifiée.</dd>
+ <dt><code>pathEquals</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le segment de chemin de l'URL est égal à une chaîne spécifiée.</dd>
+ <dt><code>pathPrefix</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le segment de chemin de l'URL commence par une chaîne spécifiée.</dd>
+ <dt><code>pathSuffix</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le segment de chemin de l'URL se termine par une chaîne spécifiée.</dd>
+ <dt><code>queryContains</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le segment de requête de l'URL contient une chaîne spécifiée.</dd>
+ <dt><code>queryEquals</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le segment de requête de l'URL est égal à une chaîne spécifiée.</dd>
+ <dt><code>queryPrefix</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le segment de requête de l'URL commence par une chaîne spécifiée.</dd>
+ <dt><code>querySuffix</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si le segment de requête de l'URL se termine par une chaîne spécifiée.</dd>
+ <dt><code>urlContains</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si l'URL (sans identificateur de fragment) contient une chaîne spécifiée. Les numéros de port sont supprimés de l'URL s'ils correspondent au numéro de port par défaut.</dd>
+ <dt><code>urlEquals</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si l'URL (sans l'identificateur de fragment) est égale à une chaîne spécifiée. Les numéros de port sont supprimés de l'URL s'ils correspondent au numéro de port par défaut.</dd>
+ <dt><code>urlMatches</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si l'URL (sans l'identificateur de fragment) correspond à une  <a href="/fr/docs/Web/JavaScript/Guide/Regular_Expressions">expression régulière</a>. Les numéros de port sont supprimés de l'URL s'ils correspondent au numéro de port par défaut.
+ <ul>
+ <li>Par exemple : <code>urlMatches: "^[^:]*:(?://)?(?:[^/]*\\.)?mozilla\\.org/.*$"</code> correspond "http://mozilla.org/", "https://developer.mozilla.org/", "ftp://foo.mozilla.org/", mais pas "https://developer.fakemozilla.org/".</li>
+ </ul>
+ </dd>
+ <dt><code>originAndPathMatches</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si l'URL sans segment de requête et l'identificateur de fragment correspondent à une <a href="/fr/docs/Web/JavaScript/Guide/Regular_Expressions">expression régulière</a> spécifiée. Les numéros de port sont supprimés de l'URL s'ils correspondent au numéro de port par défaut.</dd>
+ <dt><code>urlPrefix</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si l'URL (sans l'identificateur de fragment) commence par une chaîne spécifiée. Les numéros de port sont supprimés de l'URL s'ils correspondent au numéro de port par défaut.
+ <ul>
+ <li>Exemple: <code>"https://developer"</code> correspond "https://developer.mozilla.org/" et  "https://developers.facebook.com/".</li>
+ </ul>
+ </dd>
+ <dt><code>urlSuffix</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Correspond si l'URL (sans l'identificateur de fragment) se termine par une chaîne spécifiée. Les numéros de port sont supprimés de l'URL s'ils correspondent au numéro de port par défaut. Notez qu'un slash "/" implicite est ajoutée après l'hôte, donc <code>"com/"</code> correspond "https://example.com", mais pas <code>"com"</code>.</dd>
+ <dt><code>schemas</code>{{optional_inline}}</dt>
+ <dd><code>array</code> of <code><code>string</code></code>. Correspond si le schéma de l'URL est identique à l'un des schémas spécifiés dans le tableau. Comme les schémas sont toujours convertis en minuscules, ils doivent toujours être en minuscules ou ne correspondent jamais.
+ <ul>
+ <li>Exemple: <code>["https"]</code> correspond uniquement aux URL HTTPS.</li>
+ </ul>
+ </dd>
+ <dt><code>ports</code>{{optional_inline}}</dt>
+ <dd><code>array</code> de <code><code><code>(integer</code></code> </code>ou<code> <code><code>array</code> of <code><code>integer</code></code></code></code>). Un tableau qui peut contenir des entiers et des tableaux d'entiers. Les entiers sont interprétés comme des numéros de port, tandis que les tableaux d'entiers sont interprétés comme des plages de ports. Correspond si le port de l'URL correspond à un numéro de port ou est contenu dans des plages.
+ <ul>
+ <li>Par exemple: <code>[80, 443, [1000, 1200]]</code> correspond à toutes les demandes sur les ports 80, 443, et dans la plage 1000-1200.</li>
+ </ul>
+ </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.events.UrlFilter")}}</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/events"><code>chrome.events</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/events.json"><code>events.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.html
new file mode 100644
index 0000000000..81ba330d0d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.html
@@ -0,0 +1,100 @@
+---
+title: extension.getBackgroundPage()
+slug: Mozilla/Add-ons/WebExtensions/API/extension/getBackgroundPage
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getBackgroundPage
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/getBackgroundPage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Alias de {{WebExtAPIRef("runtime.getBackgroundPage()")}}.</p>
+
+<div class="note">
+<p><strong>Remarque</strong> : Cette méthode ne peut pas être utilisée en mode Navigation privée - elle renvoie toujours un tableau vide. Pour plus d'informations, voir {{bug(1329304)}}.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var page = browser.extension.getBackgroundPage()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dd>None.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p><code>object</code>. <a href="/fr/docs/Web/API/Window">Window</a> de la page d'arrière plan.</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.extension.getBackgroundPage")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supposons un  <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Background_scripts">script d'arrière plan</a> définisse une fonction <code>foo()</code>:</p>
+
+<pre class="brush: js">// background.js
+
+function foo() {
+ console.log("I'm defined in background.js");
+}</pre>
+
+<p>Un script exécuté dans un <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Browser_actions_2">popup</a> peut appeler cette fonction directement comme ceci :</p>
+
+<pre class="brush: js">// popup.js
+
+var page = browser.extension.getBackgroundPage();
+page.foo(); // -&gt; "I'm defined in background.js"</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.html
new file mode 100644
index 0000000000..53f3ebde96
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.html
@@ -0,0 +1,88 @@
+---
+title: extension.getExtensionTabs()
+slug: Mozilla/Add-ons/WebExtensions/API/extension/getExtensionTabs
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getExtensionTabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/getExtensionTabs
+---
+<div>{{AddonSidebar()}}</div>
+
+<div class="warning">
+<p>Cette méthode a été dépréciée. Utilisez {{WebExtAPIRef("extension.getViews()")}} à la place.</p>
+</div>
+
+<p>Renvoie un tableau des objets de la <a href="/en-US/docs/Web/API/Window">Window</a> JavaScriptpour chacun des onglets qui s'exécutent dans l'extension actuelle. Si <code>windowId</code> est spécifié, renvoie uniquement les objets Window des onglets attachés à la fenêtre spécifiée.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">chrome.extension.getExtensionTabs(
+ windowId // optional integer
+)
+</pre>
+
+<p>Cette API est également disponible en tant que <code>browser.extension.getExtensionTabs()</code>.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p><code>array</code> of <code>object</code>. Tableau d'objets de fenêtre globaux</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.extension.getExtensionTabs")}}</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.html
new file mode 100644
index 0000000000..dd23369df0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.html
@@ -0,0 +1,94 @@
+---
+title: extension.getURL()
+slug: Mozilla/Add-ons/WebExtensions/API/extension/getURL
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getURL
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/getURL
+---
+<div>{{AddonSidebar}}</div>
+
+<div class="warning">
+<p>Cette fonction est obsolète. Veuillez utiliser <a href="/fr/Add-ons/WebExtensions/API/runtime/getURL"><code>runtime.getURL</code></a>.</p>
+</div>
+
+<p>Convertit un chemin relatif dans le répertoire d'installation d'une extension en une URL complète.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.extension.getURL(
+ path // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>path</code></dt>
+ <dd><code>string</code>. Un chemin vers une ressource dans une extension exprimée par rapport à son répertoire d'installation.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p><code>string</code>. The fully-qualified URL to the resource.</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.extension.getURL")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Donné un fichier empaqueté avec l'add-on à "beasts/frog.html", obtenez l'URL complète comme ceci :</p>
+
+<pre class="brush: js">var fullURL = browser.extension.getURL("beasts/frog.html");
+
+// -&gt; something like:
+// moz-extension://2c127fa4-62c7-7e4f-90e5-472b45eecfdc/beasts/frog.html</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.html
new file mode 100644
index 0000000000..48fbbcd5c7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.html
@@ -0,0 +1,117 @@
+---
+title: extension.getViews()
+slug: Mozilla/Add-ons/WebExtensions/API/extension/getViews
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getViews
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/getViews
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoie un tableau des objets <a href="/fr/docs/Web/API/Window">Window</a> pour chacune des pages exécutées dans l'extension en cours. Cela inclut, par exemple :</p>
+
+<ul>
+ <li>la page d'arrière-plan, si une est définie</li>
+ <li>toutes les pages contextuelles, si définies et chargées</li>
+ <li>toutes les pages d'options, si définies et chargées</li>
+ <li>les onglets du navigateur hébergeant le contenu fourni avec l'extension</li>
+</ul>
+
+<p>Dans Firefox, si cette méthode est appelée à partir d'une page faisant partie d'une fenêtre de navigation privée, telle qu'une barre latérale dans une fenêtre privée ou une fenêtre ouverte à partir d'une fenêtre privée, sa valeur de retour n'inclut pas la page d'arrière-plan de l'extension.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var windows = browser.extension.getViews(
+ fetchProperties // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>fetchProperties</code>{{optional_inline}}</dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>type</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Un {{WebExtAPIRef('extension.ViewType')}} indiquant le type de vue à obtenir. Si omis, cette fonction renvoie toutes les vues.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. La fenêtre pour restreindre la recherche. Si omis, cette fonction renvoie toutes les vues.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p><code>array</code> of <code>object</code>. Un tableau d'objets <a href="/fr/docs/Web/API/Window">Window</a>.</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.extension.getViews")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez toutes les fenêtres appartenant à cette extension et consignez leurs URL :</p>
+
+<pre class="brush: js">var windows = browser.extension.getViews();
+
+for (var extensionWindow of windows) {
+ console.log(extensionWindow.location.href);
+}</pre>
+
+<p>Obtenez uniquement des fenêtres dans les onglets du navigateur hébergeant du contenu fourni avec l'extension :</p>
+
+<pre class="brush: js">var windows = browser.extension.getViews({type: "tab"});</pre>
+
+<p>Obtenir seulement des fenêtres dans les popups :</p>
+
+<pre class="brush: js">var windows = browser.extension.getViews({type: "popup"});</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/index.html
new file mode 100644
index 0000000000..0d201d9620
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/index.html
@@ -0,0 +1,109 @@
+---
+title: extension
+slug: Mozilla/Add-ons/WebExtensions/API/extension
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Utilitaires liés à votre extension. Obtenez des URL vers des packages de ressources avec votre extension, récupérez l'objet <code><a href="/en-US/docs/Web/API/Window">Window</a></code> pour les pages de votre extension, récupérez les valeurs pour différents paramètres. Notez que les API de messagerie de ce module sont déconseillées au profit des API équivalentes dans le module <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime">runtime</a></code>.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("extension.ViewType")}}</dt>
+ <dd>Le type de vue d'extension.</dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("extension.lastError")}}</dt>
+ <dd>Défini pour la durée de vie d'un rappel si une extension ansychronique a généré une erreur. Si aucune erreur n'est survenue, lastError sera <em>indéfini</em>.</dd>
+ <dt>{{WebExtAPIRef("extension.inIncognitoContext")}}</dt>
+ <dd>True pour les scripts de contenu s'exécutant dans les onglets de navigation privée et pour les pages d'extension exécutées dans un processus de navigation privée. Ce dernier ne s'applique qu'aux extensions avec 'incognito_behavior'.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("extension.getBackgroundPage()")}}</dt>
+ <dd>Renvoie l'objet <code><a href="/en-US/docs/Web/API/Window">Window</a></code> pour la page d'arrière-plan qui s'exécute dans l'extension en cours. Renvoie null si l'extension n'a pas de page d'arrière-plan.</dd>
+ <dt>{{WebExtAPIRef("extension.getExtensionTabs()")}} {{deprecated_inline}}</dt>
+ <dd>Renvoie un tableau des objets de la <a href="https://developer.mozilla.org/en-US/docs/Web/API/Window">Window</a> JavaScript pour chacun des onglets qui s'exécutent dans l'extension actuelle.</dd>
+ <dt>{{WebExtAPIRef("extension.getURL()")}} {{deprecated_inline}}</dt>
+ <dd>Convertit un chemin relatif dans un répertoire d'installation d'extension en une URL complète.</dd>
+ <dt>{{WebExtAPIRef("extension.getViews()")}}</dt>
+ <dd>Renvoie un tableau des objets <code><a href="/en-US/docs/Web/API/Window">Window</a></code> pour chacune des pages exécutées dans l'extension en cours.</dd>
+ <dt>{{WebExtAPIRef("extension.isAllowedIncognitoAccess()")}}</dt>
+ <dd>Récupère l'état de l'accès de l'extension en mode navigation privée (déterminé par la case à cocher "Autorisé dans navigation privée").</dd>
+ <dt>{{WebExtAPIRef("extension.isAllowedFileSchemeAccess()")}}</dt>
+ <dd>Récupère l'état de l'accès de l'extension au schéma 'file://' (déterminé par la case à cocher 'Autoriser l'accès aux URL des fichiers').***</dd>
+ <dt>{{WebExtAPIRef("extension.sendRequest()")}} {{deprecated_inline}}</dt>
+ <dd>Envoie une seule requête aux autres écouteurs de l'extension.</dd>
+ <dt>{{WebExtAPIRef("extension.setUpdateUrlData()")}}</dt>
+ <dd>Définit la valeur du paramètre CGI AP utilisé dans l'URL de mise à jour de l'extension. Cette valeur est ignorée pour les extensions hébergées dans le magasin du fournisseur du navigateur.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("extension.onRequest")}} {{deprecated_inline}}</dt>
+ <dd>Lancé lorsqu'une requête est envoyée par un processus d'extension ou un script de contenu.</dd>
+ <dt>{{WebExtAPIRef("extension.onRequestExternal")}} {{deprecated_inline}}</dt>
+ <dd>Lancé lorsqu'une requête est envoyée depuis une autre extension.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.extension")}}</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.html
new file mode 100644
index 0000000000..b27209b60f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.html
@@ -0,0 +1,64 @@
+---
+title: extension.inIncognitoContext
+slug: Mozilla/Add-ons/WebExtensions/API/extension/inIncognitoContext
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Non-standard
+ - Property
+ - Reference
+ - WebExtensions
+ - inIncognitoContext
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/inIncognitoContext
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Valeur booléenne, <code>true</code> pour les scripts de contenu s'exécutant dans les onglets de navigation privée et pour les pages d'extension exécutées dans un processus de navigation privé..</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.extension.inIncognitoContext")}}</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.html
new file mode 100644
index 0000000000..78b7cfd521
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.html
@@ -0,0 +1,94 @@
+---
+title: extension.isAllowedFileSchemeAccess()
+slug: Mozilla/Add-ons/WebExtensions/API/extension/isAllowedFileSchemeAccess
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - isAllowedFileSchemeAccess
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/isAllowedFileSchemeAccess
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Renvoie <code>true</code> si l'extension peut accéder au schéma "file://", sinon <code>false</code>.</div>
+
+<div></div>
+
+<div>
+<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>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var isAllowed = browser.extension.isAllowedFileSchemeAccess()
+</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 remplie avec un booléen : <code>true</code> si l'extension est autorisée à accéder aux URLs "file://", sinon <code>false</code>.</p>
+
+<p>Firefox retournera toujours <code>false</code>.</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.extension.isAllowedFileSchemeAccess")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function logIsAllowed(answer) {
+ console.log(`Is allowed: ${answer}`);
+}
+
+var isAllowed = browser.extension.isAllowedFileSchemeAccess();
+isAllowed.then(logIsAllowed);</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.html
new file mode 100644
index 0000000000..367b8af532
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.html
@@ -0,0 +1,92 @@
+---
+title: extension.isAllowedIncognitoAccess()
+slug: Mozilla/Add-ons/WebExtensions/API/extension/isAllowedIncognitoAccess
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - isAllowedIncognitoAccess
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/isAllowedIncognitoAccess
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Vérifiez si l'extension est autorisée à accéder aux onglets ouverts en mode "navigation privée".</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 isAllowed = browser.extension.isAllowedIncognitoAccess()
+</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 remplie avec un booléen : <code>true</code> si l'extension est autorisée à accéder aux onglets privés, sinon <code>false</code>.</p>
+
+<p> </p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function logIsAllowed(answer) {
+ console.log(`Is allowed: ${answer}`);
+}
+
+var isAllowed = browser.extension.isAllowedIncognitoAccess();
+isAllowed.then(logIsAllowed);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </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.extension.isAllowedIncognitoAccess")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.html
new file mode 100644
index 0000000000..f1803043c3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.html
@@ -0,0 +1,64 @@
+---
+title: extension.lastError
+slug: Mozilla/Add-ons/WebExtensions/API/extension/lastError
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Non-standard
+ - Property
+ - Reference
+ - WebExtensions
+ - lastError
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/lastError
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un alias de {{WebExtAPIRef("runtime.lastError")}}.</p>
+
+<h2 id="Compatibilité_du_navoigateur">Compatibilité du navoigateur</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.extension.lastError")}}</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.html
new file mode 100644
index 0000000000..75e4ea7efe
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.html
@@ -0,0 +1,117 @@
+---
+title: extension.onRequest
+slug: Mozilla/Add-ons/WebExtensions/API/extension/onRequest
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extension
+ - Extensions
+ - Reference
+ - WebExtensions
+ - onRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/onRequest
+---
+<div>{{AddonSidebar()}}</div>
+
+<div class="warning">
+<p><strong>Not implémenté : </strong>Ceci n'est pas implémenté dans Firefox car il est obsolète depuis Chrome 33. Veuillez utiliser <a href="/fr/Add-ons/WebExtensions/API/runtime/onMessageExternal">runtime.onMessageExternal</a> à la place.</p>
+</div>
+
+<p>Lancé lorsqu'une requête est envoyée par un processus d'extension ou un script de contenu.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">chrome.extension.onRequest.addListener(function(
+ request, // optional any
+ sender, // runtime.MessageSender
+ function() {...} // function
+) {...})
+chrome.extension.onRequest.removeListener(listener)
+chrome.extension.onRequest.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>request</code></dt>
+ <dd><code>any</code>. La requête envoyée par le script appelant.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>sender</code></dt>
+ <dd>{{WebExtAPIRef('runtime.MessageSender')}}.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>sendResponse</code></dt>
+ <dd><code>function</code>. Fonction à appeler (au plus une fois) lorsque vous avez une réponse. L'argument doit être n'importe quel objet JSON-ifiable, ou undefined s'il n'y a pas de réponse. Si vous avez plus d'un écouteur <code>onRequest</code> dans le même document, un seul peut envoyer une réponse.</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.extension.onRequest")}}</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.html
new file mode 100644
index 0000000000..9eade45d3e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.html
@@ -0,0 +1,116 @@
+---
+title: extension.onRequestExternal
+slug: Mozilla/Add-ons/WebExtensions/API/extension/onRequestExternal
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extension
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onRequestExternal
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/onRequestExternal
+---
+<div>{{AddonSidebar()}}</div>
+
+<div class="warning">
+<p><strong>Not implémenté : </strong>Ceci n'est pas implémenté dans Firefox car il est obsolète depuis Chrome 33. Veuillez utiliser <a href="/fr/Add-ons/WebExtensions/API/runtime/onMessageExternal">runtime.onMessageExternal</a> à la place.</p>
+</div>
+
+<p>Lancé lorsqu'une requête est envoyée depuis une autre extension.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">chrome.extension.onRequestExternal.addListener(function(
+ request, // optional any
+ sender, // runtime.MessageSender
+ function() {...} // function
+) {...})
+chrome.extension.onRequestExternal.removeListener(listener)
+chrome.extension.onRequestExternal.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>request</code></dt>
+ <dd><code>any</code>. La requête envoyée par le script appelant.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>sender</code></dt>
+ <dd>{{WebExtAPIRef('runtime.MessageSender')}}.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>sendResponse</code></dt>
+ <dd><code>function</code>. Fonction à appeler lorsque vous avez une réponse. L'argument doit être n'importe quel objet JSON-ifiable, ou undefined s'il n'y a pas de réponse.</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.extension.onRequestExternal")}}</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.html
new file mode 100644
index 0000000000..c1f843101e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.html
@@ -0,0 +1,97 @@
+---
+title: extension.sendRequest()
+slug: Mozilla/Add-ons/WebExtensions/API/extension/sendRequest
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - sendRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/sendRequest
+---
+<div>{{AddonSidebar}}{{Deprecated_Header}}
+<div class="blockIndicator warning">
+<p>Cette méthode est dépréciée. utilisez {{WebExtAPIRef("runtime.sendMessage")}} à la place.</p>
+</div>
+</div>
+
+<p>Envoie une seule requête aux autres écouteurs de l'extension. Similaire à {{WebExtAPIRef('runtime.connect')}},mais envoie seulement une seule requête avec une réponse optionnelle. L'événement {{WebExtAPIRef('extension.onRequest')}} est déclenché dans chaque page de l'extension</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">chrome.extension.sendRequest(
+ extensionId, // optional string
+ request, // any
+ function(response) {...} // optional function
+)
+</pre>
+
+<p>Cette API est également disponible en tant que <code>browser.extension.sendRequest()</code> dans une <a href="/en-US/Add-ons/WebExtensions/Using_the_JavaScript_APIs#Callbacks_and_promises">version qui renvoie une promise</a>.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>extensionId</code>{{Optional_Inline}}</dt>
+ <dd><code>string</code>. L'ID d'extension de l'extension à laquelle vous souhaitez vous connecter. Si omis, la valeur par défaut est votre propre extension.</dd>
+ <dt><code>request</code></dt>
+ <dd><code>any</code>.</dd>
+ <dt><code>responseCallback</code>{{Optional_Inline}}</dt>
+ <dd><code>function</code>. La fonction est passée les arguments suivants :
+
+
+ <dl class="api-reference-values">
+ <dt><code>response</code></dt>
+ <dd><code>any</code>. Objet de réponse JSON envoyé par le gestionnaire de la requête. Si une erreur survient lors de la connexion à l'extension, le rappel sera appelé sans arguments et  {{WebExtAPIRef('runtime.lastError')}} sera défini sur le message d'erreur.</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.extension.sendRequest")}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="blockIndicator note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.html
new file mode 100644
index 0000000000..516d490702
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.html
@@ -0,0 +1,80 @@
+---
+title: extension.setUpdateUrlData()
+slug: Mozilla/Add-ons/WebExtensions/API/extension/setUpdateUrlData
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - setUpdateUrlData
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/setUpdateUrlData
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit les paramètres de l'URL de mise à jour de l'extension. Cette valeur est ignorée pour les extensions hébergées dans le magasin du fournisseur du navigateur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.extension.setUpdateUrlData(
+ data // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>data</code></dt>
+ <dd><code>string</code>.</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.extension.setUpdateUrlData")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.html
new file mode 100644
index 0000000000..f20c377ff0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.html
@@ -0,0 +1,68 @@
+---
+title: extension.ViewType
+slug: Mozilla/Add-ons/WebExtensions/API/extension/ViewType
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - ViewType
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/extension/ViewType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type de vue de l'extension.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont : <code>"tab"</code>, <code>"popup"</code>, <code>"sidebar"</code>.</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.extension.ViewType")}}</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/extension"><code>chrome.extension</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/extension.json"><code>extension.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.html b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.html
new file mode 100644
index 0000000000..f73c1058cb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.html
@@ -0,0 +1,75 @@
+---
+title: extensionTypes.ImageDetails
+slug: Mozilla/Add-ons/WebExtensions/API/extensionTypes/ImageDetails
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - ImageDetails
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - extensionType
+translation_of: Mozilla/Add-ons/WebExtensions/API/extensionTypes/ImageDetails
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Details sur le format et la qualité de l'image.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>format</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('extensionTypes.ImageFormat')}}. Le format du résultat de l'image. Par défaut est <code>"png"</code>.</dd>
+ <dt><code>quality</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Quand le format est <code>"jpeg"</code>, cela controle la qualité du résultat de l'image. C'est un nombre compris entre 0 et 100, qui est converti en une valeur entre 0 et 1 puis utilisé comme argument  <code>encoderOptions</code> sur <code><a href="/en-US/docs/Web/API/HTMLCanvasElement/toDataURL">HTMLCanvasElement.toDataURL()</a></code>. Si c'est choisi, 92 est utilisé. A mesure que la qualité baisse, le résultat de l'image aura plus d'artefacts visuel, et le nombre d'octets nécessaires pour le stocker diminuera. Cette valeur est ignorée pour les images PNG.</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.extensionTypes.ImageDetails")}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basé sur l'API Chromium <a href="https://developer.chrome.com/extensions/extensionTypes"><code>chrome.extensionTypes</code></a> . Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/extension_types.json"><code>extension_types.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.html b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.html
new file mode 100644
index 0000000000..59432b5a7c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.html
@@ -0,0 +1,68 @@
+---
+title: extensionTypes.ImageFormat
+slug: Mozilla/Add-ons/WebExtensions/API/extensionTypes/ImageFormat
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - ImageFormat
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - extensionTypes
+translation_of: Mozilla/Add-ons/WebExtensions/API/extensionTypes/ImageFormat
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Les valeurs de ce type sont des chaînes de caractères. Les valeurs possibles sont : <code>"jpeg"</code>, <code>"png"</code>.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaines. Les valeurs possibles sont : <code>"jpeg"</code>, <code>"png"</code>.</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.extensionTypes.ImageFormat")}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basé sur l'API Chromium <a href="https://developer.chrome.com/extensions/extensionTypes"><code>chrome.extensionTypes</code></a> . Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/extension_types.json"><code>extension_types.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.html b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.html
new file mode 100644
index 0000000000..575ce212e1
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.html
@@ -0,0 +1,76 @@
+---
+title: extensionTypes
+slug: Mozilla/Add-ons/WebExtensions/API/extensionTypes
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - extensionType
+translation_of: Mozilla/Add-ons/WebExtensions/API/extensionTypes
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Certains types communs utilisés dans d'autres APIs WebExtensions.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("extensionTypes.ImageDetails")}}</dt>
+ <dd>Détails sur le format et la qualité de l'image.</dd>
+ <dt>{{WebExtAPIRef("extensionTypes.ImageFormat")}}</dt>
+ <dd>Le format d'une image.</dd>
+ <dt>{{WebExtAPIRef("extensionTypes.ImageDetails")}}</dt>
+ <dd>Injecte des détails dans une page</dd>
+ <dt>{{WebExtAPIRef("extensionTypes.RunAt")}}</dt>
+ <dd>Le plus tot que le Javascript ou le CSS est injecté dans l'onglet.</dd>
+ <dt><code>extensionTypes.CSSOrigin</code></dt>
+ <dd>Indique si une feuille de style CSS injectée par <code><a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/tabs/insertCSS">tabs.insertCSS</a></code> doit être traitée comme une feuille de style "auteur" ou "utilisateur".</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.extensionTypes")}}</p>
+
+<p>{{WebExtExamples("h2")}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basé sur l'API Chromium <a href="https://developer.chrome.com/extensions/extensionTypes"><code>chrome.extensionTypes</code></a> . Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/extension_types.json"><code>extension_types.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.html b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.html
new file mode 100644
index 0000000000..4282d1c192
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.html
@@ -0,0 +1,24 @@
+---
+title: extensionTypes.InjectDetails
+slug: Mozilla/Add-ons/WebExtensions/API/extensionTypes/InjectDetails
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - InjectDetails
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - extensionTypes
+translation_of: Mozilla/Add-ons/WebExtensions/API/extensionTypes/InjectDetails
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Ce type est donné en tant que paramètre aux méthodes <code>tabs.executeScript()</code>, <code>tabs.insertCSS()</code>, et <code>tabs.removeCSS()</code> . Pour plus de détails sur ses propriétés et leur utilisation, consultez les pages de documentation de ces méthodes :</p>
+
+<ul>
+ <li>{{WebExtAPIRef("tabs.executeScript()")}}</li>
+ <li>{{WebExtAPIRef("tabs.insertCSS()")}}</li>
+ <li>{{WebExtAPIRef("tabs.removeCSS()")}}</li>
+</ul>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.html b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.html
new file mode 100644
index 0000000000..08bd963e8c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.html
@@ -0,0 +1,76 @@
+---
+title: extensionTypes.RunAt
+slug: Mozilla/Add-ons/WebExtensions/API/extensionTypes/RunAt
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - RunAt
+ - Type
+ - WebExtensions
+ - extensionTypes
+translation_of: Mozilla/Add-ons/WebExtensions/API/extensionTypes/RunAt
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le plus tot que le Javascript ou CSS sera injecté dans l'onglet.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaines. Les valeurs possibles sont : <code>"document_start"</code>, <code>"document_end"</code>, <code>"document_idle"</code>.</p>
+
+<ul>
+ <li><code>"document_start"</code>: corresponds au <code>chargement</code>. Le DOM est toujours en cours de chargement.</li>
+ <li><code>"document_end"</code>: corresponds à l'<code>interactif</code>. Le DOM a fini de charger, mais des ressources telles que des scripts et des images peuvent toujours être en cours de chargement.</li>
+ <li><code>"document_idle"</code>: corresponds à  <code>complete</code>. Le document et toutes ses ressources ont terminé le changement.</li>
+</ul>
+
+<p>La valeur par défaut est <code>"document_idle"</code>.</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.extensionTypes.RunAt")}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basé sur l'API Chromium <a href="https://developer.chrome.com/extensions/extensionTypes"><code>chrome.extensionTypes</code></a> . Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/extension_types.json"><code>extension_types.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/find/find/index.html b/files/fr/mozilla/add-ons/webextensions/api/find/find/index.html
new file mode 100644
index 0000000000..e51d5330c0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/find/find/index.html
@@ -0,0 +1,292 @@
+---
+title: find.find()
+slug: Mozilla/Add-ons/WebExtensions/API/find/find
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - find
+translation_of: Mozilla/Add-ons/WebExtensions/API/find/find
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Recherche du texte dans un onglet.</p>
+
+<p>Vous pouvez utiliser cette fonction pour rechercher des pages Web HTTP(S) normales. Il recherche un seul onglet : vous pouvez spécifier l'ID d'un onglet particulier à rechercher, ou il recherchera l'onglet actif par défaut. Il recherche toutes les images de l'onglet..</p>
+
+<p>Vous pouvez rendre la recherche sensible à la casse et la faire correspondre uniquement à des mots entiers.</p>
+
+<p>Par défaut, la fonction renvoie juste le nombre de correspondances trouvées. En transmettant les options <code>includeRangeData</code> et  <code>includeRectData</code>, vous pouvez obtenir plus d'informations sur l'emplacement des correspondances dans l'onglet cible.</p>
+
+<p>Cette fonction stocke les résultats en interne, donc la prochaine fois qu'une extension appelle {{WebExtAPIRef("find.highlightResults()")}}, alors les résultats de cet appel <em>find</em> seront mis en surbrillance, jusqu'à ce que quelqu'un appelle <code>find()</code>.</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">browser.find.find(
+ queryphrase, // string
+ options // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl class="reference-values">
+ <dt><code>queryphrase</code></dt>
+ <dd><code>string</code>. Le texte à rechercher</dd>
+ <dt><code>options</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet spécifiant des options supplémentaires. Il peut prendre l'une des propriétés suivantes, toutes facultatives :</p>
+
+ <dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet à rechercher. Par défaut à l'onglet actif</dd>
+ <dt><code>caseSensitive</code></dt>
+ <dd><code>boolean</code>. Si true, la recherche est sensible à la casse. Par défault à  <code>false</code>.</dd>
+ <dt><code>entireWord</code></dt>
+ <dd><code>boolean</code>. Comparaison seulement entre les mots entiers : ainsi "Tok" ne sera pas comparé dans "Tokyo". Par défaut à <code>false</code>.</dd>
+ <dt><code>includeRangeData</code></dt>
+ <dd><code>boolean</code>. Inclure les groupes de données dans la réponse, which describe where in the page DOM the match was found. Defaults to <code>false</code>.</dd>
+ <dt><code>includeRectData</code></dt>
+ <dd><code>boolean</code>. Inclure les données de rectangle dans la réponse, qui décrit où la correspondance a été trouvée dans la page de rendu. Par défaut à <code>false</code>.</dd>
+ </dl>
+ </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 objet contenant jusqu'à trois propriétés :</p>
+
+<dl class="reference-values">
+ <dt><code>count</code></dt>
+ <dd><code>integer</code>. Le nombre de résultat trouvés.</dd>
+ <dt><code>rangeData</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>array</code>. Si <code>includeRangeData</code> a été donné dans le paramètre  <code>options</code>, cette propriété sera incluse. Il est fourni sous la forme d'un tableau d'objets <code>RangeData</code>, un pour chaque correspondance. Chaque objet <code>RangeData</code> décrit où la correspondance a été trouvée dans l'arborescence DOM. Cela permettrait, par exemple, une extension pour obtenir le texte entourant chaque correspondance, afin d'afficher le contexte pour les correspondances.</p>
+
+ <p>Les élements correspondent aux éléments données dans <code>rectData</code>, donc <code>rangeData[i]</code> décrit la même correspondance que  <code>rectData[i]</code>.</p>
+
+ <p>Chaque <code>RangeData</code> contient les propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>framePos</code></dt>
+ <dd>L'index de l'image contenant la correspondance. 0 correspond à une fenêtre parente. Notez que l'ordre des objets dans un tableau  <code>rangeData</code> s'alignera séquentiellement avec l'ordre des index d'images : par exemple, <code>framePos</code> pour la première séquence d'objets <code>rangeData</code> sera 0, <code>framePos</code> pour la séquence suivante sera 1, et ainsi de suite.</dd>
+ <dt><code>startTextNodePos</code></dt>
+ <dd>La position ordinale du noeud de texte dans lequel la correspondance a démarrée.</dd>
+ <dt><code>endTextNodePos</code></dt>
+ <dd>La position ordinale du noeud de texte dans lequel la correspondance s'est terminée.</dd>
+ <dt><code>startOffset</code></dt>
+ <dd>La position de la chaîne de caractères ordinale du début du mot correspondant dans le noeud texte de début.</dd>
+ <dt><code>endOffset</code></dt>
+ <dd>La position de la chaîne de caractères ordinale de la fin du mot trouvé dans le nœud de texte final.</dd>
+ </dl>
+ </dd>
+ <dt><code>rectData</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>array</code>. Si <code>includeRectData</code> a été donné dans les paramètres des <code>options</code>, cette propriété sera incluse. C'est un tableau d'objets <code>RectData</code> . Il contient des rectangles clients pour tout le texte correspondant à la recherche, par rapport à la partie supérieure gauche de la fenêtre. Les extensions peuvent l'utiliser pour fournir une mise en évidence personnalisée les résultats..</p>
+
+ <p>Chaque objet <code>RectData</code> contient des données rectangle pour une seule correspondance. Il a deux propriétés :</p>
+
+ <dl class="reference-values">
+ <dt><code>rectsAndTexts</code></dt>
+ <dd>Un objet contenant deux propriétés, les deux tableaux :
+ <ul>
+ <li><code>rectList</code>: un tableau d'objets ayant chacun quatre propriétés entières : <code>top</code>, <code>left</code>, <code>bottom</code>, <code>right</code>. Ceux-ci décrivent un rectangle par rapport à la partie supérieure gauche de la fenêtre.</li>
+ <li><code>textList</code>:  un tableau de chaînes, correspondant au tableau  <code>rectList</code>. L'entrée de <code>textList[i]</code> contient la partie du match délimitée par le rectangle de <code>rectList[i]</code>.</li>
+ </ul>
+
+ <p>Par exemple, considérons une partie d'une page Web qui ressemble à ceci :</p>
+
+ <p><img alt="" src="https://mdn.mozillademos.org/files/15582/rects-1.png" style="display: block; height: 227px; margin-left: auto; margin-right: auto; width: 488px;">Si vous recherchez "You may", la comparaison doit être décrit par deux rectangles :</p>
+
+ <p><img alt="" src="https://mdn.mozillademos.org/files/15583/rects-2.png" style="display: block; height: 227px; margin-left: auto; margin-right: auto; width: 488px;">Dans le cas, dans le <code>RectData</code> qui décrit cette correspondance, <code>rectsAndTexts.rectList</code> et <code>rectsAndTexts.textList</code> auront chacun 2 éléments.</p>
+
+ <ul>
+ <li><code>textList[0]</code> contiendra "You ", et <code>rectList[0]</code> contiendra son rectangle de délimitation.</li>
+ <li><code>textList[1]</code> contiendra "may", et <code>rectList[1]</code> contiendra son rectangle de délimitation.</li>
+ </ul>
+ </dd>
+ <dt><code>text</code></dt>
+ <dd>Le texte complet de comparaison, "You may" dans l'exemple ci-dessus.</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.find.find", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<h3 id="Exemples_basics">Exemples basics</h3>
+
+<p>Recherchez "banana" dans l'onglet actif, log le nombre de correspondances et mettez-les en surbrillance :</p>
+
+<pre class="brush: js">function found(results) {
+ console.log(`There were: ${results.count} matches.`);
+ if (results.count &gt; 0) {
+ browser.find.highlightResults();
+ }
+}
+
+browser.find.find("banana").then(found);</pre>
+
+<p>Rechercher "banana" dans tous les onglets (notez que cela nécessite la  <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "tabs", car il accède à <code>tab.url</code>):</p>
+
+<pre class="brush: js">async function findInAllTabs(allTabs) {
+ for (let tab of allTabs) {
+ let results = await browser.find.find("banana", {tabId: tab.id});
+ console.log(`In page "${tab.url}": ${results.count} matches.`)
+ }
+}
+
+browser.tabs.query({}).then(findInAllTabs);</pre>
+
+<h3 id="Utilisation_de_rangeData">Utilisation de rangeData</h3>
+
+<p>Dans cet exemple, l'extension utilise <code>rangeData</code> pour obtenir le contexte dans lequel la correspondance a été trouvée. Le contexte est le  <code>textContent</code> complet du noeud dans lequel la correspondance a été trouvée. Si la correspondance s'étend sur des noeuds, le contexte est la concaténation du <code>textContent</code> de tous les noeuds étendus.</p>
+
+<p>Notez que pour des raisons de simplicité, cet exemple ne gère pas les pages contenant des cadres. Pour cela, vous devez divisez <code>rangeData</code> en groupes, un par frame, et executer le script dans chaque image.</p>
+
+<p>Le script d'arrière plan :</p>
+
+<pre class="brush: js">// background.js
+
+async function getContexts(matches) {
+
+ // get the active tab ID
+ let activeTabArray = await browser.tabs.query({
+ active: true, currentWindow: true
+ });
+ let tabId = activeTabArray[0].id;
+
+ // execute the content script in the active tab
+ await browser.tabs.executeScript(tabId, {file: "get-context.js"});
+ // ask the content script to get the contexts for us
+ let contexts = await browser.tabs.sendMessage(tabId, {
+ ranges: matches.rangeData
+ });
+ for (let context of contexts) {
+ console.log(context);
+ }
+
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+ browser.find.find("example", {includeRangeData: true}).then(getContexts);
+});
+</pre>
+
+<p>Le script de contenu :</p>
+
+<pre class="brush: js">/**
+ * Get all the text nodes into a single array
+ */
+function getNodes() {
+ let walker = document.createTreeWalker(document, window.NodeFilter.SHOW_TEXT, null, false);
+ let nodes = [];
+ while(node = walker.nextNode()) {
+ nodes.push(node);
+ }
+
+ return nodes;
+}
+
+/**
+ * Gets all text nodes in the document, then for each match, return the
+ * complete text content of nodes that contained the match.
+ * If a match spanned more than one node, concatenate the textContent
+ * of each node.
+ */
+function getContexts(ranges) {
+
+ let contexts = [];
+ let nodes = getNodes();
+
+ for (let range of ranges) {
+ let context = nodes[range.startTextNodePos].textContent;
+ let pos = range.startTextNodePos;
+ while (pos &lt; range.endTextNodePos) {
+ pos++;
+ context += nodes[pos].textContent;
+ }
+ contexts.push(context);
+ }
+ return contexts;
+}
+
+browser.runtime.onMessage.addListener((message, sender, sendResponse) =&gt; {
+ sendResponse(getContexts(message.ranges));
+});
+</pre>
+
+<h3 id="Utiliser_rectData">Utiliser rectData</h3>
+
+<p>Dans cet exemple, l'extensions utilise <code>rectData</code> pour comparer "redact", en ajoutant des DIVs noires au dessus de leurs rectangles de délimitation :</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/15584/redacted.png" style="display: block; height: 416px; margin-left: auto; margin-right: auto; width: 625px;">Notez qu'il y a plusieurs façons, c'est une mauvaise façon d'atteindre les pages.</p>
+
+<p>Le script d'arrière-plan :</p>
+
+<pre class="brush: js">// background.js
+
+async function redact(matches) {
+
+ // get the active tab ID
+ let activeTabArray = await browser.tabs.query({
+ active: true, currentWindow: true
+ });
+ let tabId = activeTabArray[0].id;
+
+ // execute the content script in the active tab
+ await browser.tabs.executeScript(tabId, {file: "redact.js"});
+ // ask the content script to redact matches for us
+ await browser.tabs.sendMessage(tabId, {rects: matches.rectData});
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+ browser.find.find("banana", {includeRectData: true}).then(redact);
+});
+</pre>
+
+<p>Le script de contenu :</p>
+
+<pre class="brush: js">// redact.js
+
+/**
+ * Add a black DIV where the rect is.
+ */
+function redactRect(rect) {
+ var redaction = document.createElement("div");
+ redaction.style.backgroundColor = "black";
+ redaction.style.position = "absolute";
+ redaction.style.top = `${rect.top}px`;
+ redaction.style.left = `${rect.left}px`;
+ redaction.style.width = `${rect.right-rect.left}px`;
+ redaction.style.height = `${rect.bottom-rect.top}px`;
+ document.body.appendChild(redaction);
+}
+
+/**
+ * Go through every rect, redacting them.
+ */
+function redactAll(rectData) {
+ for (match of rectData) {
+ for (rect of match.rectsAndTexts.rectList) {
+ redactRect(rect);
+ }
+ }
+}
+
+browser.runtime.onMessage.addListener((message) =&gt; {
+ redactAll(message.rects);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.html b/files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.html
new file mode 100644
index 0000000000..cf5ad19d07
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.html
@@ -0,0 +1,53 @@
+---
+title: find.highlightResults()
+slug: Mozilla/Add-ons/WebExtensions/API/find/highlightResults
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - find
+ - highlightResults
+translation_of: Mozilla/Add-ons/WebExtensions/API/find/highlightResults
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Souligne les résultats d'un précédent appel à {{WebExtAPIRef("find.find()")}}.</p>
+
+<p>Lorsqu'une extension appelle <code>find()</code>, les correspondances ne sont pas automatiquement mises en surbrillance, mais elles sont stockées par le navigateur. Appelez <code>highlightResults()</code> pour les mettre en surbrillance.</p>
+
+<p>Notez que les résultats stockés sont globaux pour toutes les extensions, par exemple, si l'extension appelle <code>find("apple")</code>, alors si l'extensions B appelle <code>find("banana")</code>, alors si l'extensions A appelle  <code>highlightResults()</code>, le résultat pour "banana" sera mis en évidence.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.find.highlightResults()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Aucune.</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.find.highlightResults", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Recherchez "banana" dans l'onglet actif, notez le nombre de correspondances et mettez-les en surbrillance :</p>
+
+<pre class="brush: js">function found(results) {
+ console.log(`There were: ${results.count} matches.`);
+ if (results.count &gt; 0) {
+ browser.find.highlightResults();
+ }
+}
+
+browser.find.find("banana").then(found);</pre>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/find/index.html b/files/fr/mozilla/add-ons/webextensions/api/find/index.html
new file mode 100644
index 0000000000..98ce0ae4f0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/find/index.html
@@ -0,0 +1,32 @@
+---
+title: find
+slug: Mozilla/Add-ons/WebExtensions/API/find
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - find
+translation_of: Mozilla/Add-ons/WebExtensions/API/find
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Trouve un texte dans une page web, et met en évidence les correspondances.</p>
+
+<p>Pour utiliser cette API, vous devez disposez de la <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "find".</p>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("find.find()")}}</dt>
+ <dd>Trouver du texte dans une page web.</dd>
+ <dt>{{WebExtAPIRef("find.highlightResults()")}}</dt>
+ <dd>Mettez en surbrillance le dernier jeu de correspondance trouvé.</dd>
+ <dt>{{WebExtAPIRef("find.removeHighlighting()")}}</dt>
+ <dd>Supprimez toute mise en évidence.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.find", 1, 1)}} {{WebExtExamples("h2")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.html b/files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.html
new file mode 100644
index 0000000000..5e51362135
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.html
@@ -0,0 +1,41 @@
+---
+title: find.removeHighlighting()
+slug: Mozilla/Add-ons/WebExtensions/API/find/removeHighlighting
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - find
+ - removeHighlighting
+translation_of: Mozilla/Add-ons/WebExtensions/API/find/removeHighlighting
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprimer toute mise en évidence d'une recherche précédente qui a été appliquée par un appel précédent à {{WebExtAPIRef("highlightResults()")}}, ou par l'interface utilisateur native du navigateur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.find.removeHighlighting()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Aucune.</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.find.removeHighlighting", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">browser.find.removeHighlighting();
+</pre>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.html
new file mode 100644
index 0000000000..8899e837e9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.html
@@ -0,0 +1,150 @@
+---
+title: history.addUrl()
+slug: Mozilla/Add-ons/WebExtensions/API/history/addUrl
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - addUrl
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/addUrl
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Ajoute un enregistrement à l'historique du navigateur d'une visite à l'URL donnée. L'heure de la visite est enregistrée comme l'heure de l'appel, et le {{WebExtAPIRef("history.TransitionType", "TransitionType")}} est enregistré comme "liens".</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 addingUrl = browser.history.addUrl(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Objet contenant l'URL à ajouter.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL à ajouter.</dd>
+ <dt><code>title</code>{{optional_inline}}</dt>
+ <dd>string: Le titre de la page. Si ce n'est pas fourni, le titre sera enregistré comme <code>null</code>.</dd>
+ <dt><code>transition</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef("history.TransitionType")}}. Décrit comment le navigateur a navigué vers la page à cette occasion. Si ce n'est pas fourni, un type de transition de "lien" sera enregistré.</dd>
+ <dt><code>visitTime</code>{{optional_inline}}</dt>
+ <dd><code>number</code> ou <code>string</code> ou <code>object</code>. Cela peut être représenté par: un objet <code><a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Date">Date</a></code>, une  <a class="external external-icon" href="http://www.iso.org/iso/home/standards/iso8601.htm">chaîne de date ISO 8601</a>, ou le nombre de millisecondes depuis l'époque. Définit le temps de visite à cette valeur. Si ce n'est pas fourni, l'heure actuelle sera enregistrée.</dd>
+ </dl>
+ </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> sera rempli sans paramètres lorsque l'élément a été ajouté.</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.history.addUrl")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ajoutez un enregistrement d'une visite à "https://example.org/", puis vérifiez que la nouvelle visite a été enregistrée en recherchant l'historique de l'élément le plus récent et en l'enregistrant :</p>
+
+<pre class="brush: js">function onGot(results) {
+ if (results.length) {
+ console.log(results[0].url);
+ console.log(new Date(results[0].lastVisitTime));
+ }
+}
+
+function onAdded() {
+ var searching = browser.history.search({
+ text: "https://example.org/",
+ startTime: 0,
+ maxResults: 1
+ });
+ searching.then(onGot);
+}
+
+var addingUrl = browser.history.addUrl({url: "https://example.org/"});
+addingUrl.then(onAdded);</pre>
+
+<p>Ajouter un enregistrement d'une visite à "https://example.org", mais lui donner une <code>visitTime</code> de 24 heures dans le passé, et une <code>transition</code>  "typed":</p>
+
+<pre class="brush: js">const DAY = 24 * 60* 60 * 1000;
+
+function oneDayAgo() {
+ return Date.now() - DAY;
+}
+
+function onGot(visits) {
+ for (visit of visits) {
+ console.log(new Date(visit.visitTime));
+ console.log(visit.transition);
+ }
+}
+
+function onAdded() {
+ var gettingVisits = browser.history.getVisits({
+ url: "https://example.org/"
+ });
+
+ gettingVisits.then(onGot);
+}
+
+var addingUrl = browser.history.addUrl({
+ url: "https://example.org/",
+ visitTime: oneDayAgo(),
+ transition: "typed"
+});
+
+addingUrl.then(onAdded);</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.html
new file mode 100644
index 0000000000..1490ee3c0b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.html
@@ -0,0 +1,96 @@
+---
+title: history.deleteAll()
+slug: Mozilla/Add-ons/WebExtensions/API/history/deleteAll
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - deleteAll
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/deleteAll
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime toutes les visites de l'historique du navigateur.</p>
+
+<p>Cette fonction déclenche {{WebExtAPIRef("history.onVisitRemoved")}} une seule fois, avec  <code>allHistory</code> défini sur <code>true</code> et un argument <code>urls</code> vide.</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 deletingAll = browser.history.deleteAll()
+</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> sera remplie sans paramètre lorsque tout l'historique a été supprimé.</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><span class="diff_add">{{Compat("webextensions.api.history.deleteAll")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p><span id="result_box" lang="fr"><span>Supprimer tout l'historique lorsque l'utilisateur clique sur une action du navigateur :</span></span></p>
+
+<pre class="brush: js">function onDeleteAll() {
+ console.log("Deleted all history");
+}
+
+function deleteAllHistory() {
+ var deletingAll = browser.history.deleteAll();
+ deletingAll.then(onDeleteAll);
+}
+
+deleteAllHistory();</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.html
new file mode 100644
index 0000000000..64e192e848
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.html
@@ -0,0 +1,107 @@
+---
+title: history.deleteRange()
+slug: Mozilla/Add-ons/WebExtensions/API/history/deleteRange
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - deleteRange
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/deleteRange
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime toutes les visites aux pages que l'utilisateur a effectuées pendant la période donnée. Si cela supprime toutes les visites effectuées sur une page donnée, alors la page n'apparaîtra plus dans l'historique du navigateur et {{WebExtAPIRef("history.onVisitRemoved")}} se déclenchera pour cela.</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 deletingRange = browser.history.deleteRange(
+ range // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>range</code></dt>
+ <dd><code>object</code>. Spécification de la plage de temps pour laquelle supprimer des visites.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>startTime</code></dt>
+ <dd><code>number</code> ou <code>string</code> ou <code>object</code>. Une valeur indiquant une date et une heure. Cela peut être représenté par: un objet <code><a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Date">Date</a></code>, une <a href="http://www.iso.org/iso/home/standards/iso8601.htm">chaîne de de date ISO 8601</a>, ou le nombre de <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>. Spécifie l'heure de début de la plage.</dd>
+ <dt><code>endTime</code></dt>
+ <dd><code>number</code> ou <code>string</code> ou <code>object</code>. Une valeur indiquant une date et une heure. Cela peut être représenté par: un objet <code><a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Date">Date</a></code>, une <a href="http://www.iso.org/iso/home/standards/iso8601.htm">chaîne de date ISO 8601</a>, ou le nombre de <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>. Spécifie l'heure de fin de la plage.</dd>
+ </dl>
+ </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> sera remplie sans paramètre lorsque la plage a été supprimée.</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.history.deleteRange")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprimer toutes les visites effectuées à la dernière minute :</p>
+
+<pre class="brush: js">const MINUTE = 60 * 1000;
+
+function oneMinuteAgo() {
+ return Date.now() - MINUTE;
+}
+
+browser.history.deleteRange({
+ startTime: oneMinuteAgo(),
+ endTime: Date.now()
+});</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Acknowledgements</strong>
+
+<p>This API is based on Chromium's <a href="https://developer.chrome.com/extensions/history#method-deleteRange"><code>chrome.history</code></a> API. This documentation is derived from <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> in the Chromium code.</p>
+
+<p>Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.html
new file mode 100644
index 0000000000..24e2918f0d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.html
@@ -0,0 +1,142 @@
+---
+title: history.deleteUrl()
+slug: Mozilla/Add-ons/WebExtensions/API/history/deleteUrl
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - deleteUrl
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/deleteUrl
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime toutes les visites à l'URL donnée de l'historique du navigateur.</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 deletingUrl = browser.history.deleteUrl(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Objet contenant l'URL dont les visites doivent être supprimées.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL dont les visites doivent être supprimées.</dd>
+ </dl>
+ </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> sera remplie sans paramètres lorsque les visites auront été supprimé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.history.deleteUrl")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprimez toutes les visites de "https://example.org/" de l'historique, puis vérifiez que cette URL n'est plus renvoyée par {{WebExtAPIRef("history.search()")}}:</p>
+
+<pre class="brush: js">var urlToRemove = "https://example.org/";
+
+function onGot(results) {
+ if (!results.length) {
+ console.log(urlToRemove + " was removed");
+ } else {
+ console.log(urlToRemove + " was not removed");
+ }
+}
+
+function onRemoved() {
+ var searching = browser.history.search({
+ text: urlToRemove,
+ startTime: 0
+ });
+
+ searching.then(onGot);
+}
+
+var deletingUrl = browser.history.deleteUrl({url: urlToRemove});
+
+deletingUrl.then(onRemoved);</pre>
+
+<p>Supprimez la dernière page visitée de l'historique, avec un écouteur à {{WebExtAPIRef("history.onVisitRemoved")}} pour consigner l'URL de la page supprimée :</p>
+
+<pre class="brush: js">function onRemoved(removeInfo) {
+ if (removeInfo.urls.length) {
+ console.log("Removed: " + removeInfo.urls[0]);
+ }
+}
+
+browser.history.onVisitRemoved.addListener(onRemoved);
+
+function onGot(results) {
+ if (results.length) {
+ console.log("Removing: " + results[0].url);
+ browser.history.deleteUrl({url: results[0].url});
+ }
+}
+
+var searching = browser.history.search({
+ text: "",
+ startTime: 0,
+ maxResults: 1
+});
+
+searching.then(onGot);</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.html
new file mode 100644
index 0000000000..38bb7a8800
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.html
@@ -0,0 +1,119 @@
+---
+title: history.getVisits()
+slug: Mozilla/Add-ons/WebExtensions/API/history/getVisits
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getVisits
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/getVisits
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère des informations sur toutes les visites de l'URL donnée.</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 getting = browser.history.getVisits(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL pour laquelle récupérer les informations de visite.</dd>
+ </dl>
+ </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> sera remplie avec un tableau d'objets <code>{{WebExtAPIRef('history.VisitItem')}}</code> représentant chacun une visite à l'URL donnée. Les visites sont triées dans l'ordre chronologique inverse.</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.history.getVisits")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Liste toutes les visites de la page la plus récemment visitée :</p>
+
+<pre class="brush: js">function gotVisits(visits) {
+ console.log("Visit count: " + visits.length);
+ for (visit of visits) {
+ console.log(visit.visitTime);
+ }
+}
+
+function listVisits(historyItems) {
+ if (historyItems.length) {
+ console.log("URL " + historyItems[0].url);
+ var gettingVisits = browser.history.getVisits({
+ url: historyItems[0].url
+ });
+ gettingVisits.then(gotVisits);
+ }
+}
+
+var searching = browser.history.search({
+ text: "",
+ startTime: 0,
+ maxResults: 1
+});
+
+searching.then(listVisits);</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.html
new file mode 100644
index 0000000000..4ebd963d77
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.html
@@ -0,0 +1,83 @@
+---
+title: history.HistoryItem
+slug: Mozilla/Add-ons/WebExtensions/API/history/HistoryItem
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - HistoryItem
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/HistoryItem
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>Un objet <code>HistoryItem</code> fournit des informations sur une page dans l'historique du navigateur.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>C'est un objet avec les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>id</code></dt>
+ <dd><code>string</code>. Identifiant unique pour l'article.</dd>
+ <dt><code>url</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. L'URL de la page.</dd>
+ <dt><code>title</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Le titre de la page.</dd>
+ <dt><code>lastVisitTime</code> {{optional_inline}}</dt>
+ <dd><code>number</code>. Date et heure du dernier chargement de la page, représentée en millisecondes depuis l'époque.</dd>
+ <dt><code>visitCount</code> {{optional_inline}}</dt>
+ <dd><code>number</code>. Le nombre de fois que l'utilisateur a visité la page.</dd>
+ <dt><code>typedCount</code> {{optional_inline}}</dt>
+ <dd><code>number</code>. Le nombre de fois que l'utilisateur a navigué sur cette page en tapant l'adresse.</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.history.HistoryItem")}}</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/index.html
new file mode 100644
index 0000000000..3ffbd7ef01
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/index.html
@@ -0,0 +1,134 @@
+---
+title: history
+slug: Mozilla/Add-ons/WebExtensions/API/history
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/history
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Utilisez l'API <code>historique</code> pour interargir avec l'historique du navigateur.</p>
+
+<p>Si vous recherchez des informations sur l'historique de session du navigateur, consultez l'<a href="/fr/docs/Web/API/History">interface historique</a>.</p>
+
+<div class="note">
+<p><strong>Notez : </strong>Les téléchargements sont traités comme des objets <a href="/fr/Add-ons/WebExtensions/API/history/HistoryItem" title="A HistoryItem object provides information about a page in the browser history."><code>HistoryItem</code></a>. Par conséquent, des événements tels que <a href="/fr/Add-ons/WebExtensions/API/history/onVisited" title="Fired each time the user visits a page. A history.HistoryItem object is passed to the listener. This event fires before the page has loaded."><code>history.onVisited</code></a> seront également déclenchés pour les téléchargements.</p>
+</div>
+
+<p>L'historique du navigateur est un enregistrement chronologique des pages que l'utilisateur a visitées. l'API d'historique vous permet de :</p>
+
+<ul>
+ <li><a href="/fr/Add-ons/WebExtensions/API/history/search">Recherchez dans des pagesqui apparaissent dans l'historique du navigateur</a></li>
+ <li><a href="/fr/Add-ons/WebExtensions/API/history/deleteUrl">Supprimer des pages individuelles de l'historique du navigateur</a></li>
+ <li><a href="/fr/Add-ons/WebExtensions/API/history/addUrl">Ajouter des pages à l'historique du navigateur</a></li>
+ <li><a href="/fr/Add-ons/WebExtensions/API/history/deleteAll">Supprimer toutes les pages de l'historique du navigateur</a>.</li>
+</ul>
+
+<p>Cependant, l'utilisateur peut avoir visité une seule page, plusieurs fois, de sorte que l'API a également le concept de"visites". Vous pouvez également utiliser cette API pour :</p>
+
+<ul>
+ <li><a href="/fr/Add-ons/WebExtensions/API/history/getVisits">Récupérer l'ensemble des visites effectuées par l'utilisateur sur une page particulière</a></li>
+ <li><a href="/fr/Add-ons/WebExtensions/API/history/deleteRange">Supprimer les visites à toutes les pages faites pendant une période de temps</a>.</li>
+</ul>
+
+<p>Pour utiliser cette API, une extension doit demander la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "history" dans le fichier  <code><a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a></code>.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("history.TransitionType")}}</dt>
+ <dd>Décrit comment le navigateur a navigué vers une page particulière.</dd>
+ <dt>{{WebExtAPIRef("history.HistoryItem")}}</dt>
+ <dd>
+ <p>Fournit des informations sur une page particulière dans l'historique du navigateur.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("history.VisitItem")}}</dt>
+ <dd>
+ <p>Décrit une seule visite sur une page.</p>
+ </dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("history.search()")}}</dt>
+ <dd>Recherche dans l'historique du navigateur les objets <a href="/fr/Add-ons/WebExtensions/API/History/HistoryItem" title="A HistoryItem object provides information about one result from a history query."><code>history.HistoryItem</code></a> correspondant aux critères donnés.</dd>
+ <dt>{{WebExtAPIRef("history.getVisits()")}}</dt>
+ <dd>Récupère des informations sur les visites sur une page donnée.</dd>
+ <dt>{{WebExtAPIRef("history.addUrl()")}}</dt>
+ <dd>Ajoute un enregistrement à l'historique du navigateur d'une visite sur la page donnée.</dd>
+ <dt>{{WebExtAPIRef("history.deleteUrl()")}}</dt>
+ <dd>Supprime toutes les visites à l'URL donnée de l'historique du navigateur.</dd>
+ <dt>{{WebExtAPIRef("history.deleteRange()")}}</dt>
+ <dd>Supprime toutes les visites aux pages que l'utilisateur a effectuées pendant la période donnée.</dd>
+ <dt>{{WebExtAPIRef("history.deleteAll()")}}</dt>
+ <dd>Supprime toutes les visites de l'historique du navigateur.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("history.onTitleChanged")}}</dt>
+ <dd>
+ <div>Lancé lorsque le titre d'une page visitée par l'utilisateur est enregistré.</div>
+ </dd>
+ <dt>{{WebExtAPIRef("history.onVisited")}}</dt>
+ <dd>Lancé chaque fois que l'utilisateur visite une page, en fournissant les données {{WebExtAPIRef("history.HistoryItem")}} pour cette page.</dd>
+ <dt>{{WebExtAPIRef("history.onVisitRemoved")}}</dt>
+ <dd>
+ <p>Lancé lorsqu'une URL est complètement supprimée de l'historique du navigateur.</p>
+ </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.history")}}</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.html
new file mode 100644
index 0000000000..2098601f11
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.html
@@ -0,0 +1,117 @@
+---
+title: history.onTitleChanged
+slug: Mozilla/Add-ons/WebExtensions/API/history/onTitleChanged
+tags:
+ - API
+ - Add-ons
+ - Event
+ - History
+ - Reference
+ - WebExtensions
+ - onTitleChanged
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/onTitleChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Lancé lorsque le titre d'une page visitée par l'utilisateur est enregistré.</div>
+
+<div></div>
+
+<div>Pour écouter les visites d'une page, vous pouvez utiliser {{WebExtAPIRef("history.onVisited")}}. Cependant, le {{WebExtAPIRef("history.HistoryItem")}} que cet événement passe à son écouteur n'inclut pas le titre de la page, car le titre de la page n'est généralement pas connu au moment où <code>history.onVisited</code> est envoyé.</div>
+
+<div></div>
+
+<div>Au lieu de cela, {{WebExtAPIRef("history.HistoryItem")}} stocké est mis à jour avec le titre de la page après le chargement de la page, une fois le titre connu. L'événement history.onTitleChanged est déclenché à ce moment-là. Donc, si vous avez besoin de connaître les titres des pages telles qu'elles sont visitées, écoutez <code>history.onTitleChanged</code>.</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.history.onTitleChanged.addListener(listener)
+browser.history.onTitleChanged.removeListener(listener)
+browser.history.onTitleChanged.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</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> argument 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>Function that will be called when this event occurs. The function will be passed an object with the following properties:</p>
+
+ <dl class="reference-values">
+ <dt><code>url</code></dt>
+ <dd><code>String</code>. URL of the page visited.</dd>
+ <dt><code>title</code></dt>
+ <dd><code>String</code>. Title of the page visited.</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.history.onTitleChanged")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Écoutez les événements de changement de titre et consignez l'URL et le titre des pages visitées</p>
+
+<pre class="brush: js">function handleTitleChanged(item) {
+ console.log(item.title);
+ console.log(item.url);
+}
+
+browser.history.onTitleChanged.addListener(handleTitleChanged);</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.html
new file mode 100644
index 0000000000..adc2465f78
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.html
@@ -0,0 +1,113 @@
+---
+title: history.onVisited
+slug: Mozilla/Add-ons/WebExtensions/API/history/onVisited
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - History
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onVisited
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/onVisited
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Mise en place à chaque fois que l'utilisateur visite une page. Un objet {{WebExtAPIRef("history.HistoryItem")}} est transmis à l'écouteur. Cet événement se déclenche avant que la page ne soit chargée.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.history.onVisited.addListener(listener)
+browser.history.onVisited.removeListener(listener)
+browser.history.onVisited.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érifie 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>result</code></dt>
+ <dd>
+ <p>{{WebExtAPIRef('history.HistoryItem')}}. Un objet représentant l'élément dans l'historique du navigateur.</p>
+
+ <p>Au moment où cet événement est envoyé, le navigateur ne connaît pas encore le titre de la page. Si le navigateur a déjà visité cette page et s'est souvenu de son ancien titre, l'objet <code>HistoryItem.title</code> contiendra l'ancien titre de la page. Si le navigateur n'a pas d'enregistrement de l'ancien titre de la page, alors <code>HistoryItem.title</code> sera vide. Pour obtenir les titres des pages dès qu'ils sont connus, écoutez  {{WebExtAPIRef("history.onTitleChanged")}}.</p>
+ </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.history.onVisited")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Écoutez les visites et consignez l'URL et l'heure de visite.</p>
+
+<pre class="brush: js">function onVisited(historyItem) {
+ console.log(historyItem.url);
+ console.log(new Date(historyItem.lastVisitTime));
+}
+
+browser.history.onVisited.addListener(onVisited);</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.html
new file mode 100644
index 0000000000..054e60ca0f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.html
@@ -0,0 +1,122 @@
+---
+title: history.onVisitRemoved
+slug: Mozilla/Add-ons/WebExtensions/API/history/onVisitRemoved
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - History
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onVisitRemoved
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/onVisitRemoved
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'une page est complètement supprimée de l'historique du navigateur.</p>
+
+<ul>
+ <li>Si toutes les visites d'une seule page sont supprimées (par exemple, en utilisant {{WebExtAPIRef("history.deleteUrl")}}), cet événement est déclenché une fois.</li>
+ <li>Si une série de visites est supprimée (par exemple, en utilisant {{WebExtAPIRef("history.deleteRange")}} ou une fonctionnalité de navigateur telle que "Effacer l'historique récent"), alors il est tiré une fois pour chaque page <em>dont les visites tombent toutes dans la plage autorisée</em>.</li>
+ <li>Si l'historique complet du navigateur est effacé (par exemple, en utilisant {{WebExtAPIRef("history.deleteAll")}}), il est déclenché une seule fois.</li>
+</ul>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.history.onVisitRemoved.addListener(listener)
+browser.history.onVisitRemoved.removeListener(listener)
+browser.history.onVisitRemoved.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 sera passée l'argument suivant :</p>
+
+ <dl class="reference-values">
+ <dt><code>removed</code></dt>
+ <dd><code>object</code>. Détails de l'enlèvement. C'est un objet contenant deux propriétés: un booléen <code>allHistory</code> et un tableau <code>urls</code>.</dd>
+ <dd>
+ <ul>
+ <li>Si cet événement se déclenche parce qu'il est clair, <code>allHistory</code> sera <code>true</code> et <code>urls</code> sera un tableau vide.</li>
+ <li>Dans le cas contraire,  <code>allHistory</code> sera <code>false</code> et <code>urls</code> contiendront un qui est l'URL de la page supprimée.</li>
+ </ul>
+ </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.history.onVisitRemoved")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onRemoved(removed) {
+ if (removed.allHistory) {
+ console.log("All history removed");
+ } else if (removed.urls.length) {
+ console.log("URL removed: " + removed.urls[0]);
+ }
+}
+
+browser.history.onVisitRemoved.addListener(onRemoved);</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/search/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/search/index.html
new file mode 100644
index 0000000000..d8579eb27c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/search/index.html
@@ -0,0 +1,155 @@
+---
+title: history.search()
+slug: Mozilla/Add-ons/WebExtensions/API/history/search
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - Method
+ - Non-standard
+ - Reference
+ - Search
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/search
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Recherche dans l'historique du navigateur les objets {{WebExtAPIRef("history.HistoryItem")}} correspondant aux critères donnés.</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 searching = browser.history.search(
+ query // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>query</code></dt>
+ <dd>Un objet qui indique ce qu'il faut rechercher dans l'historique du navigateur. Cet objet a les champs suivants :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>text</code></dt>
+ <dd><code>string</code>. Rechercher des éléments d'historique par URL et titre. La chaîne est divisée en termes de recherche distincts aux limites de l'espace. Chaque terme de recherche est insensible à la casse par rapport à l'URL et au titre de l'élément d'historique. L'élément d'historique sera renvoyé si tous les termes de recherche correspondent.</dd>
+ <dd>Par exemple, considérez cet article :</dd>
+ <dd>URL: <code>"http://example.org"</code><br>
+ Title: <code>"Example Domain"</code></dd>
+ <dd>
+ <pre class="no-line-numbers">"http" -&gt; matches
+"domain" -&gt; matches
+"MAIN ample" -&gt; matches
+"main tt" -&gt; matches
+"main https" -&gt; does not match</pre>
+ </dd>
+ <dd>Spécifiez une chaîne vide (<code>""</code>) pour récupérer tous les objets {{WebExtAPIRef("history.HistoryItem")}} qui répondent à tous les autres critères.</dd>
+ <dt><code>startTime</code> {{optional_inline}}</dt>
+ <dd><code>number</code> ou <code>string</code> ou <code>object</code>. Une valeur indiquant une date et une heure. Cela peut être représenté par :  un objet <code><a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Date">Date</a></code>, une <a href="http://www.iso.org/iso/home/standards/iso8601.htm">chaîne de date ISO 8601</a>, ou le nombre de millisecondes depuis l'époque. Si elle est fournie, cette option exclut les résultats dont <code>lastVisitTime</code> est antérieure à cette heure. Si elle est omise, la recherche est limitée aux dernières 24 heures.</dd>
+ <dt><code>endTime</code> {{optional_inline}}</dt>
+ <dd><code>number</code> ou <code>string</code> ou <code>object</code>. Une valeur indiquant une date et une heure. Cela peut être représenté par : un objet <code><a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Date">Date</a></code>, une <a href="http://www.iso.org/iso/home/standards/iso8601.htm">chaîne de date ISO 8601</a>, ou le nombre de millisecondes depuis l'époque. Si elle est fournie, cette option exclut les résultats dont <code>lastVisitTime</code> est postérieur à cette fois. Si elle est omise, toutes les entrées sont prises en compte à partir de l'heure de début.</dd>
+ <dt><code>maxResults</code> {{optional_inline}}</dt>
+ <dd><code>number</code>. Le nombre maximum de résultats à récupérer. La valeur par défaut est 100, avec une valeur minimale de 1. La fonction renvoie une erreur si vous lui transmettez une valeur <code>maxResults</code> inférieure à 1.</dd>
+ </dl>
+ </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> sera remplie avec un tableau d'objets de type {{WebExtAPIRef("history.HistoryItem")}}, chacun décrivant un seul élément d'historique correspondant. Les articles sont triés dans l'ordre chronologique inverse.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Consigne l'URL et la dernière heure de visite pour tous les éléments d'historique visités au cours des dernières 24 heures :</p>
+
+<pre class="brush: js">function onGot(historyItems) {
+ for (item of historyItems) {
+ console.log(item.url);
+ console.log(new Date(item.lastVisitTime));
+ }
+}
+
+var searching = browser.history.search({text: ""});
+
+searching.then(onGot);</pre>
+
+<p>Logs the URL and last visit time for all history items ever visited:</p>
+
+<pre class="brush: js">function onGot(historyItems) {
+ for (item of historyItems) {
+ console.log(item.url);
+ console.log(new Date(item.lastVisitTime));
+ }
+}
+
+var searching = browser.history.search({
+ text: "",
+ startTime: 0
+});
+
+searching.then(onGot);</pre>
+
+<p>Consigne l'URL et la dernière visite de la dernière visite sur une page contenant la chaîne "mozilla" :</p>
+
+<pre class="brush: js">function onGot(historyItems) {
+ for (item of historyItems) {
+ console.log(item.url);
+ console.log(new Date(item.lastVisitTime));
+ }
+}
+
+var searching = browser.history.search({
+ text: "mozilla",
+ startTime: 0,
+ maxResults: 1
+});
+
+searching.then(onGot);</pre>
+
+<p>{{WebExtExamples}}</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.history.search")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.html
new file mode 100644
index 0000000000..8e40323c42
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.html
@@ -0,0 +1,93 @@
+---
+title: history.TransitionType
+slug: Mozilla/Add-ons/WebExtensions/API/history/TransitionType
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - Non-standard
+ - Reference
+ - TransitionType
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/TransitionType
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>Ceci décrit comment le navigateur a navigué vers une page particulière. Par exemple, "lien" signifie que le navigateur a navigué vers la page parce que l'utilisateur a cliqué sur un lien</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt>"link"</dt>
+ <dd>L'utilisateur a cliqué sur un lien dans une autre page.</dd>
+ <dt>"typed"</dt>
+ <dd>L'utilisateur a tapé l'URL dans la barre d'adresse. Ceci est également utilisé si l'utilisateur a commencé à taper dans la barre d'adresse, puis sélectionné une URL parmi les suggestions qu'il a proposées. Voir aussi "généré".</dd>
+ <dt>"auto_bookmark"</dt>
+ <dd>L'utilisateur a cliqué sur un signet ou un élément dans l'historique du navigateur.</dd>
+ <dt>"auto_subframe"</dt>
+ <dd>Les iframes imbriqués qui sont automatiquement chargés par leur parent.</dd>
+ <dt>"manual_subframe"</dt>
+ <dd>Les iframes imbriqués chargés en tant qu'action utilisateur explicite. Le chargement d'une telle iframe générera une entrée dans la liste de navigation avant / arrière.</dd>
+ <dt>"generated"</dt>
+ <dd>L'utilisateur a commencé à taper dans la barre d'adresse, puis a cliqué sur une entrée suggérée qui ne contenait pas d'URL.</dd>
+ <dt>"auto_toplevel"</dt>
+ <dd>La page a été passée à la ligne de commande ou est la page de démarrage.</dd>
+ <dt>"form_submit"</dt>
+ <dd>L'utilisateur a soumis un formulaire. Notez que dans certaines situations, par exemple lorsqu'un formulaire utilise un script pour soumettre son contenu, l'envoi d'un formulaire n'entraîne pas ce type de transition.</dd>
+ <dt>"reload"</dt>
+ <dd>L'utilisateur a rechargé la page en utilisant le bouton Recharger ou en appuyant sur Entrée dans la barre d'adresse. Ceci est également utilisé pour la restauration de session et la réouverture des onglets fermés.</dd>
+ <dt>"keyword"</dt>
+ <dd>L'URL a été générée à l'aide d'une <a href="https://support.mozilla.org/en-US/kb/how-search-from-address-bar">recherche par mot clé</a> configuré par l'utilisateur.</dd>
+ <dt>"keyword_generated"</dt>
+ <dd>Correspond à une visite générée pour un mot clé.</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.history.TransitionType")}}</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.html
new file mode 100644
index 0000000000..ef766d5cf3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.html
@@ -0,0 +1,81 @@
+---
+title: history.VisitItem
+slug: Mozilla/Add-ons/WebExtensions/API/history/VisitItem
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - History
+ - Non-standard
+ - Reference
+ - Type
+ - VisiItem
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/history/VisitItem
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet décrivant une seule visite sur une page.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>id</code></dt>
+ <dd><code>string</code>. L'identifiant unique du {{WebExtAPIRef("history.HistoryItem")}} associé à cette visite.</dd>
+ <dt><code>visitId</code></dt>
+ <dd><code>string</code>. L'identifiant unique pour cette visite.</dd>
+ <dt><code>visitTime</code>{{optional_inline}}</dt>
+ <dd><code>number</code>. Lorsque cette visite s'est produite, représentée en millisecondes depuis l'époque.</dd>
+ <dt><code>referringVisitId</code></dt>
+ <dd><code>string</code>. L'ID de visite du référent.</dd>
+ <dt><code>transition</code></dt>
+ <dd>{{WebExtAPIRef('history.TransitionType')}}. Décrit comment le navigateur a navigué vers la page à cette occasion.</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.history.VisitItem")}}</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/history"><code>chrome.history</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/history.json"><code>history.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.html b/files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.html
new file mode 100644
index 0000000000..20b63588d6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.html
@@ -0,0 +1,115 @@
+---
+title: i18n.detectLanguage()
+slug: Mozilla/Add-ons/WebExtensions/API/i18n/detectLanguage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - detectLanguage
+ - i18n
+translation_of: Mozilla/Add-ons/WebExtensions/API/i18n/detectLanguage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Détecte la langue du texte fourni à l'aide du <a href="https://github.com/CLD2Owners/cld2">détecteur de langue compact</a> (CLD).</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 detectingLanguages = browser.i18n.detectLanguage(
+ text // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>text</code></dt>
+ <dd><code>string</code>. Chaîne d'entrée de l'utilisateur à traduire.</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 objet résultat. L'objet résultat a deux propriétés :</p>
+
+<dl class="reference-values">
+ <dt><code>isReliable</code></dt>
+ <dd><code>boolean</code>. Si la langue a été détectée de manière fiable.</dd>
+ <dt><code>languages</code></dt>
+ <dd><code>array</code> d'objets, dont chacun a deux propriétés:</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>language</code></dt>
+ <dd>{{WebExtAPIRef('i18n.LanguageCode')}}. La langue détectée.</dd>
+ <dt><code>percentage</code></dt>
+ <dd><code>integer</code>. Le pourcentage de la chaîne d'entrée qui était dans la langue détecté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.i18n.detectLanguage")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onLanguageDetected(langInfo) {
+ for (lang of langInfo.languages) {
+ console.log("Le langage est : " + lang.language);
+ console.log("Le pourcentage est : " + lang.percentage);
+ }
+}
+
+var text = "L'homme est né libre, et partout il est dans les fers."
+
+var detecting = browser.i18n.detectLanguage(text);
+detecting.then(onLanguageDetected);
+
+</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/i18n"><code>chrome.i18n</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/i18n.json"><code>i18n.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.html b/files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.html
new file mode 100644
index 0000000000..a7868e3b35
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.html
@@ -0,0 +1,92 @@
+---
+title: i18n.getAcceptLanguages()
+slug: Mozilla/Add-ons/WebExtensions/API/i18n/getAcceptLanguages
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getAcceptLanguages
+ - i18n
+translation_of: Mozilla/Add-ons/WebExtensions/API/i18n/getAcceptLanguages
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient les <a href="/fr/docs/Web/HTTP/Content_negotiation#The_Accept-Language_header">accept-languages</a> du navigateur. Ceci est différent des paramètres régionaux utilisés par le navigateur. Pour obtenir les paramètres régionaux, utilisez  {{WebExtAPIRef('i18n.getUILanguage')}}.</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 gettingAcceptLanguages = browser.i18n.getAcceptLanguages()
+</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 remplie avec un <code>array</code> d'objets <code>{{WebExtAPIRef('i18n.LanguageCode')}}</code>.</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.i18n.getAcceptLanguages")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onGot(languages) {
+ console.log(languages);
+ //e.g. Array [ "en-US", "en" ]
+}
+
+var gettingAcceptLanguages = browser.i18n.getAcceptLanguages();
+gettingAcceptLanguages.then(onGot);
+</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/i18n"><code>chrome.i18n</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/i18n.json"><code>i18n.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.html b/files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.html
new file mode 100644
index 0000000000..464a46cfc0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.html
@@ -0,0 +1,119 @@
+---
+title: i18n.getMessage()
+slug: Mozilla/Add-ons/WebExtensions/API/i18n/getMessage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getMessage
+ - i18n
+translation_of: Mozilla/Add-ons/WebExtensions/API/i18n/getMessage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient la chaîne localisée pour le message spécifié.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.i18n.getMessage(
+ messageName, // string
+ substitutions // optional any
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>messageName</code></dt>
+ <dd><code>string</code>. Le nom du message, tel que spécifié dans le fichier messages.json. Si le message ne peut pas être trouvé dans messages.json :</dd>
+ <dd>
+ <ul>
+ <li>Firefox renvoie "" et enregistre une erreur.</li>
+ <li>Chrome renvoie "" et n'enregistre pas d'erreur.</li>
+ </ul>
+ </dd>
+ <dt><code>substitutions</code>{{optional_inline}}</dt>
+ <dd><code>string</code> ou <code>array</code> de <code>string</code>. Une chaîne de substitution unique ou un tableau de chaînes de substitution.</dd>
+ <dd>Dans Chrome, si vous fournissez plus de 9 chaînes de substitution, <code>getMessage()</code> renvoie <code>undefined</code>.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p><code>string</code>. Message localisé pour les paramètres régionaux en cours.</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.i18n.getMessage")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez la chaîne localisée pour <code>"messageContent"</code>, avec <code>target.url</code> substitué :</p>
+
+<pre class="brush: js">var message = browser.i18n.getMessage("messageContent", target.url);
+console.log(message);
+</pre>
+
+<p>Cela fonctionnerait avec un fichier _locales/en/messages.json contenant :</p>
+
+<pre class="brush: json">{
+ "messageContent": {
+ "message": "You clicked $URL$.",
+ "description": "Tells the user which link they clicked.",
+ "placeholders": {
+ "url" : {
+ "content" : "$1",
+ "example" : "https://developer.mozilla.org"
+ }
+ }
+ }
+}</pre>
+
+<p>Si <code>target.url</code> est "https://developer.mozilla.org", alors la valeur de message, dans la locale "en", serait :</p>
+
+<pre>"You clicked https://developer.mozilla.org."</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/i18n"><code>chrome.i18n</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/i18n.json"><code>i18n.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.html b/files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.html
new file mode 100644
index 0000000000..0e5c7c343d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.html
@@ -0,0 +1,86 @@
+---
+title: i18n.getUILanguage()
+slug: Mozilla/Add-ons/WebExtensions/API/i18n/getUILanguage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getUILanguage
+ - i18n
+translation_of: Mozilla/Add-ons/WebExtensions/API/i18n/getUILanguage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient la langue de l'interface utilisateur du navigateur. Ceci est différent de {{WebExtAPIRef('i18n.getAcceptLanguages')}} qui renvoie les langues utilisateur préférées.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.i18n.getUILanguage()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dd>None.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p><code>string</code>. Le code de langue de l'interface utilisateur du navigateur en tant que  {{WebExtAPIRef("i18n.LanguageCode")}}.</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.i18n.getUILanguage")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">var uiLanguage = browser.i18n.getUILanguage();
+console.log(uiLanguage);
+
+//e.g. "fr"</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/i18n"><code>chrome.i18n</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/i18n.json"><code>i18n.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/index.html b/files/fr/mozilla/add-ons/webextensions/api/i18n/index.html
new file mode 100644
index 0000000000..bb22f56649
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/index.html
@@ -0,0 +1,57 @@
+---
+title: i18n
+slug: Mozilla/Add-ons/WebExtensions/API/i18n
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - i18n
+translation_of: Mozilla/Add-ons/WebExtensions/API/i18n
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Fonctions permettant d'internationaliser votre extension. Vous pouvez utiliser ces API pour obtenir des chaînes localisées à partir de fichiers locaux conditionnés avec votre extension, connaître la langue actuelle du navigateur et en connaître la valeur de son <a href="/fr/docs/Web/HTTP/Content_negotiation#The_Accept-Language_header">En-tete "Accept-Language"</a>.</p>
+
+<p id="See_also">Pour plus de détails sur l'utilisation de i18n pour votre extension, voir :</p>
+
+<ul>
+ <li><a href="/fr/Add-ons/WebExtensions/Internationalization">Internationalization</a>: un guide d'utilisation du système WebExtension i18n.</li>
+ <li><a href="/fr/Add-ons/WebExtensions/API/i18n/Locale-Specific_Message_reference">Référence de message spécifique aux paramètres régionaux </a>: Les extensions fournissent des chaînes de caractères locales dans des fichiers appelés <code>messages.json</code>. Cette page décrit le format de <code>messages.json</code>.</li>
+</ul>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("i18n.LanguageCode")}}</dt>
+ <dd>Une <a href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.10">balise de langue</a> telle que <code>"en-US"</code> ou "<code>fr</code>".</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("i18n.getAcceptLanguages()")}}</dt>
+ <dd>Obtient les <a href="/fr/docs/Web/HTTP/Content_negotiation#The_Accept-Language_header">accept-languages</a> du navigateur. Ceci est différent des paramètres régionaux utilisés par le navigateur. Pour obtenir les paramètres régionaux, utilisez  {{WebExtAPIRef('i18n.getUILanguage')}}.</dd>
+ <dt>{{WebExtAPIRef("i18n.getMessage()")}}</dt>
+ <dd>Obtient la chaîne localisée pour le message spécifié.</dd>
+ <dt>{{WebExtAPIRef("i18n.getUILanguage()")}}</dt>
+ <dd>Obtient la langue de l'interface utilisateur du navigateur. Ceci est différent de  {{WebExtAPIRef('i18n.getAcceptLanguages')}} qui renvoie les langues utilisateur préférées.</dd>
+ <dt>{{WebExtAPIRef("i18n.detectLanguage()")}}</dt>
+ <dd>Détecte la langue du texte fourni en utilisant le <a href="https://github.com/CLD2Owners/cld2">détecteur de langue compact</a>.</dd>
+</dl>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<p>{{Compat("webextensions.api.i18n")}}</p>
+
+<p>{{WebExtExamples("h2")}}</p>
+
+<div class="blockIndicator note">
+<p><strong>Remerciements</strong><br>
+ Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/i18n"><code>chrome.i18n</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/i18n.json"><code>i18n.json</code></a> dans le code de Chromium.<br>
+ <br>
+ 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/i18n/languagecode/index.html b/files/fr/mozilla/add-ons/webextensions/api/i18n/languagecode/index.html
new file mode 100644
index 0000000000..1030735ae9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/languagecode/index.html
@@ -0,0 +1,69 @@
+---
+title: i18n.LanguageCode
+slug: Mozilla/Add-ons/WebExtensions/API/i18n/LanguageCode
+tags:
+ - API
+ - Add-ons
+ - Extension
+ - Extensions
+ - LanguageCode
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - i18n
+translation_of: Mozilla/Add-ons/WebExtensions/API/i18n/LanguageCode
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Une <a href="https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.10">balise de langue</a> telle que <code>"en-US"</code> ou "<code>fr</code>".</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes.</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.i18n.LanguageCode")}}</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/i18n"><code>chrome.i18n</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/i18n.json"><code>i18n.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.html b/files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.html
new file mode 100644
index 0000000000..843010173d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.html
@@ -0,0 +1,129 @@
+---
+title: Locale-specific message reference
+slug: Mozilla/Add-ons/WebExtensions/API/i18n/Locale-Specific_Message_reference
+tags:
+ - Internationalization
+ - Localization
+ - Reference
+ - String
+ - WebExtensions
+ - i18n
+ - message
+ - messages.json
+ - placeholders
+translation_of: Mozilla/Add-ons/WebExtensions/API/i18n/Locale-Specific_Message_reference
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>Chaque extension internationalisée a au moins un fichier nommé <code>messages.json</code> qui fournit des chaînes spécifiques aux paramètres régionaux. Cette page décrit le format des fichiers <code>messages.json</code>.</p>
+
+<div class="note">
+<p><strong>Remarque </strong>: Pour plus d'informations sur l'internationalisation de vos extensions, consultez notre guide <a href="/fr/Add-ons/WebExtensions/WebExtension_i18n">i18n</a>.</p>
+</div>
+
+<h2 id="Exemple_messages.json">Exemple messages.json</h2>
+
+<p>Le code suivant montre un exemple de fichier <code>messages.json file</code>, tiré de notre extension <a href="https://github.com/mdn/webextensions-examples/tree/master/notify-link-clicks-i18n">d'exemple notify-link-clicks-i18n</a>. Seuls les champs "<em>name</em>" et "message" ont obligatoires.</p>
+
+<pre class="brush: json">{
+ "extensionName": {
+ "message": "Notify link clicks i18n",
+ "description": "Name of the extension."
+ },
+
+ "extensionDescription": {
+ "message": "Shows a notification when the user clicks on links.",
+ "description": "Description of the extension."
+ },
+
+ "notificationTitle": {
+ "message": "Click notification",
+ "description": "Title of the click notification."
+ },
+
+ "notificationContent": {
+ "message": "You clicked $URL$.",
+ "description": "Tells the user which link they clicked.",
+ "placeholders": {
+ "url" : {
+ "content" : "$1",
+ "example" : "https://developer.mozilla.org"
+ }
+ }
+ }
+}</pre>
+
+<h2 id="Placement">Placement</h2>
+
+<p>Vos fichiers <code>messages.json</code> doivent être placés dans des répertoires nommés d'après les paramètres régionaux que chacun supporte — <code>en</code>, <code>de</code>, <code>ja</code>, etc. Ceux-ci doivent être placés dans un répertoire appelé <code>_locales</code>, à l'intérieur de la racine de votre extension.</p>
+
+<h2 id="Détails_des_membres">Détails des membres</h2>
+
+<p>Cette section décrit chaque membre qui peut apparaître dans un fichier <code>messages.json</code>.</p>
+
+<h3 id="name">name</h3>
+
+<p>Chaque membre de niveau supérieur est nommé d'après le nom de la chaîne de message que vous localisez, par exemple <code>"extensionName"</code> ou <code>"notificationContent"</code> dans l'exemple ci-dessus. Chaque nom est insensible à la casse et agit comme une clé vous permettant de récupérer le texte du message localisé.</p>
+
+<p>Le nom peut inclure les caractères suivants :</p>
+
+<ul>
+ <li>A-Z</li>
+ <li>a-z</li>
+ <li>0-9</li>
+ <li>_ (underscore)</li>
+ <li>@</li>
+</ul>
+
+<p class="note"><strong>Remarque :</strong> Vous ne devez pas définir les noms commençant par @@. Ces noms sont réservés aux <a href="/fr/Add-ons/WebExtensions/Internationalization#Predefined_messages">messages prédéfinis</a>.</p>
+
+<h3 id="message">message</h3>
+
+<p>Au moins, cette propriété doit être définie pour chaque chaîne. Le membre <code>"message"</code> contient une chaîne localisée qui peut contenir {{anch("placeholders")}}. Vous pouvez utiliser :</p>
+
+<ul>
+ <li><em>$placeholder_name$</em> (case insensitive) pour insérer un espace réservé particulier (par exemple $URL$ dans l'exemple ci-dessus) dans votre chaîne.</li>
+ <li><code>$1</code>, <code>$2</code>,<code> $3</code>, etc. pour insérer directement les valeurs obtenues à partir d'un {{WebExtAPIRef("i18n.getMessage()")}} appel dans votre chaîne.</li>
+</ul>
+
+<p>Autres points à noter :</p>
+
+<ul>
+ <li>Tout nombre de signes dollar consécutifs apparaissant dans les chaînes est remplacé par le même nombre de signes dollar moins un. donc, $$ &gt; $, $$$ &gt; $$, etc.</li>
+ <li>Lorsque le fichier de paramètres régionaux est lu, les jetons correspondant à  <code>/\$([a-z0-9_@]+)\$/i</code> sont remplacés par la valeur correspondante de l'objet "placeholders" de la chaîne. Ces substitutions se produisent avant le traitement des  <code>/\$\d/</code> jetons dans le message.</li>
+ <li>Lorsqu'une chaîne locale est utilisée, les jetons correspondant à <code>/\$\d+/</code> sont remplacés par les remplacements passés à {{WebExtAPIRef("i18n.getMessage()")}}.</li>
+ <li><code>getMessage()</code> ne traitera pas les appels avec plus de 9  placeholders/substitutions.</li>
+</ul>
+
+<h3 id="description">description</h3>
+
+<p>{{optional_inline}}</p>
+
+<p>Le membre <code>"description"</code> doit contenir une description du contenu de la chaîne de message, destinée à fournir un traducteur pour aider à créer la meilleure traduction possible de la chaîne.</p>
+
+<h3 id="placeholders">placeholders</h3>
+
+<p>{{optional_inline}}</p>
+
+<p>Le membre <code>"placeholders"</code> définit une ou plusieurs sous-chaînes à utiliser dans le message — celles-ci peuvent être utilisées pour coder en dur les éléments que vous ne voulez pas traduire, ou vous référer à des variables.</p>
+
+<p>Chaque définition de sous-chaîne d'espace réservé possède un certain nombre de valeurs :</p>
+
+<pre class="brush: json">"url" : {
+ "content" : "$1",
+ "example" : "https://developer.mozilla.org"
+}</pre>
+
+<h4 id="Nom_placeholder">Nom placeholder</h4>
+
+<p>Le nom de l'espace réservé est utilisé pour représenter l'espace réservé dans la chaîne de substitution (par exemple <code>"url"</code> devient <code>$url$</code>). Il est insensible à la casse et peut contenir les mêmes caractères qu'une chaîne de message {{anch("name")}}.</p>
+
+<h4 id="contenu">contenu</h4>
+
+<p>L'élément "contenu" définit le contenu de l'espace réservé. Cela peut être une chaîne codée en dur, telle que "My placeholder", mais elle peut également inclure des valeurs obtenues à partir d'un appel {{WebExtAPIRef("i18n.getMessage()")}}. Cette propriété est obligatoire Pour plus d'informations, voir <a href="/fr/Add-ons/WebExtensions/Internationalization#Retrieving_message_strings_from_JavaScript">Récupération des chaînes de messages à partir de Javascript</a>.</p>
+
+<h4 id="exemple">exemple</h4>
+
+<p>{{optional_inline}}</p>
+
+<p>L'élément optionnel "exemple" est là encore destiné à aider les traducteurs en leur montrant un exemple de la façon dont l'espace réservé apparaîtrait aux utilisateurs finaux, leur permettant de faire le meilleur choix lors de la localisation du fichier.</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.html b/files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.html
new file mode 100644
index 0000000000..e4fad4475f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.html
@@ -0,0 +1,55 @@
+---
+title: identity.getRedirectURL()
+slug: Mozilla/Add-ons/WebExtensions/API/identity/getRedirectURL
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Identity
+ - Method
+ - Reference
+ - WebExtensions
+ - getRedirectURL
+translation_of: Mozilla/Add-ons/WebExtensions/API/identity/getRedirectURL
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Génère une URL que vous pouvez utiliser comme URL de redirection.</p>
+
+<p>L'URL est dérivée de l'ID de votre extension. Si vous utilisez cette fonction, vous devrez probablement définir explicitement l'ID de votre extension à l'aide de la clé des <code><a href="/fr/Add-ons/WebExtensions/manifest.json/applications">applications</a></code> (sinon, chaque fois que vous installerez <a href="/fr/Add-ons/WebExtensions/Temporary_Installation_in_Firefox">temporairement l'extension</a>, vous obtiendrez une URL de redirection différente).</p>
+
+<p>Voir <a href="/fr/Add-ons/WebExtensions/API/identity#Getting_the_redirect_URL">Obtenir une URL de redirection</a> pour plus d'informations sur les URL de redirection.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var redirectURL = browser.identity.getRedirectURL()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une chaîne contenant une valeur d'URL de redirection.</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.identity.getRedirectURL")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez l'URL de redirection :</p>
+
+<pre class="brush: js">var redirectURL = browser.identity.getRedirectURL();</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/identity"><code>chrome.identity</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/identity/index.html b/files/fr/mozilla/add-ons/webextensions/api/identity/index.html
new file mode 100644
index 0000000000..86dbe24142
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/identity/index.html
@@ -0,0 +1,106 @@
+---
+title: identity
+slug: Mozilla/Add-ons/WebExtensions/API/identity
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Identity
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/identity
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Utilisez l'API d'identité pour obtenir un code d'autorisation ou un jeton d'accès <a href="https://oauth.net/2/">OAuth2</a>, qu'une extension peut ensuite utiliser pour accéder aux données utilisateur d'un service prenant en charge l'accès à OAuth2 (tel qu'un compte Google ou Facebook).</p>
+
+<p>Les détails du fonctionnement du flux OAuth2 diffèrent d'un fournisseur de services à l'autre. Pour utiliser cette API avec un fournisseur de services particulier, vous devez consulter leur documentation. Par exemple :</p>
+
+<ul>
+ <li><a href="https://developers.google.com/identity/protocols/OAuth2UserAgent">https://developers.google.com/identity/protocols/OAuth2UserAgent</a></li>
+ <li><a href="https://developer.github.com/v3/oauth/">https://developer.github.com/v3/oauth/</a></li>
+</ul>
+
+<p>L'API d'identité fournit la fonction {{WebExtAPIRef("identity.launchWebAuthFlow()")}}. Cela authentifie l'utilisateur avec le service, si nécessaire, et demande à l'utilisateur d'autoriser l'extension à accéder aux données, si nécessaire. La fonction se termine par un jeton d'accès ou un code d'autorisation, selon le fournisseur.</p>
+
+<p>L'extension termine alors le flux OAuth2 pour obtenir un jeton d'accès validé, et peut ensuite l'utiliser dans les requêtes HTTP pour accéder aux données de l'utilisateur en fonction de l'autorisation donnée par l'utilisateur.</p>
+
+<p>Pour utiliser cette API, vous devez posséder la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API </a>"identity"</p>
+
+<h2 id="Installer">Installer</h2>
+
+<p>Il y a une certaine configuration que vous devez faire avant de publier votre extension.</p>
+
+<h3 id="Obtenir_l'URL_de_redirection">Obtenir l'URL de redirection</h3>
+
+<p>L'<a href="https://www.oauth.com/oauth2-servers/redirect-uris/">URL de redirection</a> représente le point final de {{WebExtAPIRef("identity.launchWebAuthFlow()")}}, dans lequel le jeton d'accès ou le code d'autorisation est remis à l'extension..</p>
+
+<p>Vous pouvez obtenir une URL de redirection en appelant {{WebExtAPIRef("identity.getRedirectURL()")}}. Cette fonction dérive une URL de redirection à partir de l'ID du module, donc si vous voulez l'utiliser, vous devez probablement définir explicitement l'ID de votre module en utilisant la clé des <code><a href="/fr/Add-ons/WebExtensions/manifest.json/applications">applications</a></code> (sinon, chaque fois que vous <a href="/fr/Add-ons/WebExtensions/Temporary_Installation_in_Firefox">installez temporairement le module complémentaire</a>, vous obtiendrez une URL de redirection différente).</p>
+
+<p>Vous n'avez pas besoin d'utiliser l'URL de redirection retournée par  <code>identity.getRedirectURL()</code>: vous pouvez fournir la vôtre, et cela peut être tout ce que le service redirigera. Cependant, il devrait utiliser un domaine que vous contrôlez.</p>
+
+<p>Vous utiliserez l'URL de redirection à deux endroits :</p>
+
+<ul>
+ <li>Fournissez-le lors de l'enregistrement de votre extension en tant que client OAuth2</li>
+ <li>Transmettez-le dans <code>identity.launchWebAuthFlow()</code>, en tant que paramètre d'URL ajouté à l'argument <code>url</code> de cette fonction.</li>
+</ul>
+
+<h3 id="Enregistrement_de_votre_extension">Enregistrement de votre extension</h3>
+
+<p>Avant de pouvoir utiliser OAuth2 avec un fournisseur de services, vous devez enregistrer l'extension auprès du fournisseur en tant que client OAuth2.</p>
+
+<p>Cela aura tendance à être spécifique au fournisseur de services, mais en général cela signifie créer une entrée pour votre extension sur le site Web du fournisseur. Dans ce processus, vous fournirez votre URL de redirection, et recevrez un identifiant de client (et parfois aussi un secret). Vous devrez passer les deux dans  {{WebExtAPIRef("identity.launchWebAuthFlow()")}}.</p>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("identity.getRedirectURL()")}}</dt>
+ <dd>Obtient l'URL de redirection.</dd>
+ <dt>{{WebExtAPIRef("identity.launchWebAuthFlow()")}}</dt>
+ <dd>Lancement WAF.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.identity")}}</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/identity"><code>chrome.identity</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.html b/files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.html
new file mode 100644
index 0000000000..da6f253b07
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.html
@@ -0,0 +1,124 @@
+---
+title: identity.launchWebAuthFlow
+slug: Mozilla/Add-ons/WebExtensions/API/identity/launchWebAuthFlow
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Identity
+ - Method
+ - Reference
+ - WebExtensions
+ - launchWebAuthFlow
+translation_of: Mozilla/Add-ons/WebExtensions/API/identity/launchWebAuthFlow
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Effectue la première partie d'un flux <a href="https://oauth.net/2/">OAuth2</a> y compris l'authentification de l'utilisateur et l'autorisation du client.</p>
+
+<p>Le seul paramètre obligatoire de cette fonction est l'URL d'autorisation du fournisseur de services, qui doit contenir un certain nombre de paramètres d'URL, y compris l'<span class="im"><a href="/fr/Add-ons/WebExtensions/API/identity#Getting_the_redirect_URL">URL de redirection</a> et l'<a href="/fr/Add-ons/WebExtensions/API/identity#Registering_your_add-on">ID client</a> de l'extension. </span>Le fournisseur de service alors :</p>
+
+<ul>
+ <li>authentifie l'utilisateur auprès du fournisseur de services, si nécessaire (c'est-à-dire: s'ils ne sont pas déjà connectés)</li>
+ <li>demande à l'utilisateur d'autoriser l'extension à accéder aux données demandées, si nécessaire (c'est-à-dire : si l'utilisateur n'a pas déjà autorisé l'extension)</li>
+</ul>
+
+<p>Notez que si aucune authentification ou autorisation n'est nécessaire, cette fonction se terminera silencieusement, sans interaction de l'utilisateur.</p>
+
+<p>Cette fonction prend également un paramètre facultatif <code>interactif</code>: si cette valeur est omise ou définie sur false, le flux est forcé de se terminer en mode silencieux. Dans ce cas, si l'utilisateur doit s'authentifier ou autoriser, l'opération échouera tout simplement.</p>
+
+<p>Cette fonction renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>: si l'authentification et l'autorisation ont abouti, la promesse est remplie avec une URL de redirection contenant un certain nombre de paramètres d'URL. En fonction du flux OAuth2 implémenté par le fournisseur de services en question, l'extension devra passer par d'autres étapes pour obtenir un code d'accès valide, qu'elle pourra ensuite utiliser pour accéder aux données de l'utilisateur.</p>
+
+<p>S'il y a une erreur, la promesse est rejetée avec un message d'erreur. Les conditions d'erreur peuvent inclure :</p>
+
+<ul>
+ <li>l'URL du fournisseur de services n'a pas pu être atteinte</li>
+ <li>l'ID du client ne correspond pas à l'ID d'un client enregistré</li>
+ <li>l'URL de redirection ne correspond à aucune URL de redirection enregistrée pour ce client</li>
+ <li>l'utilisateur ne s'est pas authentifié avec succès</li>
+ <li>l'utilisateur n'a pas autorisé l'extension</li>
+ <li>Le paramètre <code>interactif</code> a été omis ou faux, mais l'interaction de l'utilisateur aurait été nécessaire pour autoriser l'extension.</li>
+</ul>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var authorizing = browser.identity.launchWebAuthFlow(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Options pour le flux, contenant les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>url</code></dt>
+ <dd>
+ <p><code>string</code>. URL fournie par le fournisseur de services OAuth2 pour obtenir un jeton d'accès. Les détails de cette URL doivent figurer dans la documentation du fournisseur de services en question, mais les paramètres d'URL doivent toujours inclure :</p>
+
+ <ul>
+ <li>redirect_uri: ceci représente l'URI que votre extension est redirigée lorsque le flux est terminé. Il n'est pas nécessaire pour que le flux fonctionne du côté navigateur s'il correspond à l'URL de redirection générée. Voir <a href="/fr/Add-ons/WebExtensions/API/identity#Getting_the_redirect_URL">Obtenir l'URL de redirection</a>.</li>
+ </ul>
+ </dd>
+ <dt><code>interactive</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>boolean</code>. Si omis ou <code>false</code>, force le flux à se terminer en silence, sans interaction de l'utilisateur.</p>
+
+ <p>Si l'utilisateur est déjà connecté et a déjà accordé l'accès pour l'extension, <code>launchWebAuthFlow()</code> peut se terminer en mode silencieux, sans interaction de l'utilisateur. Sinon (si le fournisseur de services a besoin que l'utilisateur se connecte ou autorise l'extension), <code>launchWebAuthFlow()</code> invite l'utilisateur, c'est-à-dire que le flux sera interactif.</p>
+
+ <p>Les extensions ne doivent pas lancer de flux interactifs sauf en réponse à une action de l'utilisateur. Cependant, parfois les extensions veulent toujours accéder aux données de l'utilisateur sans une action directe de l'utilisateur (par exemple, imaginez une extension qui veut accéder aux données lorsque le navigateur se lance).</p>
+
+ <p>TC'est le but de l'<code>interactif</code>: Si vous omettez <code>interactif</code> ou le définissez sur <code>false</code>, le flux est forcé de conclure en silence : si le fournisseur de services doit interagir avec l'utilisateur, le flux échouera tout simplement. Donc en règle générale: mettez <code>interactif</code> à <code>true</code> si vous lancez le flux en réponse à une action de l'utilisateur, et omettez le sinon.</p>
+ </dd>
+ </dl>
+ </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>. Si l'extension est autorisée avec succès, elle sera remplie avec une chaîne contenant l'URL de redirection. L'URL inclura un paramètre qui est un jeton d'accès ou qui peut être échangé contre un jeton d'accès, en utilisant le flux documenté pour le fournisseur de services particulier. </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.identity.launchWebAuthFlow")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cette fonction autorise une extension des données Google d'un utilisateur, conformément à la documentation disponible à l'adresse  <a href="https://developers.google.com/identity/protocols/OAuth2UserAgent">https://developers.google.com/identity/protocols/OAuth2UserAgent</a>. La validation du jeton d'accès renvoyé n'est pas affichée ici :</p>
+
+<pre class="brush: js">function validate(redirectURL) {
+ // validate the access token
+}
+
+function authorize() {
+ const redirectURL = browser.identity.getRedirectURL();
+ const clientID = "664583959686-fhvksj46jkd9j5v96vsmvs406jgndmic.apps.googleusercontent.com";
+ const scopes = ["openid", "email", "profile"];
+ let authURL = "https://accounts.google.com/o/oauth2/auth";
+ authURL += `?client_id=${clientID}`;
+ authURL += `&amp;response_type=token`;
+ authURL += `&amp;redirect_uri=${encodeURIComponent(redirectURL)}`;
+ authURL += `&amp;scope=${encodeURIComponent(scopes.join(' '))}`;
+
+ return browser.identity.launchWebAuthFlow({
+ interactive: true,
+ url: authURL
+ });
+}
+
+function getAccessToken() {
+ return authorize().then(validate);
+}</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/identity"><code>chrome.identity</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/idle/idlestate/index.html b/files/fr/mozilla/add-ons/webextensions/api/idle/idlestate/index.html
new file mode 100644
index 0000000000..33db7e72e9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/idle/idlestate/index.html
@@ -0,0 +1,68 @@
+---
+title: idle.IdleState
+slug: Mozilla/Add-ons/WebExtensions/API/idle/IdleState
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Idle
+ - IdleState
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/idle/IdleState
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Chaîne d'écrivant l'état d'inactivité du périphérique.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont : <code>"active"</code>, <code>"idle"</code>, <code>"locked"</code>.</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.idle.IdleState")}}</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/idle"><code>chrome.idle</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/idle.json"><code>idle.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/index.html b/files/fr/mozilla/add-ons/webextensions/api/idle/index.html
new file mode 100644
index 0000000000..72e908b0b9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/idle/index.html
@@ -0,0 +1,88 @@
+---
+title: idle
+slug: Mozilla/Add-ons/WebExtensions/API/idle
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Idle
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/idle
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Découvrez quand le système de l'utilisateur est inactif, vérouillé ou actif.</p>
+
+<p>Pour utiliser cette API, vous disposez de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "idle" .</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("idle.IdleState")}}</dt>
+ <dd>
+ <p>Chaîne décrivant l'état d'inactivité du périphérique</p>
+ </dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("idle.queryState()")}}</dt>
+ <dd>Renvoie <code>"locked"</code> si le système est verrouillé, <code>"idle"</code> si l'utilisateur n'a généré aucune entrée pendant un nombre de secondes spécifié, ou sinon <code>"active"</code></dd>
+ <dt>{{WebExtAPIRef("idle.setDetectionInterval()")}}</dt>
+ <dd>Définit l'intervalle utilisé pour déterminer quand le système est inactif pour les événements  {{WebExtAPIRef("idle.onStateChanged")}}.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("idle.onStateChanged")}}</dt>
+ <dd>Définit quand le système change d'état.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.idle")}}</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/idle"><code>chrome.idle</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/idle.json"><code>idle.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.html
new file mode 100644
index 0000000000..a5432302d7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.html
@@ -0,0 +1,113 @@
+---
+title: idle.onStateChanged
+slug: Mozilla/Add-ons/WebExtensions/API/idle/onStateChanged
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Idle
+ - Inactif
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onStateChanged
+translation_of: Mozilla/Add-ons/WebExtensions/API/idle/onStateChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque le système change passe à l'état actif, inactif ou vérouillé. L'écouteur d'événement reçoit une chaîne qui a l'une des trois valeurs suivantes :</p>
+
+<ul>
+ <li>"vérouillé" si l'écran est vérouillé ou si l'économisateur d'écran s'active</li>
+ <li>"inactif" si le système est vérouillé ou si l'économisateur n'a généré aucune entrée pendant un nombre de secondes spécifié. Ce nombre est défini par défaut sur 60, mais peut-être défini à l'aide de  {{WebExtAPIRef("idle.setDetectionInterval()")}}.</li>
+ <li>"actif" quand l'utilisateur génère une entrée sur un système inactif.</li>
+</ul>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.idle.onStateChanged.addListener(listener)
+browser.idle.onStateChanged.removeListener(listener)
+browser.idle.onStateChanged.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 l' <code>écouteur</code> est enregistré pour cet événement. Retourne <code>true</code> s'il écoute, <code>false</code> sinon.</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>newState</code></dt>
+ <dd>{{WebExtAPIRef('idle.IdleState')}}. Le nouvel état est inactif.</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.idle.onStateChanged")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function newState(state) {
+ console.log(`New state: ${state}`);
+}
+
+browser.idle.onStateChanged.addListener(newState);</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/idle"><code>chrome.idle</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/idle.json"><code>idle.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.html b/files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.html
new file mode 100644
index 0000000000..ea708e5029
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.html
@@ -0,0 +1,100 @@
+---
+title: idle.queryState()
+slug: Mozilla/Add-ons/WebExtensions/API/idle/queryState
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Idle
+ - Inactif
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - queryState
+translation_of: Mozilla/Add-ons/WebExtensions/API/idle/queryState
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoie <code>"locked"</code> si le système est vérouillé, <code>"inactif"</code> si l'utilisation n'a généré aucune entrée pendant un nombre de secondes spécifié, ou <code>"actif"</code> dans le cas contraire.</p>
+
+<p>Il s'agit d'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 querying = browser.idle.queryState(
+ detectionIntervalInSeconds // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>detectionIntervalInSeconds</code></dt>
+ <dd><code>integer</code>. Le système est considéré inactif si  <code>detectionIntervalInSeconds</code> secondes s'est écoulé depuis la dernière entrée utilisateur détectée.</dd>
+</dl>
+
+<h3 id="Valeur_renvoyée">Valeur renvoyée</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec une chaîne {{WebExtAPIRef('idle.IdleState')}}, indiquant l'état actuel.</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.idle.queryState")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans cet extrait simple, nous appelons <code>queryState()</code> et vérifions si le <code>newState</code> est <code>inactif</code> ou <code>active</code>, en enregistrant un message selon le cas. Comme nous avons spécifié une valeur de  <code>detectionIntervalInSeconds</code> de 15, un état <code>inactif</code>  ne sera signalé que s'il n'y a pas eu d'activité de l'utilisateur depuis au moins 15 secondes</p>
+
+<pre class="brush: js">function onGot(newState) {
+ if (newState === 'idle') {
+ console.log('Please come back — we miss you!');
+ } else if (newState === 'active') {
+ console.log('Glad to still have you with us!');
+ }
+}
+
+var querying = browser.idle.queryState(15);
+querying.then(onGot);</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/idle"><code>chrome.idle</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/idle.json"><code>idle.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.html b/files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.html
new file mode 100644
index 0000000000..bf0c9d3274
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.html
@@ -0,0 +1,84 @@
+---
+title: idle.setDetectionInterval()
+slug: Mozilla/Add-ons/WebExtensions/API/idle/setDetectionInterval
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Idle
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - setDetectionInterval
+translation_of: Mozilla/Add-ons/WebExtensions/API/idle/setDetectionInterval
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit l'intervalle, en secondes, utilisé pour déterminer quand le système est  dans un état inactif pour les événements {{WebExtAPIRef("idle.onStateChanged")}} . L'intervalle par défaut est de 60 secondes.</p>
+
+<p>L'intervalle de détection est spécifique à l'extension qui appelle la méthode. La modification de l'intervalle dans une extension n'affecte pas l'intervalle de détection dans une autre extension.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.idle.setDetectionInterval(
+ intervalInSeconds // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>intervalInSeconds</code></dt>
+ <dd><code>integer</code>. Seuil, en secondes, utilisé pour déterminer quand le système est dans un état inactif. La valeur minimum que vous pouvez  fournir ici est 15.</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.idle.setDetectionInterval")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">browser.idle.setDetectionInterval(15);</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/idle"><code>chrome.idle</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/idle.json"><code>idle.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/index.html b/files/fr/mozilla/add-ons/webextensions/api/index.html
new file mode 100644
index 0000000000..94ccefbb58
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/index.html
@@ -0,0 +1,60 @@
+---
+title: Les APIs JavaScript
+slug: Mozilla/Add-ons/WebExtensions/API
+tags:
+ - API
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API
+---
+<div>{{AddonSidebar}}</div>
+
+<div>
+<p>Les APIs WebExtensions en JavaScript peuvent être utilisées au sein des <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension">scripts d’arrière plan</a> de l’extension et dans tout autre document livré avec celle-ci. Ceci inclut les pop-ups relatives à une <a href="/fr/Add-ons/WebExtensions/user_interface/Browser_action">action navigateur</a> ou <a href="/fr/Add-ons/WebExtensions/user_interface/Page_actions">action de page</a>, <a href="/fr/Add-ons/WebExtensions/user_interface/barres_laterales">barres latérales</a>, <a href="/fr/Add-ons/WebExtensions/user_interface/Options_pages">pages d’options</a>, ou <a href="/fr/Add-ons/WebExtensions/manifest.json/chrome_url_overrides">pages de nouvel onglet</a>. Certaines de ces APIs peuvent également être interrogées par des <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Content_scripts">scripts de contenu</a> de l’extension (voir la <a href="/fr/Add-ons/WebExtensions/Content_scripts#WebExtension_APIs">liste dans le guide des scripts de contenu</a>).</p>
+
+<p>Pour utiliser les APIs plus puissantes, vous devez en <a href="https://developer.mozilla.org/fr/Add-ons/WebExtensions/manifest.json/permissions">demander la permission</a> dans le manifest.json de votre extension.</p>
+
+<p>Vous pouvez accéder aux APIs en utilisant l’espace de noms <code>browser</code> :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> afficher<span class="function token">Tabs</span><span class="punctuation token"> (</span>tabs<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>tabs<span class="punctuation token">)</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>tabs<span class="punctuation token">.</span><span class="function token">query</span><span class="punctuation token">(</span><span class="punctuation token">{</span>currentWindow<span class="punctuation token">:</span> <span class="keyword token">true</span><span class="punctuation token">}</span><span class="punctuation token">,</span> afficherTabs<span class="punctuation token">)</span></code></pre>
+</div>
+
+<div>
+<p>De nombreuses APIs sont asynchrones et retournent une {{JSxRef("Promise")}}:</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> afficher<span class="function token">Cookie </span><span class="punctuation token">(</span>c<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>c<span class="punctuation token">)</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> afficherErreur <span class="punctuation token">(</span>e<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>e<span class="punctuation token">)</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">let</span> setCookie <span class="operator token">=</span> browser<span class="punctuation token">.</span>cookies<span class="punctuation token">.</span><span class="keyword token">set</span><span class="punctuation token">(</span>
+<span class="punctuation token"> {</span>url<span class="punctuation token">:</span> <span class="string token">"https://developer.mozilla.org/"</span><span class="punctuation token">}
+</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+setCookie<span class="punctuation token">.</span><span class="function token">then</span><span class="punctuation token">(</span>logCookie<span class="punctuation token">,</span> afficherErreur<span class="punctuation token">)</span></code></pre>
+</div>
+
+<div>
+<p>Notez que ceci est différent du système d'extension de Google Chrome, qui utilise l’espace de noms <code>chrome</code> à la place de <code>browser</code>, et qui utilise des fonctions de rappel (callbacks) plutôt que des promesses pour les fonctions asynchrones. Afin de favoriser la portabilité, l’implémentation Firefox des WebExtensions prend en charge <code>chrome</code> et les fonctions de rappel ainsi que <code>browser</code> et les promesses. Mozilla a également écrit une prothèse d’émulation (polyfill) permettant au code qui utilise <code>browser</code> et les promesses de fonctionner sans modification dans Chrome: <a class="external external-icon" href="https://github.com/mozilla/webextension-polyfill">https://github.com/mozilla/webextension-polyfill</a>.</p>
+
+<p>Firefox implémente également ces API sous l’espace de noms Chrome à l’aide de rappels. Cela permet au code écrit pour Chrome de fonctionner en grande partie inchangé dans Firefox pour les API documentées ici.</p>
+
+<p>Microsoft Edge utilise l’espace de noms <code>browser</code>, mais ne supporte pas encore les APIs asynchrones basées sur les promesses. Avec Edge, à l’heure actuelle, les API asynchrones doivent utiliser des fonctions de rappel.</p>
+
+<p>Tous les navigateurs ne sont pas compatibles avec toutes les APIs : pour de plus amples informations, consultez <a href="/fr/Add-ons/WebExtensions/prise_en_charge_du_navigateur_pour_les_api_javascript">la compatibilité navigateur pour les APIs JavaScript</a>.</p>
+
+<p>Conseil : dans les listes d'API JavaScript, vous trouverez des exemples de codes courts qui illustrent la manière dont l'API est utilisée. Vous pouvez utiliser ces exemples, sans avoir besoin de créer une extension web, en utilisant la console de la <a href="https://extensionworkshop.com/documentation/develop/debugging/#developer-tools-toolbox">boîte à outils</a>. Par exemple, voici le premier exemple de code sur cette page fonctionnant dans la console de la boîte à outils dans Firefox Developpeur Edition :</p>
+
+<p><img alt="Illustration of a snippet of web extension code run from the console in the Toolbox" src="https://mdn.mozillademos.org/files/17186/JavaScript_exercised_in_console.jpg" style="height: 347px; width: 680px;"></p>
+
+<h2 id="Liste_des_API_JavaScript">Liste des API JavaScript</h2>
+
+<p>Voir ci-dessous pour une liste complète des API JavaScript :</p>
+</div>
+
+<div>{{SubpagesWithSummaries}}</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.html
new file mode 100644
index 0000000000..4f58fb50c7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.html
@@ -0,0 +1,128 @@
+---
+title: ExtensionInfo
+slug: Mozilla/Add-ons/WebExtensions/API/management/ExtensionInfo
+tags:
+ - API
+ - Add-ons
+ - ExtensionInfo
+ - Extensions
+ - Reference
+ - Type
+ - WebExtensions
+ - management
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/ExtensionInfo
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet <code>ExtensionInfo</code> contenant les informations sur l'extension.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Il s'agit d'un objet avec les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>description</code></dt>
+ <dd><code>string</code>. La description de l'extension, prise à partir de la clé de <a href="/fr/Add-ons/WebExtensions/manifest.json/description">description</a> du manifest.json.</dd>
+ <dt><code>disabledReason</code></dt>
+ <dd><code>string</code>. Si l'extension est désactivée, la raison pour laquelle il a été désactivé. L'une des "inconnnues' or "permissions_increase".</dd>
+ <dt><code>enabled</code></dt>
+ <dd><code>boolean</code>. Que l'extension soit activée ou pas.</dd>
+ <dt><code>homepageUrl</code></dt>
+ <dd><code>string</code>. L'URL de la page d'accueil de l'extension, prise en compte de la clé  <a href="/fr/Add-ons/WebExtensions/manifest.json/homepage_url">homepage_url</a> du fichier manifest.json.</dd>
+ <dt><code>hostPermissions</code></dt>
+ <dd><code>ensemble</code> de <code>chaîne</code>. Les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions d'hôtes</a> de l'extension.</dd>
+ <dt><code>icons</code></dt>
+ <dd><code>array</code> of <code>object</code>. les informations sur les icônes des extensions. Un tableau d'objets, un par chaque icône. Chaque objet contient deux propriétés :
+ <ul>
+ <li><code>size</code>: un entier représentant la largeur et la hauteur de l'icônes en pixels.</li>
+ <li><code>url</code>: une chaîne contenant l'url relative de l'icône, en commençant par la racine de l'extensions.</li>
+ </ul>
+ </dd>
+ <dt><code>id</code></dt>
+ <dd><code>string</code>. l'ID de l'extension.</dd>
+ <dt><code>installType</code></dt>
+ <dd><code>string</code>. Une chaîne décriantn comme l'extension a été ajouté. Une des options suivantes :
+ <ul>
+ <li>"admin": l'extension a été installé en raison d'une politique administrative.</li>
+ <li>"development": l'extension a été installé décompressé sur le disque.</li>
+ <li>"normal": l'extension a été installé normalement à partir du package d'installation.</li>
+ <li>"sideload": l'extension a été installé par un autre logiciel sur l'ordinateur de l'utilisateur.</li>
+ <li>"other": l'extension a été installé d'une autre manière.</li>
+ </ul>
+ </dd>
+ <dt><code>mayDisable</code></dt>
+ <dd><code>boolean</code>. Que cette extensions a été désactivé ou désinstallé par l'utilisateur.</dd>
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Le nom de l'extension, pris à partir de la clé <a href="/fr/Add-ons/WebExtensions/manifest.json/name">name</a> du manifest.json.</dd>
+ <dt><code>offlineEnabled</code></dt>
+ <dd><code>boolean</code>. Que les demandes de l'extensions soient prises en charge hors connexion.</dd>
+ <dt><code>optionsUrl</code></dt>
+ <dd><code>string</code>. l'URL pour la <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/user_interface/Options_pages">page d'options</a> de l'élément, s'il y en a un. Il s'agit d'une URL relative, à partir de la racine de l'extension.</dd>
+ <dt><code>permissions</code></dt>
+ <dd><code>array</code> of <code>string</code>. les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permissions de l'API</a> de l'extension.</dd>
+ <dt><code>shortName</code></dt>
+ <dd><code>string</code>. Une courte version du nom de l'extension, prise à partir de la clé  <a href="/fr/Add-ons/WebExtensions/manifest.json/short_name">short_name</a> du manifest.json.</dd>
+ <dt><code>type</code></dt>
+ <dd><code>string</code>. Chaîne décrivant le type d'extension. Ceci permet de distinguer les extensions des applications et des thèmes. Il peut prendre l'une des valeurs suivantes :</dd>
+ <dd>
+ <ul>
+ <li>"extension": le type d'extension la plus courante.</li>
+ <li>"hosted_app"</li>
+ <li>"packaged_app"</li>
+ <li>"legacy_packaged_app"</li>
+ <li>"theme"</li>
+ </ul>
+ </dd>
+ <dt><code>updateUrl</code></dt>
+ <dd><code>string</code>. URL pour la mise à jour de l'extension, tiré de la clé <a href="/fr/Add-ons/WebExtensions/manifest.json/applications">applications</a> de manifest.json.</dd>
+ <dt><code>version</code></dt>
+ <dd><code>string</code>. La version de l'extension, tiré de la clé <a href="/fr/Add-ons/WebExtensions/manifest.json/version">version</a> du manifest.json</dd>
+ <dt><code>versionName</code></dt>
+ <dd><code>string</code>. Le nom descriptif pour la version de l'extension, tiré de la clé  <a href="/fr/Add-ons/WebExtensions/manifest.json/version_name">version_name</a> du manifest.json.</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.management.ExtensionInfo")}}</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/get/index.html
new file mode 100644
index 0000000000..b345415a15
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/get/index.html
@@ -0,0 +1,98 @@
+---
+title: management.get()
+slug: Mozilla/Add-ons/WebExtensions/API/management/get
+tags:
+ - API
+ - Add-ons
+ - Méthode
+ - Reference
+ - WebExtensions
+ - get
+ - management
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/get
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère un objet {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}} contenant des informations sur l'extension spécifiée.</p>
+
+<p>Cette API requière la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission API</a> "management"</p>
+
+<p>Il s'agit d'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 gettingInfo = browser.management.get(
+ id // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd><code>string</code>. l'ID de l'extension dont vous souhaitez récupérer les informations.</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 objet  {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}} , contenant les informations sur l'extension. La promise sera rejetée si aucune extension avec l'ID donné n'est installée ou si l'appelant ne peut pas accéder à l'extension.</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.management.get")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez le nom de l'extension dont l'ID est "my-add-on":</p>
+
+<pre class="brush: js">var id = "my-add-on";
+
+function got(info) {
+ console.log(info.name);
+}
+
+var getting = browser.management.get(id);
+getting.then(got);
+</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/getall/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/getall/index.html
new file mode 100644
index 0000000000..c8a6ceb193
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/getall/index.html
@@ -0,0 +1,96 @@
+---
+title: management.getAll()
+slug: Mozilla/Add-ons/WebExtensions/API/management/getAll
+tags:
+ - API
+ - Add-ons
+ - Méthode
+ - Reference
+ - WebExtensions
+ - getAll
+ - management
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/getAll
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère un ensemble d'objets {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}, un pour chaque extension installé.</p>
+
+<p>Notez que Google Chrome récupère les applications ainsi que les modules complémentaires. Dans Chrome vous pouvez distinguer les applications des extensions en utilisant la propriété <code>type</code> de  {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}.</p>
+
+<p>Cette API requiert la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission de l'API</a> de "management"</p>
+
+<p>Il s'agit d'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.management.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 rempli avec un ensemble d'objets  {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}, un pour chaque extension installée.</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.management.getAll")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez le nom de toutes les extensions installées :</p>
+
+<pre class="brush: js">function gotAll(infoArray) {
+  for (info of infoArray) {
+    if (info.type == "extension") {
+      console.log(info.name);
+    }
+  }
+}
+
+var gettingAll = browser.management.getAll();
+gettingAll.then(gotAll);</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.html
new file mode 100644
index 0000000000..c3531b3141
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.html
@@ -0,0 +1,103 @@
+---
+title: management.getPermissionWarningsById()
+slug: Mozilla/Add-ons/WebExtensions/API/management/getPermissionWarningsById
+tags:
+ - API
+ - Add-ons
+ - Méthode
+ - Reference
+ - WebExtensions
+ - getPermissionWarningsById
+ - management
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/getPermissionWarningsById
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Lorsque l'utilisateur installe ou met  à jour une extension, le navigateur peut avertir l'utilisateur des <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permissions</a> particulièrement puissantes que l'extension a demandée. Toutes les permissions ne donnent pas lieu à des alertes et ce comportement n'est pas normalisé dans les navigateurs.</div>
+
+<div></div>
+
+<p>Compte tenu de l'ID d'une extension, cette fonction retourne les avertisseurs de permissions comme un tableau de chaînes.</p>
+
+<p>Cette API requière l'<a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">API permission</a> "management"</p>
+
+<p>Il s'agit d'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 gettingWarnings = browser.management.getPermissionWarningsById(
+ id // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd><code>string</code>. ID de l'extension dont vous souhaitez récupérer les avertisseurs de permissions.</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 ensemble de chaînes, chacune contenant un texte d'un avertissement de permissions.</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.management.getPermissionWarningsById")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez les avertissements de permissions pour l'extension dont l'ID est "my-add-on" :</p>
+
+<pre class="brush: js">var id = "my-add-on";
+
+function gotWarnings(warnings) {
+ for (warning of warnings) {
+ console.log(warning);
+ }
+}
+
+var gettingWarnings = browser.management.getPermissionWarningsById(id);
+gettingWarnings.then(gotWarnings);</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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 class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.html
new file mode 100644
index 0000000000..1835063905
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.html
@@ -0,0 +1,112 @@
+---
+title: management.getPermissionWarningsByManifest()
+slug: Mozilla/Add-ons/WebExtensions/API/management/getPermissionWarningsByManifest
+tags:
+ - API
+ - Add-ons
+ - Méthode
+ - Reference
+ - WebExtensions
+ - getPermissionWarningsByManifest
+ - management
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/getPermissionWarningsByManifest
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Lorsque l'utilisateur installe ou met à jour une extension, la navigateur peut avertir l'utilisateur des <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permissions</a> obligatoires. Toutes les permissions ne donnent pas lieu à des avertissements, et cela n'est pas normalisé dans les navigateurs.</div>
+
+<div></div>
+
+<p>Compte tenu du texte du fichier <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a>, cette fonction retourne les avertisseurs de permissions qui seraient donnés pour l'extension comme un ensemble de chaines.</p>
+
+<p>Cette API <em>ne requière pas</em> l'<a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">API de permission</a> "management".</p>
+
+<p>Il s'agit d'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 gettingWarnings = browser.management.getPermissionWarningsByManifest(
+ manifestString // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>manifestString</code></dt>
+ <dd><code>string</code>. Chaîne contenant le fichier manifest. Cela doit être un manifest valide : par exemple, il doit contenir toutes les clés obligatoires du manifest..</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 rempli avec un ensemble de chaînes, chacune contenant le texte un avertisseur de permission.</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.management.getPermissionWarningsByManifest")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez les avertissements de permissions dans le fichier manifest donné :</p>
+
+<pre class="brush: js">var manifest = {
+ "manifest_version": 2,
+ "name": "test",
+ "version": "1.0",
+ "permissions": ["management", "&lt;all_urls&gt;"]
+}
+
+var manifestString = JSON.stringify(manifest);
+
+function gotWarnings(warnings) {
+ console.log(warnings);
+}
+
+function gotError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var gettingWarnings = browser.management.getPermissionWarningsByManifest(manifestString);
+gettingWarnings.then(gotWarnings, gotError);</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/getself/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/getself/index.html
new file mode 100644
index 0000000000..09d60bab5f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/getself/index.html
@@ -0,0 +1,90 @@
+---
+title: management.getSelf()
+slug: Mozilla/Add-ons/WebExtensions/API/management/getSelf
+tags:
+ - API
+ - Add-ons
+ - Méthode
+ - Reference
+ - WebExtensions
+ - getSelf
+ - management
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/getSelf
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère un objet {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}} contenant les informations de l'extension appelée.</p>
+
+<p>Cette API <em>ne requière pas</em> l' <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">API de permission</a> "management".</p>
+
+<p>Il s'agit d'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 gettingSelf = browser.management.getSelf()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</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 remplie avec un objet {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}, contenant les informations sur l'extension.</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.management.getSelf")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez le nom de l'extension :</p>
+
+<pre class="brush: js">function gotSelf(info) {
+ console.log("Add-on name: " + info.name);
+}
+
+var gettingSelf = browser.management.getSelf();
+gettingSelf.then(gotSelf);</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/index.html
new file mode 100644
index 0000000000..ccf2d2a647
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/index.html
@@ -0,0 +1,112 @@
+---
+title: management
+slug: Mozilla/Add-ons/WebExtensions/API/management
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - management
+translation_of: Mozilla/Add-ons/WebExtensions/API/management
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Obtenez les éléments sur les modules complémentaires installés.</p>
+
+<p>Avec l'API de <code>gestion</code> vous pouvez :</p>
+
+<ul>
+ <li>Obtenir des informations sur les modules complémentaires installés</li>
+ <li>Activer / Désactiver les modules complémentaires</li>
+ <li>Désinstaller les modules complémentaires</li>
+ <li>Découvrez quels sont les alertes des permissions envoyés particulièrement par les modules complémentaires ou les manifest</li>
+ <li>Obtenir les notifications sur l'ajout des modules complémentaires, désinstallé, activé ou désactivé.</li>
+</ul>
+
+<p>La plupart de ces opérations requièrent les <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/manifest.json/permissions">permissions d'APIs</a> de gestion. Les opérations qui ne fournissent pas d'accès à d'autres modules complémentaires ne nécessitent pas de permissions.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("management.ExtensionInfo")}}</dt>
+ <dd>Un objet contenant des informations sur un module complémentaire installé.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("management.getAll()")}}</dt>
+ <dd>Renvoie des informations sur tous les modules complémentaires installés</dd>
+ <dt>{{WebExtAPIRef("management.get()")}}</dt>
+ <dd>Renvoie des informations sur un module complémentaire particulier, compte tenu de son ID.</dd>
+ <dt>{{WebExtAPIRef("management.getSelf()")}}</dt>
+ <dd>Renvoie des informations sur l'appel du module complémentaire.</dd>
+ <dt>{{WebExtAPIRef("management.install()")}}</dt>
+ <dd>Installe un thème particulier, étant donné son URL à l'adresse  <a href="https://addons.mozilla.org">addons.mozilla.org</a>.</dd>
+ <dt>{{WebExtAPIRef("management.uninstall()")}}</dt>
+ <dd>Désinstalle un module complémenaire particulier, compte tenu de son ID.</dd>
+ <dt>{{WebExtAPIRef("management.uninstallSelf()")}}</dt>
+ <dd>Désinstalle l'appel d'un module complémentaire.</dd>
+ <dt>{{WebExtAPIRef("management.getPermissionWarningsById()")}}</dt>
+ <dd>Obtenez l'ensemble des alertes des permissions particulièrement pour un module complémentaire, compte tenu de son ID.</dd>
+ <dt>{{WebExtAPIRef("management.getPermissionWarningsByManifest()")}}</dt>
+ <dd>Obtenez l'ensemble des alertes de permission qui seraient affichés pour la chaîne de manifest donnée.</dd>
+ <dt>{{WebExtAPIRef("management.setEnabled()")}}</dt>
+ <dd>Activer / désactiver un module complémentaire, compte tenu de son ID.</dd>
+ <dt>
+ <h2 id="Evénements">Evénements</h2>
+ </dt>
+ <dt>{{WebExtAPIRef("management.onInstalled")}}</dt>
+ <dd>Action quand un module complémentaire est installé.</dd>
+ <dt>{{WebExtAPIRef("management.onUninstalled")}}</dt>
+ <dd>Action quand un module complémentaire est désinstallé.</dd>
+ <dt>{{WebExtAPIRef("management.onEnabled")}}</dt>
+ <dd>Action quand un module complémentaire est activé.</dd>
+ <dt>{{WebExtAPIRef("management.onDisabled")}}</dt>
+ <dd>Action quand un module complémenaire est désactivé.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.management")}}</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2012 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/install/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/install/index.html
new file mode 100644
index 0000000000..7d34f8cf48
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/install/index.html
@@ -0,0 +1,85 @@
+---
+title: management.install()
+slug: Mozilla/Add-ons/WebExtensions/API/management/install
+tags:
+ - API
+ - Add-ons
+ - Méthode
+ - Reference
+ - Theme
+ - WebExtensions
+ - install
+ - management
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/install
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Installe et active une extension de thème à partir de l'URL donnée.</div>
+
+<div></div>
+
+<p>Cette API nécessite la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission de l'API</a> "management" et ne fonctionnera qu'avec des thèmes signés.</p>
+
+<p>C'est une fonction asynchrone qui renvoie une <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">let {id} = await browser.management.install({url});
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt>options</dt>
+ <dd>Un objet qui inclut l'URL du fichier XPI du thème à <a href="https://addons.mozilla.org">addons.mozilla.org</a> et un hachage facultatif du fichier XPI, en utilisant sha256 ou plus.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a> qui sera remplie avec un objet, contenant l'<code>ExtensionID</code> défini pour le thème dans manifest.json.</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.management.install")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Parcourez une liste de thèmes :</p>
+
+<pre class="brush: js">"use strict";
+
+let themes = [
+ "https://addons.mozilla.org/firefox/downloads/file/1063216/insightscare-1.0-fx.xpi",
+ "https://addons.mozilla.org/firefox/downloads/file/1063419/orange_roses-1.0-fx.xpi",
+ "https://addons.mozilla.org/firefox/downloads/file/1062647/sticktoyourguns-2.0-fx.xpi",
+ "https://addons.mozilla.org/firefox/downloads/file/0/bad_url.xpi",
+];
+
+let current;
+
+async function install(url) {
+ try {
+ current = url;
+ let {id} = await browser.management.install({url});
+ console.log("Theme installed: " + id);
+ } catch (e) {
+ console.error("Installation failed: " + e);
+ }
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ let id = themes.indexOf(current);
+ install(themes[(id + 1) % themes.length]);
+});
+
+for (let url of themes) {
+ browser.menus.create({
+ title: url,
+ onclick: () =&gt; install(url),
+ contexts: ["browser_action"],
+ });
+}</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.html
new file mode 100644
index 0000000000..14d78eb5e0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.html
@@ -0,0 +1,106 @@
+---
+title: management.onDisabled()
+slug: Mozilla/Add-ons/WebExtensions/API/management/onDisabled
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Reference
+ - WebExtensions
+ - management
+ - onDisabled
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/onDisabled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Action quand l'extension est désactivée.</p>
+
+<p>L'API requière l'<a href="/en-US/Add-ons/WebExtensions/manifest.json/permissions">API de permission</a> "management".</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.management.onDisabled.addListener(listener)
+browser.management.onDisabled.removeListener(listener)
+browser.management.onDisabled.hasListener(listener)
+</pre>
+
+<p>Les événement ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoutez un auditeur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>L'argument de l'auditeur est l'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si l'auditeur est enregistré à l'événement. Renvoie <code>true</code> s'il est à l'écoute, sinon <code>false</code> .</dd>
+</dl>
+
+<h2 id="addListener_syntaxe">addListener syntaxe</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>function</code></dt>
+ <dd>
+ <p>Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :</p>
+
+ <dl class="reference-values">
+ <dt><code>info</code></dt>
+ <dd><code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/management/ExtensionInfo">ExtensionInfo</a></code>: informations de l'extension qui a été désactivé</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.management.onDisabled")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez les noms des extensions lorsqu'ils sont désactivés.</p>
+
+<pre class="brush: js">browser.management.onDisabled.addListener((info) =&gt; {
+  console.log(info.name + " was disabled");
+});</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.html
new file mode 100644
index 0000000000..51cc3883cb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.html
@@ -0,0 +1,106 @@
+---
+title: management.onEnabled()
+slug: Mozilla/Add-ons/WebExtensions/API/management/onEnabled
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Reference
+ - WebExtensions
+ - management
+ - onEnabled
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/onEnabled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'auditeur de l'événement appelé lorsque l'événement <span class="seoSummary"><code>enabled</code> </span>est déclenché, indiquant qu'un add-on est maintenant activé<span class="seoSummary">.</span></p>
+
+<p>L'API requière l'<a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">API de permission </a>"management"</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.management.onEnabled.addListener(listener)
+browser.management.onEnabled.removeListener(listener)
+browser.management.onEnabled.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoutez un auditeur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>L'argument de l'auditeur est l'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si l'auditeur est enregistré à l'événement. Renvoie <code>true</code> s'il est à l'écoute, sinon <code>false</code> .</dd>
+</dl>
+
+<h2 id="addListener_syntaxe">addListener syntaxe</h2>
+
+<h3 id="Parameters">Parameters</h3>
+
+<dl>
+ <dt><code>function</code></dt>
+ <dd>
+ <p>Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :</p>
+
+ <dl class="reference-values">
+ <dt><code>info</code></dt>
+ <dd><code><a href="/fr/Add-ons/WebExtensions/API/management/ExtensionInfo">ExtensionInfo</a></code>: informations de l'extension qui a été désinstallé.</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.management.onEnabled")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez les noms des extensions lorsqu'ils sont activés :</p>
+
+<pre class="brush: js">browser.management.onEnabled.addListener((info) =&gt; {
+  console.log(info.name + " was enabled");
+});</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.html
new file mode 100644
index 0000000000..4133c0101a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.html
@@ -0,0 +1,106 @@
+---
+title: management.onInstalled()
+slug: Mozilla/Add-ons/WebExtensions/API/management/onInstalled
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Reference
+ - WebExtensions
+ - management
+ - onInstalled
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/onInstalled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Action quand une extension est installée.</p>
+
+<p>Cette API requière l'<a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">API de permission </a>"management".</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.management.onInstalled.addListener(listener)
+browser.management.onInstalled.removeListener(listener)
+browser.management.onInstalled.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajout un auditeur à l'événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêtez d'écouvter l'événement. L'argument de l'auditeur est un auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si un auditeur est enregistré pour cet événement. Renvoie <code>vrai</code> si elle est à l'écoute, sinon <code>faux</code> .</dd>
+</dl>
+
+<h2 id="addListener_syntaxe">addListener syntaxe</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>function</code></dt>
+ <dd>
+ <p>fonction de rappel qui sera appelée quand l'événement se produira. La fonction passera l'argument suivant :</p>
+
+ <dl class="reference-values">
+ <dt><code>info</code></dt>
+ <dd><code><a href="/fr/Add-ons/WebExtensions/API/management/ExtensionInfo">ExtensionInfo</a></code>: informations sur l'extension qui a été installé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.management.onInstalled")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez les noms des extensions lorsqu'ils sont installés :</p>
+
+<pre class="brush: js">browser.management.onInstalled.addListener((info) =&gt; {
+  console.log(info.name + " was installed");
+});</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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 class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.html
new file mode 100644
index 0000000000..22323ddd12
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.html
@@ -0,0 +1,106 @@
+---
+title: management.onUninstalled()
+slug: Mozilla/Add-ons/WebExtensions/API/management/onUninstalled
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Reference
+ - WebExtensions
+ - management
+ - onUninstalled
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/onUninstalled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Action quand une extension est désinstallée.</p>
+
+<p>L'API requière l'<a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">API de permission </a>"management".</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.management.onUninstalled.addListener(listener)
+browser.management.onUninstalled.removeListener(listener)
+browser.management.onUninstalled.hasListener(listener)
+</pre>
+
+<p>Les événement ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoutez un auditeur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>L'argument de l'auditeur est l'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si l'auditeur est enregistré à l'événement. Renvoie <code>true</code> s'il est à l'écoute, sinon <code>false</code> .</dd>
+</dl>
+
+<h2 id="addListener_syntaxe">addListener syntaxe</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>function</code></dt>
+ <dd>
+ <p>Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :</p>
+
+ <dl class="reference-values">
+ <dt><code>info</code></dt>
+ <dd><code><a href="/fr/Add-ons/WebExtensions/API/management/ExtensionInfo">ExtensionInfo</a></code>: informations de l'extension qui a été désinstallé.</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.management.onUninstalled")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez les noms des extensions lorsqu'ils sont désinstallés :</p>
+
+<pre class="brush: js">browser.management.onUninstalled.addListener((info) =&gt; {
+  console.log(info.name + " was uninstalled");
+});</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.html
new file mode 100644
index 0000000000..b2f074c381
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.html
@@ -0,0 +1,105 @@
+---
+title: management.setEnabled()
+slug: Mozilla/Add-ons/WebExtensions/API/management/setEnabled
+tags:
+ - API
+ - Add-ons
+ - Méthode
+ - Reference
+ - WebExtensions
+ - management
+ - setEnabled
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/setEnabled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Active ou désactive l'extension ajoutée.</p>
+
+<p>Cette fonction doit généralement être appelée dans le contexte d'une action utilisateur, comme le gestionnaire de clics d'un bouton. Le navigateur peut également demander à l'utilisateur de confirmer le changement.</p>
+
+<p>Cette API requière l'<a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">API permission</a> "management".</p>
+
+<p>Il s'agit d'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 settingEnabled = browser.management.setEnabled(
+ id, // string
+ enabled // boolean
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd><code>string</code>. ID de l'extension pour activer ou désactiver.</dd>
+ <dt><code>enabled</code></dt>
+ <dd><code>boolean</code>. Que ce soit pour active ou désactiver l'extension.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promisee">Promise</a></code> qui sera remplie sans arguments lorsque l'extension a été désactivé ou activé.</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.management.setEnabled")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Actviez / Désactivez l'option pour l'extension dont l'ID est "my-add-on":</p>
+
+<pre class="brush: js">var id = "my-add-on";
+
+function toggleEnabled(id) {
+ var getting = browser.management.get(id);
+ getting.then((info) =&gt; {
+ browser.management.setEnabled(id, !info.enabled);
+ });
+}
+
+toggleEnabled(id);
+</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.html
new file mode 100644
index 0000000000..38c6ac84e4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.html
@@ -0,0 +1,111 @@
+---
+title: management.uninstall()
+slug: Mozilla/Add-ons/WebExtensions/API/management/uninstall
+tags:
+ - API
+ - Add-ons
+ - Méthode
+ - Reference
+ - WebExtensions
+ - management
+ - uninstall
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/uninstall
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Désinstalle une extension, compte tenu de son ID.</p>
+
+<p>Cette API requiert l'<a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">API de permission</a>. "management"</p>
+
+<p>Il s'agit d'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 uninstalling = browser.management.uninstall(
+ id, // string
+ options // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd><code>string</code>. ID de l'extensions à désinstaller.</dd>
+ <dt><code>options{{optional_inline}}</code></dt>
+ <dd><code>object</code>. l'objet qui peut contenir une propriété unique, <code>showConfirmDialog</code>. Si <code>showConfirmDialog</code> est <code>true</code>, le navigateur affiche une boie de dialogue demandant à l'utilisateur de confirmer que le complément doit être désinstallé.
+ <ul>
+ <li>Si <code>id</code> est l'ID de l'extension appelant, <code>showConfirmDialog</code> est par défaut à <code>false</code>.</li>
+ <li>Si <code>id</code> est l'ID d'une extension différente, cette option est ignorée et la boite de dialogue de confirmation s'affche toujours.</li>
+ </ul>
+ </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 rejetée avec un message d'erreur si l'utilisateur a annulé la désintallatiion.</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.management.uninstall")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Désinstallez l'extension dont l'ID est "my-addon-id", en demandant à l'utilisateur de confirmer. Dans le rappel, vérifiez si l'utilisateur a annué la désinstallation.</p>
+
+<p>Notez que nous n'avons réussi un gestionnaire d'exécution, car si la désinstallation  réussit, l'extension n'est plus disponible pour le gérer.</p>
+
+<pre class="brush: js">var id = "my-addon-id";
+
+function onCanceled(error) {
+ console.log(`Uninstall canceled: ${error}`);
+}
+
+var uninstalling = browser.management.uninstall(id);
+uninstalling.then(null, onCanceled);</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.html
new file mode 100644
index 0000000000..9bdfbb763d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.html
@@ -0,0 +1,121 @@
+---
+title: management.uninstallSelf()
+slug: Mozilla/Add-ons/WebExtensions/API/management/uninstallSelf
+tags:
+ - API
+ - Add-ons
+ - Méthode
+ - Reference
+ - UnintallSeft
+ - WebExtensions
+ - management
+translation_of: Mozilla/Add-ons/WebExtensions/API/management/uninstallSelf
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Désinstalle l'appel de l'extension.</p>
+
+<p>Cette API <em>ne requiert pas</em> la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission API</a> "management"</p>
+
+<p>Il s'agit d'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 uninstallingSelf = browser.management.uninstallSelf(
+ options // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>options{{optional_inline}}</code></dt>
+ <dd><code>object</code>. L'objet qui peut comporter deux propriétés, toutes deux facultatives :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>showConfirmDialog{{optional_inline}}</code></dt>
+ <dd>Boolean. Si <code>showConfirmDialog</code> est <code>true</code>, le navigateur  affiche la boite  de dialogue demandant à l'utilisateur de confirmer que le complément doit être désinstallé. Par défaut à <code>false</code>.</dd>
+ <dt><code>dialogMessage{{optional_inline}}</code></dt>
+ <dd>String. Un message supplémentaire qui sera affiché dans la boite de dialogue de confirmation.</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 rejetée avec un message d'erreur si l'utilisateur a annulé la désinstallation.</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.management.uninstallSelf")}}</p>
+
+ <h2 id="Exemples">Exemples</h2>
+
+ <p>Désinsallez l'extension, en demandant à l'utilisateur de confirmer. Dans le rappel, vérifiez si l'utilisateur a annulé la désinstallation.</p>
+
+ <p>Notez que n'avons pas passé un gestionnaire d'éxécution, car si la desinstallation  réussit, l'extension n'est plus disponible pour le gérer.</p>
+
+ <pre class="brush: js">function onCanceled(error) {
+ console.log(`Canceled: ${error}`);
+}
+
+var uninstalling = browser.management.uninstallSelf({
+ showConfirmDialog: true
+});
+
+uninstalling.then(null, onCanceled);</pre>
+
+ <p>Le même, mais aussi l'ajout d'un message personnalisé à la boite de dialogue :</p>
+
+ <pre class="brush: js">function onCanceled(error) {
+ console.log(`Canceled: ${error}`);
+}
+
+var uninstalling = browser.management.uninstallSelf({
+ showConfirmDialog: true,
+ dialogMessage: "Testing self-uninstall"
+});
+
+uninstalling.then(null, onCanceled);</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/management"><code>chrome.management</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/management.json"><code>management.json</code></a> dans le code de Chromium code.</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>
+
+ <div class="hidden">
+ <pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+ </div>
+ </dd>
+</dl>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.html
new file mode 100644
index 0000000000..4fa664e6e6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.html
@@ -0,0 +1,66 @@
+---
+title: menus.ACTION_MENU_TOP_LEVEL_LIMIT
+slug: Mozilla/Add-ons/WebExtensions/API/menus/ACTION_MENU_TOP_LEVEL_LIMIT
+tags:
+ - ACTION_MENU_TOP_LEVEL_LIMIT
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Property
+ - Reference
+ - WebExtensions
+ - contextMenus
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/ACTION_MENU_TOP_LEVEL_LIMIT
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le nombre maximal d'éléments d'extension de niveau supérieur pouvant être ajoutés à un élément de menu dont {{WebExtAPIRef("contextMenus.ContextType", "ContextType")}} est "browser_action" ou "page_action". Tout élément au-delà de cette limite sera ignoré.</p>
+
+<p>Sa valeur est de <code>6</code> pour Firefox et Chrome.</p>
+
+<p>Pour la compatibilité avec d'autres navigateurs, Firefox rend cette propriété disponible via l'espace de noms <code>contextMenus</code> ainsi que l'espace de noms des <code>menus</code>.</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.menus.ACTION_MENU_TOP_LEVEL_LIMIT", 10)}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.html
new file mode 100644
index 0000000000..955e0e0a40
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.html
@@ -0,0 +1,103 @@
+---
+title: menus.ContextType
+slug: Mozilla/Add-ons/WebExtensions/API/menus/ContextType
+tags:
+ - API
+ - Add-ons
+ - ContextType
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - contextMenus
+ - menus
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/ContextType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Les différents contextes dans lesquels un élément de menu peut apparaître.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. L'élément est affiché lorsque le contexte donné s'applique. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt>all</dt>
+ <dd>La spécification de "tous" équivaut à la combinaison de tous les autres contextes, à l'exception de 'bookmark', 'tab' et 'tools_menu'.</dd>
+ <dt>audio</dt>
+ <dd>S'applique lorsque l'utilisateur clique sur le contexte d'un élément <a href="/fr/docs/Web/HTML/Element/audio">audio</a>.</dd>
+ <dt>bookmark</dt>
+ <dd>S'applique lorsque l'utilisateur clique en contexte sur un élément de signet dans la barre d'outils des signets, le menu des signets, la barre latérale des signets (&lt;kbd&gt;Ctrl&lt;/kbd&gt; + &lt;kbd&gt;B&lt;/kbd&gt;) et la fenêtre Bibliothèque (&lt;kbd&gt;Ctrl&lt;/kbd&gt; + &lt;kbd&gt;Shift&lt;/kbd&gt; + &lt;kbd&gt;B&lt;/kbd&gt;). Ces deux derniers sont supportés à partir de Firefox 66. Nécessite la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission d'API</a> dans le manifest.</dd>
+ <dt>browser_action</dt>
+ <dd>S'applique lorsque l'utilisateur clique en contexte sur l'action de votre navigateur. Le nombre maximal d'éléments pouvant être ajoutés au menu contextuel de l'action du navigateur de niveau supérieur est {{WebExtAPIRef("menus.ACTION_MENU_TOP_LEVEL_LIMIT")}}, mais vous pouvez ajouter n'importe quel nombre d'éléments aux sous-menus.</dd>
+ <dt>editable</dt>
+ <dd>S'applique lorsque l'utilisateur clique en contexte sur un élément modifiable, comme un <a href="/fr/docs/Web/HTML/Element/textarea">textarea</a>.</dd>
+ <dt>frame</dt>
+ <dd>S'applique lorsque l'utilisateur clique sur le contexte dans une <a href="/fr/docs/Web/HTML/Element/iframe">iframe</a> imbriqué.</dd>
+ <dt>image</dt>
+ <dd>S'applique lorsque l'utilisateur clique sur le contexte d'une image.</dd>
+ <dt>link</dt>
+ <dd>S'applique lorsque l'utilisateur clique en contexte sur un lien.</dd>
+ <dt>page</dt>
+ <dd>S'applique lorsque l'utilisateur clique sur le contexte dans la page, mais aucun des autres contextes de page ne s'applique (par exemple, le clic ne se trouve pas sur une image ou une <em>iframe</em> imbriqué ou un lien).</dd>
+ <dt>page_action</dt>
+ <dd>S'applique lorsque l'utilisateur clique en contexte sur l'action de votre page. Le nombre maximal d'éléments pouvant être ajoutés au menu contextuel de l'action de page de niveau supérieur est {{WebExtAPIRef("menus.ACTION_MENU_TOP_LEVEL_LIMIT")}}, mais vous pouvez ajouter n'importe quel nombre d'éléments aux sous-menus.</dd>
+ <dt>password</dt>
+ <dd>S'applique lorsque l'utilisateur clique en contexte sur un <a href="/fr/docs/Web/HTML/Element/input/password">élément d'entrée de mot de passe</a>.</dd>
+ <dt>selection</dt>
+ <dd>S'applique lorsqu'une partie de la page est sélectionnée.</dd>
+ <dt>tab</dt>
+ <dd>S'applique lorsque l'utilisateur clique en contexte sur un onglet (en particulier, il s'agit de l'onglet ou d'un autre élément de l'interface utilisateur permettant à l'utilisateur de passer d'un onglet de navigateur à un autre, et non à la page elle-même).</dd>
+ <dd>Depuis Firefox 63, cliquer sur l'élément du menu d'un onglet accorde la permission <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#activeTab_permission">activeTab</a> pour l'onglet cliqué, même si ce n'est pas l'onglet actuellement actif.</dd>
+ <dt>tools_menu</dt>
+ <dd>L'élément sera ajouté au menu des outils du navigateur. Notez que ceci n'est disponible que si vous accédez à <code>ContextType</code> via l'espace de nom des <code>menus</code>. Il n'est pas disponible si vous y accédez via l'espace de noms <code>contextMenus</code>.</dd>
+ <dt>video</dt>
+ <dd>S'applique lorsque l'utilisateur clique sur le contexte d'un élément <a href="/fr/docs/Web/HTML/Element/video">video</a>.</dd>
+</dl>
+
+<p>Notez que "launcher" n'est pas supporté.</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.menus.ContextType", 10)}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/create/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/create/index.html
new file mode 100644
index 0000000000..a1931b2216
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/create/index.html
@@ -0,0 +1,228 @@
+---
+title: menus.create()
+slug: Mozilla/Add-ons/WebExtensions/API/menus/create
+tags:
+ - API
+ - Add-ons
+ - Create
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - contextMenus
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/create
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Crée un nouvel élément de menu, avec un objet d'options définissant les propriétés de l'élément.</p>
+
+<p>Contrairement aux autres fonctions asynchrones, celle-ci ne renvoie pas de promesse, mais utilise un callback optionnel pour communiquer le succès ou l'échec. C'est parce que sa valeur de retour est l'ID du nouvel élément.</p>
+
+<p>Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace noms <code>contextMenus</code> ainsi que l'espace de noms des <code>menus</code>. Notez cependant qu'il n'est pas possible de créer des éléments de menu d'outils (<code>contexts: ["tools_menu"]</code>) en utilisant l'espace de noms <code>contextMenus</code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.menus.create(
+ createProperties, // object
+ function() {...} // optional function
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>createProperties</code></dt>
+ <dd><code>object</code>. Propriétés pour le nouvel élément de menu.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>checked</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. L'état initial d'une case à cocher ou d'un élément radio : <code>true</code> pour selected et <code>false</code> pour non sélectionné. Un seul élément radio peut être sélectionné à la fois dans un groupe donné d'éléments radio.</dd>
+ <dt><code>command</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. Chaîne décrivant une action à effectuer lorsque l'utilisateur clique sur l'élément. Les valeurs possibles sont:</p>
+
+ <ul>
+ <li><code>"_execute_browser_action"</code>: simule un clic sur l'action du navigateur de l'extension, en ouvrant son popup s'il en a un</li>
+ <li><code>"_execute_page_action"</code>: simule un clic sur l'action de la page de l'extension, en ouvrant son popup s'il en a un</li>
+ <li><code>"_execute_sidebar_action"</code>: ouvre la barre latérale de l'extension</li>
+ </ul>
+
+ <p>Cliquer sur l'élément déclenchera toujours l'événement {{WebExtAPIRef("menus.onClicked")}}, mais il n'y a aucune garantie de la commande ici: la commande peut être exécutée avant les incendies <code>onClicked</code>.</p>
+ </dd>
+ <dt><code>contexts</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>array</code> de <code>{{WebExtAPIRef('menus.ContextType')}}</code>. Tableau des contextes dans lesquels cet élément de menu apparaîtra. Si cette option est omise :</p>
+
+ <ul>
+ <li>Si l'élément parent a des contextes définis, alors cet élément héritera des contextes de ses parents</li>
+ <li>sinon, l'élément reçoit un tableau de contexte de ["page"].</li>
+ </ul>
+ </dd>
+ <dt><code>documentUrlPatterns</code> {{optional_inline}}</dt>
+ <dd><code>array</code> de <code><code>string</code></code>. Vous permet de restreindre l'élément à appliquer uniquement aux documents dont l'URL correspond à l'un des <a href="/fr/Add-ons/WebExtensions/Match_patterns">motifs</a> données. Cela s'applique également aux cadres.</dd>
+ <dt><code>enabled</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si cet élément de menu est activé ou désactivé. Par défaut à <code>true</code>.</dd>
+ <dt><code>icons</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Une ou plusieurs icônes personnalisées à afficher en regard de l'élément. Les icônes personnalisées ne peuvent être définies que pour les éléments apparaissant dans les sous-menus. Cette propriété est un objet avec une propriété pour chaque icône fournie: le nom de la propriété est la taille de l'icône en pixels et sa valeur est un chemin vers l'icône à partir du répertoire racine de l'extension. Le navigateur va essayer de choisir une icône de 16x16 pixels pour un affichage normal ou une icône de 32x32 pixels pour un affichage haute densité. Donc, pour éviter toute mise à l'échelle, vous pouvez spécifier des icônes comme ceci :</p>
+
+ <pre class="brush: json no-line-numbers language-json"><code class="language-json"><span class="key token">"icons":</span> <span class="punctuation token">{</span>
+ <span class="key token">"16":</span> <span class="string token">"path/to/geo-16.png"</span><span class="punctuation token">,</span>
+ <span class="key token">"32":</span> <span class="string token">"path/to/geo-32.png"</span>
+ <span class="punctuation token">}</span></code></pre>
+
+ <p>Vous pouvez également spécifier une seule icône SVG, qui sera mise à l'échelle de manière appropriée :</p>
+
+ <pre class="brush: json no-line-numbers language-json"><code class="language-json"><span class="key token">"icons":</span> <span class="punctuation token">{</span>
+ <span class="key token">"16":</span> <span class="string token">"path/to/geo.svg"</span>
+ <span class="punctuation token">}</span></code></pre>
+
+ <div class="blockIndicator note">
+ <p><strong>Note</strong>: L'élément de menu de niveau supérieur utilise les <a href="/fr/Add-ons/WebExtensions/manifest.json/icons">icônes</a> spécifiées dans le manifest plutôt que ce qui est spécifié avec cette touche.</p>
+ </div>
+ </dd>
+ <dt><code>id</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Identifiant unique à attribuer à cet élément Obligatoire pour les pages d'événement. Ne peut pas être identique à un autre ID pour cette extension.</dd>
+ <dt><code>onclick</code> {{optional_inline}}</dt>
+ <dd><code>function</code>. Une fonction qui sera appelée lorsque l'élément de menu est cliqué. Les pages d'événements ne peuvent pas utiliser ceci : à la place, elles devraient enregistrer un écouteur pour {{WebExtAPIRef('menus.onClicked')}}.</dd>
+ <dt><code>parentId</code> {{optional_inline}}</dt>
+ <dd><code><code>integer</code></code> ou <code><code>string</code></code>. L'ID d'un élément de menu parent; Cela fait de l'élément un enfant d'un élément ajouté précédemment. Remarque : Si vous avez créé plus d'un élément de menu, les éléments seront placés dans un sous-menu. Le parent du sous-menu sera étiqueté avec le nom de l'extension.</dd>
+ <dt><code>targetUrlPatterns</code> {{optional_inline}}</dt>
+ <dd><code>array</code> de <code><code>string</code></code>. Similaire à <code>documentUrlPatterns</code>, mais vous permet de filtrer en fonction du <code>href</code> des balises d'ancrage et de l'attribut <code>src</code> des balises img/audio/video tags. Ce paramètre prend en charge n'importe quel schéma d'URL, même ceux qui ne sont généralement pas autorisés dans un modèle de correspondance.</dd>
+ <dt><code>title</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. Le texte à afficher dans l'article. Obligatoire sauf si le <code>type</code> est "separator".</p>
+
+ <p>Vous pouvez utiliser "<code>%s</code>" dans la chaîne. Si vous le faites dans un élément de menu et que du texte est sélectionné dans la page lorsque le menu est affiché, le texte sélectionné sera interpolé dans le titre. Par exemple, si le <code>titre</code> est "traduire '%s' en Pig Latin" et que l'utilisateur sélectionne le mot "cool", alors le menu est activé, le titre de l'élément de menu sera : "Traduire 'cool' en Pig Latin".</p>
+
+ <p>Si le titre contient une esperluette "&amp;" le caractère suivant sera utilisé comme clé d'accès pour l'élément et l'esperluette ne sera pas affichée. Les exceptions à cette règle sont les suivantes :</p>
+
+ <ul>
+ <li>Si le caractère suivant est également une esperluette : alors une esperluette simple sera affichée et aucune clé d'accès ne sera définie. En effet, "&amp;&amp;" est utilisé pour afficher une seule esperluette.</li>
+ <li>Si les caractères suivants sont la directive d'interpolation "%s" :  alors l'esperluette ne sera pas affichée et aucune clé d'accès ne sera définie.</li>
+ <li>Si l'esperluette est le dernier caractère du titre : alors l'esperluette ne sera pas affichée et aucune clé d'accès ne sera définie.</li>
+ </ul>
+
+ <p>Seule la première esperluette sera utilisée pour définir une clé d'accès : les esperluettes suivantes ne seront pas affichées mais ne définiront pas les clés. Ainsi "&amp;A et &amp;B" seront affichés comme "A et B" et "A" comme clé d'accès.</p>
+ </dd>
+ <dt><code>type</code> {{optional_inline}}</dt>
+ <dd><code>{{WebExtAPIRef('menus.ItemType')}}</code>. Le type d'élément de menu : "normal", "checkbox", "radio", "separator". Par défault à "normal".</dd>
+ <dt><code>viewType</code> {{optional_inline}}</dt>
+ <dd><code>{{WebExtAPIRef('extension.ViewType')}}</code>. Liste des types d'affichage où l'élément de menu sera affiché. Par défaut à n'importe quelle vue, y compris celles qui n'ont pas de <code>viewType</code>.</dd>
+ <dt><code>visible</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'élément est affiché dans le menu. Par défaut, la valeur est <code>true</code>.</dd>
+ </dl>
+ </dd>
+ <dt><code>callback</code> {{optional_inline}}</dt>
+ <dd><code>function</code>. Appelé lorsque l'élément a été créé. S'il y a eu des problèmes lors de la création de l'élément, les détails seront disponibles dans {{WebExtAPIRef('runtime.lastError')}}.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p><code><code>integer</code></code> ou <code><code>string</code></code>. L'ID de l'article nouvellement créé.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple crée un élément de menu contextuel qui s'affiche lorsque l'utilisateur a sélectionné du texte dans la page. Il enregistre simplement le texte sélectionné sur la console</p>
+
+<pre class="brush: js">browser.menus.create({
+ id: "log-selection",
+ title: "Log '%s' to the console",
+ contexts: ["selection"]
+});
+
+browser.menus.onClicked.addListener(function(info, tab) {
+ if (info.menuItemId == "log-selection") {
+ console.log(info.selectionText);
+ }
+});</pre>
+
+<p>Cet exemple ajoute deux éléments radio, que vous pouvez utiliser pour choisir d'appliquer une bordure verte ou bleue à la page. Notez que cet exemple nécessitera la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#activeTab_permission">permission activeTab</a>.</p>
+
+<pre class="brush: js">function onCreated() {
+ if (browser.runtime.lastError) {
+ console.log("error creating item:" + browser.runtime.lastError);
+ } else {
+ console.log("item created successfully");
+ }
+}
+
+browser.menus.create({
+ id: "radio-green",
+ type: "radio",
+ title: "Make it green",
+ contexts: ["all"],
+ checked: false
+}, onCreated);
+
+browser.menus.create({
+ id: "radio-blue",
+ type: "radio",
+ title: "Make it blue",
+ contexts: ["all"],
+ checked: false
+}, onCreated);
+
+var makeItBlue = 'document.body.style.border = "5px solid blue"';
+var makeItGreen = 'document.body.style.border = "5px solid green"';
+
+browser.menus.onClicked.addListener(function(info, tab) {
+ if (info.menuItemId == "radio-blue") {
+ browser.tabs.executeScript(tab.id, {
+ code: makeItBlue
+ });
+ } else if (info.menuItemId == "radio-green") {
+ browser.tabs.executeScript(tab.id, {
+ code: makeItGreen
+ });
+ }
+});</pre>
+
+<p>{{WebExtExamples}}</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.menus.create", 10)}}</p>
+
+
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.html
new file mode 100644
index 0000000000..072350b414
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.html
@@ -0,0 +1,130 @@
+---
+title: createProperties
+slug: Mozilla/Add-ons/WebExtensions/API/menus/createProperties
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/createProperties
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>Un <code>object</code> passé au méthodes {{WebExtAPIRef("menus.create()", "menus.create()")}} ou  {{WebExtAPIRef("menus.update()", "menus.update()")}}  pour décrire les propriétés de l'élément de menu nouveau ou mis à jour.</p>
+
+<dl class="reference-values">
+ <dt><code>checked</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. The initial state of a checkbox or radio item: <code>true</code> for selected and <code>false</code> for unselected. Only one radio item can be selected at a time in a given group of radio items.</dd>
+ <dt><code>command</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. String describing an action that should be taken when the user clicks the item. Possible values are:</p>
+
+ <ul>
+ <li><code>"_execute_browser_action"</code>: simulate a click on the extension's browser action, opening its popup if it has one</li>
+ <li><code>"_execute_page_action"</code>: simulate a click on the extension's page action, opening its popup if it has one</li>
+ <li><code>"_execute_sidebar_action"</code>: open the extension's sidebar</li>
+ </ul>
+
+ <p>Clicking the item will still trigger the {{WebExtAPIRef("menus.onClicked")}} event, but there's no guarantee of the ordering here: the command may be executed before <code>onClicked</code> fires.</p>
+ </dd>
+ <dt><code>contexts</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>array</code> of <code>{{WebExtAPIRef('menus.ContextType')}}</code>. Array of contexts in which this menu item will appear. If this option is omitted:</p>
+
+ <ul>
+ <li>if the item's parent has contexts set, then this item will inherit its parent's contexts</li>
+ <li>otherwise, the item is given a context array of ["page"].</li>
+ </ul>
+ </dd>
+ <dt><code>documentUrlPatterns</code> {{optional_inline}}</dt>
+ <dd><code>array</code> of <code><code>string</code></code>. Lets you restrict the item to apply only to documents whose URL matches one of the given <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Match_patterns">match patterns</a>. This applies to frames as well.</dd>
+ <dt><code>enabled</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Whether this menu item is enabled or disabled. Defaults to <code>true</code>.</dd>
+ <dt><code>icons</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. One or more custom icons to display next to the item. Custom icons can only be set for items appearing in submenus. This property is an object with one property for each supplied icon: the property's name should include the icon's size in pixels, and path is relative to the icon from the extension's root directory. The browser tries to choose a 16x16 pixel icon for a normal display or a 32x32 pixel icon for a high-density display. To avoid any scaling, you can specify icons like this:</p>
+
+ <pre class="brush: json no-line-numbers language-json"><code class="language-json"><span class="key token">"icons":</span> <span class="punctuation token">{</span>
+ <span class="key token">"16":</span> <span class="string token">"path/to/geo-16.png"</span><span class="punctuation token">,</span>
+ <span class="key token">"32":</span> <span class="string token">"path/to/geo-32.png"</span>
+ <span class="punctuation token">}</span></code></pre>
+
+ <p>Alternatively, you can specify a single SVG icon, and it will be scaled appropriately:</p>
+
+ <pre class="brush: json no-line-numbers language-json"><code class="language-json"><span class="key token">"icons":</span> <span class="punctuation token">{</span>
+ <span class="key token">"16":</span> <span class="string token">"path/to/geo.svg"</span>
+ <span class="punctuation token">}</span></code></pre>
+
+ <div class="blockIndicator note">
+ <p><strong>Note</strong>: The top-level menu item uses the <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/icons">icons</a> specified in the manifest rather than what is specified with this key.</p>
+ </div>
+ </dd>
+ <dt><code>id</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. The unique ID to assign to this item. Mandatory for event pages. Cannot be the same as another ID for this extension.</dd>
+ <dt><code>onclick</code> {{optional_inline}}</dt>
+ <dd><code>function</code>. A function that will be called when the menu item is clicked. Event pages cannot use this: instead, they should register a listener for {{WebExtAPIRef('menus.onClicked')}}.</dd>
+ <dt><code>parentId</code> {{optional_inline}}</dt>
+ <dd><code><code>integer</code></code> or <code><code>string</code></code>. The ID of a parent menu item; this makes the item a child of a previously added item. Note: If you have created more than one menu item, then the items will be placed in a submenu. The submenu's parent will be labeled with the name of the extension.</dd>
+ <dt><code>targetUrlPatterns</code> {{optional_inline}}</dt>
+ <dd><code>array</code> of <code><code>string</code></code>. Similar to <code>documentUrlPatterns</code>, but lets you filter based on the <code>href</code> of anchor tags and the <code>src</code> attribute of img/audio/video tags. This parameter supports any URL scheme, even those that are usually not allowed in a match pattern.</dd>
+ <dt><code>title</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. The text to be displayed in the item. Mandatory unless <code>type</code> is "separator".</p>
+
+ <p>You can use "<code>%s</code>" in the string. If you do this in a menu item, and some text is selected in the page when the menu is shown, then the selected text will be interpolated into the title. For example, if <code>title</code> is "Translate '%s' to Pig Latin" and the user selects the word "cool", then activates the menu, then the menu item's title will be: "Translate 'cool' to Pig Latin".</p>
+
+ <p>If the title contains an ampersand "&amp;" then the next character will be used as an access key for the item, and the ampersand will not be displayed. Exceptions to this are:</p>
+
+ <ul>
+ <li>If the next character is also an ampersand: then a single ampersand will be displayed and no access key will be set. In effect, "&amp;&amp;" is used to display a single ampersand.</li>
+ <li>If the next characters are the interpolation directive "%s": then the ampersand will not be displayed and no access key will be set.</li>
+ <li>If the ampersand is the last character in the title: then the ampersand will not be displayed and no access key will be set.</li>
+ </ul>
+
+ <p>Only the first ampersand will be used to set an access key: subsequent ampersands will not be displayed but will not set keys. So "&amp;A and &amp;B" will be shown as "A and B" and set "A" as the access key.</p>
+ </dd>
+ <dt><code>type</code> {{optional_inline}}</dt>
+ <dd><code>{{WebExtAPIRef('menus.ItemType')}}</code>. The type of menu item: "normal", "checkbox", "radio", "separator". Defaults to "normal".</dd>
+ <dt><code>viewTypes</code> {{optional_inline}}</dt>
+ <dd><code>{{WebExtAPIRef('extension.ViewType')}}</code>. List of view types where the menu item will be shown. Defaults to any view, including those without a <code>viewType</code>.</dd>
+ <dt><code>visible</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Whether the item is shown in the menu. Defaults to <code>true</code>.</dd>
+</dl>
+
+<h2 id="Browser_compatibility">Browser compatibility</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.menus.createProperties", 10)}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Acknowledgements</strong>
+
+<p>This API is based on Chromium's <a href="https://developer.chrome.com/extensions/contextMenus#type-OnClickData" style="outline: 1px dotted currentcolor; outline-offset: 0px;"><code>chrome.contextMenus</code></a> API. This documentation is derived from <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> in the Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.html
new file mode 100644
index 0000000000..d45f8004cf
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.html
@@ -0,0 +1,74 @@
+---
+title: menus.getTargetElement()
+slug: Mozilla/Add-ons/WebExtensions/API/menus/getTargetElement
+tags:
+ - API
+ - Méthode
+ - Reference
+ - WebExtensions
+ - getTargetElement
+ - menus
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/getTargetElement
+---
+<div>{{AddonSidebar}}</div>
+
+<p class="summary">Renvoie l'élément pour un <code>targetElementId</code> donné</p>
+
+<p class="summary">Cette méthode est disponible pour tous les contextes de script d'extension (scripts de contenu, pages de fond et autres pages d'extension) et retourne l'élément pour un  <code>info.targetElementId</code> donnée, à condition que l'élément existe toujours dans le document où la méthode est appelée.</p>
+
+<p>La méthode ne fonctionne que dans le document qui inclut l'élément cliqué avec le bouton droit de la souris et la méthode <code>targetElementId</code> expire lorsque l'utilisateur ouvre un autre menu contextuel.</p>
+
+<div class="blockIndicator note">
+<p><strong>Note:</strong> <code>menus.getTargetElement</code> ne retourne l'élément demandé que s'il est appelé dans le même contexte que le document qui contient l'élément, par exemple en utilisant des scripts de contenu (comme dans l'exemple ci-dessous).</p>
+</div>
+
+<p><br>
+ Une extension nécessite la permission "menus" pour utiliser cette API</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox">let elem = browser.menus.getTargetElement(targetElementId);
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>targetElementId</code></dt>
+ <dd>La propriété de l'objet <code>{{WebExtAPIRef("menus.OnClickData")}}</code> passé au gestionnaire <code>{{WebExtAPIRef("menus.onClicked")}}</code>ou à l'événement <code>{{WebExtAPIRef("menus.onShown")}}</code>.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>L'élément auquel se réfère le paramètre <code>targetElementId</code>. Si le paramètre <code>targetElementId</code> n'est pas valide, La méthode retourne <code>null</code>.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>L'exemple suivant utilise la méthode <code>getTargetElement</code> pour obtenir l'élément auquel se réfère la propriété <code>info.targetElementId</code> puis le supprime.</p>
+
+<pre class="brush: js">browser.menus.create({
+ title: "Remove element",
+ documentUrlPatterns: ["*://*/*"],
+ contexts: ["audio", "editable", "frame", "image", "link", "page", "password", "video"],
+ onclick(info, tab) {
+ browser.tabs.executeScript(tab.id, {
+ frameId: info.frameId,
+ code: `browser.menus.getTargetElement(${info.targetElementId}).remove();`,
+ });
+ },
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.menus.getTargetElement")}}</p>
+
+<h2 id="voir_aussi">voir aussi</h2>
+
+<ul>
+ <li>{{WebExtAPIRef("menus.create")}}</li>
+ <li>{{WebExtAPIRef("menus.OnClickData")}}</li>
+</ul>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/index.html
new file mode 100644
index 0000000000..ff1fd72e31
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/index.html
@@ -0,0 +1,203 @@
+---
+title: menus
+slug: Mozilla/Add-ons/WebExtensions/API/menus
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - contextMenus
+ - menus
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Ajoutez des éléments au système de menus du navigateur.</p>
+
+<p>Cette API est modélisée dans l'API <a href="https://developer.chrome.com/extensions/contextMenus">"contextMenus"</a> de Chrome, qui permet aux extensions Chrome d'ajouter des éléments au menu contextuel du navigateur. L'API <code>browser.menus</code> ajoute quelques fonctionnalités à l'API de Chrome.</p>
+
+<p>Avant Firefox 55, cette API s'appelait à l'origine <code>contextMenus</code>, et ce nom a été retenu comme alias. Vous pouvez donc utiliser <code>contextMenus</code> pour écrire du code qui fonctionne dans Firefox et dans d'autres navigateurs.</p>
+
+<p>Pour utiliser cette API, vous devez avoir la <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> des  <code>menus.</code> vous pouvez également utiliser l'alias <code>contextMenus</code> à la place des <code>menus</code>, mais si vous le faites, vous devez accéder aux API sous le nom <code>browser.contextMenus</code> à la place.</p>
+
+<p>Excepté que <code><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/menus/getTargetElement">menus.getTargetElement()</a></code>, cette API ne peut pas être utilisée à partir de scripts de contenu.</p>
+
+<h2 id="Créer_des_éléments_de_menu">Créer des éléments de menu</h2>
+
+<p>Pour créer un élément de menu, appelez la méthode {{WebExtAPIRef("menus.create()")}}. Vous transmettez à cette méthode un objet contenant des options pour l'élément, y compris l'ID d'élément, le type d'élément et les contextes dans lesquels il doit être affiché.</p>
+
+<p>Écoutez les clics sur votre élément de menu en ajoutant un écouteur à l'événement {{WebExtAPIRef("menus.onClicked")}}. Cet écouteur recevra un objet  {{WebExtAPIRef("menus.OnClickData")}} contenant les détails de l'événement.</p>
+
+<p>Vous pouvez créer quatre types différents d'élément de menu, en fonction de la valeur de la propriété <code>type</code> que vous fournissez dans les options de <code>create()</code>:</p>
+
+<ul>
+ <li>"normal": un élément de menu qui affiche simplement une étiquette</li>
+ <li>"checkbox": un élément de menu qui représente un état binaire. Il affiche une coche à côté de l'étiquette. Cliquez sur l'élément pour activer la case. L'écouteur de clic recevra deux propriétés supplémentaires : "checked",indiquant si l'élément est vérifié maintenant, et "wasChecked", indiquant si l'élément a été vérifié avant l'événement click.</li>
+ <li>"radio": un élément de menu qui représente l'un des groupes de choix. Tout comme une case à cocher, cela affiche également une coche à côté de l'étiquette, et son écouteur de clic est passé "checked" et "wasChecked". Cependant, si vous créez plus d'un élément radio, les éléments fonctionnent comme un groupe d'éléments radio: un seul élément du groupe peut être vérifié, et cliquer sur un élément en fait l'élément sélectionné.</li>
+ <li>"separateur": une ligne séparant un groupe d'éléments.</li>
+</ul>
+
+<p>Si vous avez créé plus d'un élément de menu contextuel ou plus d'un élément de menu d'outils, les éléments seront placés dans un sous-menu. Le parent du sous-menu sera étiqueté avec le nom de l'extension. Par exemple, voici une extension appelée "Menu démo" qui ajoute deux éléments de menu contextuel:</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/15431/menus-1.png" style="display: block; height: 406px; margin-left: auto; margin-right: auto; width: 500px;"></p>
+
+<h2 id="Icônes">Icônes</h2>
+
+<p>Si vous avez spécifié des icônes pour votre extension à l'aide de la <a href="/fr/Add-ons/WebExtensions/manifest.json/icons">clé de manifest "icons"</a>, votre élément de menu affichera l'icône spécifiée à côté de son libellé. Le navigateur va essayer de choisir une icône de 16x16 pixels pour un affichage normal ou une icône de 32x32 pixels pour un affichage haute définition :</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/15433/menus-2.png" style="display: block; height: 409px; margin-left: auto; margin-right: auto; width: 500px;"></p>
+
+<p>Uniquement pour les éléments d'un sous-menu, vous pouvez spécifier des icônes personnalisées en passant l'option <code>icons</code> à {{WebExtAPIRef("menus.create()")}} :</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/15435/menus-3.png" style="display: block; height: 396px; margin-left: auto; margin-right: auto; width: 500px;"></p>
+
+<h2 id="Exemple">Exemple</h2>
+
+<p>Voici un menu contextuel contenant 4 éléments: un élément normal, deux éléments radio avec des séparateurs de chaque côté et une case à cocher. Les éléments radio sont dotés d'icônes personnalisées.</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/15437/menus-4.png" style="display: block; height: 790px; margin-left: auto; margin-right: auto; width: 500px;">Vous pouvez créer un sous-menu comme celui-ci en utilisant du code comme :</p>
+
+<pre class="brush: js">browser.menus.create({
+ id: "remove-me",
+ title: browser.i18n.getMessage("menuItemRemoveMe"),
+ contexts: ["all"]
+}, onCreated);
+
+browser.menus.create({
+ id: "separator-1",
+ type: "separator",
+ contexts: ["all"]
+}, onCreated);
+
+browser.menus.create({
+ id: "greenify",
+ type: "radio",
+ title: browser.i18n.getMessage("menuItemGreenify"),
+ contexts: ["all"],
+ checked: true,
+ icons: {
+ "16": "icons/paint-green-16.png",
+ "32": "icons/paint-green-32.png"
+ }
+}, onCreated);
+
+browser.menus.create({
+ id: "bluify",
+ type: "radio",
+ title: browser.i18n.getMessage("menuItemBluify"),
+ contexts: ["all"],
+ checked: false,
+ icons: {
+ "16": "icons/paint-blue-16.png",
+ "32": "icons/paint-blue-32.png"
+ }
+}, onCreated);
+
+browser.menus.create({
+ id: "separator-2",
+ type: "separator",
+ contexts: ["all"]
+}, onCreated);
+
+var checkedState = true;
+
+browser.menus.create({
+ id: "check-uncheck",
+ type: "checkbox",
+ title: browser.i18n.getMessage("menuItemUncheckMe"),
+ contexts: ["all"],
+ checked: checkedState
+}, onCreated);</pre>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("menus.ContextType")}}</dt>
+ <dd>Les différents contextes dans lesquels un menu peut apparaître.</dd>
+ <dt>{{WebExtAPIRef("menus.ItemType")}}</dt>
+ <dd>Le type d'élément de menu : "normal", "checkbox", "radio", "separator".</dd>
+ <dt>{{WebExtAPIRef("menus.OnClickData")}}</dt>
+ <dd>Informations envoyées lorsqu'un élément de menu est cliqué.</dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("menus.ACTION_MENU_TOP_LEVEL_LIMIT")}}</dt>
+ <dd>Le nombre maximal d'éléments d'extension de niveau supérieur pouvant être ajoutés à un élément de menu dont le type de contexte est "browser_action" ou "page_action".</dd>
+</dl>
+
+<h2 id="Functions">Functions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("menus.create()")}}</dt>
+ <dd>Crée un nouvel élément de menu.</dd>
+ <dt>{{WebExtApiRef("menus.getTargetElement()")}}</dt>
+ <dd>Retourne l'élément pour un <code>info.targetElementId</code> donné</dd>
+ <dt>{{WebExtApiRef("menus.overrideContext()")}}</dt>
+ <dd>Masquer tous les éléments de menu par défaut de Firefox en faveur d'une interface utilisateur de menu contextuel personnalisé.</dd>
+ <dt>{{WebExtAPIRef("menus.refresh()")}}</dt>
+ <dd>Mettre à jour un menu actuellement affiché.</dd>
+ <dt>{{WebExtAPIRef("menus.remove()")}}</dt>
+ <dd>Supprime un élément de menu.</dd>
+ <dt>{{WebExtAPIRef("menus.removeAll()")}}</dt>
+ <dd>Supprime tous les éléments de menu ajoutés par cette extension.</dd>
+ <dt>{{WebExtAPIRef("menus.update()")}}</dt>
+ <dd>Met à jour un élément de menu précédemment créé.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("menus.onClicked")}}</dt>
+ <dd>Lancé lorsqu'un élément de menu est cliqué.</dd>
+ <dt>{{WebExtAPIRef("menus.onHidden")}}</dt>
+ <dd>Lancé lorsque le navigateur cache un menu.</dd>
+ <dt>{{WebExtAPIRef("menus.onShown")}}</dt>
+ <dd>Lancé lorsque le navigateur affiche un menu.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{ Compat("webextensions.api.menus", 1, "true") }}</p>
+
+<p>{{WebExtExamples("h2")}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.html
new file mode 100644
index 0000000000..88a6c00e24
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.html
@@ -0,0 +1,81 @@
+---
+title: menus.ItemType
+slug: Mozilla/Add-ons/WebExtensions/API/menus/ItemType
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - contextMenus
+ - itemtype
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/ItemType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type d'élément de menu.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:</p>
+
+<dl>
+ <dt>normal</dt>
+ <dd>Un élément de menu qui affiche simplement une étiquette.</dd>
+ <dt>checkbox</dt>
+ <dd>
+ <p>Un élément de menu qui représente un état binaire. Il affiche une coche à côté de l'étiquette. Cliquez sur l'élément pour activer la coche. L'écouteur   {{WebExtAPIRef("menus.onClicked")}} recevra deux propriétés supplémentaires : "checked", indiquant si l'élément est vérifié maintenant, et "wasChecked", indiquant si l'élément a été vérifié avant l'événement click.</p>
+ </dd>
+ <dt>radio</dt>
+ <dd>
+ <p>Un élément de menu qui représente l'un des groupes de choix. Tout comme une case à cocher, cela affiche également une coche à côté de l'étiquette, et son écouteur  {{WebExtAPIRef("menus.onClicked")}} est passé "checked" et "wasChecked". However, Cependant, si vous créez plus d'un élément radio, les éléments fonctionnent comme un groupe d'éléments radio items: un seul élément du groupe peut être vérifié, et cliquer sur un élément en fait l'élément sélectionné.</p>
+ </dd>
+ <dt>separator</dt>
+ <dd>Une ligne séparant un groupe d'éléments.</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.menus.ItemType", 10)}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/menus.overridecontext()/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/menus.overridecontext()/index.html
new file mode 100644
index 0000000000..8d8463f069
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/menus.overridecontext()/index.html
@@ -0,0 +1,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 =&gt; {
+ 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>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.html
new file mode 100644
index 0000000000..7393f73820
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.html
@@ -0,0 +1,105 @@
+---
+title: menus.OnClickData
+slug: Mozilla/Add-ons/WebExtensions/API/menus/OnClickData
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - OnClickData
+ - Reference
+ - Type
+ - WebExtensions
+ - contextMenus
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/OnClickData
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Informations transmises à l'écouteur d'événement {{WebExtAPIRef("menus.onClicked")}} lorsque vous cliquez sur un élément de menu.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>bookmarkId</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. L'ID du signet dans lequel le menu contextuel a été cliqué.***</dd>
+ <dt><code>button</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Quel bouton de la souris a été enfoncé. Les valeurs sont les mêmes que pour  <a href="/fr/docs/Web/API/MouseEvent/button"><code>MouseEvent.button</code></a>.</dd>
+ <dt><code>checked</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Un <em>flag</em> indiquant si une case à cocher ou un élément radio a été vérifié après avoir été cliqué.</dd>
+ <dt><code>editable</code></dt>
+ <dd><code>boolean</code>. Un indicateur indiquant si l'élément est modifiable: par exemple, s'il s'agit d'un <a href="/fr/docs/Web/HTML/Element/textarea">textarea</a>.</dd>
+ <dt><code>frameId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'image dans laquelle l'élément a été cliqué. L'ID de trame peut être utilisé dans d'autres API acceptant des ID de trame, tels que {{WebExtAPIRef("tabs.sendMessage()")}}. Si l'élément a été cliqué dans le document de niveau supérieur,par exemple, dans <code>tools_menu</code> ou <code>tab</code> context), <code>frameId</code> n'est <code>pas défini</code>.</dd>
+ <dt><code>frameUrl</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. L'URL du cadre de l'élément sur lequel le menu contextuel a été cliqué, s'il était dans un cadre</dd>
+ <dt><code>linkText</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Si l'élément est un lien, le texte du lien. Si le lien ne contient aucun texte, l'URL elle-même est donnée ici.</dd>
+ <dt><code>linkUrl </code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Si l'élément est un lien, l'URL vers laquelle il pointe.</dd>
+ <dt><code>mediaType</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Une de "image", "video", ou "audio" si le menu contextuel a été activé sur l'un de ces types d'éléments.</dd>
+ <dt><code>menuItemId</code></dt>
+ <dd><code><code>integer</code></code> ou <code><code>string</code></code>. ID de l'élément de menu sur lequel vous avez cliqué.</dd>
+ <dt><code>modifiers</code></dt>
+ <dd><code><code>Array</code></code> de<code><code>string</code></code>. Un tableau contenant toutes les touches de modification qui ont été pressées lorsque l'élément a été cliqué. Les valeurs possibles sont : "Alt", "Command", "Ctrl", "MacCtrl", et "Shift". Sur un Mac, si l'utilisateur a la touche Ctrl enfoncée, alors  "Ctrl" et "MacCtrl" sont inclus.</dd>
+ <dt><code>pageUrl</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. L'URL de la page sur laquelle l'élément de menu a été cliqué. Cette propriété n'est pas présente si le clic s'est produit dans un contexte où il n'y a pas de page en cours, comme dans le cas d'une action du navigateur.</dd>
+ <dt><code>parentMenuItemId</code> {{optional_inline}}</dt>
+ <dd><code><code>integer</code></code> ou <code><code>string</code></code>. L'ID parent, le cas échéant, pour l'élément cliqué.</dd>
+ <dt><code>selectionText </code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Si du texte a été sélectionné dans la page, il contient le texte sélectionné.</dd>
+ <dt><code>srcUrl</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Sera présent pour les éléments avec une URL "src".</dd>
+ <dt><code>targetElementId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Un identificateur de l'élément, le cas échéant, sur lequel le menu contextuel a été créé. Utilisez {{WebExtAPIRef("menus.getTargetElement()")}} dans le script de contenu pour localiser l'élément. Notez que ce n'est pas l'attribut <a href="/fr/docs/Web/HTML/Attributs_universels/id">id</a> de l'élément page.</dd>
+ <dt><code>viewType</code> {{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef("extension.ViewType", "ViewType")}}. Le type de vue de l'extension.</dd>
+ <dt><code>wasChecked</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Un indicateur indiquant si une case à cocher ou un élément radio a été vérifié avant d'avoir cliqué.</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.menus.OnClickData", 10)}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.html
new file mode 100644
index 0000000000..cea1c7c4df
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.html
@@ -0,0 +1,118 @@
+---
+title: menus.onClicked
+slug: Mozilla/Add-ons/WebExtensions/API/menus/onClicked
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - contextMenus
+ - onClicked
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/onClicked
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un élément de menu est cliqué.</p>
+
+<p>Pour la compatibilité avec les autres navigateurs, Firefox rend cet événement disponible via l'espace de noms <code>contextMenus</code> ainsi que l'espace de noms des <code>menus</code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.menus.onClicked.addListener(listener)
+browser.menus.onClicked.removeListener(listener)
+browser.menus.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>info</code></dt>
+ <dd>{{WebExtAPIRef('menus.OnClickData')}}. Informations sur l'élément cliqué et le contexte dans lequel le clic s'est produit.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>tab</code></dt>
+ <dd>{{WebExtAPIRef('tabs.Tab')}}. Les détails de l'onglet où le clic a eu lieu. Si le clic n'a pas eu lieu dans ou sur un onglet, ce paramètre sera manquant.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Compatibilté_du_navigateur">Compatibilté 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.menus.onClicked", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple écoute les clics sur un élément de menu, puis enregistre l'ID de l'élément et l'ID de l'onglet :</p>
+
+<pre class="brush: js">browser.menus.create({
+ id: "click-me",
+ title: "Click me!",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener((info, tab) =&gt; {
+ console.log("Item " + info.menuItemId + " clicked " +
+ "in tab " + tab.id);
+});</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.html
new file mode 100644
index 0000000000..bfa8de8fa9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.html
@@ -0,0 +1,70 @@
+---
+title: menus.onHidden
+slug: Mozilla/Add-ons/WebExtensions/API/menus/onHidden
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Reference
+ - WebExtensions
+ - menus
+ - onHidden
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/onHidden
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque le navigateur cesse d'afficher un menu: par exemple, parce que l'utilisateur a cliqué à l'extérieur ou sélectionné un élément.</p>
+
+<p>Elle est seulement déclenchée pour les menus qui peuvent être manipulés en utilisant l'API {{WebExtAPIRef("menus")}} elle-même: ceci inclut le menu contextuel, le menu des outils du navigateur et le menu des signets.</p>
+
+<p>Ceci est plus susceptible d'être utilisé en combinaison avec {{WebExtAPIRef("menus.onShown")}} et {{WebExtAPIRef("menus.refresh()")}} API: une extension peut mettre à jour le menu quand il est affiché , puis annuler les modifications quand il est caché.</p>
+
+<p>Firefox rend cet événement disponible via l'espace de noms <code>contextMenus</code> ainsi que l'espace de nom des <code>menus</code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.menus.onHidden.addListener(listener)
+browser.menus.onHidden.removeListener(listener)
+browser.menus.onHidden.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</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, <code>false</code> sinon.</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 sera transmise sans paramètre.</p>
+ </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.menus.onHidden", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple enregistre simplement un message chaque fois qu'un menu est masqué :</p>
+
+<pre class="brush: js">function hidden() {
+ console.log("Menu was hidden");
+}
+
+browser.menus.onHidden.addListener(hidden);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.html
new file mode 100644
index 0000000000..5df0ebab15
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.html
@@ -0,0 +1,153 @@
+---
+title: menus.onShown
+slug: Mozilla/Add-ons/WebExtensions/API/menus/onShown
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensiosn
+ - Reference
+ - WebExtensions
+ - menus
+ - onShown
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/onShown
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque le navigateur a montré un menu.</p>
+
+<p>Une extension peut utiliser cet événement pour mettre à jour ses éléments de menu en utilisant des informations qui ne sont disponibles qu'une fois le menu affiché. Généralement, une extension trouvera la mise à jour dans son gestionnaire <code>onShown</code> puis appellera {{WebExtAPIRef("menus.refresh()")}} pour mettre à jour le menu lui-même.</p>
+
+<p>Le gestionnaire peut ajouter, supprimer ou mettre à jour des éléments de menu.</p>
+
+<p>Par exemple, l'extension d'exemple <a href="https://github.com/mdn/webextensions-examples/tree/master/menu-labelled-open">menu-labelled-open</a>  ajoute un élément de menu qui s'affiche lorsque l'utilisateur clique sur un lien et qui, lorsqu'il est cliqué, ouvre simplement le lien. Il utilise <code>onShown</code> et <code>refresh()</code> pour annoter l'élément de menu avec le nom d'hôte du lien, afin que l'utilisateur puisse facilement voir où il ira avant de cliquer.</p>
+
+<p>Notez qu'une extension ne devrait pas prendre trop de temps avant d'appeler <code>refresh()</code>, sinon la mise à jour sera visible par l'utilisateur.</p>
+
+<p>Le gestionnaire reçoit des informations sur le menu et son contenu, ainsi que des informations sur la page (telles que le lien et / ou le texte de sélection). Pour accéder aux informations de la page, votre extension doit avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission de l'hôte</a>.</p>
+
+<p>Si le gestionnaire <code>onShown</code> appelle des API asynchrones, il est possible que le menu ait été fermé à nouveau avant que le gestionnaire ne reprenne l'exécution. Pour cette raison, si un gestionnaire appelle des API asynchrones, il doit vérifier que le menu est toujours affiché avant la mise à jour du menu. Par exemple :</p>
+
+<pre class="brush: js">var lastMenuInstanceId = 0;
+var nextMenuInstanceId = 1;
+
+browser.menus.onShown.addListener(async function(info, tab) {
+ var menuInstanceId = nextMenuInstanceId++;
+ lastMenuInstanceId = menuInstanceId;
+
+ // Call an async function
+ await .... ;
+
+ // After completing the async operation, check whether the menu is still shown.
+ if (menuInstanceId !== lastMenuInstanceId) {
+ return; // Menu was closed and shown again.
+ }
+ // Now use menus.create/update + menus.refresh.
+});
+
+browser.menus.onHidden.addListener(function() {
+ lastMenuInstanceId = 0;
+});</pre>
+
+<p>Notez qu'il est possible d'appeler les fonctions API des menus de manière synchrone, et dans ce cas vous n'avez pas à effectuer cette vérification :</p>
+
+<pre class="brush: js">browser.menus.onShown.addListener(async function(info, tab) {
+ browser.menus.update(menuId, ...);
+ // Note: Not waiting for returned promise.
+ browser.menus.refresh();
+});</pre>
+
+<p>Toutefois, si vous appelez ces API de manière asynchrone, vous devez effectuer la vérification suivante :</p>
+
+<pre class="brush: js">browser.menus.onShown.addListener(async function(info, tab) {
+ var menuInstanceId = nextMenuInstanceId++;
+ lastMenuInstanceId = menuInstanceId;
+
+ await browser.menus.update(menuId, ...);
+ // must now perform the check
+ if (menuInstanceId !== lastMenuInstanceId) {
+ return;
+ }
+ browser.menus.refresh();
+});</pre>
+
+<p>Firefox rend cet événement disponible via l'espace de noms <code>contextMenus</code> ainsi que l'espace de nom des <code>menus</code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.menus.onShown.addListener(listener)
+browser.menus.onShown.removeListener(listener)
+browser.menus.onShown.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</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 le <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>info</code></dt>
+ <dd>
+ <p><code>Object</code>. Ceci est juste comme l'objet {{WebExtAPIRef('menus.OnClickData')}}, sauf qu'il contient deux propriétés supplémentaires:</p>
+
+ <ul>
+ <li><code>contexts</code>: un tableau de tous les {{WebExtAPIRef("menus.ContextType", "contexts")}} applicables à ce menu.</li>
+ <li><code>menuIds</code>: un tableau d'ID de tous les éléments de menu appartenant à cette extension qui sont affichés dans ce menu.</li>
+ </ul>
+
+ <p>En comparaison avec <code>menus.OnClickData</code>, l'objet <code>info</code> omet également les propriétés <code>menuItemId</code> et <code>modifiers</code>, car bien sûr, celles-ci ne sont pas disponibles tant qu'un élément de menu n'a pas été sélectionné.</p>
+
+ <p>Les propriétés <code>contexts</code>, <code>menuIds</code>, <code>frameId</code>, et <code>editable</code> modifiables sont toujours fournis. Toutes les autres propriétés dans <code>info</code> sont uniquement fournies si l'extension a la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission d'hôte</a> pour la page.</p>
+ </dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>tab</code></dt>
+ <dd>{{WebExtAPIRef('tabs.Tab')}}. Les détails de l'onglet où le clic a eu lieu. Si le clic n'a pas eu lieu dans ou sur un onglet, ce paramètre sera manquant.</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.menus.onShown", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple permet d'afficher le menu contextuel sur un lien, puis met à jour l'élément de menu <code>openLabelledId</code> avec le nom d'hôte du lien :</p>
+
+<pre class="brush: js">function updateMenuItem(linkHostname) {
+ browser.menus.update(openLabelledId, {
+ title: `Open (${linkHostname})`
+ });
+ browser.menus.refresh();
+}
+
+browser.menus.onShown.addListener(info =&gt; {
+ if (!info.linkUrl) {
+ return;
+ }
+ let linkElement = document.createElement("a");
+ linkElement.href = info.linkUrl;
+ updateMenuItem(linkElement.hostname);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.html
new file mode 100644
index 0000000000..6869036f24
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.html
@@ -0,0 +1,46 @@
+---
+title: overrideContext()
+slug: Mozilla/Add-ons/WebExtensions/API/menus/overrideContext
+tags:
+ - API
+ - Add-ons
+ - Create
+ - Extensions
+ - Method
+ - WebExtensions
+ - contextMenus
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/overrideContext
+---
+<p>{{AddonSidebar}}</p>
+
+<p>Masquer tous les éléments de menu par défaut de Firefox en faveur d'un menu contextuel personnalisé.</p>
+
+<p>La méthode overrideContext permet d'afficher les éléments de menu correspondants de cette extension à la place du menu par défaut. Cette méthode doit être appelée à partir d'un gestionnaire d'événements DOM 'contextmenu', et ne s'applique qu'au menu qui s'ouvre après cet événement.</p>
+
+<p>Pour appeler cette méthode, votre extension doit avoir la permission <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>. Options sur la façon dont les menus contextuels seront remplacés.</dd>
+ <dd>
+ <dl>
+ <dt><code>showDefaults</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. S'il faut également inclure les éléments de menu par défaut dans le menu.</dd>
+ <dt><code>context </code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Le ContextType à surcharger, 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>bookmarkId </code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Requis lorsque le contexte est  <code>'bookmark'</code>. Nécessite la permission  'bookmark'.</dd>
+ <dt><code>tabId </code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Requis lorsque le contexte est <code>'tab'</code>. Nécessite la permission 'tabs'.</dd>
+ <dt></dt>
+ </dl>
+ </dd>
+</dl>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.html
new file mode 100644
index 0000000000..f2914a6c0f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.html
@@ -0,0 +1,66 @@
+---
+title: menus.refresh()
+slug: Mozilla/Add-ons/WebExtensions/API/menus/refresh
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - menus
+ - refresh
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/refresh
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Actualise un menu affiché.</p>
+
+<p>Met à jour les éléments de menu de l'extension dans le menu affiché par le navigateur, y compris les modifications effectuées depuis l'affichage du menu. N'a aucun effet si le menu n'est pas affiché. La reconstruction d'un menu affiché est une opération coûteuse. N'utilisez cette méthode que lorsque cela est nécessaire.</p>
+
+<p>Cela est généralement appelé depuis l'intérieur d'un gestionnaire d'événements {{WebExtAPIRef("menus.onShown")}} après que le gestionnaire a effectué des mises à jour dans le menu.</p>
+
+<p>Firefox rend cette fonction disponible via l'espace de noms <code>contextMenus</code> ainsi que l'espace de noms des <code>menus</code>.</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">browser.menus.refresh()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</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 se réalise sans arguments.</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.menus.refresh", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple permet d'afficher le menu contextuel sur un lien, puis met à jour l'élément de menu <code>openLabelledId</code> menu item avec le nom d'hôte du lien :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">updateMenuItem</span><span class="punctuation token">(</span>linkHostname<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ browser<span class="punctuation token">.</span>menus<span class="punctuation token">.</span><span class="function token">update</span><span class="punctuation token">(</span>openLabelledId<span class="punctuation token">,</span> <span class="punctuation token">{</span>
+ title<span class="punctuation token">:</span> <span class="template-string token"><span class="string token">`Open (</span><span class="interpolation token"><span class="interpolation-punctuation punctuation token">${</span>linkHostname<span class="interpolation-punctuation punctuation token">}</span></span><span class="string token">)`</span></span>
+ <span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ browser<span class="punctuation token">.</span>menus<span class="punctuation token">.</span><span class="function token">refresh</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>menus<span class="punctuation token">.</span>onShown<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span>info <span class="operator token">=</span><span class="operator token">&gt;</span> <span class="punctuation token">{</span>
+ <span class="keyword token">if</span> <span class="punctuation token">(</span><span class="operator token">!</span>info<span class="punctuation token">.</span>linkUrl<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">return</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span>
+ <span class="keyword token">let</span> linkElement <span class="operator token">=</span> document<span class="punctuation token">.</span><span class="function token">createElement</span><span class="punctuation token">(</span><span class="string token">"a"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ linkElement<span class="punctuation token">.</span>href <span class="operator token">=</span> info<span class="punctuation token">.</span>linkUrl<span class="punctuation token">;</span>
+ <span class="function token">updateMenuItem</span><span class="punctuation token">(</span>linkElement<span class="punctuation token">.</span>hostname<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.html
new file mode 100644
index 0000000000..74db66b876
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.html
@@ -0,0 +1,113 @@
+---
+title: menus.remove()
+slug: Mozilla/Add-ons/WebExtensions/API/menus/remove
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - contextMenus
+ - remove
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/remove
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime un élément de menu.</p>
+
+<p>Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace de noms <code>contextMenus</code> ainsi que l'espace de noms des <code>menus</code>.</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 removing = browser.menus.remove(
+ menuItemId // integer or string
+)
+</pre>
+
+<h3 id="Parameters">Parameters</h3>
+
+<dl>
+ <dt><code>menuItemId</code></dt>
+ <dd><code><code>integer</code></code> or <code><code>string</code></code>. The ID of the menu item to remove.</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 définit sans argument si la suppression a réussi, ou rejetée avec un message d'erreur si la suppression a échoué (par exemple, parce que l'élément n'a pas pu être trouvé).</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cette extension ajoute un élément de menu intitulé "Remove me!". Si vous cliquez sur l'élément, l'extension le supprime.</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("item removed successfully");
+}
+
+function onError() {
+ console.log("error removing item:" + browser.runtime.lastError);
+}
+
+browser.menus.create({
+ id: "remove-me",
+ title: "Remove me!",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(function(info, tab) {
+ if (info.menuItemId == "remove-me") {
+ var removing = browser.menus.remove(info.menuItemId);
+ removing.then(onRemoved, onError);
+ }
+});</pre>
+
+<p>{{WebExtExamples}}</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.menus.remove", 10)}}</p>
+
+
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.html
new file mode 100644
index 0000000000..bd485607ac
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.html
@@ -0,0 +1,107 @@
+---
+title: menus.removeAll()
+slug: Mozilla/Add-ons/WebExtensions/API/menus/removeAll
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - contextMenus
+ - menus
+ - removeAll
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/removeAll
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime tous les éléments de menu ajoutés par l'extension.</p>
+
+<p>Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace de noms <code>contextMenus</code> ainsi que l'espace de noms des <code>menus</code>.</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 removing = browser.menus.removeAll()
+</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 remplie sans argument lorsque tous les éléments ont été supprimés.</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.menus.removeAll", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple ajoute deux éléments de menu. Lorsque l'utilisateur clique sur l'élément "Supprimer tout !", L'extension supprime les deux éléments en utilisant <code>removeAll()</code>.</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("items removed successfully");
+}
+
+browser.menus.create({
+ id: "click-me",
+ title: "Click me!",
+ contexts: ["all"]
+});
+
+browser.menus.create({
+ id: "remove-all",
+ title: "Remove all!",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(function(info, tab) {
+ if (info.menuItemId == "remove-all") {
+ var removing = browser.menus.removeAll();
+ removing.then(onRemoved);
+ }
+});</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/update/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/update/index.html
new file mode 100644
index 0000000000..f56c65c361
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/menus/update/index.html
@@ -0,0 +1,193 @@
+---
+title: menus.update()
+slug: Mozilla/Add-ons/WebExtensions/API/menus/update
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - Update
+ - WebExtensions
+ - contextMenus
+translation_of: Mozilla/Add-ons/WebExtensions/API/menus/update
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Met à jour un élément de menu précédemment créé.</p>
+
+<p>Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace de noms <code>contextMenus</code> ainsi que l'espace de noms des <code>menus</code>.</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.menus.update(
+ id, // integer or string
+ updateProperties // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>id</code></dt>
+ <dd><code><code>integer</code></code> ou <code><code>string</code></code>. L'ID de l'article à mettre à jour.</dd>
+ <dt><code>updateProperties</code></dt>
+ <dd><code>object</code>. Les propriétés à mettre à jour. Identique à l'objet <code>createProperties</code> passé à  {{WebExtAPIRef("menus.create()", "menus.create()")}}, sauf que l'<code>id</code> ne peut être défini. En outre, les <code>icônes</code> ne peuvent être modifiées que dans les commandes de menu, et non dans le menu contextuel de niveau supérieur. L'icône de niveau supérieur correspond à l'icône principale de l'extension telle que déclarée dans le fichier manifeste de l'extension.
+ <dl class="reference-values">
+ <dt><code>checked</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. L'état initial d'une case à cocher ou d'un élément radio : <code>true</code> fpour sélectionné et <code>false</code> pour non sélectionné. Un seul élément radio peut être sélectionné à la fois dans un groupe donné d'éléments radio.</dd>
+ <dt><code>command</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. Chaîne décrivant une action qui doit être effectuée lorsque l'utilisateur clique sur l'élément. Les valeurs possibles sont :</p>
+
+ <ul>
+ <li><code>"_execute_browser_action"</code>: simuler un clic sur l'action du navigateur de l'extension, en ouvrant son popup s'il en a un</li>
+ <li><code>"_execute_page_action"</code>: simuler un clic sur l'action de la page de l'extension, en ouvrant son popup si elle en a une</li>
+ <li><code>"_execute_sidebar_action"</code>: ouvre la barre latérale de l'extension</li>
+ </ul>
+
+ <p>Cliquer sur l'élément déclenchera toujours l'événement  {{WebExtAPIRef("menus.onClicked")}}, mais rien ne garantit l'ordre ici: la commande peut être exécutée avant le lancement de <code>onClicked</code>.</p>
+ </dd>
+ <dt><code>contexts</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>array</code> de <code>{{WebExtAPIRef('menus.ContextType')}}</code>. Tableau des contextes dans lesquels cet élément de menu apparaîtra. Si cette option est omise :</p>
+
+ <ul>
+ <li>si le parent de l'élément a des contextes définis, alors cet élément héritera des contextes de son parent</li>
+ <li>sinon, l'élément reçoit un tableau de contexte de ["page"].</li>
+ </ul>
+ </dd>
+ <dt><code>documentUrlPatterns</code> {{optional_inline}}</dt>
+ <dd><code>array</code> de <code><code>string</code></code>. Vous permet de limiter l'élément à s'appliquer uniquement aux documents dont l'URL correspond à l'un des éléments <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Match_patterns">motifs</a> de données. Ceci s'applique également aux cadres.</dd>
+ <dt><code>enabled</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si cet élément de menu est activé ou désactivé. La valeur par défaut est <code>true</code>.</dd>
+ <dt><code>icons</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Une ou plusieurs icônes personnalisées à afficher à côté de l'élément. Les icônes personnalisées ne peuvent être définies que pour les éléments apparaissant dans les sous-menus. Cette propriété est un objet avec une propriété pour chaque icône fournie : le nom de la propriété doit inclure la taille de l'icône en pixels, et le chemin est relatif à l'icône du répertoire racine de l'extension. Le navigateur essaie de choisir une icône 16x16 pixels pour un affichage normal ou une icône 32x32 pixels pour un affichage haute densité. Pour éviter toute mise à l'échelle, vous pouvez spécifier des icônes comme celle-ci :</p>
+
+ <pre class="brush: json no-line-numbers language-json"><code class="language-json"><span class="key token">"icons":</span> <span class="punctuation token">{</span>
+ <span class="key token">"16":</span> <span class="string token">"path/to/geo-16.png"</span><span class="punctuation token">,</span>
+ <span class="key token">"32":</span> <span class="string token">"path/to/geo-32.png"</span>
+ <span class="punctuation token">}</span></code></pre>
+
+ <p>Alternativement, vous pouvez spécifier une seule icône SVG, et elle sera mise à l'échelle de manière appropriée :</p>
+
+ <pre class="brush: json no-line-numbers language-json"><code class="language-json"><span class="key token">"icons":</span> <span class="punctuation token">{</span>
+ <span class="key token">"16":</span> <span class="string token">"path/to/geo.svg"</span>
+ <span class="punctuation token">}</span></code></pre>
+
+ <div class="blockIndicator note">
+ <p><strong>Note</strong>: The top-level menu item uses the <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/icons">icons</a> specified in the manifest rather than what is specified with this key.</p>
+ </div>
+ </dd>
+ <dt><code>id</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. L'ID unique à affecter à cet article. Obligatoire pour les pages d'événements. Ne peut pas être le même qu'un autre ID pour cette extension.</dd>
+ <dt><code>onclick</code> {{optional_inline}}</dt>
+ <dd><code>function</code>. Une fonction qui sera appelée lorsque vous cliquerez sur l'élément de menu. Les pages d'événements ne peuvent pas l'utiliser : elles doivent plutôt enregistrer un auditeur pour {{WebExtAPIRef('menus.onClicked')}}.</dd>
+ <dt><code>parentId</code> {{optional_inline}}</dt>
+ <dd><code><code>integer</code></code> ou <code><code>string</code></code>. L'ID d'un élément de menu parent ; ceci fait de l'élément un enfant d'un élément précédemment ajouté. Remarque : Si vous avez créé plus d'un élément de menu, les éléments seront placés dans un sous-menu. Le parent du sous-menu sera étiqueté avec le nom de l'extension.</dd>
+ <dt><code>targetUrlPatterns</code> {{optional_inline}}</dt>
+ <dd><code>array</code> de <code><code>string</code></code>. Similairer à <code>documentUrlPatterns</code>, mais vous permet de filtrer en fonction de la <code>href</code> des balises d'ancre et l'attribut <code>src</code> des balises  img/audio/video. Ce paramètre prend en charge n'importe quel schéma d'URL, même ceux qui ne sont généralement pas autorisés dans un modèle de correspondance.</dd>
+ <dt><code>title</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. Le texte à afficher dans le poste. Obligatoire sauf si le <code>type</code> est "separateur".</p>
+
+ <p>Vous pouvez utiliser "<code>%s</code>" dans la chaîne de caractères. Si vous le faites dans un élément de menu, et qu'un texte est sélectionné dans la page lorsque le menu est affiché, le texte sélectionné sera interpolé dans le titre. Par exemple, si <code>title</code> est "Traduction '%s' à Pig Latin" et que l'utilisateur sélectionne le mot "cool", puis active le menu, alors le titre de l'élément de menu sera : "Traduction 'cool' à Pig Latin".</p>
+
+ <p>Si le titre contient une esperluette "&amp;", le caractère suivant sera utilisé comme clé d'accès pour l'élément et l'esperluette ne sera pas affichée. Les exceptions à cette règle sont les suivantes :</p>
+
+ <ul>
+ <li>Si le caractère suivant est également une esperluette : alors une esperluette simple sera affichée et aucune clé d'accès ne sera définie. En effet, "&amp;&amp;" est utilisé pour afficher une seule esperluette.</li>
+ <li>Si les caractères suivants sont la directive d'interpolation "%s" : alors l'esperluette ne sera pas affichée et aucune clé d'accès ne sera définie.</li>
+ <li>Si l'esperluette est le dernier caractère du titre : alors l'esperluette ne sera pas affichée et aucune clé d'accès ne sera définie.</li>
+ </ul>
+
+ <p>Seule la première esperluette sera utilisée pour définir une clé d'accès : les esperluettes suivantes ne seront pas affichées mais ne définiront pas les clés. Ainsi, "&amp;A et &amp;B" seront affichés comme "A et B" et "A" comme clé d'accès</p>
+ </dd>
+ <dt><code>type</code> {{optional_inline}}</dt>
+ <dd><code>{{WebExtAPIRef('menus.ItemType')}}</code>. Le type d'élément de menu : "normal", "checkbox", "radio", "separator". Defaults to "normal".</dd>
+ <dt><code>viewTypes</code> {{optional_inline}}</dt>
+ <dd><code>{{WebExtAPIRef('extension.ViewType')}}</code>. Liste des types d'affichage où l'élément de menu sera affiché. Par défaut à n'importe quelle vue, y compris celles qui n'ont pas de <code>viewType</code>.</dd>
+ <dt><code>visible</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'élément est affiché dans le menu. La valeur par défaut est <code>true</code>.</dd>
+ </dl>
+ </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 satisfaite sans argument si la mise à jour a réussi, ou rejetée avec un message d'erreur si la mise à jour a échoué.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple crée un élément de menu, puis met à jour son titre lorsque l'utilisateur clique dessus :</p>
+
+<pre class="brush: js">function onUpdated() {
+ console.log("item updated successfully");
+}
+
+function onError() {
+ console.log("error updating item:" + browser.runtime.lastError);
+}
+
+browser.menus.create({
+ id: "do-not-click-me",
+ title: "Do not click this button",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(function(info, tab) {
+ if (info.menuItemId == "do-not-click-me") {
+ var updating = browser.contextMenus.update(info.menuItemId, {
+ title: "Do not click this button again"
+ });
+ updating.then(onUpdated, onError);
+ }
+});</pre>
+
+<p>{{WebExtExamples}}</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.menus.update", 10)}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/contextMenus"><code>chrome.contextMenus</code></a> de chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/context_menus.json"><code>context_menus.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
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(()=&gt; {
+ var clearing = browser.notifications.clear(cakeNotification);
+ clearing.then(() =&gt; {
+ 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(()=&gt; {
+ var clearing = browser.notifications.clear(cakeNotification);
+ clearing.then(() =&gt; {
+ console.log("cleared");
+ });
+});
+
+browser.notifications.onButtonClicked.addListener((id, index) =&gt; {
+ 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) =&gt; {
+ 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 &gt; 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) =&gt; {
+ if (all.length &gt; 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>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/index.html b/files/fr/mozilla/add-ons/webextensions/api/omnibox/index.html
new file mode 100644
index 0000000000..c30a1f3db4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/index.html
@@ -0,0 +1,70 @@
+---
+title: omnibox
+slug: Mozilla/Add-ons/WebExtensions/API/omnibox
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - omnibox
+translation_of: Mozilla/Add-ons/WebExtensions/API/omnibox
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Permet aux extensions d'implémenter un comportement personnalisé lorsque l'utilisateur tape dans la barre d'adresse du navigateur.</p>
+
+<p>Lorsque l'utilisateur se concentre sur la barre d'adresse du navigateur et commence à taper, le navigateur affiche une liste déroulante contenant des pages suggérées, en fonction de ce qu'ils ont tapé. Cela permet à l'utilisateur d'accéder rapidement, par exemple, aux pages de son historique ou de ses favoris.</p>
+
+<p>L'API omnibox fournit à l'extension un moyen de personnaliser les suggestions affichées dans la liste déroulante, lorsque l'utilisateur saisit un mot clé défini par l'extension. Cela fonctionne comme suit:...</p>
+
+<ol>
+ <li>Tout d'abord, l'extension doit inclure une clé "<a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/omnibox">omnibox</a>" dans le fichier <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json</a> qui définit un mot-clé.</li>
+ <li>Lorsque l'utilisateur met la barre d'adresse en surbrillance et tape le mot-clé, suivi d'un espace, l'extension recevra un événement  {{WebExtAPIRef("omnibox.onInputStarted")}}.</li>
+ <li>Facultativement, l'extension peut appeler  {{WebExtAPIRef("omnibox.setDefaultSuggestion()")}} pour définir la première suggestion qui sera affichée dans la liste déroulante de la barre d'adresse.</li>
+ <li>Comme l'utilisateur continue à taper des caractères après cela, l'extension recevra {{WebExtAPIRef("omnibox.onInputChanged")}} événements. L'écouteur d'événement recevra la valeur actuelle que l'utilisateur a saisie et pourra remplir la liste déroulante de la barre d'adresse avec des suggestions. Si l'extension définit une suggestion par défaut en utilisant {{WebExtAPIRef("omnibox.setDefaultSuggestion()")}}, elle apparaît en premier dans la liste déroulante.</li>
+ <li>Si l'utilisateur accepte une suggestion, l'extension recevra un événement  {{WebExtAPIRef("omnibox.onInputEntered")}}. L'écouteur d'événement recevra la suggestion acceptée.</li>
+ <li>Si l'utilisateur supprime la liste déroulante, l'extension recevra un événement {{WebExtAPIRef("omnibox.onInputCancelled")}}.</li>
+</ol>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}</dt>
+ <dd>Décrit la méthode recommandée pour gérer la suggestion sélectionnée: ouvrir dans l'onglet actuel, ouvrir dans un nouvel onglet de premier plan ou ouvrir dans un nouvel onglet d'arrière-plan.</dd>
+ <dt>{{WebExtAPIRef("omnibox.SuggestResult")}}</dt>
+ <dd>Objet représentant une suggestion à ajouter à la liste déroulante de la barre.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("omnibox.setDefaultSuggestion()")}}</dt>
+ <dd>Définit la première suggestion qui apparaît dans la liste déroulante lorsque l'utilisateur entre le mot clé pour votre extension, suivi d'un espace.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("omnibox.onInputStarted")}}</dt>
+ <dd>Lancé lorsque l'utilisateur met la barre d'adresse en surbrillance et tape le mot clé omnibox de votre extension, suivi d'un espace.</dd>
+ <dt>{{WebExtAPIRef("omnibox.onInputChanged")}}</dt>
+ <dd>Déclenché chaque fois que l'utilisateur change d'entrée, après avoir focalisé la barre d'adresse et tapé le mot clé omnibox de votre extension, suivi d'un espace.</dd>
+ <dt>{{WebExtAPIRef("omnibox.onInputEntered")}}</dt>
+ <dd>Lancé lorsque l'utilisateur accepte l'une des suggestions de votre extension.</dd>
+ <dt>{{WebExtAPIRef("omnibox.onInputCancelled")}}</dt>
+ <dd>Lancé lorsque l'utilisateur supprime la liste déroulante de la barre d'adresse, après avoir défini la barre d'adresse et tapé le mot clé omnibox de votre extension.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.omnibox")}}</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/omnibox"><code>chrome.omnibox</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/omnibox/oninputcancelled/index.html b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputcancelled/index.html
new file mode 100644
index 0000000000..b1bcf27f8a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputcancelled/index.html
@@ -0,0 +1,60 @@
+---
+title: omnibox.onInputCancelled
+slug: Mozilla/Add-ons/WebExtensions/API/omnibox/onInputCancelled
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Reference
+ - WebExtensions
+ - omnibox
+ - onInputCancelled
+translation_of: Mozilla/Add-ons/WebExtensions/API/omnibox/onInputCancelled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque l'utilisateur a annulé son interaction avec votre poste (par exemple, en cliquant en dehors de la barre d'adresse).</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.omnibox.onInputCancelled.addListener(listener)
+browser.omnibox.onInputCancelled.removeListener(listener)
+browser.omnibox.onInputCancelled.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</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>
+
+<p>La fonction d'écouteur n'a pas de paramètres.</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.omnibox.onInputCancelled")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">browser.omnibox.onInputCancelled.addListener(() =&gt; {
+ console.log("The user cancelled the session.");
+});</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/omnibox"><code>chrome.omnibox</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/omnibox/oninputchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputchanged/index.html
new file mode 100644
index 0000000000..93741b08ae
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputchanged/index.html
@@ -0,0 +1,153 @@
+---
+title: omnibox.onInputChanged
+slug: Mozilla/Add-ons/WebExtensions/API/omnibox/onInputChanged
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Reference
+ - WebExtensions
+ - omnibox
+ - onInputChanged
+translation_of: Mozilla/Add-ons/WebExtensions/API/omnibox/onInputChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé chaque fois que l'utilisateur modifie sa saisie, après avoir commencé à interagir avec votre extension en saisissant son mot-clé dans la barre d'adresse, puis en appuyant sur la touche espace.</p>
+
+<p>C'est l'événement que vous utiliserez pour remplir la liste déroulante de la barre d'adresse avec des suggestions. L'écouteur d'événement est transmis :</p>
+
+<ul>
+ <li>l'entrée actuelle de l'utilisateur (n'incluant pas le mot-clé lui-même ou l'espace après)</li>
+ <li>une fonction de rappel que l'écouteur peut appeler avec un tableau d'objets {{WebExtAPIRef("omnibox.SuggestResult")}}, un pour chaque suggestion. Seules les six premières suggestions seront affichées..</li>
+</ul>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.omnibox.onInputChanged.addListener(listener)
+browser.omnibox.onInputChanged.removeListener(listener)
+browser.omnibox.onInputChanged.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</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>
+
+<p>The listener function will be passed two parameters: a string <code>text</code>, and a callback function <code>suggest</code>.</p>
+
+<h3 id="Parameters">Parameters</h3>
+
+<dl>
+ <dt><code>text</code></dt>
+ <dd>
+ <p><code>String</code>. L'entrée actuelle de l'utilisateur dans la barre d'adresse, n'incluant pas le mot-clé de l'extension lui-même ou l'espace après le mot-clé. Utilisez-le pour décider quelles suggestions afficher dans la liste déroulante.</p>
+ </dd>
+ <dt><code>suggest</code></dt>
+ <dd>
+ <p><code>Function</code>. Une fonction de rappel que l'écouteur d'événement peut appeler pour fournir des suggestions pour la liste déroulante de la barre d'adresse. La fonction de rappel s'attend à recevoir un tableau d'objets  {{WebExtAPIRef("omnibox.SuggestResult")}} un pour chaque suggestion. Seules les six premières suggestions seront affichées.</p>
+ </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.omnibox.onInputStarted")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple interprète l'entrée de l'utilisateur en tant que nom de propriété CSS et remplit la liste déroulante avec un objet {{WebExtAPIRef("omnibox.SuggestResult")}} pour chaque propriété CSS correspondant à l'entrée. La <code>description SuggestResult</code> est le nom complet de la propriété et le <code>contenu</code> est la page MDN de cette propriété.</p>
+
+<p>L'exemple écoute également {{WebExtAPIRef("omnibox.onInputEntered")}}, et ouvre la page MDN correspondant à la sélection, conformément à l'argument   {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}.</p>
+
+<pre class="brush: js">browser.omnibox.setDefaultSuggestion({
+ description: "Type the name of a CSS property"
+});
+
+/*
+Very short list of a few CSS properties.
+*/
+const props = [
+ "animation",
+ "background",
+ "border",
+ "box-shadow",
+ "color",
+ "display",
+ "flex",
+ "flex",
+ "float",
+ "font",
+ "grid",
+ "margin",
+ "opacity",
+ "overflow",
+ "padding",
+ "position",
+ "transform",
+ "transition"
+];
+
+const baseURL = "https://developer.mozilla.org/en-US/docs/Web/CSS/";
+
+/*
+Return an array of SuggestResult objects,
+one for each CSS property that matches the user's input.
+*/
+function getMatchingProperties(input) {
+ var result = [];
+ for (prop of props) {
+ if (prop.indexOf(input) === 0) {
+ console.log(prop);
+ let suggestion = {
+ content: baseURL + prop,
+ description: prop
+ }
+ result.push(suggestion);
+ } else {
+ if (result.length != 0) {
+ return result;
+ }
+ }
+ }
+ return result;
+}
+
+browser.omnibox.onInputChanged.addListener((input, suggest) =&gt; {
+ suggest(getMatchingProperties(input));
+});
+
+browser.omnibox.onInputEntered.addListener((url, disposition) =&gt; {
+ switch (disposition) {
+ case "currentTab":
+ browser.tabs.update({url});
+ break;
+ case "newForegroundTab":
+ browser.tabs.create({url});
+ break;
+ case "newBackgroundTab":
+ browser.tabs.create({url, active: false});
+ break;
+ }
+});
+
+</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/omnibox"><code>chrome.omnibox</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/omnibox/oninputentered/index.html b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentered/index.html
new file mode 100644
index 0000000000..6a880534ec
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentered/index.html
@@ -0,0 +1,153 @@
+---
+title: omnibox.onInputEntered
+slug: Mozilla/Add-ons/WebExtensions/API/omnibox/onInputEntered
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Reference
+ - WebExtensions
+ - omnibox
+ - onInputEntered
+translation_of: Mozilla/Add-ons/WebExtensions/API/omnibox/onInputEntered
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque l'utilisateur a sélectionné l'une des suggestions que votre extension a ajoutées à la liste déroulante de la barre d'adresse.</p>
+
+<p>Utilisez cet événement pour gérer la sélection de l'utilisateur, généralement en ouvrant la page correspondante. L'écouteur d'événement est transmis w:</p>
+
+<ul>
+ <li>la sélection de l'utilisateur</li>
+ <li>Un {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}: utilisez cette option pour déterminer si vous souhaitez ouvrir la nouvelle page dans l'onglet actuel, dans un nouvel onglet de premier plan ou dans un nouvel onglet d'arrière-plan.</li>
+</ul>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.omnibox.onInputEntered.addListener(listener)
+browser.omnibox.onInputEntered.removeListener(listener)
+browser.omnibox.onInputEntered.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</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>
+
+<p>La fonction d'écouteur recevra deux paramètres: une chaine de <code>text</code>, et un  {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>text</code></dt>
+ <dd>
+ <p><code>String</code>. C'est la valeur de la propriété <code>content</code> de l'objet {{WebExtAPIRef("omnibox.SuggestResult")}} que l'utilisateur a sélectionné.</p>
+ </dd>
+ <dt><code>disposition</code></dt>
+ <dd>
+ <p>{{WebExtAPIRef("omnibox.OnInputEnteredDisposition", "OnInputEnteredDisposition")}}. Une {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}} énumération, indiquant si l'extension doit ouvrir la page dans l'onglet en cours, dans un nouvel onglet de premier plan ou dans un nouvel onglet d'arrière-plan.</p>
+ </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.omnibox.onInputEntered")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple interprète l'entrée de l'utilisateur en tant que nom de propriété CSS et remplit la liste déroulante avec un objet {{WebExtAPIRef("omnibox.SuggestResult")}} pour chaque propriété CSS correspondant à l'entrée. La <code>description SuggestResult</code> est le nom complet de la propriété et le <code>contenu</code> est la page MDN de cette propriété.</p>
+
+<p>L'exemple écoute également {{WebExtAPIRef("omnibox.onInputEntered")}}, et ouvre la page MDN correspondant à la sélection, conformément à l'argument   {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}.</p>
+
+<pre class="brush: js">browser.omnibox.setDefaultSuggestion({
+ description: "Type the name of a CSS property"
+});
+
+/*
+Very short list of a few CSS properties.
+*/
+const props = [
+ "animation",
+ "background",
+ "border",
+ "box-shadow",
+ "color",
+ "display",
+ "flex",
+ "flex",
+ "float",
+ "font",
+ "grid",
+ "margin",
+ "opacity",
+ "overflow",
+ "padding",
+ "position",
+ "transform",
+ "transition"
+];
+
+const baseURL = "https://developer.mozilla.org/en-US/docs/Web/CSS/";
+
+/*
+Return an array of SuggestResult objects,
+one for each CSS property that matches the user's input.
+*/
+function getMatchingProperties(input) {
+ var result = [];
+ for (prop of props) {
+ if (prop.indexOf(input) === 0) {
+ console.log(prop);
+ let suggestion = {
+ content: baseURL + prop,
+ description: prop
+ }
+ result.push(suggestion);
+ } else {
+ if (result.length != 0) {
+ return result;
+ }
+ }
+ }
+ return result;
+}
+
+browser.omnibox.onInputChanged.addListener((input, suggest) =&gt; {
+ suggest(getMatchingProperties(input));
+});
+
+browser.omnibox.onInputEntered.addListener((url, disposition) =&gt; {
+ switch (disposition) {
+ case "currentTab":
+ browser.tabs.update({url});
+ break;
+ case "newForegroundTab":
+ browser.tabs.create({url});
+ break;
+ case "newBackgroundTab":
+ browser.tabs.create({url, active: false});
+ break;
+ }
+});
+
+</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/omnibox"><code>chrome.omnibox</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/omnibox/oninputentereddisposition/index.html b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentereddisposition/index.html
new file mode 100644
index 0000000000..913cb5b875
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentereddisposition/index.html
@@ -0,0 +1,45 @@
+---
+title: omnibox.OnInputEnteredDisposition
+slug: Mozilla/Add-ons/WebExtensions/API/omnibox/OnInputEnteredDisposition
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - OnInputEnteredDisposition
+ - Reference
+ - Type
+ - WebExtensions
+ - omnibox
+translation_of: Mozilla/Add-ons/WebExtensions/API/omnibox/OnInputEnteredDisposition
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <strong><code>omnibox.OnInputEnteredDisposition</code></strong> décrit comment l'extension doit gérer une sélection d'utilisateur à partir des suggestions dans la liste déroulante de la barre d'adresse.</p>
+
+<p>Il est passé dans l'écouteur {{WebExtAPIRef("omnibox.onInputEntered")}} avec la sélection elle-même.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Ils peuvent prendre l'une des valeurs suivantes :</p>
+
+<dl class="reference-values">
+ <dt>"currentTab"</dt>
+ <dd>Ouvrez la sélection dans l'onglet actuel.</dd>
+ <dt>"newForegroundTab"</dt>
+ <dd>Ouvrez la sélection dans un nouvel onglet et placez ce nouvel onglet au premier plan.</dd>
+ <dt>"newBackgroundTab"</dt>
+ <dd>Ouvrez la sélection dans un nouvel onglet d'arrière-plan, en conservant l'onglet en cours au premier plan.</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.omnibox.OnInputEnteredDisposition")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/omnibox"><code>chrome.omnibox</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/omnibox/oninputstarted/index.html b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputstarted/index.html
new file mode 100644
index 0000000000..ad29ee7cbd
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputstarted/index.html
@@ -0,0 +1,70 @@
+---
+title: omnibox.onInputStarted
+slug: Mozilla/Add-ons/WebExtensions/API/omnibox/onInputStarted
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Reference
+ - WebExtensions
+ - omnibox
+ - onInputStarted
+translation_of: Mozilla/Add-ons/WebExtensions/API/omnibox/onInputStarted
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque l'utilisateur commence à interagir avec votre extension en entrant son mot-clé dans la barre d'adresse, puis en appuyant sur la touche espace.</p>
+
+<p>Cela sera envoyé avant tout événement {{WebExtAPIRef("omnibox.onInputChanged")}} events.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.omnibox.onInputStarted.addListener(listener)
+browser.omnibox.onInputStarted.removeListener(listener)
+browser.omnibox.onInputStarted.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 sera passée sans arguments.</p>
+ </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.omnibox.onInputStarted")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">browser.omnibox.onInputStarted.addListener(() =&gt; {
+  console.log("User has started interacting with me.")
+});
+</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/omnibox"><code>chrome.omnibox</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/omnibox/setdefaultsuggestion/index.html b/files/fr/mozilla/add-ons/webextensions/api/omnibox/setdefaultsuggestion/index.html
new file mode 100644
index 0000000000..00d1b30d38
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/setdefaultsuggestion/index.html
@@ -0,0 +1,58 @@
+---
+title: omnibox.setDefaultSuggestion()
+slug: Mozilla/Add-ons/WebExtensions/API/omnibox/setDefaultSuggestion
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - omnibox
+ - setDefaultSuggestion
+translation_of: Mozilla/Add-ons/WebExtensions/API/omnibox/setDefaultSuggestion
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définissez la suggestion par défaut à afficher dans la liste déroulante de la barre d'adresse lorsque l'utilisateur commence à interagir avec votre extension.</p>
+
+<p>Une fois que l'utilisateur a entré votre mot clé et a commencé à interagir avec votre extension, la suggestion par défaut apparaît toujours en premier dans la liste déroulante. Contrairement aux suggestions que vous fournissez dans  {{WebExtAPIRef("omnibox.onInputChanged")}}, cet élément ne peut pas être sélectionné. Utilisez-le pour fournir à l'utilisateur des conseils sur ce qu'il doit taper et sur ce qu'il peut s'attendre à voir quand il le fait.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.omnibox.setDefaultSuggestion(
+ suggestion // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>suggestion</code></dt>
+ <dd><code>object</code>. Un objet contenant une <code>description</code> de propriété de chaîne unique, qui sera affichée en tant que premier élément dans la liste déroulante lorsque l'utilisateur commence à interagir avec votre extension.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>None.</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.omnibox.setDefaultSuggestion")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">browser.omnibox.setDefaultSuggestion({
+ description: "Type the name of a CSS property"
+});</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/omnibox"><code>chrome.omnibox</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/omnibox/suggestresult/index.html b/files/fr/mozilla/add-ons/webextensions/api/omnibox/suggestresult/index.html
new file mode 100644
index 0000000000..16df731861
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/suggestresult/index.html
@@ -0,0 +1,43 @@
+---
+title: omnibox.SuggestResult
+slug: Mozilla/Add-ons/WebExtensions/API/omnibox/SuggestResult
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - SuggestResult
+ - Type
+ - WebExtensions
+ - omnibox
+translation_of: Mozilla/Add-ons/WebExtensions/API/omnibox/SuggestResult
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <strong><code>omnibox.SuggestResult</code></strong> définit une suggestion unique que l'extension peut ajouter à la liste déroulante de la barre d'adresse.</p>
+
+<p>L'écouteur d'événement {{WebExtAPIRef("omnibox.onInputChanged")}} de l'extension reçoit un rappel. Pour remplir la liste déroulante de la barre d'adresse en réponse à l'entrée de l'utilisateur,  l'extension peut transmettre un tableau d'objets <code>omnibox.SuggestResult</code> dans ce rappel.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils ont les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>content</code></dt>
+ <dd>C'est la valeur qui apparaîtra dans la barre d'adresse elle-même lorsque l'utilisateur mettra cette suggestion en évidence dans la liste déroulante. C'est également la chaîne envoyée à l'écouteur d'événement  {{WebExtAPIRef("omnibox.onInputEntered")}} si l'utilisateur sélectionne cette suggestion. Si la chaîne est la même que celle que l'utilisateur a déjà tapée, cette entrée n'apparaîtra pas dans la liste déroulante.</dd>
+ <dt><code>description</code></dt>
+ <dd>C'est la chaîne qui est affichée dans la liste déroulante de la barre d'adresse.</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.omnibox.SuggestResult")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/omnibox"><code>chrome.omnibox</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/pageaction/getpopup/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/getpopup/index.html
new file mode 100644
index 0000000000..42c45eb0cc
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/getpopup/index.html
@@ -0,0 +1,114 @@
+---
+title: pageAction.getPopup()
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/getPopup
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getPopup
+ - pageAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/getPopup
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient l'URL d'un document HTML en tant que popup pour cette action de page.</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 gettingPopup = browser.pageAction.getPopup(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dont vous souhaitez obtenir la fenêtre contextuelle.</dd>
+ </dl>
+ </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 accompli avec une chaîne contenant l'URL du popup.</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.pageAction.getPopup")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ajoutez un élément de menu contextuel qui enregistre l'URL contextuelle de l'onglet en cours. Notez que vous aurez besoin de la  <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>contextMenus</code> dans votre <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest</a> pour créer des éléments de menu contextuel.</p>
+
+<pre class="brush: js">function gotPopup(popupURL) {
+ console.log(popupURL);
+}
+
+browser.contextMenus.create({
+ id: "get-popup",
+ title: "Get popup URL"
+});
+
+browser.contextMenus.onClicked.addListener(function(info, tab) {
+ if (info.menuItemId == "get-popup") {
+ var gettingPopup = browser.pageAction.getPopup({tabId: tab.id});
+ gettingPopup.then(gotPopup);
+ }
+});</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.html
new file mode 100644
index 0000000000..007e76dc17
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.html
@@ -0,0 +1,109 @@
+---
+title: pageAction.getTitle()
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/getTitle
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getTitle
+ - pageAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/getTitle
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient le titre de la page action.</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 gettingTitle = browser.pageAction.getTitle(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet contenant l'action page dont vous voulez obtenir le titre.</dd>
+ </dl>
+ </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 accomplie  avec une chaîne contenant le titre de l'action de la page.</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.pageAction.getTitle")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple enregistre le titre de l'action de la page lorsque l'utilisateur clique sur son icône :</p>
+
+<pre class="brush: js">function gotTitle(title) {
+ console.log(`Title ${title}`);
+}
+
+browser.pageAction.onClicked.addListener((tab) =&gt; {
+ var gettingTitle = browser.pageAction.getTitle({
+ tabId: tab.id
+ });
+ gettingTitle.then(gotTitle);
+});</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.html
new file mode 100644
index 0000000000..b04cf16fe5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.html
@@ -0,0 +1,88 @@
+---
+title: pageAction.hide()
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/hide
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - hide
+ - pageAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/hide
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Masque l'action de page pour un onglet donné.</p>
+
+<p><code>hide()</code> remplace la correspondance de motifs, de sorte que l'action page ne sera pas affichée dans l'onglet spécifié même si son URL est associée à <a href="https://developer.mozilla.org/Add-ons/WebExtensions/manifest.json/page_action"><code>show_matches</code></a>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.pageAction.hide(
+ tabId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet pour lequel vous souhaitez masquer l'action de la page.</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.pageAction.hide")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Masquez l'action de la page pour l'onglet en cours lorsque l'utilisateur clique dessus :</p>
+
+<pre class="brush: js">browser.pageAction.onClicked.addListener((tab) =&gt; {
+ browser.pageAction.hide(tab.id);
+});</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.html
new file mode 100644
index 0000000000..896791b3f4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.html
@@ -0,0 +1,68 @@
+---
+title: pageAction.ImageDataType
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/ImageDataType
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - ImageDataType
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - pageAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/ImageDataType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Données en pixel pour une image.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Un objet <code><a href="/fr/docs/Web/API/ImageData">ImageData</a></code> , par exemple à partir d'un élément {{htmlelement("canvas")}}.</p>
+
+<h2 id="Browser_compatibility">Browser compatibility</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.pageAction.ImageDataType")}}</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/index.html
new file mode 100644
index 0000000000..aebe33a6cd
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/index.html
@@ -0,0 +1,112 @@
+---
+title: pageAction
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - pageAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Une <a href="/fr/Add-ons/WebExtensions/Page_actions">action de page</a> est une icône cliquable dans la barre d'adresse du navigateur.</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/12960/page-action.png" style="display: block; height: 262px; margin-left: auto; margin-right: auto; width: 850px;"></p>
+
+<p>Vous pouvez écouter les clics sur l'icône, ou spécifié une <a href="/fr/Add-ons/WebExtensions/Popups">fenêtre contextuelle </a>qui s'ouvre  lorsque l'icone est cliquée.</p>
+
+<p>Si vous spécifiez une fenêtre contextuelle, vous pouvez définir son contenu et son comportement en utilisant HTML, CSS et JavaScript, tout comme une page Web normale. Le JavaScript s'exécutant dans la fenêtre contextuelle accède à toutes les mêmes API WebExtension que vos scripts d'arrière-plan.</p>
+
+<p>Vous pouvez définir la plupart des propriétés d'une action de page de manière déclarative à l'aide de la  <a href="/fr/Add-ons/WebExtensions/manifest.json/page_action">clef page_action</a> dans votre <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json</a>, mais également les redéfinir par programmation en utilisant cette API.</p>
+
+<p>Les actions de page sont pour des actions qui ne sont pertinentes que pour des pages particulières (comme "favoris dans l'onglet courrant"). S'ils sont pertinents pour le navigateur dans son ensemble (par exemple, "Afficher tous les favoris"), utilisez plutôt une action du navigateur.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("pageAction.ImageDataType")}}</dt>
+ <dd>Données en pixel pour une image.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("pageAction.show()")}}</dt>
+ <dd>Affiche l'action de la page pour un onglet donné.</dd>
+ <dt>{{WebExtAPIRef("pageAction.hide()")}}</dt>
+ <dd>Caches l'action de la page pour un onglet donné.</dd>
+ <dt>{{WebExtAPIRef("pageAction.isShown()")}}</dt>
+ <dd>Vérifie si l'action de la page est affichée ou non.</dd>
+ <dt>{{WebExtAPIRef("pageAction.setTitle()")}}</dt>
+ <dd>Définit le titre de l'action de la page. Ceci est affiché dans une info-bulle sur l'action de la page.</dd>
+ <dt>{{WebExtAPIRef("pageAction.getTitle()")}}</dt>
+ <dd>Obtient le titre de l'action de la page</dd>
+ <dt>{{WebExtAPIRef("pageAction.setIcon()")}}</dt>
+ <dd>Définit l'icône de l'action de la page.</dd>
+ <dt>{{WebExtAPIRef("pageAction.setPopup()")}}</dt>
+ <dd>Définit l'URL de la fenêtre contextuelle de l'action de la page.</dd>
+ <dt>{{WebExtAPIRef("pageAction.getPopup()")}}</dt>
+ <dd>Obtient l'URL de la fenêtre d'action de la page.</dd>
+ <dt>{{WebExtAPIRef("pageAction.openPopup()")}}</dt>
+ <dd>Ouvre la fenêtre contextuelle de l'action de la page.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("pageAction.onClicked")}}</dt>
+ <dd>Activé lorsqu'une icône d'action de page est cliquée. Cet événement ne se déclenchera pas si l'action de la page comporte une fenêtre contextuelle.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.pageAction")}}</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.html
new file mode 100644
index 0000000000..4bcfa232d5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.html
@@ -0,0 +1,77 @@
+---
+title: pageAction.isShown()
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/isShown
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - isShown
+ - pageAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/isShown
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoie <code>true</code> si l'action de la page est affichée pour l'onglet donné..</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">let gettingIsShown = browser.pageAction.isShown(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet contenant le <code>tabId</code> à vérifier.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet à vérifier.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </dl>
+ </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 <code>true</code> si l'action de page de l'extension est affichée pour l'onglet donné, et <code>false</code> dans le cas contraire.</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.pageAction.isShown")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Vérifiez l'état de l'onglet actuellement actif :</p>
+
+<pre class="brush: js">async function shownInActiveTab() {
+  let tabs = await browser.tabs.query({
+ currentWindow:true,
+ active: true
+ });
+  let shown = await browser.pageAction.isShown({
+ tabId: tabs[0].id
+ });
+  console.log(shown);
+}</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.html
new file mode 100644
index 0000000000..ada626da23
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.html
@@ -0,0 +1,114 @@
+---
+title: pageAction.onClicked
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/onClicked
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onCliecked
+ - pageAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/onClicked
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Lancé quand l'icône de la page action est cliquée. Cet événement ne se déclenchera pas si l'action de la page comporte une fenêtre contextuelle.</p>
+
+<p>Pour définir une action de clic droit, utilisez l'API {{WebExtAPIRef('contextMenus')}} avec l'élément "page_action" {{WebExtAPIRef('contextMenus/ContextType', 'context type', '', 'nocode')}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.pageAction.onClicked.addListener(listener)
+browser.pageAction.onClicked.removeListener(listener)
+browser.pageAction.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 l'écouter cet événement. L'argument <code>listener</code> est l'écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si un <code>listener</code> est enregistré pour cet événement. Retourne <code>true</code> s'il écoute, <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>callback</code></dt>
+ <dd>
+ <p>Une fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>tab</code></dt>
+ <dd>Un objet {{WebExtAPIRef('tabs.Tab')}} représentant l'onglet dont l'action de la page a été cliqué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.pageAction.onClicked")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Lorsque l'utilisateur clique sur l'action de la page, masquez-là et naviguez dans l'onglet actif pour "<a href="http://chilloutandwatchsomecatgifs.com/">http://chilloutandwatchsomecatgifs.com/</a>" :</p>
+
+<pre class="brush: js">var CATGIFS = "http://chilloutandwatchsomecatgifs.com/";
+
+browser.pageAction.onClicked.addListener((tab) =&gt; {
+ browser.pageAction.hide(tab.id);
+ browser.tabs.update({url: CATGIFS});
+});
+
+browser.pageAction.onClicked.addListener(function () {
+});</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.html
new file mode 100644
index 0000000000..7133ca40bd
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.html
@@ -0,0 +1,58 @@
+---
+title: pageAction.openPopup()
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/openPopup
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - close
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/openPopup
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Ouvrez le menu contextuel de l'action de la page.</div>
+
+<div></div>
+
+<div>
+<p>Vous pouvez uniquement appeler cette fonction à partir du gestionnaire pour une <a href="/fr/Add-ons/WebExtensions/User_actions">action utilisateur</a>.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.pageAction.openPopup()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_retourné">Valeur retourné</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui est résolue sans arguments.</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.pageAction.openPopup", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ouvrez la fenêtre contextuelle lorsque l'utilisateur sélectionne un élément de menu contextuel :</p>
+
+<pre class="brush: js">browser.menus.create({
+ id: "open-popup",
+ title: "open popup",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() =&gt; {
+ browser.pageAction.openPopup();
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/seticon/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/seticon/index.html
new file mode 100644
index 0000000000..223ded5321
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/seticon/index.html
@@ -0,0 +1,130 @@
+---
+title: pageAction.setIcon()
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/setIcon
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - pageAction
+ - setIcon
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/setIcon
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit l'icône de l'action de la page</p>
+
+<p>Vous pouvez spécifié un seule icône comme chemin d'accès à un fichier image ou un objet {{WebExtAPIRef('pageAction.ImageDataType')}}.</p>
+
+<p>Vous pouvez spécifier plusieurs icônes de différentes tailles en fournissant un dictionnaire contenant plusieurs chemins ou objets <code>ImageData</code>. Cela signifie que l'icône ne doit pas être mise à l'échelle pour un périphérique avec une densité de pixels différente.</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 settingIcon = browser.pageAction.setIcon(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet contenant les propriétés <code>imageData</code> ou <code>path</code> , et éventuellement une propriété <code>tabId</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>imageData</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>{{WebExtAPIRef('pageAction.ImageDataType')}}</code> ou <code><code>object</code></code>. C'est un objet <code>ImageData</code> unique ou un dictionnaire d'objets.</p>
+
+ <p>Utilisation un dictionnaire d'objets pour spécifier de multiple objets <code>ImageData</code> dans différentes tailles, de sorte que l'icône ne doit pas être mise à l'échelle pour un périphérique avec une densité de pixel différente. Si <code>imageData</code> est un dictionnaire, la valeur  de chaque propriété est un objet <code>ImageData</code> , et le nom est sa taille, comme ceci :</p>
+
+ <pre class="brush: json line-numbers language-json"><code class="language-json"><span class="punctuation token">{</span>
+ <span class="key token">16:</span> <span class="string token">image16</span><span class="punctuation token">,</span>
+ <span class="key token">32:</span> image32
+<span class="punctuation token">}</span></code></pre>
+
+ <p>Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir <a href="/fr/Add-ons/WebExtensions/manifest.json/browser_action#Choisir_la_tailles_des_icônes">Choisir les tailles d'icônes</a> pour plus d'informations à ce sujet.</p>
+ </dd>
+ <dt><code>path</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code><code>string</code></code> ou <code><code>object</code></code>. C'est soit un chemin relatif vers un fichier icône  ou objet dictionnaire. </p>
+
+ <p>Utilisez un dictionnaire d'objets pour spécifier plusieurs fichiers d'icônes de différentes tailles, de sorte que l'icône ne doit pas être mise à l'échelle pour un périphérique avec une densité de pixels différente. Si <code>path</code> est un dictionnaire, la valeur de chaque propriété est un chemin relatif, et son nom est sa taille, comme ceci :</p>
+
+ <pre class="brush: json line-numbers language-json"><code class="language-json"><span class="punctuation token">{</span>
+ <span class="key token">16:</span> "path/to/image16.jpg<span class="punctuation token">",</span>
+ <span class="key token">32:</span> "path/to/image32.jpg<span class="punctuation token">"</span>
+<span class="punctuation token">}</span></code></pre>
+
+ <p>Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir <a href="/fr/Add-ons/WebExtensions/manifest.json/browser_action#Choisir_la_tailles_des_icônes">Choisir les tailles d'icônes</a> pour plus d'informations à ce sujet.</p>
+ </dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dont vous voulez définir l'icône.</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 accompli sans arguments une fois l'icône définie.</p>
+ </dd>
+ <dd>
+ <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>
+ {{Compat("webextensions.api.pageAction.setIcon")}}
+
+ <h2 id="Exemples">Exemples</h2>
+
+ <p>Définissez l'icône de l'action de la page lorsque l'utilisateur clique dessus :</p>
+
+ <pre class="brush: js">browser.pageAction.onClicked.addListener((tab) =&gt; {
+  browser.pageAction.setIcon({
+    tabId: tab.id, path: "icons/icon-48.png"
+  });
+});</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+ <div class="hidden">
+ <pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+ </div>
+ </dd>
+</dl>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.html
new file mode 100644
index 0000000000..61024b43b6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.html
@@ -0,0 +1,107 @@
+---
+title: pageAction.setPopup()
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/setPopup
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - pageAction
+ - setPopup
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/setPopup
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit le document HTML à ouvrir en tant que fenêtre contextuelle lorsque l'utilisateur clique sur l'icône de l'action de la page.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.pageAction.setPopup(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>.  L'ID de l'onglet pour lequel vous souhaitez définir la fenêtre contextuelle.</dd>
+ <dt><code>popup</code></dt>
+ <dd><code>string</code>. URL vers le fichier HTML à afficher dans un popup. Si elle est définie sur une chaîne vide (''), aucune fenêtre contextuelle n'est 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.pageAction.setPopup")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ecoutez les événements {{WebExtAPIRef("tabs.onUpdated")}} et basculez le popup si le statut de chargement change :</p>
+
+<pre class="brush: js">browser.tabs.onUpdated.addListener((tabId, changeInfo, tabInfo) =&gt; {
+ if (changeInfo.status) {
+ browser.pageAction.show(tabId);
+ if (changeInfo.status == "loading") {
+ browser.pageAction.setPopup({
+ tabId,
+ popup: "/popup/loading.html"
+ });
+ } else {
+ browser.pageAction.setPopup({
+ tabId,
+ popup: "/popup/complete.html"
+ });
+ }
+ }
+});</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.html
new file mode 100644
index 0000000000..1f5d49bf49
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.html
@@ -0,0 +1,103 @@
+---
+title: pageAction.setTitle()
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/setTitle
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - pageAction
+ - setTitle
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/setTitle
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit le titre de la page action. Le titre est affiché dans une info-bulle lorsque l'utilisateur survole l'action de la page</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.pageAction.setTitle(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dont vous voulez définir le titre.</dd>
+ <dt><code>title</code></dt>
+ <dd><code>string</code>. Le texte de l'info-bulle.</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.pageAction.setTitle")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Chaque fois qu'un onglet est mis à jour, affichez l'action de la page pour cet onglet et définissez son titre pour afficher l'ID de l'onglet :</p>
+
+<pre class="brush: js">browser.tabs.onUpdated.addListener((tabId, changeInfo, tabInfo) =&gt; {
+ browser.pageAction.show(tabId);
+ browser.pageAction.setTitle({
+ tabId: tabId,
+ title: "Tab ID: " + tabId
+ });
+});
+</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.html
new file mode 100644
index 0000000000..c0074f595c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.html
@@ -0,0 +1,107 @@
+---
+title: pageAction.show()
+slug: Mozilla/Add-ons/WebExtensions/API/pageAction/show
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - pageAction
+ - show
+translation_of: Mozilla/Add-ons/WebExtensions/API/pageAction/show
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Affiche l'action de la page pour un onglet donné. L'action de la page est affichée chaque fois que l'onglet donné est l'onglet actif.</p>
+
+<p><code>show()</code> remplace la correspondance de motifs, de sorte que l'action page sera affichée dans l'onglet spécifié même si <a href="https://developer.mozilla.org/Add-ons/WebExtensions/manifest.json/page_action"><code>show_matches</code></a> e correspond pas à l'URL ou si <a href="https://developer.mozilla.org/Add-ons/WebExtensions/manifest.json/page_action"><code>hide_matches</code></a> ne correspond pas.</p>
+
+<p>Notez que l'appel à <code>show()</code> n'a aucun effet sur un onglet sans contenu chargé.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.pageAction.show(
+ tabId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet pour lequel vous souhaitez afficher l'action de la page.</dd>
+ <dt>
+ <h3 id="Valeur_renvoyée">Valeur renvoyée</h3>
+
+ <p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec  <code>undefined</code>.</p>
+ </dt>
+</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.pageAction.show")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cette exemple montre l'action de la page pour l'onglet actif lorsque l'utilisateur sélectionne un élément de menu contextuel. Notez que vous aurez besoin de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>contextMenus</code>  dans votre <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest</a> pour créer des éléments de menu contextuel.</p>
+
+<pre class="brush: js">browser.contextMenus.create({
+ id: "show",
+ title: "Show page action"
+});
+
+browser.contextMenus.onClicked.addListener(function(info, tab) {
+ if (info.menuItemId == "show") {
+ browser.pageAction.show(tab.id);
+ }
+});
+</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/pageAction"><code>chrome.pageAction</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/page_action.json"><code>page_action.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.html b/files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.html
new file mode 100644
index 0000000000..dc1a48f63a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.html
@@ -0,0 +1,95 @@
+---
+title: permissions.contains()
+slug: Mozilla/Add-ons/WebExtensions/API/permissions/contains
+tags:
+ - API
+ - Add-ons
+ - Contains
+ - Method
+ - Permissions
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/permissions/contains
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Vérifiez si l'extension a les permissions listées dans l'objet  {{WebExtAPIRef("permissions.Permissions")}}.</p>
+
+<p>L'argument <code>Permissions</code> peut contenir une propriété origine, qui est un tableau de <a href="/en-US/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions hôtes</a>, ou une propriété  <code>permissions</code> , qui est un tableau de <a href="/en-US/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permissions API</a>, ou les deux.</p>
+
+<p>Il s'agit d'une fonction asynchrone qui renvoie une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promesse</a></code>. La promesse est remplie avec true  seulement si toute l'extension possède actuellement toutes les permissions données. Pour les permissions d'hôtes, si le modèle de permissions if the extension's permissions <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Match_patterns">pattern-match</a> the permissions listed in <code>origins</code>, then they are considered to match.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var getContains = browser.permissions.contains(
+ permissions // Permissions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>permissions</code></dt>
+ <dd>Un objet {{WebExtAPIRef("permissions.Permissions")}} .</dd>
+</dl>
+
+<h3 id="Valeur_renvoyée">Valeur renvoyée</h3>
+
+<p>Une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promesse</a></code> qui sera remplie avec  <code>true</code> si l'extension possède déjà toutes les permissions listées dans l'argument des <code>permissions</code> , ou <code>false</code> dans le cas contraire.</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.permissions.contains")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">// Extension permissions are:
+// "webRequest", "tabs", "*://*.mozilla.org/*"
+
+var testPermissions1 = {
+ origins: ["*://mozilla.org/"],
+ permissions: ["tabs"]
+};
+
+browser.permissions.contains(testPermissions1).then((result) =&gt; {
+ console.log(result); // true
+});
+
+var testPermissions2 = {
+  origins: ["*://mozilla.org/"],
+  permissions: ["tabs", "alarms"]
+};
+
+browser.permissions.contains(testPermissions2).then((result) =&gt; {
+ console.log(result); // false, "alarms" doesn't match
+});
+
+var testPermissions3 = {
+  origins: ["https://developer.mozilla.org/"],
+  permissions: ["tabs", "webRequest"]
+};
+
+browser.permissions.contains(testPermissions3).then((result) =&gt; {
+ console.log(result); // true: "https://developer.mozilla.org/"
+}); // matches: "*://*.mozilla.org/*"
+
+var testPermissions4 = {
+  origins: ["https://example.org/"]
+};
+
+browser.permissions.contains(testPermissions4).then((result) =&gt; {
+ console.log(result); // false, "https://example.org/"
+}); // does not match
+
+</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/permissions"><code>chrome.permissions</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/permissions/getall/index.html b/files/fr/mozilla/add-ons/webextensions/api/permissions/getall/index.html
new file mode 100644
index 0000000000..05e516dc19
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/getall/index.html
@@ -0,0 +1,56 @@
+---
+title: permissions.getAll()
+slug: Mozilla/Add-ons/WebExtensions/API/permissions/getAll
+tags:
+ - API
+ - Add-ons
+ - Method
+ - Permissions
+ - Reference
+ - WebExtensions
+ - getAll
+translation_of: Mozilla/Add-ons/WebExtensions/API/permissions/getAll
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère un objet {{WebExtAPIRef("permissions.Permissions")}} contenant toutes les permissions actuellement acccordées à l'extension.</p>
+
+<p>Il s'agit d'une fonction asynchrone qui retourne 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.permissions.getAll()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_renvoyée">Valeur renvoyée</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un objet {{WebExtAPIRef("permissions.Permissions")}} contenant toutes les permissions actuellement accordées à l'extensions. Cela inclut toutes les permissions que l'extension à répertoriées dans la clé de  <code><a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permissions</a></code> , et toutes les permissions répertoriées dans  <code><a href="/fr/Add-ons/WebExtensions/manifest.json/optional_permissions">optional_permissions</a></code> que l'extension a été accordée en appelant  {{WebExtAPIRef("permissions.request()")}}.</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.permissions.getAll")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">// Extension permissions are:
+// "webRequest", "tabs", "*://*.mozilla.org/*"
+
+browser.permissions.getAll().then((result) =&gt; {
+ console.log(result.permissions); // [ "webRequest", "tabs" ]
+ console.log(result.origins) // [ "*://*.mozilla.org/*" ]
+});</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/permissions"><code>chrome.permissions</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/permissions/index.html b/files/fr/mozilla/add-ons/webextensions/api/permissions/index.html
new file mode 100644
index 0000000000..b061700bf4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/index.html
@@ -0,0 +1,84 @@
+---
+title: permissions
+slug: Mozilla/Add-ons/WebExtensions/API/permissions
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Permissions
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/permissions
+---
+<div>{{AddonSidebar}}</div>
+
+<div>Permet aux extensions de demander des permissions supplémentaires lors de l'exécution, après leur installation.</div>
+
+<div> </div>
+
+<p>Les extensions ont besoin de permissions pour accéder aux nombreuses API WebExtension les plus puissantes. Ils peuvent demander des permissions lors de l'installation en incluant les permissions dont ils ont besoin dans la clé du manifesst.json des <code><a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permissions</a></code>. Les principaux avantages de demander des permissions au moment de l'installation sont les suivants:</p>
+
+<ul>
+ <li>L'utilisateur est seulement demandé une fois, donc il est moins perturbateur pour eux et une décision plus simple</li>
+ <li>L'extension peut compter sur l'accès aux API dont elle a besoin, car si elle est en cours d'exécution, les permissions ont été accordées.</li>
+</ul>
+
+<p>Il n'y a pas encore d'interface graphique simple permettant aux utilisateurs d'afficher les permissions des modules complémentaires WebExtensions installés. Les utilisateurs doivent utiliser about:debugging, puis allez dans la section des modules complémentaires, puis utilisez le lien "Manifest Url" pour le module complémentaire. Cela montrera le json brut, qui inclut un bloc "permissions" qui montre les permissions utilisées par l'addon.</p>
+
+<p>Avec l'API de permissions, une extension peut demander des permissions supplémentaires lors de l'exécution. Ces permissions doivent être listées dans la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/optional_permissions">optional_permissions</a></code> du manifest.json. Notez que certaines permissions ne sont pas autorisées dans <code>optional_permissions</code>. Les principaux avantages de ceci sont :</p>
+
+<ul>
+ <li>L'extension peut s'exécuter avec un plus petit nombre de permissions, sauf lorsqu'elle en a réellement besoin</li>
+ <li>L'extension peut gérer le refus de permission de manière gracieuse au lieu de présenter à l'utilisateur un choix global "tout ou rien" au moment de l'installation. Vous pouvez toujours obtenir beaucoup de cette carte d'extension sans lui donner accès à votre emplacement, par exemple.</li>
+ <li>
+ <p>L'extension peut avoir besoin des <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions hôtes</a>, mais ne sait pas à l'installation exactement quelles permissions d'hôte qu'il a besoin. Par exemple, la liste des hôtes peut être un paramètre utilisateur. Dans ce scénario, demander une gamme plus spécifique d'hôtes au moment de l'exécution peut être une alternative à demander "&lt;all_urls&gt;" au moment de l'installation.</p>
+ </li>
+</ul>
+
+<div>Pour utiliser l'API de permissions, déterminez les permissions que votre extension peut demander lors de l'exécution, et indiquez-les dans <code><a href="/fr/Add-ons/WebExtensions/manifest.json/optional_permissions">optional_permissions</a></code>. Après cela, vous pouvez demander toutes les permissions incluses dans  <code>optional_permissions</code>. Les demandes peuvent uniquement être effectuées dans le gestionnaire pour une action de l'utilisateur (par exemple, un gestionnaire de clics).</div>
+
+<div> </div>
+
+<div>Pour des conseils sur la conception de votre demande d'autorisations d'exécution, afin de maximiser la probabilité que les utilisateurs les accordent, consultez la section <a href="/Add-ons/WebExtensions/demander_les_bonnes_permissions#Demander_les_permissions_%C3%A0_%C3%A9x%C3%A9cuter">Demande de permissions à exécuter</a></div>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("permissions.Permissions")}}</dt>
+ <dd>Représente un ensemble de permissions.</dd>
+</dl>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("permissions.contains()")}}</dt>
+ <dd>Découvrez si l'extensions a le jeu de permissions donné.</dd>
+ <dt>{{WebExtAPIRef("permissions.getAll()")}}</dt>
+ <dd>Obtenez toutes les permissions que cette extension a actuellement.</dd>
+ <dt>{{WebExtAPIRef("permissions.remove()")}}</dt>
+ <dd>Renoncer à un ensemble de permissions.</dd>
+ <dt>{{WebExtAPIRef("permissions.request()")}}</dt>
+ <dd>Demander un ensemble de permissions.</dd>
+</dl>
+
+<h2 id="Event_handlers">Event handlers</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("permissions.onAdded")}}</dt>
+ <dd>Activé lorsqu'une nouvelle permission est accordée.</dd>
+ <dt>{{WebExtAPIRef("permissions.onRemoved")}}</dt>
+ <dd>Déclenché lorsque une permission est supprimée.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.permissions")}}</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/permissions"><code>chrome.permissions</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/permissions/onadded/index.html b/files/fr/mozilla/add-ons/webextensions/api/permissions/onadded/index.html
new file mode 100644
index 0000000000..d746cb9660
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/onadded/index.html
@@ -0,0 +1,75 @@
+---
+title: permissions.onAdded
+slug: Mozilla/Add-ons/WebExtensions/API/permissions/onAdded
+tags:
+ - API
+ - Add-ons
+ - Evènement
+ - Permissions
+ - Reference
+ - WebExtensions
+ - onAdded
+translation_of: Mozilla/Add-ons/WebExtensions/API/permissions/onAdded
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Activé lorsque l'extension a accordé de nouvelles permissions.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.permissions.onAdded.addListener(listener)
+browser.permissions.onAdded.removeListener(listener)
+browser.permissions.onAdded.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute une é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érifier si le <code>listener</code> est enregistré pour cet événement. Retourne <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 produira. La fonction passera les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>permissions</code></dt>
+ <dd>Objet {{WebExtAPIRef("permissions.Permissions")}} contenant les permissions qui ont été accordées.</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>
+
+<div>{{Compat("webextensions.api.permissions.onAdded")}}</div>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleAdded(permissions) {
+ console.log(`New API permissions: ${permissions.permissions}`);
+ console.log(`New host permissions: ${permissions.origins}`);
+}
+
+browser.permissions.onAdded.addListener(handleAdded);
+</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/permissions"><code>chrome.permissions</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/permissions/onremoved/index.html b/files/fr/mozilla/add-ons/webextensions/api/permissions/onremoved/index.html
new file mode 100644
index 0000000000..9990c0c077
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/onremoved/index.html
@@ -0,0 +1,75 @@
+---
+title: permissions.onRemoved
+slug: Mozilla/Add-ons/WebExtensions/API/permissions/onRemoved
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Permissions
+ - Reference
+ - WebExtensions
+ - onRemoved
+translation_of: Mozilla/Add-ons/WebExtensions/API/permissions/onRemoved
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Activé lorsque certaines permissions sont supprimés de l'extension.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.permissions.onRemoved.addListener(listener)
+browser.permissions.onRemoved.removeListener(listener)
+browser.permissions.onRemoved.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 a supprimée.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est enregistré dans l'événement. Retourne <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 ne sera appelée lorsque cet événement se produira. La fonction sera passée avec les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>permissions</code></dt>
+ <dd>L'objet {{WebExtAPIRef("permissions.Permissions")}} contenant les permissions qui ont été supprimées.</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.permissions.onRemoved")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleRemoved(permissions) {
+ console.log(`Removed API permissions: ${permissions.permissions}`);
+ console.log(`Removed host permissions: ${permissions.origins}`);
+}
+
+browser.permissions.onRemoved.addListener(handleRemoved);
+</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/permissions"><code>chrome.permissions</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/permissions/permissions/index.html b/files/fr/mozilla/add-ons/webextensions/api/permissions/permissions/index.html
new file mode 100644
index 0000000000..3b88f991c8
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/permissions/index.html
@@ -0,0 +1,41 @@
+---
+title: Permissions
+slug: Mozilla/Add-ons/WebExtensions/API/permissions/Permissions
+tags:
+ - API
+ - Add-ons
+ - Permissions
+ - Reference
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/permissions/Permissions
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet <code>Permissions</code> représente une collection de permissions.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Un {{jsxref("object")}} avec les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>origins</code>{{optional_inline}}</dt>
+ <dd>Un tableau de <a href="/fr/Add-ons/WebExtensions/Match_patterns">modèles de correspondance</a>, représentant les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions de l'hôte</a>.</dd>
+ <dt><code>permissions</code>{{optional_inline}}</dt>
+ <dd>Un tableau de permissions nommées, y compris les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permissions d'API </a> et les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Clipboard_access">permissions du presse-papiers</a>.</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.permissions.Permissions")}}</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/permissions"><code>chrome.permissions</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/permissions/remove/index.html b/files/fr/mozilla/add-ons/webextensions/api/permissions/remove/index.html
new file mode 100644
index 0000000000..2a1296e0c2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/remove/index.html
@@ -0,0 +1,70 @@
+---
+title: permissions.remove()
+slug: Mozilla/Add-ons/WebExtensions/API/permissions/remove
+tags:
+ - API
+ - Add-ons
+ - Method
+ - Permissions
+ - Reference
+ - WebExtensions
+ - remove
+translation_of: Mozilla/Add-ons/WebExtensions/API/permissions/remove
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Demander d'abandonner les permissions listées dans l'objet {{WebExtAPIRef("permissions.Permissions")}}.</p>
+
+<p>L'argument <code>Permissions</code> peut contenir soit une propriété  <code>origins</code> ,qui est un tableau de <a href="/en-US/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions d'hôte</a> , ou une propriété <code>permissions</code>, qui est un tableau de <a href="/en-US/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permissions d'API</a>, ou les deux. Les permissions  doivent provenir de l'ensemble des permissions définies dans la clé <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/optional_permissions">optional_permissions</a></code> du manifest.json.</p>
+
+<p>Il s'agit d'une fonction asynchrone qui renvoie une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promesse</a></code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var removing = browser.permissions.remove(
+ permissions // Permissions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>permissions</code></dt>
+ <dd>Un objet {{WebExtAPIRef("permissions.Permissions")}}.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promesse</a></code> qui sera remplie avec <code>true</code> si les permissions répertoriées dans l'argument <code>permissions</code> ont été supprimées, ou <code>false</code> dans le cas contraire.</p>
+
+<h2 id="Browser_compatibility">Browser compatibility</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.permissions.remove")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code ajoute un gestionnaire de clic qui supprime une permission donnée.</p>
+
+<pre class="brush: js">const permissionToRemove = {
+ permissions: ["history"]
+}
+
+function remove() {
+ console.log("removing");
+ browser.permissions.remove(permissionToRemove).then(result =&gt; {
+ console.log(result);
+ });
+}
+
+document.querySelector("#remove").addEventListener("click", remove);</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/permissions"><code>chrome.permissions</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/permissions/request/index.html b/files/fr/mozilla/add-ons/webextensions/api/permissions/request/index.html
new file mode 100644
index 0000000000..71e7e947f3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/request/index.html
@@ -0,0 +1,90 @@
+---
+title: permissions.request()
+slug: Mozilla/Add-ons/WebExtensions/API/permissions/request
+tags:
+ - API
+ - Add-ons
+ - Method
+ - Permissions
+ - Reference
+ - WebExtensions
+ - request
+translation_of: Mozilla/Add-ons/WebExtensions/API/permissions/request
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Demandez l'ensemble des permissions répertoriées dans l'objet {{WebExtAPIRef("permissions.Permissions")}}.</p>
+
+<p>L'argument <code>Permissions</code> peut contenir soit une propriété  <code>origins</code> , qui est un tableau de <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permissions d'hôte</a>, soit une propriété <code>permissions</code> , qui est un tableau de <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permissions d'API</a>, ou les deux. Les permissions doivent provenir de l'ensemble des permissions définies dans la clé  <code><a href="/fr/Add-ons/WebExtensions/manifest.json/optional_permissions">optional_permissions</a></code> du manifest.json. La propriété <code>origins</code> qui correspondent à un sous-ensemble des hôtes correspondant à une  permission facultative : par exemple, si optional_permissions inclut "*://mozilla.org/", alors  <code>permissions.origins</code> peut inclure  "https://developer.mozilla.org/".</p>
+
+<p>La demande ne peut être faite qu'à l'intérieur du gestionnaire pour une <a href="/fr/Add-ons/WebExtensions/User_actions">action utilisateur</a>.</p>
+
+<p>Selon les circonstances, le navigateur traitera probablement la demande en demandant à l'utilisateur s'il doit accorder les permissions demandées. Une seule requête est faite pour toutes les permissions demandées: donc toutes les permissions sont accordées ou aucune d'entre elles ne l'est.</p>
+
+<p>Toutes les autorisations accordées sont conservées par l'extension, même en cas de mise à niveau et de désactivation / activation du cycle.</p>
+
+<p>Il s'agit d'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 requesting = browser.permissions.request(
+ permissions // Permissions object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>permissions</code></dt>
+ <dd>Un objet {{WebExtAPIRef("permissions.Permissions")}}</dd>
+</dl>
+
+<h3 id="Return_value">Return value</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec <code>true</code> si l'extension a reçu toutes les permissions répertoriées dans l'argument des <code>permissions</code> , ou <code>false</code> dans le cas contraire.</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.permissions.request")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code ajoute un gestionnaire de clics qui demande diverses permissions, puis enregistre le résultat de la demande et les permissions de l'extension une fois la requête terminée.</p>
+
+<pre class="brush: js">const permissionsToRequest = {
+ permissions: ["bookmarks", "history"],
+ origins: ["https://developer.mozilla.org/"]
+}
+
+function requestPermissions() {
+
+ function onResponse(response) {
+ if (response) {
+ console.log("Permission was granted");
+ } else {
+ console.log("Permission was refused");
+ }
+ return browser.permissions.getAll();
+ }
+
+ browser.permissions.request(permissionsToRequest)
+ .then(onResponse)
+ .then((currentPermissions) =&gt; {
+ console.log(`Current permissions:`, currentPermissions);
+ });
+}
+
+document.querySelector("#request").addEventListener("click", requestPermissions);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Actuellement un <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1411873">bug avec la demande d'origines</a> et la <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1382953">demande des permissions sur la page about:addons</a>.</p>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/permissions"><code>chrome.permissions</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/pkcs11/getmoduleslots/index.html b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/getmoduleslots/index.html
new file mode 100644
index 0000000000..b09cb8feec
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/getmoduleslots/index.html
@@ -0,0 +1,94 @@
+---
+title: pkcs11.getModuleSlots()
+slug: Mozilla/Add-ons/WebExtensions/API/pkcs11/getModuleSlots
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - getModuleSlots
+ - pkcs11
+translation_of: Mozilla/Add-ons/WebExtensions/API/pkcs11/getModuleSlots
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Enumérer les emplacements d'un module. Cette fonction renvoie un tableau contenant une entrée pour chaque emplacement. Chaque entrée contient le nom de l'emplacement et, si l'emplacement contient un jeton, des informations sur le jeton.</p>
+
+<p>Vous ne pouvez appeler cela que pour un module installé dans Firefox</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 getting = browser.pkcs11.getModuleSlots(
+ name // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Nom du module. Cela doit correspondre à la propriété <code>name</code> dans le <a href="/fr/Add-ons/WebExtensions/Native_manifests#PKCS_11_manifests">manifest PKCS #11</a> pour le module.</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 tableau d'objets, un pour chaque emplacement auquel le module donne accès. Chaque objet a deux propriétés :</p>
+
+<ul>
+ <li><code>name</code>: le nom de l'emplacement</li>
+ <li><code>token</code>: si un jeton est présent dans cet emplacement, un objet <code>Token</code>. Si aucun le jeton n'est présent dans l'emplacement, la propriété est <code>null</code>.</li>
+</ul>
+
+<p><code>Token</code> Les objets ont les propriétés suivantes :</p>
+
+<dl>
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Nom du jeton.</dd>
+ <dt><code>manufacturer</code></dt>
+ <dd><code>string</code>. Nom du jeton fabriqué.</dd>
+ <dt><code>HWVersion</code></dt>
+ <dd><code>string</code>. Version matérielle, en tant que numéro de version PKCS #11 (deux entiers  32-bit séparés par un point, comme "1.0".</dd>
+ <dt><code>FWVersion</code></dt>
+ <dd><code>string</code>. Version du micrologiciel, en tant que numéro de version PKCS #11 (deux 32-bit séparés par un point, comme "1.0".</dd>
+ <dt><code>serial</code></dt>
+ <dd><code>string</code>. Numéro de série, dont le format est défini par la spécification de jeton.</dd>
+ <dt><code>isLoggedIn</code></dt>
+ <dd><code>boolean</code>: <code>true</code> si le jeton est déjà connecté, <code>false</code> sinon.</dd>
+</dl>
+
+<p>Si le module n'a pas pu être trouvé ou qu'une autre erreur se produit, la promise sera rejetée avec un message d'erreur.</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.pkcs11.getModuleSlots")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Installe un module, puis dresse la liste de ses emplacements et liste des jetons qu'ils contiennent :</p>
+
+<pre class="brush: js">function onInstalled() {
+ return browser.pkcs11.getModuleSlots("my_module");
+}
+
+function onGotSlots(slots) {
+ for (slot of slots) {
+ console.log(`Slot: ${slot.name}`);
+ if (slot.token) {
+ console.log(`Contains token: ${slot.token.name}`);
+ } else {
+ console.log('Is empty');
+ }
+ }
+}
+
+browser.pkcs11.installModule("my_module")
+.then(onInstalled)
+.then(onGotSlots);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.html b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.html
new file mode 100644
index 0000000000..84386b0441
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.html
@@ -0,0 +1,90 @@
+---
+title: Approvisionnement PKCS
+slug: Mozilla/Add-ons/WebExtensions/API/pkcs11
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - WebExtensions
+ - pkcs11
+translation_of: Mozilla/Add-ons/WebExtensions/API/pkcs11
+---
+<div>{{AddonSidebar}}</div>
+
+<p>L'API <code>pkcs11</code> permet à une extension d'énumérer les modules de sécurité <a href="https://en.wikipedia.org/wiki/PKCS_11">PKCS #11</a>, et de rendre accessibles au navigateur en tant que sources clés et de certificats.</p>
+
+<p>Pour utiliser cette API, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "pkcs11".</p>
+
+<h2 id="Utilisation_de_la_boîte_de_dialogue_Préférences_Firefox_pour_installer_les_modules_PKCS_11">Utilisation de la boîte de dialogue Préférences Firefox pour installer les modules PKCS #11</h2>
+
+<p>Effectuez les étapes suivantes :</p>
+
+<ol>
+ <li>
+ <p>Sauvegardez le module PKCS #11 dans un emplacement permanent sur votre ordinateur local</p>
+ </li>
+ <li>
+ <p>Sélectonnez <strong>Outils &gt; Options</strong> ou sélectionnez le <strong>menu Firefox</strong> puis <strong>Options</strong></p>
+ </li>
+ <li>
+ <p>Une fois la page Options ouverte, sélectionnez <strong>Vie privée &amp; Sécurité</strong></p>
+ </li>
+ <li>
+ <p>Faites défiler vers le bas de la page et sous <strong>Certificats</strong> ou tapez sur <strong>Dispositifs de sécurité...<br>
+ <img alt="" src="https://mdn.mozillademos.org/files/16399/device_manager.png" style="border: 1px solid black; display: block; height: 320px; margin: 0px auto; width: 600px;"></strong></p>
+ </li>
+ <li>
+ <p>Cliquez ou appuyez sur le bouton <strong>Charger</strong><br>
+ <img alt="" src="https://mdn.mozillademos.org/files/16400/load_device_driver.png" style="display: block; margin: 0 auto;"></p>
+ </li>
+ <li>
+ <p>Entrez un nom pour le module de sécurité, tel que "<em>Ma Base de données Client</em>"</p>
+
+ <div class="blockIndicator warning">
+ <p>Faites attention à l'utilisation de caractères internationaux car il y a actuellement un bogue dans Firefox où les caractères internationaux peuvent causer des problèmes.</p>
+ </div>
+ </li>
+ <li>
+ <p>Choisir <strong>Parcourir...</strong> pour trouver l'emplacement du module PKCS #11 sur votre ordinateur local, puis cliquez ou appuyez sur <strong>OK</strong> pour confirmer.</p>
+ </li>
+</ol>
+
+<ol>
+</ol>
+
+<h2 id="Provisionnement_des_modules_PKCS_11">Provisionnement des modules PKCS #11</h2>
+
+<div class="blockIndicator note">
+<p><strong>Note:</strong> A partir de Firefox 58, les extensions peuvent utiliser l'API <a href="/fr/Add-ons/WebExtensions/API/pkcs11">pkcs11</a> pour énumérer les modules PKCS #11 et les rendre accessibles au navigateur comme sources de clés et certificats.</p>
+</div>
+
+<p>Il y a 2 pré-requis pour pouvoir utiliser cette API:</p>
+
+<ul>
+ <li>un ou plusieurs modules PKCS # 11 doivent être installés sur l'ordinateur de l'utilisateur</li>
+ <li>pour chaque module PKCS # 11 installé, il doit y avoir un fichier <a href="/fr/Add-ons/WebExtensions/manifests_native">manifest natif</a>  qui permet au navigateur de localiser le module.</li>
+</ul>
+
+<p>Très probablement, l'utilisateur ou l'administrateur du périphérique installerait le module <code>PKCS #11</code>, et son installateur installerait le fichier de manifeste natif en même temps.</p>
+
+<p>Cependant, le module et le manifeste ne peuvent pas être installés dans le cadre du processus d'installation de l'extension.</p>
+
+<p>Pour plus de détails sur le contenu et l'emplacement du fichier de manifeste, voir <a href="/fr/Add-ons/WebExtensions/Native_manifests">Manifest natifs</a>.</p>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("pkcs11.getModuleSlots()")}}</dt>
+ <dd>Pour chaque emplacement dans un module, obtenez son nom et s'il contient un jeton.</dd>
+ <dt>{{WebExtAPIRef("pkcs11.installModule()")}}</dt>
+ <dd>Installe le module PKCS # 11 nommé</dd>
+ <dt>{{WebExtAPIRef("pkcs11.isModuleInstalled()")}}</dt>
+ <dd>Vérifie si le module PKCS # 11 nommé est installé.</dd>
+ <dt>{{WebExtAPIRef("pkcs11.uninstallModule()")}}</dt>
+ <dd>Désinstalle le module PKCS # 11 nommé.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.pkcs11", 1, 1)}} {{WebExtExamples("h2")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.html b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.html
new file mode 100644
index 0000000000..c9b87eb44d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.html
@@ -0,0 +1,73 @@
+---
+title: pkcs11.installModule()
+slug: Mozilla/Add-ons/WebExtensions/API/pkcs11/installModule
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - installModule
+ - pkcs11
+translation_of: Mozilla/Add-ons/WebExtensions/API/pkcs11/installModule
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Installe le module PKCS # 11 nommé, le rendant disponible pour Firefox</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 installing = browser.pkcs11.installModule(
+ name, // string
+ flags // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Nom du module à installer. Cela doit correspondre à la propriété <code>name</code> property dans le <a href="/fr/Add-ons/WebExtensions/Native_manifests#PKCS_11_manifests">manifest PKCS #11</a> pour le module.</dd>
+ <dt><code>flags</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Drapeaux à transmettre au module.</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 accompli sans arguments une fois le module installé.</p>
+
+<p>Si le module n'a pas pu être trouvé ou qu'une autre erreur se produit, la promise sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Browser_compatibility">Browser compatibility</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.pkcs11.installModule", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Installe un module, puis dresse la liste de ses emplacements et liste les jetons qu'ils contiennent :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onInstalled</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">return</span> browser<span class="punctuation token">.</span>pkcs11<span class="punctuation token">.</span><span class="function token">getModuleSlots</span><span class="punctuation token">(</span><span class="string token">"my_module"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">onGotSlots</span><span class="punctuation token">(</span>slots<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">for</span> <span class="punctuation token">(</span>slot <span class="keyword token">of</span> slots<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="template-string token"><span class="string token">`Slot: </span><span class="interpolation token"><span class="interpolation-punctuation punctuation token">${</span>slot<span class="punctuation token">.</span>name<span class="interpolation-punctuation punctuation token">}</span></span><span class="string token">`</span></span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="keyword token">if</span> <span class="punctuation token">(</span>slot<span class="punctuation token">.</span>token<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="template-string token"><span class="string token">`Contains token: </span><span class="interpolation token"><span class="interpolation-punctuation punctuation token">${</span>slot<span class="punctuation token">.</span>token<span class="punctuation token">.</span>name<span class="interpolation-punctuation punctuation token">}</span></span><span class="string token">`</span></span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span> <span class="keyword token">else</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">'Is empty'</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span>
+ <span class="punctuation token">}</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>pkcs11<span class="punctuation token">.</span><span class="function token">installModule</span><span class="punctuation token">(</span><span class="string token">"my_module"</span><span class="punctuation token">)</span>
+<span class="punctuation token">.</span><span class="function token">then</span><span class="punctuation token">(</span>onInstalled<span class="punctuation token">)</span>
+<span class="punctuation token">.</span><span class="function token">then</span><span class="punctuation token">(</span>onGotSlots<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.html b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.html
new file mode 100644
index 0000000000..b58f51da37
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.html
@@ -0,0 +1,57 @@
+---
+title: pkcs11.isModuleInstalled()
+slug: Mozilla/Add-ons/WebExtensions/API/pkcs11/isModuleInstalled
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - isModuleInstalled
+ - pkcs11
+translation_of: Mozilla/Add-ons/WebExtensions/API/pkcs11/isModuleInstalled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Vérifie si le module PKCS #11 nommé est actuellement installé dans Firefox.</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 checking = browser.pkcs11.isModuleInstalled(
+ name // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Nom du module à vérifier.</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 <code>true</code> si le module est installé, <code>false</code> sinon.</p>
+
+<p>Si une erreur se produit dans le module, la promise sera rejetée avec un message d'erreur.</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.pkcs11.isModuleInstalled", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Vérifie sir le module nommée "pkcs11_module" est installé :</p>
+
+<pre class="brush: js">function logIsInstalled(isInstalled) {
+ console.log(`Module is installed: ${isInstalled}`);
+}
+
+browser.pkcs11.isModuleInstalled("pkcs11_module").then(logIsInstalled);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.html b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.html
new file mode 100644
index 0000000000..a63cda122f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.html
@@ -0,0 +1,53 @@
+---
+title: pkcs11.uninstallModule()
+slug: Mozilla/Add-ons/WebExtensions/API/pkcs11/uninstallModule
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - pkcs11
+ - uninstallModule
+translation_of: Mozilla/Add-ons/WebExtensions/API/pkcs11/uninstallModule
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Désinstalle le module PKCS #11 nommé de Firefox.</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 uninstalling = browser.pkcs11.uninstallModule(
+ name // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Nom du module à désinstaller. Cela doit correspondre à la propriété <code>name</code> dans le <a href="/fr/Add-ons/WebExtensions/Native_manifests#PKCS_11_manifests">manifest PKCS #11</a> pour le module.</dd>
+</dl>
+
+<h3 id="Return_value">Return value</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera accompli sans arguments une fois le module désinstallée.</p>
+
+<p>Si le module n'a pas pu être trouvé ou qu'une autre erreur se produit, la promise sera rejetée avec un message d'erreur.</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.pkcs11.uninstallModule", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Désinstalle le module nommé "pkcs11_module" :</p>
+
+<pre class="brush: js">browser.pkcs11.uninstallModule("pkcs11_module");</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/privacy/index.html b/files/fr/mozilla/add-ons/webextensions/api/privacy/index.html
new file mode 100644
index 0000000000..f5b20c6494
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/privacy/index.html
@@ -0,0 +1,70 @@
+---
+title: privacy
+slug: Mozilla/Add-ons/WebExtensions/API/privacy
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Privacy
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/privacy
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Accédez et modifiez les différents paramètres du navigateur liés à la vie privée.</p>
+
+<p>Pour utiliser l'API de confidentialité, vous devez avoir <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">l'autorisation de l'API</a> "privacy".</p>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("privacy.network")}}</dt>
+ <dd>Accès et modification des paramètres de confidentialité relatifs au réseau.</dd>
+ <dt>{{WebExtAPIRef("privacy.services")}}</dt>
+ <dd>Accès et modification des paramètres de confidentialité relatifs aux services fournis par le navigateur ou les tiers.</dd>
+ <dt>{{WebExtAPIRef("privacy.websites")}}</dt>
+ <dd>Accès et modification des paramètres de confidentialité relatifs aux comportements des sites Web.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.privacy", 10, 1)}}</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/privacy"><code>chrome.privacy</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.html b/files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.html
new file mode 100644
index 0000000000..dcafa68717
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.html
@@ -0,0 +1,116 @@
+---
+title: privacy.network
+slug: Mozilla/Add-ons/WebExtensions/API/privacy/network
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Network
+ - Pricavy
+ - Property
+ - Reference
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/privacy/network
+---
+<div>{{AddonSidebar}}
+<p>La propriété {{WebExtAPIRef("privacy.network")}} contient des paramètres de configuration du réseau liés à la vie privée. Chaque propriété est un objet {{WebExtAPIRef("types.BrowserSetting")}}.</p>
+
+<p>Les valeurs par défaut de ces propriétés peuvent varier selon les navigateurs.</p>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt><code>networkPredictionEnabled</code></dt>
+ <dd>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est un booléen. Si il est défini à <code>true</code>, le navigateur tente d'accélérer la navigation Web avec la pré-résolution des entrées DNS, le pré-chargement des sites (en utilisant, par exemple, <code>&lt;link rel='prefetch' ...&gt;</code>), et en ouvrant de manière préemptive les connexions TCP et SSL aux serveurs.</dd>
+ <dt><code>peerConnectionEnabled</code></dt>
+ <dd>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est un booléen. Si il est défini à <code>false</code>, l'interface<code><a href="/fr/docs/Web/API/RTCPeerConnection">RTCPeerConnection</a></code> est désactivée. Notez que  <code><a href="/fr/docs/Web/API/MediaDevices/getUserMedia">getUserMedia()</a></code> n'est pas affectée par ce paramètre.</dd>
+ <dt><code>webRTCIPHandlingPolicy</code></dt>
+ <dd>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est une chaîne de caractères. Ce paramètre permet  aux utilisateurs de spécifier les compromissions de performance / confidentialité des médias qui affectent la façon dont le trafic  WebRTC sera acheminé et la quantité d'informations d'adresse locale exposées. Il peut prendre l'une des valeurs suivantes :<br>
+ <code>"default"<br>
+ "default_public_and_private_interfaces"<br>
+ "default_public_interface_only"<br>
+ "disable_non_proxied_udp"</code></dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.privacy.network")}}</p>
+
+<div class="hidden note">
+<p>The "Chrome incompatibilities" section is included from <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities"> https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a> using the <a href="/en-US/docs/Template:WebExtChromeCompat">WebExtChromeCompat</a> macro.</p>
+
+<p>If you need to update this content, edit <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities">https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a>, then shift-refresh this page to see your changes.</p>
+</div>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définissez la propriété <code>webRTCIPHandlingPolicy</code> :</p>
+
+<pre class="brush: js">function onSet(result) {
+ if (result) {
+ console.log("success");
+ } else {
+ console.log("failure");
+ }
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+
+ var getting = browser.privacy.network.webRTCIPHandlingPolicy.get({});
+ getting.then((got) =&gt; {
+ console.log(got.value);
+ if ((got.levelOfControl === "controlled_by_this_extension") ||
+ (got.levelOfControl === "controllable_by_this_extension")) {
+ var setting = browser.privacy.network.webRTCIPHandlingPolicy.set({
+ value: "default_public_interface_only"
+ });
+ setting.then(onSet);
+ } else {
+ console.log("Not able to set webRTCIPHandlingPolicy");
+ }
+ });
+
+});
+
+</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/privacy"><code>chrome.privacy</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/privacy.json"><code>privacy.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.html b/files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.html
new file mode 100644
index 0000000000..b99a4f94bd
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.html
@@ -0,0 +1,60 @@
+---
+title: privacy.services
+slug: Mozilla/Add-ons/WebExtensions/API/privacy/services
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Privacy
+ - Property
+ - Reference
+ - Services
+translation_of: Mozilla/Add-ons/WebExtensions/API/privacy/services
+---
+<div>{{AddonSidebar}}
+<p>La propriété {{WebExtAPIRef("privacy.services")}} contient des paramètres liés à la vie privée contrôlant les services offerts par le navigateur ou par des tiers. Chaque propriété est un objet  {{WebExtAPIRef("types.BrowserSetting")}}.</p>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt><code>passwordSavingEnabled</code></dt>
+ <dd>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est un booléen. Si il est défini à <code>true</code>, le gestionnaire de mot de passe du navigateur proposera de stocker des mots de passe lorsque l'utilisateur les entrera. La valeur par défaut est : <code>true</code>.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.privacy.services", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Désactivation, si possible, du gestionnaire de mot de passe.</p>
+
+<pre class="brush: js">function onSet(result) {
+ if (result) {
+ console.log("success");
+ } else {
+ console.log("failure");
+ }
+}
+
+ var getting = browser.privacy.services.passwordSavingEnabled.get({});
+ getting.then((got) =&gt; {
+ console.log(got.value);
+ if ((got.levelOfControl === "controlled_by_this_extension") ||
+ (got.levelOfControl === "controllable_by_this_extension")) {
+ var setting = browser.privacy.services.passwordSavingEnabled.set({
+ value: false
+ });
+ setting.then(onSet);
+ } else {
+ console.log("Not able to set passwordSavingEnabled");
+ }
+ });</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/privacy"><code>chrome.privacy</code></a>.</p>
+</div>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.html b/files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.html
new file mode 100644
index 0000000000..da0950945a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.html
@@ -0,0 +1,160 @@
+---
+title: privacy.websites
+slug: Mozilla/Add-ons/WebExtensions/API/privacy/websites
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Privacy
+ - Property
+ - Reference
+ - WebExtensions
+ - websites
+translation_of: Mozilla/Add-ons/WebExtensions/API/privacy/websites
+---
+<div>{{AddonSidebar}}
+<p>La propriété {{WebExtAPIRef("privacy.websites")}} contient les paramètres liés à la vie privée qui contrôlent la façon dont le navigateur interargit avec les sites web. Chaque propriété est un objet  {{WebExtAPIRef("types.BrowserSetting")}}.</p>
+
+<p>Les valeurs par défaut  de ces propriétés ont tendance à varier selon les navigateurs.</p>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt><code>cookieConfig</code></dt>
+ <dd>
+ <p>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un objet.</p>
+
+ <p>L'objet a deux propriétés :</p>
+
+ <ul>
+ <li><code>behavior</code>: une chaîne qui peut prendre l'une des valeurs suivantes:
+
+ <ul>
+ <li>"allow_all": accepte tous les cookies</li>
+ <li>"reject_all": rejeter tous les cookies</li>
+ <li>"reject_third_party": rejeter tous les cookies tiers</li>
+ <li>"allow_visited" : accepte un cookie tiers uniquement si le domaine de premier niveau du cookie contient déjà au moins un cookie.</li>
+ <li>"reject_trackers": rejeter les cookies de suivi</li>
+ </ul>
+ </li>
+ <li><code>nonPersistentCookies</code>: un booléen. Si la valeur est true, tous les cookies seront traités comme des cookies de session.</li>
+ </ul>
+ </dd>
+ <dt><code>firstPartyIsolate</code></dt>
+ <dd>
+ <p>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen.</p>
+
+ <p>SI <code>true</code>, la préférence <code>firstPartyIsolate</code> permet au navigateur d'associer toutes les données (y compris les cookies, les données HSTS, les images mises en cache, etc.) pour tous les domaines tiers avec le domaine dans la barre d'adresse. Cela empêche les suiveurs tiers d'utiliser directement les informations stockées pour identifier l'utilisateur sur différents sites Web, mais peut interrompre les sites Web dans lesquels l'utilisateur se connecte avec un compte tiers (tel qu'un compte Facebook ou Google).</p>
+
+ <p>Par défaut à <code>false</code>.</p>
+ </dd>
+ <dt><code>hyperlinkAuditingEnabled</code></dt>
+ <dd>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen. Si <code>true</code>, le navigateur envoie des pings d'audit lorsqu'un site web utilise l'attribut <code>ping</code> pour les demander.</dd>
+ <dt><code>protectedContentEnabled</code></dt>
+ <dd>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen. Disponible uniquement sur Windows. Si<code>true</code>, le navigateur fournit un ID unique aux plugins afin d'exécuter le contenu protégé.</dd>
+ <dt><code>referrersEnabled</code></dt>
+ <dd>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur  sous-jacente est un booléen. Si activé, le navigateur envoie les en-têtes de <a href="/en-US/docs/Web/HTTP/Headers/Referer">référence</a> avec vos demandes.</dd>
+ <dt><code>resistFingerprinting</code></dt>
+ <dd>
+ <p>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen.</p>
+
+ <p>Les empreintes digitales des navigateurs sont la pratique par laquelle les sites Web utilisent les API Web pour collecter des données d'état ou de configuration associées au navigateur ou à l'appareil sur lequel il s'exécute. En faisant cela, ils peuvent construire une empreinte numérique qu'ils peuvent utiliser pour identifier et suivre un utilisateur particulier.</p>
+
+ <p>Si <code>true</code>, la préférence <code>resistFingerprinting</code> signale au navigateur des informations usurpées génériques pour les données couramment utilisées pour les empreintes digitales. Ces données incluent le nombre de cœurs de processeur, la précision des temporisateurs JavaScript et le fuseau horaire local. Il désactive également les fonctionnalités utilisées pour la prise d'empreintes digitales, telles que la prise en charge de GamePad et les API WebSpeech et Navigator.</p>
+
+ <p>Par défaut à <code>false</code>.</p>
+ </dd>
+ <dt><code>thirdPartyCookiesAllowed</code></dt>
+ <dd>Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen. Si <code>false</code>, le navigateur bloque les <a href="/en-US/docs/Web/HTTP/Cookies#Third-party_cookies">cookies tiers</a>.</dd>
+ <dt><code>trackingProtectionMode</code></dt>
+ <dd>
+ <p>La "protection de suivi" est une fonctionnalité de navigateur qui bloque les requêtes faites sur des domaines qui sont connus pour s'engager dans le suivi multi-sites des utilisateurs. Les sites qui suivent les utilisateurs sont généralement des sites publicitaires et analytiques tiers. Ce paramètre est un objet {{WebExtAPIRef("types.BrowserSetting")}} qui détermine si le navigateur doit activer  la protection de suivi. Sa valeur sous-jacente est une chaîne qui peut prendre l'une des trois valeurs :</p>
+
+ <ul>
+ <li><code>"always"</code>: La protection de suivi est activée.</li>
+ <li><code>"never"</code>: La protection de suivi est désactivée.</li>
+ <li><code>"private_browsing"</code>: La protection de suivi est activée uniquement dans les fenêtres de navigation privée.</li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.privacy.websites")}}</p>
+
+<div class="hidden note">
+<p>The "Chrome incompatibilities" section is included from <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities"> https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a> using the <a href="/en-US/docs/Template:WebExtChromeCompat">WebExtChromeCompat</a> macro.</p>
+
+<p>If you need to update this content, edit <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities">https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities</a>, then shift-refresh this page to see your changes.</p>
+</div>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définissez la propriété <code>hyperlinkAuditingEnabled</code> .</p>
+
+<pre class="brush: js">function onSet(result) {
+ if (result) {
+ console.log("success");
+ } else {
+ console.log("failure");
+ }
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+
+ var getting = browser.privacy.websites.hyperlinkAuditingEnabled.get({});
+ getting.then((got) =&gt; {
+ console.log(got.value);
+ if ((got.levelOfControl === "controlled_by_this_extension") ||
+ (got.levelOfControl === "controllable_by_this_extension")) {
+ var setting = browser.privacy.websites.hyperlinkAuditingEnabled.set({
+ value: true
+ });
+ setting.then(onSet);
+ } else {
+ console.log("Not able to set hyperlinkAuditingEnabled");
+ }
+ });
+
+});</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/privacy"><code>chrome.privacy</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/privacy.json"><code>privacy.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/index.html
new file mode 100644
index 0000000000..83cebd6fdf
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/index.html
@@ -0,0 +1,68 @@
+---
+title: proxy
+slug: Mozilla/Add-ons/WebExtensions/API/proxy
+tags:
+ - API
+ - Add-ons
+ - Proxy
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/proxy
+---
+<div>{{AddonSidebar}}</div>
+
+<div class="blockIndicator warning">
+<p><strong>Avertissement</strong><br>
+ Vous ne devez pas utiliser la fonction {{WebExtAPIRef("proxy.register()")}} ou la fonction {{WebExtAPIRef("proxy.unregister()")}} pour enregistrer et supprimer le fichier <a href="/en-US/Add-ons/WebExtensions/API/proxy/register#PAC_file_specification">Proxy Auto-Configuration (PAC)</a>.  Cette API était dépréciée dans Firefox 68 et sera supprimée de Firefox 71.</p>
+</div>
+
+<p>Utilisez l'API proxy pour les requêtes Web proxy. Vous pouvez utiliser l'écouteur d'événement {{WebExtAPIRef("proxy.onRequest")}}} pour intercepter les requêtes web, et retourner un objet qui décrit si et comment les proxyer.</p>
+
+<p>L'avantage de l'approche <code>proxy.onRequest</code> est que le code qui implémente votre stratégie de proxy s'exécute dans le script d'arrière-plan de votre extension pour accéder aux API WebExtension disponibles pour votre extension (y compris, par exemple, l'accès au <code><a href="/fr/Add-ons/WebExtensions/API/storage">stockage</a></code> et au réseau de votre extension APIs comme <code><a href="/fr/Add-ons/WebExtensions/API/dns">dns</a></code>).</p>
+
+<p>En dehors de cette API, les extensions peuvent également utiliser la propriété  <code><a href="/fr/Add-ons/WebExtensions/API/browserSettings/proxyConfig">browserSettings.proxyConfig</a></code> pour configurer les paramètres proxy globaux.</p>
+
+<p>Google Chrome fournit <a href="https://developer.chrome.com/extensions/proxy">une API d'extension également appelée "proxy"</a> qui est fonctionnellement similaire à cette API, dans la mesure où les extensions peuvent l'utiliser pour implémenter une politique de proxy. Cependant, la conception de l'API Chrome est complètement différente de cette API. Étant donné que cette API est incompatible avec l'API de <code>proxy</code> Chrome, cette API est uniquement disponible via l'espace de noms du <code>navigateur</code>.</p>
+
+<p>Pour utiliser cette API, vous devez disposer de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "proxy". De plus, lorsque vous voulez intercepter des requêtes, vous avez également besoin de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission de l'hôte</a> pour les URL des requêtes interceptées</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("proxy.ProxyInfo")}}</dt>
+ <dd>Décrit un proxy.</dd>
+ <dt>{{WebExtAPIRef("proxy.RequestDetails")}}</dt>
+ <dd>
+ <p>Contient des informations sur une requête Web que le navigateur est sur le point de faire.</p>
+ </dd>
+</dl>
+
+<h2 id="Properties">Properties</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("proxy.settings")}}</dt>
+ <dd>Obtenir et définir les paramètres de proxy.</dd>
+</dl>
+
+<h2 id="Functions">Functions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("proxy.register()")}}</dt>
+ <dd>Enregistre le script proxy donné.</dd>
+ <dt>{{WebExtAPIRef("proxy.unregister()")}}</dt>
+ <dd>Annule l'inscription du script proxy.</dd>
+</dl>
+
+<h2 id="Events">Events</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("proxy.onError")}}</dt>
+ <dd>Lancé lorsque le système rencontre une erreur lors de l'exécution du script PAC ou de l'écouteur <code>onRequest</code>.</dd>
+ <dt>{{WebExtAPIRef("proxy.onRequest")}}</dt>
+ <dd>Déclenché lorsqu'une requête Web est sur le point d'être effectuée, ce qui donne à l'extension l'opportunité de l'utiliser comme proxy.</dd>
+</dl>
+
+<p>{{WebExtExamples("h2")}}</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.proxy")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/onproxyerror/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/onproxyerror/index.html
new file mode 100644
index 0000000000..fb5e7df4e5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/onproxyerror/index.html
@@ -0,0 +1,60 @@
+---
+title: proxy.onProxyError
+slug: Mozilla/Add-ons/WebExtensions/API/proxy/onProxyError
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Proxy
+ - Reference
+ - WebExtensions
+ - onProxyError
+translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/onError
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé en cas d'erreur lors de l'évaluation du fichier PAC ou l'écouteur <code>onRequest</code>.</p>
+
+<p>L'erreur peut être déclenchée en lançant ou renvoyant une valeur invalide dans le gestionnaire d'événements proxy.onRequest.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.proxy.onError.addListener(listener)
+browser.proxy.onError.removeListener(listener)
+browser.proxy.onError.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</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 l'<code>écouteur</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>newState</code></dt>
+ <dd><code>Object</code>. Un objet <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Error">Error</a> représentant l'erreur.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<p>{{WebExtExamples}}</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.proxy.onError")}}</p>
+
+<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>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.html
new file mode 100644
index 0000000000..5510f36a7c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.html
@@ -0,0 +1,107 @@
+---
+title: proxy.onRequest
+slug: Mozilla/Add-ons/WebExtensions/API/proxy/onRequest
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Proxy
+ - Reference
+ - WebExtensions
+ - onRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/onRequest
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Déclenché lorsqu'une requête Web est sur le point d'être effectuée, pour donner à l'extension la possibilité de l'utiliser comme proxy.</p>
+
+<p>Cet événement est étroitement modélisé sur les événements définis dans l'API  <code><a href="/fr/Add-ons/WebExtensions/API/webRequest">webRequest</a></code> Comme ces événements, sa fonction <code>addListener()</code> prend trois arguments :</p>
+
+<ul>
+ <li>l'écouteur qui sera appelé lorsque l'événement est déclenché.</li>
+ <li>Un objet <code><a href="/fr/Add-ons/WebExtensions/API/webRequest/RequestFilter">RequestFilter</a></code> contrôlant quelles requêtes provoquent le déclenchement de l'événement.</li>
+ <li>un tableau de chaînes pour contrôler d'autres aspects du comportement de l'événement.</li>
+</ul>
+
+<p>L'événement est déclenché avant l'un des événements <code>webRequest</code> pour la même demande.</p>
+
+<p>Lorsque l'événement est déclenché, l'écouteur est appelé avec un objet contenant des informations sur la requête. L'écouteur renvoie un objet {{WebExtAPIRef("proxy.ProxyInfo")}} représentant un proxy à utiliser (ou un tableau de tels objets, permettant au navigateur de basculer si un proxy est inaccessible).</p>
+
+<p>Pour utiliser <code>proxy.onRequest</code>, une extension doit avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission API</a> "proxy" , ainsi que la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission d'hôte</a> pour les URL des requêtes qu'elle intercepte - ela signifie essentiellement que les modèles de correspondance de l'argument <code>filter</code> doivent être un sous-ensemble de l'extension autorisations de l'hôte.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.proxy.onRequest.addListener(
+ listener, // function
+ filter, // object
+ extraInfoSpec // optional array of strings
+)
+browser.proxy.onRequest.removeListener(listener)
+browser.proxy.onRequest.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener, filter, extraInfoSpec)</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>listener</code></dt>
+ <dd>
+ <p>Fonction qui sera appelée lorsque cet événement se produit. La fonction passera un seul argument, qui est un objet {{WebExtAPIRef("proxy.RequestDetails")}} contenant les détails de la requête.</p>
+
+ <p>L'écouteur peut renvoyer l'un des éléments suivants:</p>
+
+ <ul>
+ <li>un objet {{WebExtAPIRef("proxy.ProxyInfo")}}</li>
+ <li>un tableau d'objets <code>proxy.ProxyInfo</code></li>
+ <li>Une <code>Promise</code> qui se résout en un objet <code>ProxyInfo</code></li>
+ <li>Une <code>Promise</code> qui résout en un tableau d'objets <code>ProxyInfo</code>.</li>
+ </ul>
+
+ <p>Si l'écouteur renvoie un tableau, ou une Promesse qui se résout en un tableau, alors tous les objets<code>ProxyInfo</code> après le premier représentent les basculements: si le proxy à la position N dans le tableau n'est pas accessible quand son <code>ProxyInfo.failoverTimeout</code> alors le navigateur essayez le proxy à la position N+1.</p>
+
+ <p>S'il y a une erreur spécifiant les objets <code>proxy.ProxyInfo</code> objects, alors {{WebExtAPIRef("proxy.onError")}} sera appelé.</p>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un ensemble de filtres qui limite les événements qui seront envoyés à cet écouteur.</dd>
+ <dt><code>extraInfoSpec</code> {{optional_inline}}</dt>
+ <dd><code>array</code> de <code>string</code>. Options supplémentaires pour l'événement. Vous pouvez passer une seule valeur<span class="im">, <code>"requestHeaders"</code>, </span>pour inclure les en-têtes de demande dans l'objet de<span class="im"> <code>details</code> </span>transmis à l'écouteur<span class="im">.</span></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.proxy.onRequest", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code intercepte les requêtes à <code>&lt;all_urls&gt;</code>, et les envoie par procuration si elles ne sont pas destinées à un cadre de premier niveau.</p>
+
+<pre class="brush: js">function shouldProxyRequest(requestInfo) {
+ return requestInfo.parentFrameId != -1;
+}
+
+function handleProxyRequest(requestInfo) {
+ if (shouldProxyRequest(requestInfo)) {
+ console.log(`Proxying: ${requestInfo.url}`);
+ return {type: "http", host: "127.0.0.1", port: 65535};
+ }
+ return {type: "direct"};
+}
+
+browser.proxy.onRequest.addListener(handleProxyRequest, {urls: ["&lt;all_urls&gt;"]});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.html
new file mode 100644
index 0000000000..f0b693855a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.html
@@ -0,0 +1,63 @@
+---
+title: proxy.ProxyInfo
+slug: Mozilla/Add-ons/WebExtensions/API/proxy/ProxyInfo
+tags:
+ - Add-ons
+ - Extensions
+ - Proxy
+ - ProxyInfo
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/ProxyInfo
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Contient des informations sur un proxy. Cet objet, ou un tableau de ces objets, est renvoyé par le programme d'écoute à {{WebExtAPIRef("proxy.onRequest")}}. Il indique au navigateur si la requête doit être mandatée et, dans l'affirmative, quel proxy utiliser.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Cela indique s'il faut utiliser un proxy et, dans l'affirmative, quel type de proxy utiliser. Il peut prendre l'une des valeurs suivantes :</p>
+
+ <ul>
+ <li><code>"direct"</code>: ne pas utiliser la requête par procuration. Si cette valeur est donnée, toutes les autres propriétés de cet objet sont ignorées.</li>
+ <li><code>"http"</code>: HTTP proxy (ou SSL CONNECT pour HTTPS)</li>
+ <li><code>"https"</code>: HTTP proxying via TLS connection au proxy</li>
+ <li><code>"socks"</code>: proxy SOCKS v5</li>
+ <li><code>"socks4"</code>: proxy SOCKS v4</li>
+ </ul>
+ </dd>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy. Obligatoire sauf si le <code>type</code> est <code>"direct"</code>.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>string</code>. e numéro de port du serveur proxy. Obligatoire sauf si le <code>type</code> est  <code>"direct"</code>.</dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy. Ceci est utilisable avec "socks".  Pour les autorisations de proxy HTTP, utilisez <a href="/fr/Add-ons/WebExtensions/API/webRequest/onAuthRequired" title="Fired when the server sends a 401 or 407 status code: that is, when the server is asking the client to provide authentication credentials such as a username and password."><code>webRequest.onAuthRequired</code></a>.</dd>
+ <dt><code>password</code></dt>
+ <dd><code>string</code>. Mot de passe pour le service proxy. Ceci est utilisable avec "socks". FPour les autorisations de proxy HTTP, utilisez <a href="/fr/Add-ons/WebExtensions/API/webRequest/onAuthRequired" title="Fired when the server sends a 401 or 407 status code: that is, when the server is asking the client to provide authentication credentials such as a username and password."><code>webRequest.onAuthRequired</code></a>.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Si vrai, le serveur proxy est utilisé pour résoudre certaines requêtes DNS (uniquement utilisable avec <code>"socks4"</code> et <code>"socks"</code>).  Par défaut à <code>false</code>.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>number</code>:  Délais de basculement en secondes. Si la connexion ne parvient pas à connecter le serveur proxy après ce nombre de secondes, le serveur proxy suivant dans le tableau renvoyé par l'écouteur <code>proxy.onRequest</code> sera utilisé.</dd>
+</dl>
+
+<dl>
+ <dt><code>proxyAuthorizationHeader</code></dt>
+ <dd><code>string.</code> Cette chaîne, si elle est définie sur non-vide, est passée directement en valeur à l'en-tête de requête {{httpheader("Proxy-Authorization")}} envoyé aux proxies HTTP dans le cadre des requêtes HTTP ordinaires et des requêtes CONNECT. Simplement dit, ceci peut être utilisé pour s'authentifier directement sur les proxies HTTP nécessitant une authentification (non contestable).<br>
+ <br>
+ Par exemple, si vous voulez envoyer "nom d'utilisateur" et "mot de passe" pour l'authentification "basique", vous pouvez définir la propriété <code>proxyAuthorizationHeader</code> à <code>Basic dXNlcm5hbWU6cGFzc3dvcmQ=</code></dd>
+ <dt><code>connectionIsolationKey </code> {{optional_inline}}</dt>
+ <dd><code>string.</code> Une clé optionnelle utilisée pour l'isolation supplémentaire de cette connexion proxy.</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.proxy.ProxyInfo")}}</p>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.html
new file mode 100644
index 0000000000..1d64b5a5e3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.html
@@ -0,0 +1,161 @@
+---
+title: proxy.register()
+slug: Mozilla/Add-ons/WebExtensions/API/proxy/register
+tags:
+ - API
+ - Add-ons
+ - Function
+ - Méthode
+ - Proxy
+ - Reference
+ - WebExtensions
+ - register
+ - registerProxyScript
+translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/register
+---
+<p>{{AddonSidebar()}} {{deprecated_header}}</p>
+
+<p>Cette méthode était obsolète dans Firefox 68 et sera supprimée de Firefox 71. Dans Firefox 68 ou une version ultérieure, l'appel de cette méthode enregistre un message d'erreur sur la console :</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/16799/proxy_register_warning.png" style="border: 1px solid black; display: block; height: 65px; margin: 0px auto; width: 800px;"></p>
+
+<p>Enregistre un <a href="/fr/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_%28PAC%29_file">fichier PAC (Proxy Auto-Configuration)</a>. Le fichier est exécuté immédiatement, et sa fonction <code>FindProxyForURL()</code> sera appelée pour toutes les demandes HTTP, HTTPS ou FTP.</p>
+
+<p>Si les fichiers PAC sont enregistrés par plusieurs extensions, les demandes seront initialement transmises à celle qui a été enregistrée en premier.</p>
+
+<ul>
+ <li>Si la fonction <code>FindProxyForURL()</code> dans le premier PAC renvoie "DIRECT" pour une demande, alors la demande sera transmise inchangée à la fonction  <code>FindProxyForURL()</code> dans le prochain PAC.</li>
+ <li>Si la fonction <code>FindProxyForURL()</code> dans le premier PAC transfère la requête en renvoyant "PROXY" ou une autre valeur proxy, l'URL du proxy sera transmise à la fonction <code>FindProxyForURL()</code> dans le prochain PAC.</li>
+</ul>
+
+<p>Chaque extension ne peut enregistrer qu'un seul fichier PAC : si vous appelez  <code>register()</code> deux fois, le second fichier PACremplacera le premier.</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="Communiquez_avec_les_fichiers_PAC">Communiquez avec les fichiers PAC</h2>
+
+<p>Vous pouvez échanger des messages entre le fichier PAC et la page d'arrière-plan de votre extension (ou toute autre page privilégiée, comme les pages contextuelles) en utilisant <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime/sendMessage">runtime.sendMessage()</a></code> et <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onMessage">runtime.onMessage</a></code>.</p>
+
+<p>Pour envoyer un message au fichier PAC, vous devez définir l'option <code>toProxyScript</code> :</p>
+
+<pre class="brush: js">// background.js
+
+// Log any messages from the proxy.
+browser.runtime.onMessage.addListener((message, sender) =&gt; {
+ if (sender.url === browser.extension.getURL(proxyScriptURL)) {
+ console.log(message);
+ }
+});
+
+let messageToProxy = {
+ enabled: true,
+ foo: "A string",
+ bar: 1234
+};
+
+browser.runtime.sendMessage(messageToProxy, {toProxyScript: true});</pre>
+
+<pre class="brush: js">// pac.js
+
+browser.runtime.onMessage.addListener((message) =&gt; {
+ if (message.enabled) {
+ browser.runtime.sendMessage("I'm enabled!");
+ }
+});</pre>
+
+<h2 id="Spécification_de_fichier_PAC">Spécification de fichier PAC</h2>
+
+<p>La syntaxe de base du fichier PAC est décrite dans la <a href="/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file">documentation PAC</a>, mais l'implémentation utilisée par l'API proxy diffère de la conception PAC standard de différentes manières, décrites dans cette section.</p>
+
+<h3 id="Valeur_retournée_FindProxyForURL">Valeur retournée FindProxyForURL()</h3>
+
+<p>La norme <code>FindProxyForURL()</code> <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_%28PAC%29_file#Return_value_format">renvoie une chaîne</a>. Dans Firefox 55 et 56, le fichier PAC utilisé avec l'API proxy renvoie également une chaîne. Dans Firefox 55 <em>seulement</em>, vous devez passer un argument à la valeur de retour "DIRECT", même s'il n'a pas besoin d'argument.</p>
+
+<p>À partir de Firefox 57, <code>FindProxyForURL()</code> peut toujours renvoyer une chaîne, mais peut également (et de préférence) renvoyer un tableau d'objets  {{WebExtAPIRef("proxy.ProxyInfo")}}.</p>
+
+<p>Si le tableau contient plus d'un objet, alors tous les objets <code>ProxyInfo</code> après le premier représentent les basculements : si le proxy à la position N dans le tableau n'est pas accessible quand son <code>ProxyInfo.failoverTimeout</code> expire, alors le navigateur essaiera le proxy à la position N + 1.</p>
+
+<p>Par exemple :</p>
+
+<pre class="brush: js" id="ct-0">const proxySpecification = [
+ {
+ type: "socks",
+ host: "foo.com",
+ port: 1080,
+ proxyDNS: true,
+ failoverTimeout: 5
+ },
+ {
+ type: "socks",
+ host: "bar.com",
+ port: 1060,
+ }
+];</pre>
+
+<p>Le premier proxy dans le tableau sera essayé en premier. S'il ne répond pas dans <code>failoverTimeout</code> secondes, le prochain sera essayé, jusqu'à ce que la fin du tableau est atteint.</p>
+
+<h3 id="Environnement_du_fichier_PAC">Environnement du fichier PAC</h3>
+
+<p>Les fonctions globales d'assistance généralement disponibles pour les fichiers PAC  (<code><a href="/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file#isPlainHostName()_2">isPlainHostName()</a></code>, <code><a href="/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_(PAC)_file#dnsDomainIs()">dnsDomainIs()</a></code>, etc) ne sont pas disponibles.</p>
+
+<p>Le code qui s'exécute dans le fichier PAC n'a pas accès à :</p>
+
+<ul>
+ <li>outes les fonctions DOM (par exemple, <a href="/en-US/docs/Web/API/Window">window</a> ou l'une de ses propriétés)</li>
+ <li>les API WebExtension sauf <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime/sendMessage">runtime.sendMessage()</a></code> et <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/runtime/onMessage">runtime.onMessage</a></code></li>
+ <li>l' <a href="/en-US/docs/Web/API/Console">API console</a> - pour consigner les messages d'un PAC, envoyez un message au script d'arrière-plan :</li>
+</ul>
+
+<pre class="brush: js">// pac.js
+
+// send the log message to the background script
+browser.runtime.sendMessage(`Proxy-blocker: blocked ${url}`);</pre>
+
+<pre class="brush: js">// background-script.js
+
+function handleMessage(message, sender) {
+ // only handle messages from the proxy script
+ if (sender.url != browser.extension.getURL(proxyScriptURL)) {
+ return;
+ }
+ console.log(message);
+}
+
+browser.runtime.onMessage.addListener(handleMessage);</pre>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var registering = browser.proxy.register(
+ url // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>url</code></dt>
+ <dd><code>String</code>. URL pointant vers le fichier PAC à charger. Les fichiers PAC doivent être groupés avec l'extension, et l'<code>url</code> doit être relative au fichier <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a> de l'extension.</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 sans argument lorsque le fichier PAC a été enregistré ou rejetée en cas d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">const proxyScriptURL = "proxy/proxy-script.js";
+
+browser.proxy.register(proxyScriptURL);</pre>
+
+<p>{{WebExtExamples}}</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.proxy.register")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<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/proxy/requestdetails/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/requestdetails/index.html
new file mode 100644
index 0000000000..6d2cc7d34b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/requestdetails/index.html
@@ -0,0 +1,60 @@
+---
+title: proxy.RequestDetails
+slug: Mozilla/Add-ons/WebExtensions/API/proxy/RequestDetails
+tags:
+ - Add-ons
+ - Extensions
+ - Proxy
+ - RequestDetails
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/RequestDetails
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Contient des informations sur une requête Web que le navigateur est sur le point de faire. Une instance de cet objet est passée dans l'écouteur  {{WebExtAPIRef("proxy.onRequest")}}.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>cookieStoreId</code></dt>
+ <dd><code>string</code>. L'ID de magasin de cookies du contexte actuel.</dd>
+ <dt><code>documentUrl</code></dt>
+ <dd><code>string</code>. URL de la page dans laquelle la ressource demandée sera chargée.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'une  (sous-)frame est chargé (<code>type</code> est <code>main_frame</code> ou <code>sub_frame</code>), <code>frameId</code> indique l'ID de cette trame, pas l'ID de la trame externe. Les ID de cadre sont uniques dans un onglet.</dd>
+ <dt><code>fromCache</code></dt>
+ <dd><code>boolean</code>. Indique si cette réponse sera récupérée du cache disque.</dd>
+ <dt><code>incognito</code></dt>
+ <dd><code>boolean</code> <code>true</code> pour les demandes de navigation privées</dd>
+ <dt><code>ip</code></dt>
+ <dd>L'adresse IP du serveur à laquelle la demande sera envoyée. Notez qu'il peut s'agir d'une adresse IPv6 littérale.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard: par exemple, "GET" ou "POST".</dd>
+ <dt><code>originUrl</code></dt>
+ <dd><code>string</code>. URL de la ressource qui a déclenché cette demande. Notez que ceci peut ne pas être le même que l'URL de la page dans laquelle la ressource demandée sera chargée. Par exemple, si un document déclenche un chargement dans une fenêtre différente l'<a href="/fr/docs/Web/HTML/Element/a#attr-target">attribut cible d'un lien</a>, ou d'un document CSS inclut une image utilisant la  <a href="/fr/docs/Web/CSS/url#The_url()_functional_notation"><code>notation fonctionnelle url()</code></a>, alors ce sera l'URL du document original ou du  document CSS, respectivement.</dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. ID de l'image qui contient l'image qui a envoyé la demande. Défini sur -1 si aucun cadre parent n'existe.</dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande Les ID de demande sont uniques dans une session de navigateur, vous pouvez donc les utiliser pour associer différents événements associés à la même demande.</dd>
+ <dt><code>requestHeaders</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de requête HTTP qui vont être envoyés avec cette requête. Notez que ceci n'est inclus que si l'option  <code>"requestHeaders"</code> a été passée dans <code>addListener()</code>.</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la requête a lieu. Défini sur -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a class="external external-icon" href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandé : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.proxy.RequestDetails")}}</p>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.html
new file mode 100644
index 0000000000..6086fe0c6f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.html
@@ -0,0 +1,55 @@
+---
+title: proxy.unregister()
+slug: Mozilla/Add-ons/WebExtensions/API/proxy/unregister
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Proxy
+ - Reference
+ - WebExtensions
+ - unregister
+translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/unregister
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>{{deprecated_header}}</div>
+
+<p>Cette méthode était obsolète dans Firefox 68 et sera supprimée de Firefox 71. Dans Firefox 68 ou une version ultérieure, l'appel de cette méthode enregistre un message d'erreur sur la console:</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/16800/proxy_unregister_warning.png" style="border: 1px solid black; display: block; height: 86px; margin: 0 auto; width: 800px;"></p>
+
+<p>Annule l'inscription d'un <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_%28PAC%29_file">fichier Proxy Auto-Configuration (PAC)</a>. Cela a été enregistré par un appel précédent à {{WebExtAPIRef("proxy.register()")}}.</p>
+
+<p>C'est une fonction asynchrome 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 unregistering = browser.proxy.unregister()
+</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 remplie  sans arguments lorsque le fichier PAC a été désinscrit.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">browser.proxy.unregister();</pre>
+
+<p>{{WebExtExamples}}</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.proxy.unregister")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<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/runtime/connect/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/connect/index.html
new file mode 100644
index 0000000000..d92f50c9cd
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/connect/index.html
@@ -0,0 +1,161 @@
+---
+title: runtime.connect()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/connect
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - connect
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/connect
+---
+<div>{{AddonSidebar()}}</div>
+
+<div></div>
+
+<p>Créer une connexion pour plusieurs cas d'utilisation pout votre extension.</p>
+
+<p>Vous pouvez utiliser cette facilité dans les situations suivantes:</p>
+
+<ul>
+ <li>Dans un script de contenu, pour établir une connexion avec le script d'arrière plan (ou tout script priviligié, comme les scripts de popup ou scripts de page d'option)</li>
+ <li>Dans un script d'arrière plan (ou script priviligié équivalent), pour établir une connexion avec une extension différente.</li>
+</ul>
+
+<p>Attention, vous ne pouvez pas utiliser cette fonctionnalité pour connecter une extension à son script de contenu. Pour réaliser cette opération, il vaut mieux utiliser {{WebExtAPIRef('tabs.connect()')}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var port = browser.runtime.connect(
+ extensionId, // optional string
+ connectInfo // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>extensionId</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'ID de l'extension à laquelle se connecter. Si la cible à défini un ID dans la clé <a href="/fr/Add-ons/WebExtensions/manifest.json/applications">applications</a> du fichier manifest.json, alors <code>extensionId</code> doit avoir cette valeur. Autrement, il doit avoir l'ID qui a été généré pour la cible.</dd>
+ <dt><code>connectInfo</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Détails de la connexion:</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>name</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Sera passé dans {{WebExtAPIRef("runtime.onConnect")}} pour les processus qui écoutent un évènement de type connexion.</dd>
+ <dt><code>includeTlsChannelId</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. indique si l'ID du canal TLS sera transmis à  {{WebExtAPIRef("runtime.onConnectExternal")}} pour le processus qui écoutent l'événement de connexion.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>{{WebExtAPIRef('runtime.Port')}}. Port à travers lequel les messages peuvent être envoyés et reçus. L'événement <code>onDisconnect</code> du port est déclenché si l'extension 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.runtime.connect")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Le script de contenu :</p>
+
+<ul>
+ <li>se connecte au script d'arrière-plan et stocke le port dans une variable appelée <code>myPort</code>.</li>
+ <li>Ecoute les messages sur <code>myPort</code> et les enregistre</li>
+ <li>Envoie des messages au script d'arrière pla, en utilisant <code>myPort</code>, lorsque l'utilisateur clique sur le document.</li>
+</ul>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="comment token">// content-script.js</span>
+
+<span class="keyword token">var</span> myPort <span class="operator token">=</span> browser<span class="punctuation token">.</span>runtime<span class="punctuation token">.</span><span class="function token">connect</span><span class="punctuation token">(</span><span class="punctuation token">{</span>name<span class="punctuation token">:</span><span class="string token">"port-from-cs"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+myPort<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"hello from content script"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+myPort<span class="punctuation token">.</span>onMessage<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span>m<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"In content script, received message from background script: "</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>m<span class="punctuation token">.</span>greeting<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+document<span class="punctuation token">.</span>body<span class="punctuation token">.</span><span class="function token">addEventListener</span><span class="punctuation token">(</span><span class="string token">"click"</span><span class="punctuation token">,</span> <span class="keyword token">function</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ myPort<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"they clicked the page!"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>Les scripts d'arrière plan correspondant :</p>
+
+<ul>
+ <li>Ecoute les tentatives de connexion du script de contenu.</li>
+ <li>Quand il reçoit une tentative de connexion :
+ <ul>
+ <li>Stocke le port dans une variable nommé <code>portFromCS</code>.</li>
+ <li>envoie un message au script de contenu en utiliant le port.</li>
+ <li>Commence à écouter les messages reçus sur le port, et les enregistre.</li>
+ </ul>
+ </li>
+ <li>Envoie des messages au script de contenu, à l'aide de <code>portFromCS</code>, lorsque l'utilisateur clique sur l'action du navigateur de l'extension.</li>
+</ul>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="comment token">// background-script.js</span>
+
+<span class="keyword token">var</span> portFromCS<span class="punctuation token">;</span>
+
+<span class="keyword token">function</span> <span class="function token">connected</span><span class="punctuation token">(</span>p<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ portFromCS <span class="operator token">=</span> p<span class="punctuation token">;</span>
+ portFromCS<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"hi there content script!"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ portFromCS<span class="punctuation token">.</span>onMessage<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span>m<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"In background script, received message from content script"</span><span class="punctuation token">)</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>m<span class="punctuation token">.</span>greeting<span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>runtime<span class="punctuation token">.</span>onConnect<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span>connected<span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+browser<span class="punctuation token">.</span>browserAction<span class="punctuation token">.</span>onClicked<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ portFromCS<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"they clicked the button!"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.html
new file mode 100644
index 0000000000..1371a06683
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.html
@@ -0,0 +1,122 @@
+---
+title: runtime.connectNative()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/connectNative
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - connectNative
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/connectNative
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Connecte l'extension à une appplication native sur l'ordinateur de l'utilisateur.</div>
+
+<div></div>
+
+<div>Cela prend le nom d'une application native en tant que paramètre. Il démarre l'application native et retourne un objet  {{WebExtAPIRef("runtime.Port")}} à l'appelant.</div>
+
+<div></div>
+
+<div>L'appelant peut utiliser le <code>Port</code> pour échanger des messages avec l'application native utilisant <code>Port.postMessage()</code> et <code>port.onMessage</code>.</div>
+
+<div></div>
+
+<div>L'application native s'exécute jusqu'à ce qu'elle se termine, ou l'appelant appelle <code>Port.disconnect()</code>, ou la page qui a créé le <code>Port</code> est détruite. Une fois le <code>Port</code> est déconnecté, le navigateur mettra quelques secondes à se terminer pour quitter le processus, puis le désactiver s'il ne s'est pas arrêté.</div>
+
+<div></div>
+
+<p>Pour plus d'informations, voir <a href="/fr/Add-ons/WebExtensions/Native_messaging">messagerie native</a>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var port = browser.runtime.connectNative(
+ application // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>application</code></dt>
+ <dd><code>string</code>. Le nom de l'application native à laquelle se connecter. Cela doit correspondre à la propriété "name" dans le <a href="/fr/Add-ons/WebExtensions/Native_messaging#App_manifest">fichier manifest de l'application native</a>.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Un objet {{WebExtAPIRef('runtime.Port')}}. Le port que l'appelant peut utiliser pour échanger des messages avec l'application native.</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.runtime.connectNative")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple se connecte à l'appplication native "ping_pong" et commence à en écouter les messages. Il envoie également un message à l'application native lorsque l'utilisateur clique sur l'icône d'une action du navigateur :</p>
+
+<pre class="brush: js">/*
+On startup, connect to the "ping_pong" app.
+*/
+var port = <code class="language-js">browser</code>.runtime.connectNative("ping_pong");
+
+/*
+Listen for messages from the app.
+*/
+port.onMessage.addListener((response) =&gt; {
+ console.log("Received: " + response);
+});
+
+/*
+On a click on the browser action, send the app a message.
+*/
+<code class="language-js">browser</code>.browserAction.onClicked.addListener(() =&gt; {
+ console.log("Sending: ping");
+ port.postMessage("ping");
+});</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.html
new file mode 100644
index 0000000000..229d43adc7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.html
@@ -0,0 +1,112 @@
+---
+title: runtime.getBackgroundPage()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/getBackgroundPage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getBackgroundPage
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/getBackgroundPage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère l'objet <code><a href="/fr/docs/Web/API/Window">Window</a></code> pour la page d'arrière-plan qui s'exécute dans l'extension en cours.</p>
+
+<p>Cela consiste un moyen pratique pour d'autres scripts d'extension privilégiés d'accéder directement à la portée du script d'arrière plan. Cela leur permet d'accéder aux variables ou aux fonctions d'appel définies dans cette portée. Le "script privilégié" inclut ici les scripts s'exécutant dans les  <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Options_pages">pages d'options</a>, ou les scripts s'exécutant dans les fenêtres d'<a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Browser_actions_2">action du navigateur</a> ou d'<a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Page_actions">action page</a>, mais n'inclut pas les <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Content_scripts">scripts de contenu</a>.</p>
+
+<p>Notez que les variables déclarées à l'aide de <code><a href="/fr/docs/Web/JavaScript/Reference/Instructions/const">const</a></code> ou <code><a href="/fr/docs/Web/JavaScript/Reference/Instructions/let">let</a></code> n'apparaissaient pas dans l'objet window retourné par cette fonction.</p>
+
+<p><strong>Notez également que cette méthode ne peut pas être utilisée dans une fenêtre privée dans Firefox</strong>—Elle renvoie toujours <code>null</code>. Pour plus d'informations voir le <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1329304">bug lié à bugzilla</a>.</p>
+
+<p>Si la page d'arrière plan est une page événement, le système s'assuera qu'il est chargé avant de résoudre la promise.</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 gettingPage = browser.runtime.getBackgroundPage()
+</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 remplie avec l'objet <a href="/fr/docs/User%3Amaybe/webidl_mdn/Window">Window</a> pour la page d'arrière plan, s'il y en a une. Si l'extension n'inclut pas de page d'arrière-plan, la promise est rejetée avec un message d'erreur.</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.runtime.getBackgroundPage")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supposons un <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Background_scripts">script d'arrière-plan</a> définisse une fonction <code>foo()</code>:</p>
+
+<pre class="brush: js">// background.js
+
+function foo() {
+ console.log("I'm defined in background.js");
+}</pre>
+
+<p>Un script exécuté dans un <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Browser_actions_2">popup</a> peut appeler cette fonction directement comme ceci :</p>
+
+<pre class="brush: js">// popup.js
+
+function onGot(page) {
+ page.foo();
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var getting = browser.runtime.getBackgroundPage();
+getting.then(onGot, onError);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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 class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.html
new file mode 100644
index 0000000000..f54d20f368
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.html
@@ -0,0 +1,63 @@
+---
+title: runtime.getBrowserInfo()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/getBrowserInfo
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - getBrowserInfo
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/getBrowserInfo
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Renvoie les informations sur le navigateur dans lequel l'extension est installée.</p>
+
+<p>Il s'agit d'une fonction asynchrone qui renvoie une {{JSxRef("Promise")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var gettingInfo = browser.runtime.getBrowserInfo()
+</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 remplie avec un objet qui a les propriétés suivantes :</p>
+
+<ul>
+ <li><strong><code>name</code></strong>: Valeur de chaîne représentant le nom du navigateur, par exemple "Firefox".</li>
+ <li><strong><code>vendor</code></strong>: Valeur de chaîne représentant le fournisseur du navigateur, par exemple "Mozilla".</li>
+ <li><strong><code>version</code></strong>: Chaîne représentant la version du navigateur, par exemple "51.0" or "51.0a2".</li>
+ <li><strong><code>buildID</code></strong>: Chaine représentant la version spécifique du navigateur, par exemple "20161018004015".</li>
+</ul>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.runtime.getBrowserInfo")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenir et enregistrer le nom du navigateur :</p>
+
+<pre class="brush: js">function gotBrowserInfo(info) {
+ console.log(info.name);
+}
+
+var gettingInfo = browser.runtime.getBrowserInfo();
+gettingInfo.then(gotBrowserInfo);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<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/runtime/getmanifest/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/getmanifest/index.html
new file mode 100644
index 0000000000..39f49a1749
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getmanifest/index.html
@@ -0,0 +1,86 @@
+---
+title: runtime.getManifest()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/getManifest
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getManifest
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/getManifest
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Obtenez le fichier <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json</a> complet, sérialisé à un objet JSON.</div>
+
+<div></div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.getManifest()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Un <code>object</code> JSON représentant le manifest.</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.runtime.getManifest")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Récupère le manifest et consignez la propriété "name" :</p>
+
+<pre class="brush: js">var manifest = browser.runtime.getManifest();
+console.log(manifest.name);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.html
new file mode 100644
index 0000000000..68a338db30
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.html
@@ -0,0 +1,88 @@
+---
+title: runtime.getPackageDirectoryEntry()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/getPackageDirectoryEntry
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getPackageDirectoryEntry
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/getPackageDirectoryEntry
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoie un objet <code>DirectoryEntry</code> représentant le répertoire du package.</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 gettingEntry = browser.runtime.getPackageDirectoryEntry()
+</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 remplie avec un objet <code>DirectoryEntry</code> représentant le répertoire du package.</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.runtime.getPackageDirectoryEntry")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function gotDirectoryEntry(directoryEntry) {
+ console.log(directoryEntry);
+}
+
+var gettingEntry = browser.runtime.getPackageDirectoryEntry();
+gettingEntry.then(gotDirectoryEntry);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.html
new file mode 100644
index 0000000000..1d78399d3e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.html
@@ -0,0 +1,90 @@
+---
+title: runtime.getPlatformInfo()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/getPlatformInfo
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getPlatformInfo
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/getPlatformInfo
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoies des informations sur la plate-forme actuelle. Ceci ne peut être appelé que dans le contexte du script d'arrière-plan.</p>
+
+<p>Il s'agit d'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 getting = browser.runtime.getPlatformInfo()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_rentournée">Valeur rentournée</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec une valeur {{WebExtAPIRef('runtime.PlatformInfo')}} représentant la plate-forme actuelle.</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><span class="diff_add">{{Compat("webextensions.api.runtime.getPlatformInfo")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez et consignez le système d'exploitation de la plateforme :</p>
+
+<pre class="brush: js">function gotPlatformInfo(info) {
+ console.log(info.os);
+}
+
+var gettingInfo = browser.runtime.getPlatformInfo();
+gettingInfo.then(gotPlatformInfo);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.html
new file mode 100644
index 0000000000..83f9546f21
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.html
@@ -0,0 +1,97 @@
+---
+title: runtime.getURL()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/getURL
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getURL
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/getURL
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Etant donné un chemin relatif de <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a> à une ressource empaquetée avec l'extension, renvoyez une URL complète.</div>
+
+<div></div>
+
+<div>Cette fonction ne vérifie pas que la ressource existe réellement à cette URL.</div>
+
+<div></div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.getURL(
+ path // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>path</code></dt>
+ <dd><code>string</code>. Un chemin relatif de <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a> à une ressource empaquetée avec l'extension.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p><code>string</code>. L'URL complète de la ressource.</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.runtime.getURL")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Etant donné un fichier empaqueté avec l'extension "beasts/frog.html", obtenez l'URL complète comme ceci :</p>
+
+<pre class="brush: js">var fullURL = browser.runtime.getURL("beasts/frog.html");
+console.log(fullURL);
+// Returns something like:
+// moz-extension://2c127fa4-62c7-7e4f-90e5-472b45eecfdc/beasts/frog.html</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.html
new file mode 100644
index 0000000000..8bac893224
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.html
@@ -0,0 +1,70 @@
+---
+title: runtime.id
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/id
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Property
+ - Reference
+ - WebExtensions
+ - runtime
+ - §ID
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/id
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'ID de l'extension</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var myAddonId = browser.runtime.id;</pre>
+
+<h3 id="Value">Value</h3>
+
+<p>Une <code>chaîne</code> représentant l'ID du module complémentaire. Si l'extension a spécifié un ID dans la clé manifest.json de ses <a href="/fr/Add-ons/WebExtensions/manifest.json/applications">applications</a>, <code>runtime.id</code> contiendra la valeur. SInon <code>runtime.id</code> contiendra l'ID généré pour l'extension.</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.runtime.id")}}</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/index.html
new file mode 100644
index 0000000000..fb23d7cc7a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/index.html
@@ -0,0 +1,171 @@
+---
+title: runtime
+slug: Mozilla/Add-ons/WebExtensions/API/runtime
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime
+---
+<div>{{AddonSidebar}}</div>
+
+<p><span class="seoSummary">Ce module fournit des informations sur votre extension et l'environnement dans lequel elle fonctionne.</span></p>
+
+<p>Il fournit également des API de messagerie vous permettant de:</p>
+
+<ul>
+ <li>Communiquer entre les différentes parties de votre extension.</li>
+ <li>Communiquer avec d'autres extensions.</li>
+ <li>Communiquer avec les applications natives.</li>
+</ul>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("runtime.Port")}}</dt>
+ <dd>Représente une extrémité d'une connexion entre deux contextes spécifiques, qui peut être utilisée pour échanger des messages.</dd>
+ <dt>{{WebExtAPIRef("runtime.MessageSender")}}</dt>
+ <dd>
+ <p>Contient des informations sur l'expéditeur d'un message ou d'une demande de connexion.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("runtime.PlatformOs")}}</dt>
+ <dd>Identifie le système d'exploitation du navigateur.</dd>
+ <dt>{{WebExtAPIRef("runtime.PlatformArch")}}</dt>
+ <dd>Identifie l'architecture du processeur du navigateur.</dd>
+ <dt>{{WebExtAPIRef("runtime.PlatformInfo")}}</dt>
+ <dd>Contient des informations sur la plate-forme utilisée par le navigateur.</dd>
+ <dt>{{WebExtAPIRef("runtime.RequestUpdateCheckStatus")}}</dt>
+ <dd>Résultat d'un appel à {{WebExtAPIRef("runtime.requestUpdateCheck()")}}.</dd>
+ <dt>{{WebExtAPIRef("runtime.OnInstalledReason")}}</dt>
+ <dd>La raison pour laquelle l'événement {{WebExtAPIRef("runtime.onInstalled")}} est en cours d'envoi.</dd>
+ <dt>{{WebExtAPIRef("runtime.OnRestartRequiredReason")}}</dt>
+ <dd>La raison pour laquelle l'événement {{WebExtAPIRef("runtime.onRestartRequired")}} est en cours d'expédition.</dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("runtime.lastError")}}</dt>
+ <dd>Cette valeur est définie lorsqu'une fonction asynchrone a une condition d'erreur qu'elle doit signaler à son appelant</dd>
+ <dt>{{WebExtAPIRef("runtime.id")}}</dt>
+ <dd>L'ID de l'extension</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("runtime.getBackgroundPage()")}}</dt>
+ <dd>Récupère l'objet <a href="/fr/docs/Web/API/Window">Window</a> pour la page d'arrière-plan qui s'exécute dans l'extension en cours.</dd>
+ <dt>{{WebExtAPIRef("runtime.openOptionsPage()")}}</dt>
+ <dd>
+ <p>Ouvre une <a href="/fr/Add-ons/WebExtensions/user_interface/Options_pages">page d'options</a> de votre extension.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("runtime.getManifest()")}}</dt>
+ <dd>Obtient le fichier <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a> complet,  sérialisé en tant qu'objet.</dd>
+ <dt>{{WebExtAPIRef("runtime.getURL()")}}</dt>
+ <dd>Etant donné un chemin relatif de <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a> à une ressource empaquetée avec l'extension, renvoie une URL entièrement qualifiée.</dd>
+ <dt>{{WebExtAPIRef("runtime.setUninstallURL()")}}</dt>
+ <dd>Définit une URL à visiter lorsque l'extension est désinstallée.</dd>
+ <dt>{{WebExtAPIRef("runtime.reload()")}}</dt>
+ <dd>Recharge l'extension.</dd>
+ <dt>{{WebExtAPIRef("runtime.requestUpdateCheck()")}}</dt>
+ <dd>Vérifie les mises à jour de cette extension.</dd>
+ <dt>{{WebExtAPIRef("runtime.connect()")}}</dt>
+ <dd>Établit une connexion d'un script de contenu au processus d'extension principal ou d'une extension à une extension différente.</dd>
+ <dt>{{WebExtAPIRef("runtime.connectNative()")}}</dt>
+ <dd>
+ <div>Connecte l'extension à une application native sur l'ordinateur de l'utilisateur.</div>
+ </dd>
+ <dt>{{WebExtAPIRef("runtime.sendMessage()")}}</dt>
+ <dd>Envoie un seul message aux écouteurs d'événement dans votre extension ou une extension différente. Similaire à  {{WebExtAPIRef('runtime.connect')}} mais n'envoie qu'un seul message, avec une réponse facultative.</dd>
+ <dt>{{WebExtAPIRef("runtime.sendNativeMessage()")}}</dt>
+ <dd>Envoie un seul message d'une extension à une application native.</dd>
+ <dt>{{WebExtAPIRef("runtime.getPlatformInfo()")}}</dt>
+ <dd>Renvoie des informations sur la plate-forme actuelle.</dd>
+ <dt>{{WebExtAPIRef("runtime.getBrowserInfo()")}}</dt>
+ <dd>Renvoie des informations sur le navigateur dans lequel cette extension est installée.</dd>
+ <dt>{{WebExtAPIRef("runtime.getPackageDirectoryEntry()")}}</dt>
+ <dd>Renvoie un DirectoryEntry pour le répertoire du package.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("runtime.onStartup")}}</dt>
+ <dd>Lancé lorsqu'un premier profil a cette extension installée. Cet événement n'est pas déclenché lorsqu'un profil de navigation privée est démarré.</dd>
+ <dt>{{WebExtAPIRef("runtime.onInstalled")}}</dt>
+ <dd>Lancé lorsque l'extension est installée pour la première fois, lorsque l'extension est mise à jour vers une nouvelle version et lorsque le navigateur est mis à jour vers une nouvelle version.</dd>
+ <dt>{{WebExtAPIRef("runtime.onSuspend")}}</dt>
+ <dd>Envoyé sur la page de l'événement juste avant le déchargement de l'extension. Cela donne à l'extension l'opportunité de faire un peu de nettoyage.</dd>
+ <dt>{{WebExtAPIRef("runtime.onSuspendCanceled")}}</dt>
+ <dd>Envoyé après {{WebExtAPIRef("runtime.onSuspend")}} pour indiquer que l'extension ne sera pas déchargée après tout.</dd>
+ <dt>{{WebExtAPIRef("runtime.onUpdateAvailable")}}</dt>
+ <dd>Lancé lorsqu'une mise à jour est disponible, mais n'est pas installé immédiatement car l'extension est en cours d'exécution.</dd>
+ <dt>{{WebExtAPIRef("runtime.onBrowserUpdateAvailable")}} {{deprecated_inline}}</dt>
+ <dd>Lancé lorsqu'une mise à jour pour le navigateur est disponible, mais n'est pas installée immédiatement car un redémarrage du navigateur est requis.</dd>
+ <dt>{{WebExtAPIRef("runtime.onConnect")}}</dt>
+ <dd>Lancé lorsqu'une connexion est établie avec un processus d'extension ou un script de contenu.</dd>
+ <dt>{{WebExtAPIRef("runtime.onConnectExternal")}}</dt>
+ <dd>Lancé lorsqu'une connexion est établie avec une autre extension.</dd>
+ <dt>{{WebExtAPIRef("runtime.onMessage")}}</dt>
+ <dd>Lancé lorsqu'un message est envoyé par un processus d'extension ou un script de contenu.</dd>
+ <dt>{{WebExtAPIRef("runtime.onMessageExternal")}}</dt>
+ <dd>Lancé lorsqu'un message est envoyé depuis un autre poste. Ne peut pas être utilisé dans un script de contenu.</dd>
+ <dt>{{WebExtAPIRef("runtime.onRestartRequired")}}</dt>
+ <dd>Lancé lorsque le périphérique doit être redémarré.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<div>
+
+
+<p>{{Compat("webextensions.api.runtime")}}</p>
+
+<div>{{WebExtExamples("h2")}}</div>
+
+<div></div>
+</div>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.html
new file mode 100644
index 0000000000..0fa4362444
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.html
@@ -0,0 +1,124 @@
+---
+title: runtime.lastError
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/lastError
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Property
+ - Reference
+ - WebExtensions
+ - lastError
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/lastError
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Cette valeur est utilisée pour signaler un message d'erreur provenant d'une API asynchrone, lorsque l'API asynchrone reçoit un rappel. Cela est utile pour les extensions qui utilisent la valeur basée sur le rappel des API WebExtension.</div>
+
+<div></div>
+
+<div>Vpous n'avez pas besoin de vérifier cette propriété si vous utilisez la version basée sur la promesse des API : à la place, passez un gestionnaire d'erreurs à la promesse :</div>
+
+<div></div>
+
+<pre class="brush: js">var gettingCookies = browser.cookies.getAll();
+gettingCookies.then(onGot, onError);</pre>
+
+<p>La propriété <code>runtime.lastError</code> est définie lorsqu'une fonction asynchrone a une condition  d'erreur qu'elle doit signaler à son appelant.</p>
+
+<div>Si vous applez une fonction asynchrone qui veut définir <code>lastError</code>, vous devez vérifier l'erreur lorsque vous gérez le résultat de la fonction. Si  <code>lastError</code> a été défini et que vous ne cochez pas dans la fonction de rappel, une erreur sera générée.</div>
+
+<div></div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var myError = browser.runtime.lastError; // null or Error object</pre>
+
+<h3 id="Valeur">Valeur</h3>
+
+<p>Un objet <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Error">Error</a> représentant une erreur. La propriété <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Error/message"><code>message</code></a> est un <code>string</code> avec une description lisible par l'utilisateur de l'erreur. Si  <code>lastError</code> n'a pas été défini, la valeur est <code>null</code>.</p>
+
+<h2 id="Examples">Examples</h2>
+
+<p>Définir un cookie, utiliser pour enregistrer le nouveau cookie ou signaler une erreur :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">logCookie</span><span class="punctuation token">(</span>c<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">if</span> <span class="punctuation token">(</span>browser<span class="punctuation token">.runtime.</span>lastError<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>browser<span class="punctuation token">.runtime.</span>lastError<span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span> <span class="keyword token">else</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>c<span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>cookies<span class="punctuation token">.</span><span class="keyword token">set</span><span class="punctuation token">(</span>
+ <span class="punctuation token">{</span>url<span class="punctuation token">:</span> <span class="string token">"https://developer.mozilla.org/"</span><span class="punctuation token">}</span><span class="punctuation token">,</span>
+ logCookie
+<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>La même chose, mais en utilisant une promesse de gérer le résultat de <code>setCookie()</code>:</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">logCookie</span><span class="punctuation token">(</span>c<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>c<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">function</span> <span class="function token">logError</span><span class="punctuation token">(</span>e<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>e<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+<span class="keyword token">var</span> setCookie <span class="operator token">=</span> browser<span class="punctuation token">.</span>cookies<span class="punctuation token">.</span><span class="keyword token">set</span><span class="punctuation token">(</span>
+ <span class="punctuation token">{</span>url<span class="punctuation token">:</span> <span class="string token">"https://developer.mozilla.org/"</span><span class="punctuation token">}</span>
+<span class="punctuation token">)</span><span class="punctuation token">;
+</span>
+setCookie<span class="punctuation token">.</span><span class="function token">then</span><span class="punctuation token">(</span>logCookie<span class="punctuation token">,</span> logError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<div class="note">
+<p>Note: <code>runtime.lastError</code> est un alias pour  {{WebExtAPIRef("extension.lastError")}}: Ils sont ensemble, et la vérification de l'un fonctionnera.</p>
+</div>
+
+<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><span class="diff_add">{{Compat("webextensions.api.runtime.lastError")}}</span></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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.html
new file mode 100644
index 0000000000..d73a519c45
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.html
@@ -0,0 +1,86 @@
+---
+title: runtime.MessageSender
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/MessageSender
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - MessageSender
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/MessageSender
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet contenant des informations sur l'expéditeur d'un message ou d'une demande de connexion ; ceci est passé à l'écouteur {{WebExtAPIRef("runtime.onMessage()")}}.</p>
+
+<p>C'est aussi une propriété de {{WebExtAPIRef("runtime.Port")}}, mais seulement dans l'instance de <code>Port</code> passée dans les écouteurs {{WebExtAPIRef("runtime.onConnect()")}} ou {{WebExtAPIRef("runtime.onConnectExternal()")}}.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>tab</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('tabs.Tab')}}. Le {{WebExtAPIRef('tabs.Tab')}} qui a ouvert la connexion. Cette propriété ne sera présente que lorsque la connexion a été ouverte à partir d'un onglet (y compris les scripts de contenu).</dd>
+ <dt><code>frameId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Le cadre qui a ouvert la connexion. Zéro pour les cadres de haut niveau, positif pour les cadres enfants.  Cela ne sera défini que lorsque l'<code>onglet</code> est défini.</dd>
+ <dt><code>id</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'ID de l'extension qui a envoyé le message, si le message a été envoyé par une extension. Si l'expéditeur définit explicitement un ID à l'aide de la clé des <a href="/fr/Add-ons/WebExtensions/manifest.json/applications">applications</a> dans manifest.json, then <code>id</code>  aura cette valeur. Sinon, il aura l'ID qui a été généré pour l'expéditeur.</dd>
+ <dd>Notez que dans Firefox, avant la version 54, cette valeur était l'ID interne de l'extension (c'est-à-dire l'<a href="https://en.wikipedia.org/wiki/Universally_unique_identifier">UUID</a> qui apparaît dans l'URL de l'extension).</dd>
+ <dt><code>url</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'URL de la page ou du cadre hébergeant le script qui a envoyé le message.</dd>
+ <dd>Si l'expéditeur est un script s'exécutant dans une page d'extension (telle qu'une  <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Background_scripts">page d'arrière-plan</a>, une <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Options_pages">page d'options</a>, ou une <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Browser_actions_2">action de navigateur</a> ou une <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Page_actions">action contextuelle</a>), l'URL sera au format <code>"moz-extension://&lt;extension-internal-id&gt;/path/to/page.html"</code>. Si l'expéditeur est un script d'arrière-plan et que vous n'avez pas inclus une page d'arrière-plan, ce sera <code>"moz-extension://&lt;extension-internal-id&gt;/_generated_background_page.html"</code>.</dd>
+ <dd>Si l'expéditeur est un script s'exécutant sur une page Web (y compris les scripts de contenu et les scripts de page normaux), alors l'<code>url</code> sera l'URL de la page web. Si le script s'exécute dans un iframe, <code>url</code> sera l'URL de l'iframe.</dd>
+ <dt><code>tlsChannelId</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'ID de canal TLS de la page ou du cadre qui a ouvert la connexion, si demandé par l'extension, et si disponible.</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><span class="diff_add">{{Compat("webextensions.api.runtime.MessageSender")}}</span></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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.html
new file mode 100644
index 0000000000..357b3c9dec
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.html
@@ -0,0 +1,103 @@
+---
+title: runtime.onBrowserUpdateAvailable
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onBrowserUpdateAvailable
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onBrowserUpdateAvailable
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onBrowserUpdateAvailable
+---
+<p>{{AddonSidebar}}{{Deprecated_header}}</p>
+
+<p>Lancé lorsqu'une mise à jour pour le navigateur est disponible, mais qu'elle n'est pas installée immédiatement car un redémarrage du navigateur est requi.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onBrowserUpdateAvailable.addListener(listener)
+browser.runtime.onBrowserUpdateAvailable.removeListener(listener)
+browser.runtime.onBrowserUpdateAvailable.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>Arrestez d'écouter un événement. L'argument <code>listener</code> est l'écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si un <code>écouteur</code> est enregistré pour cet événement. Retourne <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>function</code></dt>
+ <dd>
+ <p>Une fonction de rappel qui sera appelée lorsque cet événement se produira.</p>
+ </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.runtime.onBrowserUpdateAvailable")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ecoutez cet événement :</p>
+
+<pre class="brush: js">function handleBrowserUpdateAvailable() {
+ // handle event
+}
+
+browser.runtime.onBrowserUpdateAvailable.addListener(handleBrowserUpdateAvailable);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.html
new file mode 100644
index 0000000000..31463f85c7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.html
@@ -0,0 +1,155 @@
+---
+title: runtime.onConnect
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onConnect
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onconnect
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onConnect
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé quand une connexion est établie avec un processus d'extension ou un script de contenu.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onConnect.addListener(listener)
+browser.runtime.onConnect.removeListener(listener)
+browser.runtime.onConnect.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 l'<code>écouteur</code> est l'écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si un <code>écouteur</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>fonction</code></dt>
+ <dd>
+ <p>Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants:</p>
+
+ <dl class="reference-values">
+ <dt><code>port</code></dt>
+ <dd>Un objet {{WebExtAPIRef('runtime.Port')}} connectant le script courant à l'autre contexte auquel il se connecte.</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.runtime.onConnect")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce script de contenu :</p>
+
+<ul>
+ <li>Se connecte au script d'arrière-plan et stocke le <code>Port</code> dans une variable <code>myPort</code></li>
+ <li>Ecoute les messages sur <code>myPort</code>, et les enregistre</li>
+ <li>Envoie des messages au script d'arrière-plan, en utilisant <code>myPort</code>, lorsque l'utilisateur clique sur le document</li>
+</ul>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="comment token">// content-script.js</span>
+
+<span class="keyword token">var</span> myPort <span class="operator token">=</span> browser<span class="punctuation token">.</span>runtime<span class="punctuation token">.</span><span class="function token">connect</span><span class="punctuation token">(</span><span class="punctuation token">{</span>name<span class="punctuation token">:</span><span class="string token">"port-from-cs"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+myPort<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"hello from content script"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+myPort<span class="punctuation token">.</span>onMessage<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span>m<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"In content script, received message from background script: "</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>m<span class="punctuation token">.</span>greeting<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+document<span class="punctuation token">.</span>body<span class="punctuation token">.</span><span class="function token">addEventListener</span><span class="punctuation token">(</span><span class="string token">"click"</span><span class="punctuation token">,</span> <span class="keyword token">function</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ myPort<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"they clicked the page!"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>Le script d'arrière-plan correspondant :</p>
+
+<ul>
+ <li>Ecoute les tentatives de connexion de script de contenu</li>
+ <li>Quand il reçoit une tentative de connexion :
+ <ul>
+ <li>Stocke le port dans une variable nommée <code>portFromCS</code></li>
+ <li>Envoie un message au script de contenu en utilisant le port</li>
+ <li>Commence à écouter les messages reçus sur le port et les enregistre</li>
+ </ul>
+ </li>
+ <li>Envoie des messages au script de contenu, en utilisant <code>portFromCS</code>, quand l'utilisateur clique sur l'action du navigateur de l'extension</li>
+</ul>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="comment token">// background-script.js</span>
+
+<span class="keyword token">var</span> portFromCS<span class="punctuation token">;</span>
+
+<span class="keyword token">function</span> <span class="function token">connected</span><span class="punctuation token">(</span>p<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ portFromCS <span class="operator token">=</span> p<span class="punctuation token">;</span>
+ portFromCS<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"hi there content script!"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ portFromCS<span class="punctuation token">.</span>onMessage<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span>m<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"In background script, received message from content script"</span><span class="punctuation token">)</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>m<span class="punctuation token">.</span>greeting<span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>runtime<span class="punctuation token">.</span>onConnect<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span>connected<span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+browser<span class="punctuation token">.</span>browserAction<span class="punctuation token">.</span>onClicked<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ portFromCS<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"they clicked the button!"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.html
new file mode 100644
index 0000000000..fe6cee3398
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.html
@@ -0,0 +1,140 @@
+---
+title: runtime.onConnectExternal
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onConnectExternal
+tags:
+ - API
+ - Add-ons
+ - Evènement
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onConnectExternal
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onConnectExternal
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'une extension reçoit une demande de connexion d'une extension différente.</p>
+
+<p>Pour envoyer un message qui sera reçu par le programme d'écoute <code>onConnectExternal</code>, utilisez {{WebExtAPIRef("runtime.connect()")}}, en transmettant l'ID du destinataire dans le paramètre <code>extensionId</code>.</p>
+
+<p>L'écouteur reçoit un objet {{WebExtAPIRef('runtime.Port')}} qu'il peut ensuite utiliser pour envoyer et recevoir des messages. L'objet <code>Port</code> contient également une propriété<code>sender</code>, qui est un objet {{WebExtAPIRef("runtime.MessageSender")}},  et que le destinataire peut utiliser pour vérifier l'ID de l'expéditeur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onConnectExternal.addListener(listener)
+browser.runtime.onConnectExternal.removeListener(listener)
+browser.runtime.onConnectExternal.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érifie si un  <code>listener</code> est enregistré pour cet événement. Retourne <code>true</code> s'il écoute,  <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>fonction</code></dt>
+ <dd>
+ <p>Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>port</code></dt>
+ <dd>Un objet {{WebExtAPIRef('runtime.Port')}} connectant le script en cours à l'autre extension à laquelle il se connecte.</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.runtime.onConnectExternal")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans cet exemple, l'extension Hansel se connecte à l'extension Gretel :</p>
+
+<pre class="brush: js">console.log("connecting to Gretel");
+var myPort = browser.runtime.connect(
+ "gretel@mozilla.org"
+);
+
+myPort.onMessage.addListener((message) =&gt; {
+ console.log(`From Gretel: ${message.content}`);
+});
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ myPort.postMessage({content: "Hello from Hansel"});
+});</pre>
+
+<p>Gretel écoute la connexion  et vérifie que l'expéditeur est vraiment Hansel:</p>
+
+<pre class="brush: js">var portFromHansel;
+
+browser.runtime.onConnectExternal.addListener((port) =&gt; {
+ console.log(port);
+ if (port.sender.id === "hansel@mozilla.org") {
+ console.log("connection attempt from Hansel");
+ portFromHansel = port;
+ portFromHansel.onMessage.addListener((message) =&gt; {
+ console.log(`From Hansel: ${message.content}`);
+ });
+ }
+});
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ portFromHansel.postMessage({content: "Message from Gretel"});
+});
+
+</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.html
new file mode 100644
index 0000000000..d1ef171ab7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.html
@@ -0,0 +1,125 @@
+---
+title: runtime.onInstalled
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onInstalled
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onInstalled
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onInstalled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque l'extension est installée pour la première fois, lorsque l'extension est mise à jour vers une nouvelle version et lorsque le navigateur est mis à jour vers une nouvelle version.</p>
+
+<p>Notez que <code>runtime.onInstalled</code> n'est pas la même chose  {{WebExtAPIRef("management.onInstalled")}}. L'événement  <code>runtime.onInstalled</code> est déclenché uniquement pour votre extension. L'événement <code>browser.management.onInstalled</code> est déclenché pour toutes les extensions.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onInstalled.addListener(listener)
+browser.runtime.onInstalled.removeListener(listener)
+browser.runtime.onInstalled.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajouterun écouteur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêtez d'écoutercet événement. L'argument <code>listener</code> est l'écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si un <code>écouteur</code> est enregistré pour cet événement. Renvoie <code>true</code> s'il écoute, <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>function</code></dt>
+ <dd>
+ <p>La fonction de rappel appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd>Un objet avec les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>id</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'ID de l'extension  de module partagé importé mise à jour. Ceci n'est présent que si la valeur de <code>raison</code> est  <code>shared_module_update</code>.</dd>
+ <dt><code>previousVersion</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. La version précédente de l'extension vient d'être mise à jour. Ceci n'est pas présent si la valeur de <code>raison</code> est <code>mise à jour</code>.</dd>
+ <dt><code>reason</code></dt>
+ <dd>Une valeur {{WebExtAPIRef('runtime.OnInstalledReason')}}, indiquant la raison pour laquelle cet événement est distribué.</dd>
+ <dt><code>temporary</code></dt>
+ <dd><code>boolean</code>. Vrai si le module complémentaire a été installé temporairement. Par exemple, en utilisant la page "about:debugging" dans Firefox ou en utilisant  <a href="/fr/Add-ons/WebExtensions/Getting_started_with_web-ext">web-ext run</a>. Sinon faux.</dd>
+ </dl>
+ </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.runtime.onInstalled", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Lorsque l'extensin est installé, connectez-vous à la raison de l'installon et ouvrez <a class="external external-icon" href="https://www.reddit.com/r/CatGifs/">https://www.reddit.com/r/CatGifs/</a>:</p>
+
+<pre class="brush: js">function handleInstalled(details) {
+ console.log(details.reason);
+ browser.tabs.create({
+ url: "http://chilloutandwatchsomecatgifs.com/"
+ });
+}
+
+browser.runtime.onInstalled.addListener(handleInstalled);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.html
new file mode 100644
index 0000000000..433f9e8292
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.html
@@ -0,0 +1,79 @@
+---
+title: runtime.OnInstalledReason
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/OnInstalledReason
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - OnInstalledReason
+ - Reference
+ - Type
+ - WebExtensions
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/OnInstalledReason
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Les valeurs pour laquelle l'événement {{WebExtAPIRef("runtime.onInstalled")}} est en cours d'envoi.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt><code>"install"</code></dt>
+ <dd>L'extension a été installée.</dd>
+ <dt><code>"update"</code></dt>
+ <dd>L'extension a été mise à jour vers une nouvelle version.</dd>
+ <dt><code>"browser_update"</code></dt>
+ <dd>Le navigateur a été mise à jour vers une nouvelle version.</dd>
+ <dt><code>"shared_module_update"</code></dt>
+ <dd>Une autre extension, qui contient un module utilisé par cette extension, a été mise à jour.</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.runtime.OnInstalledReason")}}</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.html
new file mode 100644
index 0000000000..c1267fff27
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.html
@@ -0,0 +1,327 @@
+---
+title: runtime.onMessage
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onMessage
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onmessage
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onMessage
+---
+<nav>{{AddonSidebar()}}</nav>
+
+<p>Utilisez cet événement pour écouter les messages d’une autre partie de votre extension. Par exemple, utilisez-le :</p>
+
+<p>Voici quelques exemples de cas d'utilisation :</p>
+
+<ul>
+ <li><strong>dans un <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Content_scripts">script de contenu</a></strong>, pour écouter les messages d’un <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Background_scripts">script d’arrière-plan</a> ;</li>
+ <li><strong>dans un script d’arrière-plan</strong>, pour écouter les messages d’un script de contenu ;</li>
+ <li><strong>dans une <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Options_pages">page d’options</a> ou un script de <a href="/fr/Add-ons/WebExtensions/User_interface_components#Popups">popup</a></strong>, pour écouter les messages d’un script d’arrière-plan ;</li>
+ <li><strong>dans un script d’arrière plan</strong>, pour écouter les messages d’une page d’options ou d’un script de popup.</li>
+</ul>
+
+<p>Pour envoyer un message reçu par l'écouteur <code>onMessage</code>, utilisez {{WebExtAPIRef("runtime.sendMessage()")}} ou (pour envoyer un message à un script de contenu) {{WebExtAPIRef("tabs.sendMessage()")}}.</p>
+
+<div class="blockIndicator note">
+<p>Évitez de créer plusieurs écouteurs <code>onMessage</code> pour le même type de message, car l'ordre dans lequel plusieurs auditeurs vont tirer n'est pas garanti.</p>
+
+<p>Lorsque vous voulez garantir la livraison d'un message à un point final spécifique, utilisez l'<a href="fr/docs/Mozilla/Add-ons/WebExtensions/Content_scripts##Les_messages_en_flux_continu">approche basée sur la connexion pour échanger des messages</a>.</p>
+</div>
+
+<p>Avec le message lui-même, l’écouteur reçoit en paramètres :</p>
+
+<ul>
+ <li>Un objet <code>sender</code> donnant les détails sur l’expéditeur du message ;</li>
+ <li>Une fonction <code>sendResponse</code> qui peut être utilisé pour renvoyer une réponse à l'expéditeur.</li>
+</ul>
+
+<p>Vous pouvez envoyer une réponse synchrone au message en appelant la fonction <code>sendResponse</code> dans votre écouteur. <a href="/fr/Add-ons/WebExtensions/API/runtime/onMessage#Sending_a_synchronous_response">Voir un exemple</a>.</p>
+
+<p>Pour envoyer un réponse asynchrone, il existe deux options :</p>
+
+<ul>
+ <li>Renvoyer <code>true</code> à partir de l’écouteur d’événement. Cela permet de conserver la fonction <code>sendResponse</code> après le retour de l’écouteur, ce qui vous permet de l’appeler plus tard. <a href="/fr/Add-ons/WebExtensions/API/runtime/onMessage#Sending_an_asynchronous_response_using_sendResponse">Voir un exemple</a>.</li>
+ <li>Renvoyer une <code>Promise</code> depuis l’écouteur d’événement, et la résoudre lorsque vous avez la réponse (ou la rejeter en cas d’erreur). <a href="/fr/Add-ons/WebExtensions/API/runtime/onMessage#Sending_an_asynchronous_response_using_a_Promise">Voir un exemple</a>.</li>
+</ul>
+
+<div class="warning">
+<p>Retourner une <code>Promise</code> est maintenant le moyen préféré car <code>sendResponse</code> <a class="external" href="https://github.com/mozilla/webextension-polyfill/issues/16#issuecomment-296693219">sera retirée de la spécification W3C</a>.</p>
+
+<p>La bibliothèque populaire <a class="external" href="https://github.com/mozilla/webextension-polyfill">webextension-polyfill</a> a déjà supprimé cette fonction de son implémentation.</p>
+</div>
+
+<div class="blockIndicator note">
+<p>Vous pouvez également utiliser une <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/Content_scripts">approche basée sur la connexion pour échanger des messages</a>.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox">browser.runtime.onMessage.addListener(listener)
+browser.runtime.onMessage.removeListener(listener)
+browser.runtime.onMessage.hasListener(listener)</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</code></dt>
+ <dd>Ajoute un écouteur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Cesse d’écouter cet événement. L’argument <code>listener</code> est l’écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si un <code>listener</code> est enregistré pour cet événement. Retourne <code>true</code> s’il écoute, <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_de_addListener">Syntaxe de addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><em><code>listener</code></em></dt>
+ <dd>
+ <p>Une fonction d’écoute qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><em><code>message</code></em></dt>
+ <dd><code>object</code>. Le message lui-même. C’est un objet JSON-ifiable.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><em><code>sender</code></em></dt>
+ <dd>Un objet {{WebExtAPIRef("runtime.MessageSender")}} représentant l’expéditeur du message.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>s<em>endResponse</em></code></dt>
+ <dd>
+ <p>Une fonction à appeler, au plus une fois, pour envoyer une réponse au <code><var>message</var></code>. La fonction prend un seul argument, qui peut être n'importe quel objet JSON-ifiable. Cet argument est renvoyé à l'expéditeur du message.</p>
+
+ <p>Si vous avez plus d'un écouteur <code>onMessage()</code> dans le même document, alors un seul peut envoyer une réponse.</p>
+
+ <p>Pour envoyer une réponse de manière synchrone, appelez <code>sendResponse()</code> avant le retour de la fonction d'écoute.</p>
+
+ <p>Pour envoyer une réponse de manière asynchrone</p>
+
+ <ul>
+ <li>soit garder une référence à l'argument <code>sendResponse()</code> et retourner <code>true</code> depuis la fonction listenener. Vous pourrez alors appeler <code>sendResponse()</code> après le retour de la fonction d'écoute.</li>
+ <li>ou retournez une {{jsxref("Promise")}} à partir de la fonction d'écoute et résolvez la promise lorsque la réponse est prête. C'est un moyen privilégié</li>
+ </ul>
+ </dd>
+ </dl>
+
+ <p>La fonction <code><var>listener</var></code> peut renvoyer un booléen ou une {{jsxref("Promise")}}.</p>
+
+ <div class="blockIndicator note">
+ <p><strong>Important:</strong> N'appelez pas <code>addListener()</code> en utilisant une fonction  <code>async</code> :</p>
+
+ <pre class="brush: js example-bad">// don't do this
+browser.runtime.onMessage.addListener(
+ async (data, sender) =&gt; {
+ if (data.type === 'handle_me') { return 'done'; }
+ }
+);
+</pre>
+
+ <p>L'auditeur consommera ainsi chaque message qu'il reçoit, ce qui empêchera effectivement tous les autres auditeurs de recevoir et de traiter des messages.</p>
+
+ <p>Si vous souhaitez adopter une approche asynchrone, utilisez plutôt une Promise, comme ceci :</p>
+
+ <pre class="brush: js example-good">browser.runtime.onMessage.addListener(
+ (data, sender) =&gt; {
+ if (data.type === 'handle_me') {
+ return Promise.resolve('done');
+ }
+ }
+);
+</pre>
+ </div>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<p class="hidden">La table de compatibilité sur cette page est générée à partir de données structurées. Si vous souhaitez contribuer aux données, veuillez consulter <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> et nous envoyer une <em>pull request.</em></p>
+
+<p>{{Compat("webextensions.api.runtime.onMessage()")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<h3 id="Exemple_simple">Exemple simple</h3>
+
+<p>Ce script de contenu écoute les événements clic dans la page web. Si le clic a eu lieu sur un lien, il envoie un message à la page d’arrière-plan avec l’URL cible :</p>
+
+<pre class="brush: js">// content-script.js
+
+window.addEventListener("click", notifyExtension);
+
+function notifyExtension(e) {
+ if (e.target.tagName != "A") {
+ return;
+ }
+ browser.runtime.sendMessage({"url": e.target.href});
+}</pre>
+
+<p>Le script d’arrière-plan écoute ces messages et affiche une notification à l’aide de l’API <code><a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/notifications">notifications</a></code>.</p>
+
+<pre class="brush: js">// background-script.js
+
+browser.runtime.onMessage.addListener(notify);
+
+function notify(message) {
+ browser.notifications.create({
+ "type": "basic",
+ "iconUrl": browser.extension.getURL("link.png"),
+ "title": "Vous avez cliqué sur un lien !",
+ "message": message.url
+ });
+}</pre>
+
+<h3 id="Envoyer_une_réponse_synchrone">Envoyer une réponse synchrone</h3>
+
+<p>Le script de contenu suivant envoie un message au script d’arrière plan lorsque l’utilisateur ou l’utilisatrice clique sur la page. Il enregistre également toute réponse envoyé par le script d’arrière-plan :</p>
+
+<pre class="brush: js">// content-script.js
+
+function handleResponse(message) {
+ console.log(`le script d’arrière-plan a répondu : ${message.response}`);
+}
+
+function handleError(error) {
+ console.log(`Erreur : ${error}`);
+}
+
+function sendMessage(e) {
+ var sending = browser.runtime.sendMessage({content: "message du script de contenu"});
+ sending.then(handleResponse, handleError);
+}
+
+window.addEventListener("click", sendMessage);</pre>
+
+<p>Voici une version du script d’arrière-plan correspondant, qui envoie une réponse de manière synchrone depuis l’intérieur de l’écouteur :</p>
+
+<pre class="brush: js">// background-script.js
+
+function handleMessage(request, sender, sendResponse) {
+ console.log(`le script de contenu a envoyé un message : ${request.content}`);
+ sendResponse({response: "réponse du script d’arrière-plan"});
+}
+
+browser.runtime.onMessage.addListener(handleMessage);</pre>
+
+<p>Et voici une autre version, qui utilise {{jsxref("Promise.resolve()")}} :</p>
+
+<pre class="brush: js">// background-script.js
+
+function handleMessage(request, sender, sendResponse) {
+ console.log(`le script de contenu a envoyé un message : ${request.content}`);
+ return Promise.resolve({response: "réponse du script d’arrière-plan"});
+}
+
+browser.runtime.onMessage.addListener(handleMessage);</pre>
+
+<h3 id="Envoi_d’une_réponse_asynchrone_à_l’aide_de_sendResponse">Envoi d’une réponse asynchrone à l’aide de sendResponse</h3>
+
+<p>Voici un autre version du script d’arrière-plan de l’exemple précédent. Il envoie une réponse de manière asynchrone, après le retour de l’écouteur. Remarquez le <code>return true;</code> dans l’écouteur : cela indique au navigateur que vous avez l’intention d’utiliser l’argument <code>sendResponse</code> après le retour de l’écouteur.</p>
+
+<pre class="brush: js">// background-script.js
+
+function handleMessage(request, sender, sendResponse) {
+ console.log(`le script de contenu a envoyé un message : ${request.content}`);
+ setTimeout(() =&gt; {
+ sendResponse({response: "réponse asynchrone du script d’arrière-plan"});
+ }, 1000);
+ return true;
+}
+
+browser.runtime.onMessage.addListener(handleMessage);</pre>
+
+<h3 id="Envoi_d’une_réponse_asynchrone_à_l’aide_d’une_promesse">Envoi d’une réponse asynchrone à l’aide d’une promesse</h3>
+
+<p>Ce script de contenu reçoit le premier lien <code>&lt;a&gt;</code> dans la page, et envoie un message demandant si l’emplacement du lien fait partie des marque-pages. Il attend comme réponse un {{jsxref("Boolean", "booléen")}} : <code>true</code> si l’emplacement est dans les marque-pages, <code>false</code> sinon.</p>
+
+<pre class="brush: js">// content-script.js
+
+const firstLink = document.querySelector("a");
+
+function handleResponse(isBookmarked) {
+ if (isBookmarked) {
+ firstLink.classList.add("bookmarked");
+ }
+}
+
+browser.runtime.sendMessage({
+ url: firstLink.href
+}).then(handleResponse);</pre>
+
+<p>Voici le script d’arrière plan. Il utilise <code>{{WebExtAPIRef("bookmarks.search()")}}</code> pour voir si le lien est dans les marque-pages, ce qui renvoie une {{jsxref("Promise", "promesse")}} :</p>
+
+<pre class="brush: js">// background-script.js
+
+function isBookmarked(message, sender, response) {
+ return browser.bookmarks.search({
+ url: message.url
+ }).then(function(results) {
+ return results.length &gt; 0;
+ });
+}
+
+browser.runtime.onMessage.addListener(isBookmarked);</pre>
+
+<p>Si le gestionnaire asynchrone ne renvoie pas de promise, vous pouvez explicitement construire une promise. Cet exemple plutôt artificiel envoie une réponse après un délai d’une seconde, en utilisant <code><a href="/fr/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout">Window.setTimeout()</a></code> :</p>
+
+<pre class="brush: js">// background-script.js
+
+function handleMessage(request, sender, sendResponse) {
+ return new Promise(resolve =&gt; {
+ setTimeout(() =&gt; {
+ resolve({response: "réponse asynchrone du script d’arrière-plan"});
+ }, 1000);
+ });
+}
+
+browser.runtime.onMessage.addListener(handleMessage);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.html
new file mode 100644
index 0000000000..f9f67a0264
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.html
@@ -0,0 +1,157 @@
+---
+title: runtime.onMessageExternal
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onMessageExternal
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onMessageExternal
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onMessageExternal
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>
+<div>Utilisez cet événement pour écouter les messages d'une autre extension.</div>
+
+<div></div>
+
+<p>Pour envoyer un message qui sera reçu par le module d'écoute <code>onMessageExternal</code>, utilisez {{WebExtAPIRef("runtime.sendMessage()")}}, en transmettant l'ID du destinataire dans le paramètre <code>extensionId</code>.</p>
+
+<p>Avec le message lui-même, l'écouteur est transmis :</p>
+
+<ul>
+ <li>un objet <code>sender</code> donnant des détails sur l'expéditeur du message</li>
+ <li>une fonction <code>sendResponse</code> qu'elle peut utiliser pour renvoyer une réponse à l'expéditeur.</li>
+</ul>
+</div>
+
+<p>Cette API ne peut pas être utilisée dans un script de contenu.</p>
+
+<h2 id="Syntax">Syntax</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onMessageExternal.addListener()
+browser.runtime.onMessageExternal.removeListener(listener)
+browser.runtime.onMessageExternal.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érifie si un <code>listener</code> est enregistré pour cet événement. Renvoie <code>true</code> s'il écoute, <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>function</code></dt>
+ <dd>
+ <p>Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>message</code></dt>
+ <dd><code>object</code>. Le message lui-même. C'est un objet JSON-ifiable.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>sender</code></dt>
+ <dd>Un objet {{WebExtAPIRef('runtime.MessageSender')}} représentant l'expéditeur du message.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>sendResponse</code></dt>
+ <dd>
+ <p>Une fonction à appeler, au plus une fois, pour envoyer une réponse au message. La fonction prend un seul argument, qui peut être n'importe quel objet JSON-ifiable. Cet argument est renvoyé à l'expéditeur du message.</p>
+
+ <p>Si vous avez plus d'un écouteur <code>onMessageExternal</code> dans le même document, un seul peut envoyer une réponse.</p>
+
+ <p>To send a response synchronously, call <code>sendResponse</code> before the listener function returns. To send a response asynchronously:</p>
+
+ <ul>
+ <li>Soit garder une référence à l'argumen <code>sendResponse</code> et retourne <code>true</code> à partir de la fonction d'écouteur. Vous pourrez ensuite appeler <code>sendResponse</code> après le retour de la fonction d'écouteur..</li>
+ <li>ou retourne une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> de la fonction d'écouteur et résoudre la promesse lorsque la réponse est prête.</li>
+ </ul>
+ </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.runtime.onMessageExternal")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans cet exemple, l'extension "blue@mozilla.org" envoie un message  à l'extension "red@mozilla.org":</p>
+
+<pre class="brush: js">// sender: browser.runtime.id == "blue@mozilla.org"
+
+// Send a message to the extension whose ID is "red@mozilla.org"
+browser.runtime.sendMessage(
+ "red@mozilla.org",
+ "my message"
+ );</pre>
+
+<pre class="brush: js">// recipient: browser.runtime.id == "red@mozilla.org"
+
+function handleMessage(message, sender) {
+ // check that the message is from "blue@mozilla.org"
+ if (sender.id === "blue@mozilla.org") {
+ // process message
+ }
+}
+
+browser.runtime.onMessageExternal.addListener(handleMessage);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.html
new file mode 100644
index 0000000000..0183947b85
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.html
@@ -0,0 +1,100 @@
+---
+title: runtime.onRestartRequired
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onRestartRequired
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onRestartRequired
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onRestartRequired
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'une application ou le périphérique sur lequel elle s'exécute doit être redémarré. L'application devrait fermer toutes ses fenêtres dans les meilleurs délais pour permettre le redémarrage. Si l'application ne fait rien, un redémarrage sera appliqué après une période de grâce de 24 heures. Actuellement, cet événement est uniquement déclenché pour les applications de kiosque Chrome OS.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onRestartRequired.addListener(listener)
+browser.runtime.onRestartRequired.removeListener(listener)
+browser.runtime.onRestartRequired.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajouter 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érifie si un <code>listener</code> est enregistré pour cet événement. Renvoie <code>true</code> s'il écoute, <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>fonction </code></dt>
+ <dd>
+ <p>Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>raison</code></dt>
+ <dd>Une valeur {{WebExtAPIRef('runtime.OnRestartRequiredReason')}} — La raison pour laquelle l'événemtn est envoyé.</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.runtime.onRestartRequired")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.html
new file mode 100644
index 0000000000..4ab9253023
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.html
@@ -0,0 +1,74 @@
+---
+title: runtime.OnRestartRequiredReason
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/OnRestartRequiredReason
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - OnRestartsRequiredReason
+ - Reference
+ - Type
+ - WebExtensions
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/OnRestartRequiredReason
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La raison pour laquelle l'événement  {{WebExtAPIRef("runtime.onRestartRequired", "onRestartRequired")}} est en cours d'exécution.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<ul>
+ <li><code>"app_update"</code>: L'application en cours de mise à jour vers une version plus récente.</li>
+ <li><code>"os_update"</code>: Le navigateur / Système d'exploitation est mise à jour vers une nouvelle verion plus récente.</li>
+ <li><code>"periodic"</code>: Le système a fonctionné pendant plus logntemps que la durée de disponibilité autorisée dans la stratégie d'entreprise.</li>
+</ul>
+
+<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.runtime.OnRestartRequiredReason")}}</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.html
new file mode 100644
index 0000000000..49d50da632
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.html
@@ -0,0 +1,105 @@
+---
+title: runtime.onStartup
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onStartup
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onStartup
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onStartup
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un premier profil a cette extension installée. Cet événement n'est pas déclenché lorsqu'une navigation privée / profil privé est démarré, même si cette extension fonctionne en mode de navigation privée 'split'.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onStartup.addListener(listener)
+browser.runtime.onStartup.removeListener(listener)
+browser.runtime.onStartup.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un écouteur à écouteur.</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érifie si un <code>écouteur</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>Une fonction qui sera appelée lorsque cet événemetn se produit.</p>
+ </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.runtime.onStartup")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ouvre <a href="http://chilloutandwatchsomecatgifs.com/">http://chilloutandwatchsomecatgifs.com/</a> quand le navigateur démarre :</p>
+
+<pre class="brush: js">function handleStartup() {
+ browser.tabs.create({
+ url: "http://chilloutandwatchsomecatgifs.com/"
+ });
+}
+
+browser.runtime.onStartup.addListener(handleStartup);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.html
new file mode 100644
index 0000000000..ef4f5a5353
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.html
@@ -0,0 +1,108 @@
+---
+title: runtime.onSuspend
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onSuspend
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onSuspend
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onSuspend
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Envoyé sur la page de l'événement juste avant son déchargement. Cela donne à l'extension l'opportunité de faire un peu de nettoyage. Notez que, comme la page est en cours de déchargement, les opérations asynchrones démarrées lors de la gestion de cet événement ne sont pas garanties.</p>
+
+<div class="note">
+<p><strong>Note</strong>: Si quelque chose empêche le déchargement de la page d'événement, l'événement {{WebExtAPIRef("runtime.onSuspendCanceled")}} sera envoyé et la page ne sera pas déchargée.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onSuspend.addListener(listener)
+browser.runtime.onSuspend.removeListener(listener)
+browser.runtime.onSuspend.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érifie si un <code>écouteur</code> est enregistré pour cet événement. Retourne <code>true</code> s'il est écouté, 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 dui sera appelée lorsque cet événement se produit</p>
+ </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.runtime.onSuspend")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ecoutez les événements suspendus :</p>
+
+<pre class="brush: js">function handleSuspend() {
+ console.log("Suspending event page");
+ // handle cleanup
+}
+
+browser.runtime.onSuspend.addListener(handleSuspend);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.html
new file mode 100644
index 0000000000..cf01913334
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.html
@@ -0,0 +1,103 @@
+---
+title: runtime.onSuspendCanceled
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onSuspendCanceled
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onSuspendCanceled
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onSuspendCanceled
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Envoyé après {{WebExtAPIRef("runtime.onSuspend")}} pour indiquer que l'application  ne sera pas déchargée après tout.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onSuspendCanceled.addListener(listener)
+browser.runtime.onSuspendCanceled.removeListener(listener)
+browser.runtime.onSuspendCanceled.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajouter 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 un écouteur à suppriimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si un <code>écouteur</code> est enregistré pour cet événement. Retourne <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.</p>
+ </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><span class="diff_add">{{Compat("webextensions.api.runtime.onSuspendCanceled")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ecoutez les événements <code>SuspendCanceled</code> :</p>
+
+<pre class="brush: js">function handleSuspendCanceled() {
+ console.log("Suspend canceled");
+}
+
+browser.runtime.onSuspendCanceled.addListener(handleSuspendCanceled);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.html
new file mode 100644
index 0000000000..d1795b9b05
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.html
@@ -0,0 +1,116 @@
+---
+title: runtime.onUpdateAvailable
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/onUpdateAvailable
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onUpdateAvailable
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/onUpdateAvailable
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Déclenché quand une mise à jour de l'extension est disponible. Cet événement permet à une extension de retarder une mise à jour : par exemple, car elle est au milieu d'une opération qui ne doit pas être interrompue.</p>
+
+<p>Si l'extension n'écoute pas cet événement lorsqu'une mise à jour est disponible, l'extension est rechargée immédiatement et la mise à jour est appliquée. Si l'extension est à l'écoute, la mise à jour sera appliquée la prochaine fois que l'extension sera rechargée. Cela arrive si :</p>
+
+<ul>
+ <li>Le navigateur est redémarré</li>
+ <li>L'extension est désactivée et réactivée</li>
+ <li>L'extension se recharge explicitement en appelant {{WebExtAPIRef('runtime.reload()')}}.</li>
+</ul>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.onUpdateAvailable.addListener()
+browser.runtime.onUpdateAvailable.removeListener(listener)
+browser.runtime.onUpdateAvailable.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajouter 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 un écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie que l'<code>écouteur</code> est enregistré pour cet événement. Retourne <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 quand cet événement se produit. La fonction recevra les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Contient une seule propriété, une chaîne nommée <code>version</code>, qui représente le numéro de version de la mise à jour.</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.runtime.onUpdateAvailable")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ecoutez les événements <code>UpdateAvailable</code>:</p>
+
+<pre class="brush: js">function handleUpdateAvailable(details) {
+ console.log(details.version);
+}
+
+browser.runtime.onUpdateAvailable.addListener(handleUpdateAvailable);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.html
new file mode 100644
index 0000000000..ab58180798
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.html
@@ -0,0 +1,86 @@
+---
+title: runtime.openOptionsPage()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/openOptionsPage
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/openOptionsPage
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Si votre extension a défini une <a href="/fr/Add-ons/WebExtensions/user_interface/Options_pages">page d'options</a>, cette méthode l'ouvre.</div>
+
+<div></div>
+
+<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 openingPage = browser.runtime.openOptionsPage()
+</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 remplie sans argument lorsque la page d'options a été créée avec succés, ou rejetée avec un message d'erreur si l'opération a échoué.</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.runtime.openOptionsPage")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ouvrez une page d'options lorsque l'utilisateur clique sur l'icône d'une action du navigateur :</p>
+
+<pre class="brush: js">function onOpened() {
+ console.log(`Options page opened`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var opening = browser.runtime.openOptionsPage();
+opening.then(onOpened, onError);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.html
new file mode 100644
index 0000000000..84d8172bb4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.html
@@ -0,0 +1,77 @@
+---
+title: runtime.PlatformArch
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/PlatformArch
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - PlatformArch
+ - Reference
+ - Type
+ - WebExtensions
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/PlatformArch
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'architecture du processeur de la machine.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possible sont  :</p>
+
+<dl>
+ <dt><code>"arm"</code></dt>
+ <dd>La plateforme est basée sur l'architecture des bras.</dd>
+ <dt><code>"x86-32"</code></dt>
+ <dd>La plateforme est basé sur l'architecture x86 32-bits.</dd>
+ <dt><code>"x86-64"</code></dt>
+ <dd>La plateforme est basé sur l'architecture x86 64-bits.</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.runtime.PlatformArch")}}</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.html
new file mode 100644
index 0000000000..30ff35a1ce
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.html
@@ -0,0 +1,77 @@
+---
+title: runtime.PlatformInfo
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/PlatformInfo
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - PlatformInfo
+ - Reference
+ - Type
+ - WebExtensions
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/PlatformInfo
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet contenant des informations sur la plate-forme actuelle.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets qui contiennent les propriétés suivantes:</p>
+
+<dl class="reference-values">
+ <dt><code>os</code></dt>
+ <dd>{{WebExtAPIRef('runtime.PlatformOs')}}. Le système d'exploitation de la plateforme.</dd>
+ <dt><code>arch</code></dt>
+ <dd>{{WebExtAPIRef('runtime.PlatformArch')}}. L'architecture du processeur de la plateforme.</dd>
+ <dt><code>nacl_arch</code></dt>
+ <dd>{{WebExtAPIRef('runtime.PlatformNaclArch')}}. L'architecture du client natif Cela peut être différent de <code>arch</code> sur certaines plates-formes.</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><span class="diff_add">{{Compat("webextensions.api.runtime.PlatformInfo")}}</span></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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.html
new file mode 100644
index 0000000000..9880430b69
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.html
@@ -0,0 +1,68 @@
+---
+title: runtime.PlatformNaclArch
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/PlatformNaclArch
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - PlatformNaclArch
+ - Reference
+ - Type
+ - WebExtensions
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/PlatformNaclArch
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>L'architecture du client natif. Cela peut-etre différent de arch sur certaines plate-formes.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de type sont des chaînes. Les valeurs possible sont : <code>"arm"</code>, <code>"x86-32"</code>, <code>"x86-64"</code>.</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><span class="diff_add">{{Compat("webextensions.api.runtime.PlatformNaclArch")}}</span></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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.html
new file mode 100644
index 0000000000..64911f28b3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.html
@@ -0,0 +1,83 @@
+---
+title: runtime.PlatformOs
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/PlatformOs
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - PlatformOs
+ - Reference
+ - Type
+ - WebExtensions
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/PlatformOs
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le système d'exploitation sur lequel le navigateur fonctionne.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:</p>
+
+<dl>
+ <dt><code>"mac"</code></dt>
+ <dd>Le système d'exploitation est sous Mac OS X.</dd>
+ <dt><code>"win"</code></dt>
+ <dd>Le système d'exploitation est sous Windows.</dd>
+ <dt><code>"android"</code></dt>
+ <dd>Le système d'exploitation est sous Android.</dd>
+ <dt><code>"cros"</code></dt>
+ <dd>Le système d'exploitation est sous Chrome OS.</dd>
+ <dt><code>"linux"</code></dt>
+ <dd>Le système d'exploitation est sous Linux.</dd>
+ <dt><code>"openbsd"</code></dt>
+ <dd>Le système d'exploitation est sous Open/FreeBSD.</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.runtime.PlatformOs")}}</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.html
new file mode 100644
index 0000000000..eb8e904ad7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.html
@@ -0,0 +1,248 @@
+---
+title: runtime.Port
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/Port
+tags:
+ - API
+ - Add-ons
+ - Extensionns
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - port
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/Port
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet <code>Port</code> represente une extrémité d'une connexion entre deux contextes spécifiques, qui peut-être utilisée pour échanger des messages.</p>
+
+<p>Un côté initie la connexion à l'aide d'une API <code>connect()</code>. Cela retourne un objet <code>Port</code>. L'autre camp écoute les tentatives de connexion à l'aide d'un écouteur <code>onConnect</code>. Ceci est passé un objet <code>Port</code> correspondant.</p>
+
+<p>Une fois que les deux côtés ont des objets <code>Port,</code> ils peuvent échanger des messages JSON en utilisant <code>Port.postMessage()</code> et <code>Port.onMessage</code>. Quand ils sont terminés, chaque extrémité peut se déconnecter en utilisant <code>Port.disconnect()</code>, ce qui générera un événement <code>Port.onDisconnect</code> à l'autre extrémité, permettant à l'autre extrémité de faire le nettoyage requis.</p>
+
+<p>Vous pouvez utiliser ce modèle pour communiquer entre:</p>
+
+<ul>
+ <li>différentes parties de votre extension (par exemple, entre les <a href="/fr/Add-ons/WebExtensions/Content_scripts">scripts de contenus</a> et les <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Background_scripts">scripts d'arrière-plan</a>)</li>
+ <li>entre votre extension et une <a href="/fr/Add-ons/WebExtensions/Native_messaging">application native s'exéutant sur l'ordinateur de l'utilisateur</a>.</li>
+ <li>entre votre extension et une extension différente</li>
+</ul>
+
+<p>Vous devez utiliser différentes API de connexion pour différents types de connexions, comme indiqué dans le tableau ci-dessous.</p>
+
+<table class="fullwidth-table standard-table">
+ <thead>
+ <tr>
+ <th scope="col">type de connection</th>
+ <th scope="col">Lancer une tentative de connexion</th>
+ <th scope="col">Gérer la tentative de connexion</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>Script d'arrière-plan au script de contenu</td>
+ <td>{{WebExtAPIRef("tabs.connect()")}}</td>
+ <td>{{WebExtAPIRef("runtime.onConnect")}}</td>
+ </tr>
+ <tr>
+ <td>Script de contenu au script d'arrière-plan</td>
+ <td>{{WebExtAPIRef("runtime.connect()")}}</td>
+ <td>{{WebExtAPIRef("runtime.onConnect")}}</td>
+ </tr>
+ <tr>
+ <td>Extension à l'application native</td>
+ <td>{{WebExtAPIRef("runtime.connectNative()")}}</td>
+ <td>N'est pas applicable (voir <a href="/fr/Add-ons/WebExtensions/Native_messaging">Native messaging</a>).</td>
+ </tr>
+ <tr>
+ <td>Extension à l'extension</td>
+ <td>{{WebExtAPIRef("runtime.connect()")}}</td>
+ <td>{{WebExtAPIRef("runtime.onConnectExternal")}}</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Le nom du port, défini dans {{WebExtAPIRef("runtime.connect()")}} ou {{WebExtAPIRef("tabs.connect()")}} appel qui l'a créé. Si ce port est connecté à une application native, son nom est le nom de l'application native.</dd>
+ <dt><code>disconnect</code></dt>
+ <dd><code>function</code>. Déconnecte un port. Chaque extrémité peut appeler cela quand ils ont fini avec le port. Cela provoquera le déclenchement de <code>onDisconnect</code> à l'autre extrémité. Ceci est utile si l'autre extrémité maintient un état relatif à ce port, qui peut être nettoyé lors de la déconnexion. Si ce port est connecté à une application native, cette fonction ferme l'application native.</dd>
+ <dt><code>error</code></dt>
+ <dd><code>object</code>. Si le port a été déconnecté en raison d'une erreur, il sera défini sur un objet avec un <code>message</code>, de propriété de chaîne, vous donnant plus d'informations sur l'erreur. Voir <code>onDisconnect</code>.</dd>
+ <dt><code>onDisconnect</code></dt>
+ <dd>
+ <p><code>object</code>. Cela contient les fonctions <code>addListener()</code> et <code>removeListener()</code> communes à tous les événements pour les extensions créées à l'aide des API. WebExtension. Les fonctions de l'écouteur seront appelées lorsque l'autre extrémité aura appelé <code>Port.disconnect()</code>. Cet événement ne sera déclenché qu'une fois pour chaque port. La fonction d'écouteur recevra l'objet <code>Port</code>. Si le port a été déconnecté en raison d'une erreur, l'argument <code>Port</code> contiendra une propriété  <code>error</code> donnant plus d'informations sur l'erreur :</p>
+
+ <pre class="brush: js">port.onDisconnect.addListener((p) =&gt; {
+ if (p.error) {
+ console.log(`Disconnected due to an error: ${p.error.message}`);
+ }
+});</pre>
+
+ <p>Notez que dans Google Chrome <code>port.error</code> n'est pas supporté: utilisez plutôt  {{WebExtAPIRef("runtime.lastError")}} pour obtenir le message d'erreur.</p>
+ </dd>
+ <dt><code>onMessage</code></dt>
+ <dd><code>object</code>. Cela contient les fonctions <code>addListener()</code> et <code>removeListener()</code> communes à tous les événements pour les extensions créées à l'aide des API WebExtension. Les fonctions de l'écouteur seront appelées lorsque l'autre extrémité aura envoyé un message à ce port. L'écouteur recevra l'objet JSON envoyé par l'autre extrémité.</dd>
+ <dt><code>postMessage</code></dt>
+ <dd><code>function</code>. Envoyer un message à l'autre extrémité. Cela prend un argument, qui est un objet JSON représentant le message à envoyer. Il sera fourni à tout script écoutant l'événement <code>onMessage</code> du port, ou à l'application native si ce port est connecté à une application native.</dd>
+ <dt><code>sender</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('runtime.MessageSender')}}. Contient des informations sur l'expéditeur du message. ette propriété ne sera présente que sur les ports transmis aux écouteurs <code>onConnect</code>/<code>onConnectExternal</code>.</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.runtime.Port")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<h3 id="Connecting_from_content_scripts">Connecting from content scripts</h3>
+
+<p>This content script:</p>
+
+<ul>
+ <li>connects to the background script and stores the <code>Port</code> in a variable called <code>myPort</code>.</li>
+ <li>listens for messages on <code>myPort</code> and logs them.</li>
+ <li>sends messages to the background script, using <code>myPort</code>, when the user clicks the document.</li>
+</ul>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="comment token">// content-script.js</span>
+
+<span class="keyword token">var</span> myPort <span class="operator token">=</span> browser<span class="punctuation token">.</span>runtime<span class="punctuation token">.</span><span class="function token">connect</span><span class="punctuation token">(</span><span class="punctuation token">{</span>name<span class="punctuation token">:</span><span class="string token">"port-from-cs"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+myPort<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"hello from content script"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+myPort<span class="punctuation token">.</span>onMessage<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span>m<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"In content script, received message from background script: "</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>m<span class="punctuation token">.</span>greeting<span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+document<span class="punctuation token">.</span>body<span class="punctuation token">.</span><span class="function token">addEventListener</span><span class="punctuation token">(</span><span class="string token">"click"</span><span class="punctuation token">,</span> <span class="keyword token">function</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ myPort<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"they clicked the page!"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>The corresponding background script:</p>
+
+<ul>
+ <li>listens for connection attempts from the content script.</li>
+ <li>when it receives a connection attempt:
+ <ul>
+ <li>stores the port in a variable named <code>portFromCS</code>.</li>
+ <li>sends the content script a message using the port.</li>
+ <li>starts listening to messages received on the port, and logs them.</li>
+ </ul>
+ </li>
+ <li>sends messages to the content script, using <code>portFromCS</code>, when the user clicks the extension's browser action.</li>
+</ul>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="comment token">// background-script.js</span>
+
+<span class="keyword token">var</span> portFromCS<span class="punctuation token">;</span>
+
+<span class="keyword token">function</span> <span class="function token">connected</span><span class="punctuation token">(</span>p<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ portFromCS <span class="operator token">=</span> p<span class="punctuation token">;</span>
+ portFromCS<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"hi there content script!"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ portFromCS<span class="punctuation token">.</span>onMessage<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span>m<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"In background script, received message from content script"</span><span class="punctuation token">)</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>m<span class="punctuation token">.</span>greeting<span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>runtime<span class="punctuation token">.</span>onConnect<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span>connected<span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+browser<span class="punctuation token">.</span>browserAction<span class="punctuation token">.</span>onClicked<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="keyword token">function</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ portFromCS<span class="punctuation token">.</span><span class="function token">postMessage</span><span class="punctuation token">(</span><span class="punctuation token">{</span>greeting<span class="punctuation token">:</span> <span class="string token">"they clicked the button!"</span><span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<h4 id="Script_à_contenu_multiple">Script à contenu multiple</h4>
+
+<p>Si plusieurs scripts de contenu communiquent en même temps, vous voudrez peut-être stocker chaque connexion dans un tableau.</p>
+
+<ul>
+</ul>
+
+<pre class="brush: js">// background-script.js
+
+var ports = []
+
+function connected(p) {
+ ports[p.sender.tab.id] = p
+ //...
+}
+
+browser.runtime.onConnect.addListener(connected)
+
+browser.browserAction.onClicked.addListener(function() {
+ ports.forEach(p =&gt; {
+ p.postMessage({greeting: "they clicked the button!"})
+ })
+});</pre>
+
+<h3 id="Connecting_to_native_applications">Connecting to native applications</h3>
+
+<p>This example connects to the native application "ping_pong" and starts listening for messages from it. It also sends the native application a message when the user clicks a browser action icon:</p>
+
+<pre class="brush: js">/*
+On startup, connect to the "ping_pong" app.
+*/
+var port = browser.runtime.connectNative("ping_pong");
+
+/*
+Listen for messages from the app.
+*/
+port.onMessage.addListener((response) =&gt; {
+ console.log("Received: " + response);
+});
+
+/*
+On a click on the browser action, send the app a message.
+*/
+browser.browserAction.onClicked.addListener(() =&gt; {
+ console.log("Sending: ping");
+ port.postMessage("ping");
+});</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.html
new file mode 100644
index 0000000000..05b9a48524
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.html
@@ -0,0 +1,83 @@
+---
+title: runtime.reload()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/reload
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - reload
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/reload
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Recharge une extension.</p>
+
+<p>S'il y a des mises à jour en attente pour l'extension, qu'elles ont été différées en écoutant {{WebExtAPIRef("runtime.onUpdateAvailable")}}, elles seront appliquées en reload.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.runtime.reload()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</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.runtime.reload")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Rechargez l'extension lorsque l'utilisateur clique sur l'icône d'une action du navigateur :</p>
+
+<pre class="brush: js">browser.browserAction.onClicked.addListener((tab) =&gt; {
+ browser.runtime.reload();
+});</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.html
new file mode 100644
index 0000000000..1adb3de2bc
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.html
@@ -0,0 +1,110 @@
+---
+title: runtime.requestUpdateCheck()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/requestUpdateCheck
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - requestUpdateCheck
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/requestUpdateCheck
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Vérifie de voir si un mise à jour de l'extension est disponible.</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 requestingCheck = browser.runtime.requestUpdateCheck()
+</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 remplie avec deux arguments :</p>
+
+<dl class="reference-values">
+ <dt><code>status</code></dt>
+ <dd>Une valeur {{WebExtAPIRef('runtime.RequestUpdateCheckStatus')}}  — Le résultat de la vérification de mise à jour.</dd>
+ <dt><code>details</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Si le <code>status</code> est <code>update_available</code>, cela contient plus d'informations sur la mise à jour. C'est un objet contenant une simple propriété :</dd>
+ <dd>
+ <dl>
+ <dt><code>version</code></dt>
+ <dd><code>string</code>. La version de la mise à jour.</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><span class="diff_add">{{Compat("webextensions.api.runtime.requestUpdateCheck")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Demander une mise à jour, etenregistrer la nouvelle version si elle est disponible :</p>
+
+<pre class="brush: js">function onRequested(status, details) {
+ console.log(status);
+ if (status === "update_available") {
+ console.log(details.version);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var requestingCheck = browser.runtime.requestUpdateCheck(onRequested);
+requestingCheck.then(onRequested, onError);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.html
new file mode 100644
index 0000000000..15268f7523
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.html
@@ -0,0 +1,77 @@
+---
+title: runtime.RequestUpdateCheckStatus
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/RequestUpdateCheckStatus
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - RequestUpdateCheckStatus
+ - Type
+ - WebExtensions
+ - runtime
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/RequestUpdateCheckStatus
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Résultat d'un appel à {{WebExtAPIRef("runtime.requestUpdateCheck()")}}.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt><code>"throttled"</code></dt>
+ <dd>La mise à jour est limitée.</dd>
+ <dt><code>"no_update"</code></dt>
+ <dd>Aucune mise à jour n'est disponible.</dd>
+ <dt><code>"update_available"</code></dt>
+ <dd>Une mise à jour de l'extension est disponible.</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.runtime.RequestUpdateCheckStatus")}}</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.html
new file mode 100644
index 0000000000..1768aaed86
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.html
@@ -0,0 +1,167 @@
+---
+title: runtime.sendMessage()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/sendMessage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - runtime
+ - sendMessage
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/sendMessage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Envoie un simple message aux écouteurs d'événement dans votre extension ou une extension différente.</p>
+
+<p>Si vous envoyez à votre extension, omettez l'argument <code>extensionId</code>. L'événement {{WebExtAPIRef('runtime.onMessage')}} sera déclenché dans chaque page de votre extension, à l'exception du cadre appelé <code>runtime.sendMessage</code>.</p>
+
+<p>Si vous envoyez une extension différente, ajouter l'argument <code>extensionId</code> à l'ID de l'autre extension. {{WebExtAPIRef('runtime.onMessageExternal')}} sera déclenché dans l'autre extension.</p>
+
+<p>Les extensions ne peuvent pas envoyer de messages aux scripts de contenu en utilisant cette méthode. Pour envoyer des messages aux scripts de contenu, utilisez {{WebExtAPIRef('tabs.sendMessage')}}.</p>
+
+<ul>
+</ul>
+
+<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="blockIndicator note">
+<p>Vous pouvez également utiliser une <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/Content_scripts#Communication_avec_les_scripts_darrière-plan">approche basée sur la connexion pour échanger des messages</a>.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var sending = browser.runtime.sendMessage(
+ extensionId, // optional string
+ message, // any
+ options // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>extensionId</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'ID de l'extension à envoyer le message. Incluez ceci pour envoyer le message à une extension différente..Si le destinataire prévu a défini un ID explicitement en utilisant la clé d' <a href="/fr/Add-ons/WebExtensions/manifest.json/applications">applications</a> dans  manifest.json, <code>extensionId</code> doit avoir une valeur. Sinon, il devrait avoir l'ID qui a été généré pour le destinataire prévu.</dd>
+ <dd>Si <code>extensionId</code> est omis, le message sera envoyé à votre propre extension.</dd>
+ <dt><code>message</code></dt>
+ <dd><code>any</code>. Un objet qui peut être structuré clone sérialisé.</dd>
+ <dt><code>options</code>{{optional_inline}}</dt>
+ <dd><code>object</code>.
+ <dl class="reference-values">
+ <dt><code>includeTlsChannelId</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Indique si l'ID de canal TLS sera transmis à {{WebExtAPIRef('runtime.onMessageExternal')}} pour les processus qui écoutent l'événement de connexion.</dd>
+ <dt><code>toProxyScript{{optional_inline}}</code></dt>
+ <dd><code>boolean</code>. Doit être True si le message est destiné à un fichier PAC chargé à l'aide de l'API {{WebExtAPIRef("proxy")}}.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<p>En fonction des arguments qui lui sont donnés, cette API est parfois ambiguë. Les règles suivantes sont utilisées :</p>
+
+<ul>
+ <li><strong>Si un argument est donné</strong>, c'est le message à envoyer, et le message sera envoyé en interne.</li>
+ <li><strong>Si deux arguments sont donnés :</strong>
+ <ul>
+ <li>Les arguments sont interprétés comme (message, options) et le message est envoyé en interne si le second argument est l'un des suivants :
+ <ol>
+ <li>Un objet d'options valide (c'est-à-dire un objet qui ne contient que les propriétés des options supportés par le navigateur)</li>
+ <li>null</li>
+ <li>indéfini</li>
+ </ol>
+ </li>
+ <li>Sinon, les arguments sont interprétés comme <code>(extensionId, message)</code>. Le message sera envoyé à l'extension identifiée par <code>extensionId</code>.</li>
+ </ul>
+ </li>
+ <li><strong>Si trois arguments sont donnés</strong>, les arguments sont interprétés comme <code>(extensionId, message, options)</code>. Le message sera envoyé à l'extension identifiée par <code>extensionId</code>.</li>
+</ul>
+
+<p>Notez qu'avant Firefox 55, le règles étaient différentes dans le cas des 2 arguments. Sous les anciennes règles, si le premier argument était une chaîne, il était traité comme <code>extensionId</code>, avec le message comme deuxième argument. Cel signifiait que si vous appelez <code>sendMessage()</code> avec des arguments comme <code>("my-message", {})</code>, il enverrait un message vide à l'extension identifiée par "my-message". Sous les nouvelles règles, avec ces arguments, vous enverriez le message "my-message" en interne, avec un objet options vide.</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>. Si le destinataire a envoyé une réponse, celle-ci sera remplie avec la réponse en tant qu'objet JSON. Sinon, il sera rempli sans arguments. si une erreur survient lors de la connexion à l'extension, la promessage sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Compatibilité_du_navitageur">Compatibilité du navitageur</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><span class="diff_add">{{Compat("webextensions.api.runtime.sendMessage")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Voici un script de contenu qui envoie un message au script d'arrière-plan lorsque l'utilisateur clique sur la fenêtre de contenu. La charge utile du message est <code>{greeting: "Greeting from the content script"}</code>, et l'expéditeur s'attend également à recevoir une réponse, qui est gérée dans la fonction <code>handleResponse</code> :</p>
+
+<pre class="brush: js">// content-script.js
+
+function handleResponse(message) {
+ console.log(`Message from the background script: ${message.response}`);
+}
+
+function handleError(error) {
+ console.log(`Error: ${error}`);
+}
+
+function notifyBackgroundPage(e) {
+ var sending = browser.runtime.sendMessage({
+ greeting: "Greeting from the content script"
+ });
+ sending.then(handleResponse, handleError);
+}
+
+window.addEventListener("click", notifyBackgroundPage);</pre>
+
+<p>Le script d'arrière-plan correspondant ressemble à ceci :</p>
+
+<pre class="brush: js">// background-script.js
+
+function handleMessage(request, sender, sendResponse) {
+ console.log("Message from the content script: " +
+ request.greeting);
+ sendResponse({response: "Response from background script"});
+}
+
+browser.runtime.onMessage.addListener(handleMessage);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.html
new file mode 100644
index 0000000000..af714bdb80
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.html
@@ -0,0 +1,114 @@
+---
+title: runtime.sendNativeMessage()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/sendNativeMessage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - runtime
+ - sendNativeMessage
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/sendNativeMessage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Envoie un seul message d'une extension à une application native.</p>
+
+<p>Cela prend deux paramètres obligatoires : le nom de l'application native et un objet JSON qui est le message à envoyer. Le navigateur lancera l'application native et délivrera le message.</p>
+
+<p>C'est une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>. The first message sent by the native application is treated as a response to the <code>sendNativeMessage()</code> call, and the promise will be fulfilled with this message as a parameter. Note that you can't use {{WebExtAPIRef("runtime.onMessage")}} to get responses from the application: you must use the callback function instead.</p>
+
+<p>Une nouvelle instance de l'application est lancée pour appel à  <code>runtime.sendNativeMessage()</code>. Le navigateur terminera l'application native après avoir reçu une réponse. Pour mettre fin à une application native, le navigateur ferme le canal, donne au processus quelques secondes pour quitter normalement, puis le tue s'il ne s'est pas arrêté.</p>
+
+<p>Pour plus d'informations, voir <a href="/fr/Add-ons/WebExtensions/Native_messaging">Native messaging</a>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var sending = browser.runtime.sendNativeMessage(
+ application, // string
+ message // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>application</code></dt>
+ <dd><code>string</code>. Le nom de l'application native. Cela doit correspondre à la propriété "name" dans le <a href="/fr/Add-ons/WebExtensions/Native_messaging#App_manifest">fichier manifest de l'application native</a>.</dd>
+ <dt><code>message</code></dt>
+ <dd><code>object</code>. Un objet JSON qui sera envoyé à l'application native.</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>. Si l'expéditeur a envoyé une réponse, celle-ci sera remplie avec la réponse en tant qu'objet JSON. Sinon, il sera rempli sans arguments. Si une erreur survient lors de la connexion à l'application native, la promesse sera rejetée avec un message d'erreur.</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><span class="diff_add">{{Compat("webextensions.api.runtime.sendNativeMessage")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Voici un script d'arrière-plan qui envoie un message "ping" à l'application "ping_pong" et enregistre la réponse, chaque fois que l'utilisateur clique sur l'action du navigateur :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">onResponse</span><span class="punctuation token">(</span>response<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">`Received ${</span>response}<span class="punctuation token">`)</span><span class="punctuation token">;</span>
+<span class="punctuation token">}
+
+</span></code>function onError(error) {
+  console.log(`Error: ${error}`);
+}<code class="language-js">
+
+<span class="comment token">/*
+On a click on the browser action, send the app a message.
+*/</span>
+browser<span class="punctuation token">.</span>browserAction<span class="punctuation token">.</span>onClicked<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span><span class="punctuation token">(</span><span class="punctuation token">)</span> <span class="operator token">=</span><span class="operator token">&gt;</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"Sending: ping"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ var sending = browser<span class="punctuation token">.</span>runtime<span class="punctuation token">.</span><span class="function token">sendNativeMessage</span><span class="punctuation token">(</span><span class="string token">"ping_pong"</span><span class="punctuation token">,</span> <span class="string token">"ping"</span><span class="punctuation token">)</span><span class="punctuation token">;
+ sending.then(onResponse, onError);</span>
+<span class="punctuation token">}</span><span class="punctuation token">)</span><span class="punctuation token">;</span></code></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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.html
new file mode 100644
index 0000000000..9d74339487
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.html
@@ -0,0 +1,97 @@
+---
+title: runtime.setUninstallURL()
+slug: Mozilla/Add-ons/WebExtensions/API/runtime/setUninstallURL
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - runtime
+ - setUninstallURL
+translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/setUninstallURL
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit l'URL à visiter lorsque l'extension est déinstallée. Cela peut être utilisé pour nettoyer les données côté serveur, effectuer des analyses ou implémenter des enquêtes. L'URL peut contenir au maximum 255 caractères.</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 settingUrl = browser.runtime.setUninstallURL(
+ url // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL à ouvrir après la désinstallation de l'extension. Cette URL doit avoir un schéma <code>http</code> ou <code>https</code>.  Définissez-le sur une chaîne vide pour ne pas ouvrir un nouvel onglet lors de la désinstallation.</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 sans argument lorsque l'URL a été définie ou rejetée avec un message d'erreur si l'opération a échoué.</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.runtime.setUninstallURL")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onSetURL() {
+ console.log("set uninstall URL");
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var settingUrl = browser.runtime.setUninstallURL("https://example.org");
+settingUrl.then(onSetURL, onError);</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/runtime#event-onConnect"><code>chrome.runtime</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/runtime.json"><code>runtime.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/search/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/search/get/index.html
new file mode 100644
index 0000000000..68ed33d84e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/search/get/index.html
@@ -0,0 +1,71 @@
+---
+title: search.get()
+slug: Mozilla/Add-ons/WebExtensions/API/search/get
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - Search
+ - WebExtensions
+ - get
+translation_of: Mozilla/Add-ons/WebExtensions/API/search/get
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient un tableau de tous les moteurs de recherche installés.</p>
+
+<p>Chaque moteur de recherche renvoyé est identifié par un nom, que vous pouvez passer dans {{WebExtAPIRef("search.search()")}}} pour utiliser ce moteur particulier pour effectuer une recherche.</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 gettingEngines = browser.search.get()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</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 remplie avec un <a href="Web/JavaScript/Reference/Global_Objects/array">tableau</a> d'objets  de moteur de recherche. Chaque objet de moteur de recherche peut contenir les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Le nom du moteur de recherche.</dd>
+ <dt><code>isDefault</code></dt>
+ <dd>
+ <p><code>boolean</code>. <code>true</code> si le moteur de recherche est le moteur par défaut. Un seul moteur de recherche peut être le moteur par défaut à un moment donné.</p>
+ </dd>
+ <dt><code>alias</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. Si un moteur de recherche a un alias, l'utilisateur peut effectuer une recherche avec un moteur de recherche particulier en entrant l'alias dans la barre d'adresse avant le terme de recherche. Par exemple, si le moteur Wikipedia a un alias "wk", l'utilisateur peut rechercher des pandas dans Wikipedia en entrant "wk pandas" dans la barre d'adresse. L'alias est parfois aussi appelé "mot-clé".</p>
+ </dd>
+ <dt><code>favIconUrl</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. L'icône du moteur de recherche, comme une donnée : URL.</p>
+ </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.search.search", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenir tous les moteurs de recherche installés :</p>
+
+<pre class="brush: js">function retrieved(results) {
+ console.log(`There were: ${results.length} search engines retrieved.`);
+ for (let searchEngine of results) {
+ console.log(JSON.stringify(searchEngine.name));
+ }
+}
+
+browser.search.get().then(retrieved);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/search/index.html b/files/fr/mozilla/add-ons/webextensions/api/search/index.html
new file mode 100644
index 0000000000..a23471bbb0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/search/index.html
@@ -0,0 +1,32 @@
+---
+title: search
+slug: Mozilla/Add-ons/WebExtensions/API/search
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - Search
+ - Search Engines
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/search
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Récupère les moteurs de recherche et lance une recherche avec un moteur de recherche spécifique</p>
+
+<p>Pour utiliser cette API, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "search".</p>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("search.get()")}}</dt>
+ <dd>Récupérer tous les moteurs de recherche</dd>
+ <dt>{{WebExtAPIRef("search.search()")}}</dt>
+ <dd>Recherche à l'aide du moteur de recherche spécifié.</dd>
+ <dt>
+ <h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+ </dt>
+</dl>
+
+<p>{{Compat("webextensions.api.search", 1, 1)}} {{WebExtExamples("h2")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/search/search/index.html b/files/fr/mozilla/add-ons/webextensions/api/search/search/index.html
new file mode 100644
index 0000000000..92b11dec23
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/search/search/index.html
@@ -0,0 +1,102 @@
+---
+title: search.search()
+slug: Mozilla/Add-ons/WebExtensions/API/search/search
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Recherche
+ - Reference
+ - Search
+ - SearchEngines
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/search/search
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Effectuer une recherche en utilisant le moteur de recherche spécifié, ou le moteur de recherche par défaut si aucun moteur de recherche n'est spécifié.</p>
+
+<p>Les résultats seront affichés dans un nouvel onglet, ou si l'argument tabId est donné, dans l'onglet identifié par ceci.</p>
+
+<p>Pour utiliser cette fonction dans votre extension, vous devez demander la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission manifest</a> "search".</p>
+
+<p>Pour obtenir les moteurs de recherche installés, utilisez  {{WebExtAPIRef("search.get()")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.search.search(
+ searchProperties // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl class="reference-values">
+ <dt><code>searchProperties</code></dt>
+ <dd>
+ <p><code>object</code>. Un objet avec les propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>query</code></dt>
+ <dd><code>string</code>. La requête de recherche.</dd>
+ <dt><code>engine</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>string</code>. Le nom du moteur de recherche. Si le nom du moteur de recherche que vous spécifiez n'existe pas, la fonction lance une erreur. Si cette propriété est omise, le moteur de recherche par défaut sera utilisé.</p>
+ </dd>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>integer</code>.  Un identificateur facultatif pour l'onglet dans lequel vous voulez exécuter la recherche. Si cette propriété est omise, les résultats de la recherche seront affichés dans un nouvel onglet.</p>
+ </dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Aucune</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.search.search", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Recherche à l'aide du moteur de recherche par défaut. Les résultats seront affichés dans un nouvel onglet :</p>
+
+<pre class="brush: js no-line-numbers">function search() {
+ browser.search.search({
+ query: "styracosaurus"
+ });
+}
+
+browser.browserAction.onClicked.addListener(search);
+</pre>
+
+<p>Recherche à l'aide de Wikipedia. Les résultats seront affichés dans un nouvel onglet :</p>
+
+<pre class="brush: js no-line-numbers">function search() {
+ browser.search.search({
+ query: "styracosaurus",
+ engine: "Wikipedia (en)"
+ });
+}
+
+browser.browserAction.onClicked.addListener(search);
+</pre>
+
+<p>Recherche à l'aide de Wikipedia. Les résultats seront affichés dans un nouvel onglet</p>
+
+<pre class="brush: js no-line-numbers">function search(tab) {
+ browser.search.search({
+ query: "styracosaurus",
+ engine: "Wikipedia (en)",
+ tabId: tab.id
+ });
+}
+
+browser.browserAction.onClicked.addListener(search);
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.html
new file mode 100644
index 0000000000..f8ef71d3c7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.html
@@ -0,0 +1,75 @@
+---
+title: sessions.Filter
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/Filter
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - filter
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/Filter
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'objet <code>Filter</code> permet de restreindre le nombre d'objets {{WebExtAPIRef("sessions.Session", "Session")}} retournés par un appel à {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les proriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>maxResults</code>{{optional_inline}}</dt>
+ <dd><code>number</code>. Le nombre maximal de résultats à retourner.</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><span class="diff_add">{{Compat("webextensions.api.sessions.Filter")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<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/sessions"><code>chrome.sessions</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.html
new file mode 100644
index 0000000000..3f7e2f6a52
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.html
@@ -0,0 +1,80 @@
+---
+title: sessions.forgetClosedTab()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/forgetClosedTab
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - forgetClosedTab
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/forgetClosedTab
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Supprime un onglet fermé de la liste des onglets récemment fermés du navigateur.</div>
+
+<div></div>
+
+<div>Notez que les sites visités par cet onglet ne sont pas supprimés de l'historique du navigateur. Utilisez les API {{WebExtAPIRef("browsingData")}} oo {{WebExtAPIRef("history")}} pour supprimer l'historique.</div>
+
+<div></div>
+
+<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 forgettingTab = browser.sessions.forgetClosedTab(
+ windowId, // integer
+ sessionId // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code></dt>
+ <dd><code>Integer</code>. L'ID de la fenêtre qui héberge l'onglet que vous voulez oublier.</dd>
+ <dt><code>sessionId</code></dt>
+ <dd><code>String</code>. L'identifiant de la session que vous voulez oublier.</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>. Cela sera accompli sans arguments lorsque la session a été supprimée.</p>
+
+<p>Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</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.sessions.forgetClosedTab")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code oublie la dernière session fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :</p>
+
+<pre class="brush: js">function forgetMostRecent(sessionInfos) {
+ if (!sessionInfos.length) {
+ console.log("No sessions found")
+ return;
+ }
+ let sessionInfo = sessionInfos[0];
+ if (sessionInfo.tab) {
+ browser.sessions.forgetClosedTab(sessionInfo.tab.windowId, sessionInfo.tab.sessionId);
+ } else {
+ browser.sessions.forgetClosedWindow(sessionInfo.window.sessionId);
+ }
+}
+
+function onError(error) {
+ console.log(error);
+}
+
+browser.sessions.getRecentlyClosed({maxResults: 1})
+.then(forgetMostRecent, onError);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.html
new file mode 100644
index 0000000000..89f5cd57ce
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.html
@@ -0,0 +1,77 @@
+---
+title: sessions.forgetClosedWindow()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/forgetClosedWindow
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - forgetClosedWindows
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/forgetClosedWindow
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Supprime une fenêtre fermée de la liste des fenêtres récemment fermées du navigateur.</div>
+
+<div></div>
+
+<div>Notez que les sites visités par cette fenêtre ne sont pas supprimés de l'historique du navigateur. Utilisez les API {{WebExtAPIRef("browsingData")}} ou {{WebExtAPIRef("history")}} pour supprimer l'historique.</div>
+
+<div></div>
+
+<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 forgettingWindow = browser.sessions.forgetClosedWindow(
+ sessionId // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>sessionId</code></dt>
+ <dd><code>String</code>. L'identifiant de la session que vous voulez oublier.</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>. Cela sera accompli sans arguments lorsque la session a été supprimée.</p>
+
+<p>Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</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.sessions.forgetClosedWindow")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code oublie la dernière session fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :</p>
+
+<pre class="brush: js">function forgetMostRecent(sessionInfos) {
+ if (!sessionInfos.length) {
+ console.log("No sessions found")
+ return;
+ }
+ let sessionInfo = sessionInfos[0];
+ if (sessionInfo.tab) {
+ browser.sessions.forgetClosedTab(sessionInfo.tab.windowId, sessionInfo.tab.sessionId);
+ } else {
+ browser.sessions.forgetClosedWindow(sessionInfo.window.sessionId);
+ }
+}
+
+function onError(error) {
+ console.log(error);
+}
+
+browser.sessions.getRecentlyClosed({maxResults: 1})
+.then(forgetMostRecent, onError);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.html
new file mode 100644
index 0000000000..230f1741d0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.html
@@ -0,0 +1,115 @@
+---
+title: sessions.getRecentlyClosed()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/getRecentlyClosed
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getRecentlyClosed
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/getRecentlyClosed
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoie un ensemble d'objets {{WebExtAPIRef("sessions.Session", "Session")}}, représentant des fenêtres et des onglets qui ont été fermés dans la session du navigation actuelle (c'est à dire l'heure écoulée depuis le démarrage du navigateur).</p>
+
+<p>Il s'agit d'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 gettingSessions = browser.sessions.getRecentlyClosed(
+ filter // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>filter</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("sessions.Filter")}} qui limite l'ensemble des sessions renvoyées.</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>. Cela sera rempli avec un ensemble d'objets {{WebExtAPIRef("sessions.Session", "Session")}}, un pour chacun des derniers onglets fermés ou des fenêtres dans la session de navigation actuelle, jusqu'à  {{WebExtAPIRef("sessions.MAX_SESSION_RESULTS")}} ou le nombre inclus dans l'argument du filtre, le plus petit qui soit. Le tableau est donné à l'inverse de l'ordre dans lequel les onglets ou fenêtres ont été fermés, de sorte que le plus récemment fermé sera à l'index 0.</p>
+
+<p>Si une erreur survient, la promesse sera rejetée avec un message d'erreur.</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><span class="diff_add">{{Compat("webextensions.api.sessions.getRecentlyClosed")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Le code restaure la session la plus récemment fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :</p>
+
+<pre class="brush: js">function restoreMostRecent(sessionInfos) {
+ if (!sessionInfos.length) {
+ console.log("No sessions found")
+ return;
+ }
+ let sessionInfo = sessionInfos[0];
+ if (sessionInfo.tab) {
+ browser.sessions.restore(sessionInfo.tab.sessionId);
+ } else {
+ browser.sessions.restore(sessionInfo.window.sessionId);
+ }
+}
+
+function onError(error) {
+ console.log(error);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var gettingSessions = browser.sessions.getRecentlyClosed({
+ maxResults: 1
+ });
+ gettingSessions.then(restoreMostRecent, onError);
+});
+</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/sessions"><code>chrome.sessions</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.html
new file mode 100644
index 0000000000..041f4887ec
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.html
@@ -0,0 +1,66 @@
+---
+title: sessions.getTabValue()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/getTabValue
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - getTabValue
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/getTabValue
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère une valeur précédemment stockée par un appel à  {{WebExtAPIRef("sessions.setTabValue")}}.</p>
+
+<p>Vous pouvez récupérer une valeur d'un onglet même au cours d'un cycle de fermeture / restauration: si vous définissez une valeur, l'utilisateur ferme l'onglet, puis restaure l'onglet à l'aide de la fonction "restaurer l'onglet" du navigateur (par exemple, en appuyant sur Control+Shift+T), then you will be able to retrieve the value from the restored tab. vous pourrez alors récupérer la valeur de l'onglet restauré. Notez cependant qu'un onglet restauré n'obtient pas le même ID que l'original, donc l'ID que vous passez dans <code>getTabValue()</code> sera différent de l'ID que vous avez passé dans <code>setTabValue()</code>, même s'ils font tous deux référence au même onglet.</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 retrieving = browser.sessions.getTabValue(
+ tabId, // integer
+ key // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dont vous essayez de récupérer les données.</dd>
+ <dt><code>key</code></dt>
+ <dd><code>string</code>. Clé identifiant la valeur particulière à récupérer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setTabValue")}}.</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 résolue avec la valeur si elle existe, ou <code>undefined</code>.  Si elle n'existe pas. Si l'appel a échoué (par exemple, parce que l'ID de l'onglet n'a pas pu être trouvé), la promesse sera rejetée avec un message d'erreur.</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.sessions.getTabValue", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Consignez la valeur de "my-key" pour tous les nouveaux onglets créés (cela inclura tous les onglets qui ont été restaurés) :</p>
+
+<pre class="brush: js">function onGetResolved(r) {
+ console.log(`success: ${r}`);
+}
+
+function onGetRejected(e) {
+ console.log(`error: ${e}`);
+}
+
+browser.tabs.onCreated.addListener((tab) =&gt; {
+ browser.sessions.getTabValue(tab.id, "my-key").then(onGetResolved, onGetRejected);
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.html
new file mode 100644
index 0000000000..ffdb95065d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.html
@@ -0,0 +1,66 @@
+---
+title: sessions.getWindowValue()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/getWindowValue
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - getWindowValue
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/getWindowValue
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère une valeur précédemment stockée par un appel à {{WebExtAPIRef("sessions.setWindowValue")}}.</p>
+
+<p>Vous pouvez récupérer une valeur d'une fenêtre même sur un cycle de fermeture / restauration : si vous définissez une valeur, l'utilisateur ferme la fenêtre, puis restaure la fenêtre à l'aide de la fonction "restaurer la fenêtre" du navigateur (par exemple, en appuyant sur Control+Shift+N),vous pourrez récupérer la valeur de la fenêtre restaurée. otez cependant qu'une fenêtre restaurée n'obtient pas le même ID que l'original, donc l'ID que vous passez dans <code>getWindowValue()</code> sera différent de l'ID que vous avez passé dans <code>setWindowValue()</code>, même s'ils se réfèrent tous les deux à la même fenêtre.</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 retrieving = browser.sessions.getWindowValue(
+ windowId, // integer
+ key // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. ID de la fenêtre dont vous essayez de récupérer les données.</dd>
+ <dt><code>key</code></dt>
+ <dd><code>string</code>. Clé identifiant la valeur particulière à récupérer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setWindowValue")}}.</dd>
+</dl>
+
+<h3 id="Valeure_retournée">Valeure retournée</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera résolue avec la valeur si elle existe, ou <code>undefined</code> si elle n'existe pas. Si l'appel a échoué (par exemple, parce que l'ID de la fenêtre n'a pas pu être trouvé), la promesse sera rejetée avec un message d'erreur.</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.sessions.getWindowValue", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Consignez la valeur de "my-key" pour toutes les fenêtres nouvellement créées (cela inclura toutes les fenêtres qui ont été restaurées) :</p>
+
+<pre class="brush: js">function onGetResolved(r) {
+ console.log(`success: ${r}`);
+}
+
+function onGetRejected(e) {
+ console.log(`error: ${e}`);
+}
+
+browser.windows.onCreated.addListener((window) =&gt; {
+ browser.sessions.getWindowValue(window.id, "my-key").then(onGetResolved, onGetRejected);
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/index.html
new file mode 100644
index 0000000000..3a8078560e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/index.html
@@ -0,0 +1,137 @@
+---
+title: sessions
+slug: Mozilla/Add-ons/WebExtensions/API/sessions
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Utilisez l'API de sessions pour lister et restaurer, les onglets et les fenêtres qui ont été fermés pendant que le navigateur fonctionne.</p>
+
+<p>La fonction {{WebExtAPIRef("sessions.getRecentlyClosed()")}} renvoie un tableau de {{WebExtAPIRef("tabs.Tab")}} et les objets {{WebExtAPIRef("windows.Window")}}, représente les onglets et les fenêtres qui ont été fermées depuis le fonctionnement du navigateur, jusqu'au maximum défini dans {{WebExtAPIRef("sessions.MAX_SESSION_RESULTS")}}.</p>
+
+<p>Vous pouvez ensuite restaurer une fenêtre ou un onglet en utilisant la fonction  {{WebExtAPIRef("sessions.restore()")}}. il restaure également l'historique de navigation de l'onglet, de sorte que les boutons arrière / avant fonctionnent.</p>
+
+<p>Cette API fournit également un groupe de fonctions permettant à une extension de stocker un état supplémentaire associé à un onglet ou une fenêtre. Ensuite, si l'onglet ou la fenêtre est fermé et restauré ultérieurement, l'extension peut récupérer l'état. Par exemple, une extension de groupe d'onglets peut l'utiliser pour se souvenir du groupe dans lequel se trouve un onglet, afin de le restaurer dans le bon groupe si l'utilisateur restaure l'onglet.</p>
+
+<p>Pour utiliser l'API des sessions, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission API</a> de "sessions".</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("sessions.Filter")}}</dt>
+ <dd>Permet de restreindre le nombre de {{WebExtAPIRef("sessions.Session", "Session")}} objets retournés par un appel à {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.</dd>
+ <dt>{{WebExtAPIRef("sessions.Session")}}</dt>
+ <dd>
+ <p>Représente un onglet ou une fenêtre que l'utilisateur a fermé dans la session de navigation actuelle.</p>
+ </dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("sessions.MAX_SESSION_RESULTS")}}</dt>
+ <dd>Le nombre maximum de sessions qui seront retournées par un appel à <a href="/fr/Add-ons/WebExtensions/API/sessions/getRecentlyClosed" title="Returns an array Session objects, representing windows and tabs that were closed in the current browsing session (that is: the time since the browser was started)."><code>sessions.getRecentlyClosed()</code></a>.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("sessions.forgetClosedTab()")}}</dt>
+ <dd>Supprime un onglet fermé de la liste des onglets récemment fermés du navigateur.</dd>
+ <dt>{{WebExtAPIRef("sessions.forgetClosedWindow()")}}</dt>
+ <dd>Supprime une fenêtre  fermée  de la liste des fenêtres  récemment fermées du navigateur.</dd>
+ <dt>{{WebExtAPIRef("sessions.getRecentlyClosed()")}}</dt>
+ <dd>Renvoie un tableau d'objets {{WebExtAPIRef("sessions.Session", "Session")}}, représentant des fenêtres et des onglets qui ont été fermés dans la session de navigation actuelle (c'est-à-dire l'heure écoulée depuis le démarrage du navigateur).</dd>
+ <dt>{{WebExtAPIRef("sessions.restore()")}}</dt>
+ <dd>
+ <p>Restaure un onglet ou une fenêtre fermée.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("sessions.setTabValue()")}}</dt>
+ <dd>
+ <p>Stocke une paire clé/valeur associée à un onglet donné.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("sessions.getTabValue()")}}</dt>
+ <dd>
+ <p>Récupérer une valeur précédemment enregistrée pour un onglet donné, compte tenu de sa clé.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("sessions.removeTabValue()")}}</dt>
+ <dd>
+ <p>Supprimer une paire clé/valeur d'un onglet donné.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("sessions.setWindowValue()")}}</dt>
+ <dd>
+ <p>Stocke une paire clé/valeur associée à une fenêtre donnée.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("sessions.getWindowValue()")}}</dt>
+ <dd>
+ <p>Récupérer une valeur précédemment enregistrée pour une fenêtre donnée, compte tenu de sa clé.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("sessions.removeWindowValue()")}}</dt>
+ <dd>
+ <p>Supprime une paire clé/valeur d'une fenêtre données.</p>
+ </dd>
+ <dd>
+
+ </dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("sessions.onChanged")}}</dt>
+ <dd>
+ <p>Mise en place lorsqu'un onglet ou une fenêtre est fermée.</p>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p><span class="diff_add">{{Compat("webextensions.api.sessions")}}</span></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/sessions"><code>chrome.sessions</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.html
new file mode 100644
index 0000000000..41b2191f71
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.html
@@ -0,0 +1,62 @@
+---
+title: sessions.MAX_SESSION_RESULTS
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/MAX_SESSION_RESULTS
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - MAX_SESSION_RESULTS
+ - Non-standard
+ - Propriété
+ - Reference
+ - WebExtensions
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/MAX_SESSION_RESULTS
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le nombre maximum de sessions qui seront retournées par un appel à {{WebExtAPIRef("sessions.getRecentlyClosed()")}}. Il est en lecture seule pour le code des WebExtensions, et défini à 25.</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.sessions.MAX_SESSION_RESULTS")}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/sessions"><code>chrome.sessions</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.html
new file mode 100644
index 0000000000..478acefe3c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.html
@@ -0,0 +1,123 @@
+---
+title: sessions.onChanged
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/onChanged
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onChanged
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/onChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Mise en place lorsque une liste d'onglets fermes ou de fenêtre changes.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.sessions.onChanged.addListener(listener)
+browser.sessions.onChanged.removeListener(listener)
+browser.sessions.onChanged.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un auditeur à un événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêtez d'écouter cet événement. L'argument de l'auditeur est un auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie Vrai s'il écoute. Sinon Faux.</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 lors de l'événement. Il ne passe aucun paramètre.</p>
+ </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><span class="diff_add">{{Compat("webextensions.api.sessions.onChanged")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cette extension écoute <code>onChanged</code>, puis restaure  immédiatement la dernière session fermée, ce qui rend impossible de fermer les fenêtres ou les onglets :</p>
+
+<pre class="brush: js">function restoreSession(sessionInfos) {
+ if (!sessionInfos.length) {
+ console.log("No sessions found")
+ return;
+ }
+ let sessionInfo = sessionInfos[0];
+ if (sessionInfo.tab) {
+ browser.sessions.restore(sessionInfo.tab.sessionId);
+ } else {
+ browser.sessions.restore(sessionInfo.window.sessionId);
+ }
+}
+
+function onError(error) {
+ console.log(error);
+}
+
+function restoreMostRecent() {
+ var gettingSessions = browser.sessions.getRecentlyClosed({
+ maxResults: 1
+ });
+ gettingSessions.then(restoreSession, onError);
+}
+
+browser.sessions.onChanged.addListener(restoreMostRecent);</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/sessions"><code>chrome.sessions</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.html
new file mode 100644
index 0000000000..c622b4147e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.html
@@ -0,0 +1,84 @@
+---
+title: sessions.removeTabValue()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/removeTabValue
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - removeTabValue
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/removeTabValue
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime une valeur précédemment stockée par un appel à {{WebExtAPIRef("sessions.setTabValue")}}.</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 removing = browser.sessions.removeTabValue(
+ tabId, // integer
+ key // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dont vous essayez de supprimer les données.</dd>
+ <dt><code>key</code></dt>
+ <dd><code>string</code>. Clé identifiant la valeur particulière à supprimer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setTabValue")}}.</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 ne sera résolue aucun argument si l'élément a été supprimé avec succès. Si l'appel a échoué (par exemple, parce que l'ID de l'onglet n'a pas pu être trouvé), la promesse sera rejetée avec un message d'erreur.</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.sessions.removeTabValue", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code ajoute deux éléments de menu contextuel: l'un stocke une valeur associée à l'onglet en cours, l'autre le supprime :</p>
+
+<pre class="brush: js">async function setOnActiveTab() {
+ let tabArray = await browser.tabs.query({currentWindow: true, active: true});
+ let tabId = tabArray[0].id;
+ await browser.sessions.setTabValue(tabId, "my-key", "my-value");
+}
+
+async function removeFromActiveTab() {
+ let tabArray = await browser.tabs.query({currentWindow: true, active: true});
+ let tabId = tabArray[0].id;
+ await browser.sessions.removeTabValue(tabId, "my-key");
+}
+
+browser.menus.create({
+ id: "add-my-item",
+ title: "add item",
+ contexts: ["all"]
+});
+
+browser.menus.create({
+ id: "remove-my-item",
+ title: "remove item",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener((info) =&gt; {
+ if (info.menuItemId === "add-my-item") {
+ setOnActiveTab();
+ } else {
+ removeFromActiveTab();
+ }
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.html
new file mode 100644
index 0000000000..1193a845cb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.html
@@ -0,0 +1,82 @@
+---
+title: sessions.removeWindowValue()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/removeWindowValue
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - removeWindowsValue
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/removeWindowValue
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime une valeur précédemment stockée par un appel à {{WebExtAPIRef("sessions.setWindowValue")}}.</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 removing = browser.sessions.removeWindowValue(
+ windowId, // integer
+ key // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. ID de la fenêtre dont vous essayez de supprimer les données.</dd>
+ <dt><code>key</code></dt>
+ <dd><code>string</code>. lé identifiant la valeur particulière à supprimer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setWindowValue")}}.</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 ne sera résolue aucun argument si l'élément a été supprimé avec succès. Si l'appel a échoué (par exemple, parce que l'ID de la fenêtre n'a pas pu être trouvé), la promesse sera rejetée avec un message d'erreur.</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.sessions.removeWindowValue", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code ajoute deux éléments de menu contextuel: l'un stocke une valeur associée à la fenêtre courante, l'autre la supprime :</p>
+
+<pre class="brush: js">async function setOnActiveWindow() {
+ let currentWindow = await browser.windows.getLastFocused();
+ await browser.sessions.setWindowValue(currentWindow.id, "my-key", "my-value");
+}
+
+async function removeFromActiveWindow() {
+ let currentWindow = await browser.windows.getLastFocused();
+ await browser.sessions.removeWindowValue(currentWindow.id, "my-key");
+}
+
+browser.menus.create({
+ id: "add-my-item",
+ title: "add item",
+ contexts: ["all"]
+});
+
+browser.menus.create({
+ id: "remove-my-item",
+ title: "remove item",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener((info) =&gt; {
+ if (info.menuItemId === "add-my-item") {
+ setOnActiveWindow();
+ } else {
+ removeFromActiveWindow();
+ }
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.html
new file mode 100644
index 0000000000..cbf15148ad
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.html
@@ -0,0 +1,112 @@
+---
+title: sessions.restore()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/restore
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Methode(2)
+ - Non-standard
+ - WebExtensions
+ - restaure
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/restore
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Restaure un onglet ou une fenêtre fermée. La restauration ne réouvre pas seulement l'onglet ou la fenêtre : elle rétablit également l'historique de navigation de l'onglet afin que les boutons arrière/avant fonctionnent. La restauration d'une fenêtre restaurera tous les onglets que la fenêtre contenait lors de sa fermeture.</p>
+
+<p>Il s'agit d'une fonction asynchrone que retourne 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 restoringSession = browser.sessions.restore(
+ sessionId // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>sessionId</code></dt>
+ <dd><code>string</code>. Une chaîne contenant l'ID de session pour la fenêtre ou l'onglet à restaurer. Cela se trouve dans la propriété <code>sessionId</code> de l'objet   {{WebExtAPIRef("tabs.Tab", "Tab")}} ou {{WebExtAPIRef("windows.Window", "Window")}} dans  {{WebExtAPIRef("sessions.Session", "Session")}} retourné de {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.</dd>
+</dl>
+
+<h3 id="Valeur_renvoyée">Valeur renvoyée</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>. Cela sera rempli avec un objet  {{WebExtAPIRef("sessions.Session", "Session")}} représentant la session qui a été restaurée.</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><span class="diff_add">{{Compat("webextensions.api.sessions.restore")}}</span></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cela restaure la session fermée la plus récente, qu'il s'agisse d'une fenêtre ou d'un onglet :</p>
+
+<pre class="brush: js">function restoreMostRecent(sessionInfos) {
+ if (!sessionInfos.length) {
+ console.log("No sessions found")
+ return;
+ }
+ let sessionInfo = sessionInfos[0];
+ if (sessionInfo.tab) {
+ browser.sessions.restore(sessionInfo.tab.sessionId);
+ } else {
+ browser.sessions.restore(sessionInfo.window.sessionId);
+ }
+}
+
+function onError(error) {
+ console.log(error);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var gettingSessions = browser.sessions.getRecentlyClosed({
+ maxResults: 1
+ });
+ gettingSessions.then(restoreMostRecent, onError);
+});
+</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/sessions"><code>chrome.sessions</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.html
new file mode 100644
index 0000000000..ab7d1fa13d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.html
@@ -0,0 +1,86 @@
+---
+title: sessions.Session
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/Session
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Session
+ - Type
+ - WebExtensions
+ - sessions
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/Session
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'objet de <code>Session</code> représente un onglet ou une fenêtre que l'utilisateur a fermé dans la session de navigation actuelle.</p>
+
+<p>Les sessions sont représentées comme des objets {{WebExtAPIRef("tabs.Tab", "Tab")}} si l'onglet a été fermé mais sa fenêtre n'a pas été fermée : par exemple, parce que l'utilisateur a cliqué sur le bouton "fermer l'onglet", et cet onglet n'était pas le seul onglet de sa fenêtre.</p>
+
+<p>Les sessions sont représentées par des objets  {{WebExtAPIRef("windows.Window", "Window")}} si la fenêtre est fermée :  parce que l'utilisateur a cliqué sur le bouton "Fermer la fenêtre", ou a fermé le seul onglet ouvert dans une fenêtre.</p>
+
+<p>Notez que les différents navigateurs peuvent avoir une idée différente quand une session est un onglet et quand il s'agit d'une fenêtre. Par exemple :</p>
+
+<ul>
+ <li>Dans Chrome une session est enregistrée comme une fenêtre si l'utilisateur ferme une fenêtre contenant plus d'un onglet. Si l'utilisateur a fermé une fenêtre contenant un seul onglet, ceci est enregistré sous forme d'onglet.</li>
+ <li>Dans Firefox, une session est enregistrée comme une fenêtre si l'utilisateur ferme une fenêtre (ou un onglet qui était le dernier onglet de la fenêtre), et un onglet si l'utilisateur ferme un onglet qui n'était pas le dernier onglet de sa fenêtre.</li>
+</ul>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>lastModified</code></dt>
+ <dd><code>number</code>. L'heure où l'onglet ou la fenêtre a été fermé, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>tab</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Si l'objet représente un onglet fermé, cette propriété est présente et sera un objet {{WebExtAPIRef("tabs.Tab")}}. Cela contiendra <code>url</code>, <code>titre</code>, et <code>favIconUrl</code> uniquement si l'extension possède la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "tabs".</dd>
+ <dt><code>window</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Si l'objet représente une fenêtre fermée, cette propriété est présente et sera un objet {{WebExtAPIRef("windows.Window")}}.</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><span class="diff_add">{{Compat("webextensions.api.sessions.Session")}}</span></p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/sessions"><code>chrome.sessions</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.html
new file mode 100644
index 0000000000..9f02e440d9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.html
@@ -0,0 +1,71 @@
+---
+title: sessions.setTabValue()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/setTabValue
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - sessions
+ - setTabValue
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/setTabValue
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Stocke une paire clé / valeur à associer à un onglet donné. Vous pouvez ensuite récupérer cette valeur en utilisant {{WebExtAPIRef("sessions.getTabValue")}}.</p>
+
+<p>Notez que ces données ne seront visibles que par l'extension qui l'a définie, et non par les autres extensions.</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 storing = browser.sessions.setTabValue(
+ tabId, // integer
+ key, // string
+ value // string or object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet avec lequel vous souhaitez associer les données.</dd>
+ <dt><code>key</code></dt>
+ <dd><code>string</code>. Clé que vous pouvez utiliser ultérieurement pour récupérer cette valeur de données particulière.</dd>
+ <dt><code>value</code></dt>
+ <dd><code>string</code> ou <code>object</code>. S'il s'agit d'un objet, il est <a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify">stringified</a>, donc les méthodes d'objet, par exemple, seront omises. Si une fonction est donnée ici, elle sera stockée sous la forme <code>null</code>.</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 résolue sans argument si l'appel a réussi. Si l'appel a échoué (par exemple, parce que l'ID de l'onglet n'a pas pu être trouvé), la promesse sera rejetée avec un message d'erreur.</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.sessions.setTabValue", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définissez une valeur sur l'onglet actif lorsque l'utilisateur sélectionne un élément de menu. Notez que vous aurez besoin de la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "menus" pour exécuter cet exemple :</p>
+
+<pre class="brush: js">async function setOnActiveTab() {
+ let tabArray = await browser.tabs.query({currentWindow: true, active: true});
+ let tabId = tabArray[0].id;
+ await browser.sessions.setTabValue(tabId, "my-key", "my-value");
+}
+
+browser.menus.create({
+ id: "my-item",
+ title: "my item",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(setOnActiveTab);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.html
new file mode 100644
index 0000000000..6437d9d973
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.html
@@ -0,0 +1,70 @@
+---
+title: sessions.setWindowValue()
+slug: Mozilla/Add-ons/WebExtensions/API/sessions/setWindowValue
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - sessions
+ - setWindowsValue
+translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/setWindowValue
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Stocke une paire clé / valeur à associer à une fenêtre donnée. Vous pouvez ensuite récupérer cette valeur en utilisant {{WebExtAPIRef("sessions.getWindowValue")}}.</p>
+
+<p>Notez que ces données ne seront visibles que par l'extension qui l'a définie, et non par les autres extensions..</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 storing = browser.sessions.setWindowValue(
+ windowId, // integer
+ key, // string
+ value // string or object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. ID de la fenêtre avec laquelle vous souhaitez associer les données.</dd>
+ <dt><code>key</code></dt>
+ <dd><code>string</code>. Clé que vous pouvez utiliser ultérieurement pour récupérer cette valeur de données particulière.</dd>
+ <dt><code>value</code></dt>
+ <dd><code>string</code> ou <code>object</code>. S'il s'agit d'un objet, il est <a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify">stringified</a>, donc les méthodes d'objet, par exemple, seront omises. Si une fonction est donnée ici, elle sera stockée sous la valeur <code>null</code>.</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 résolue sans argument si l'appel a réussi. Si l'appel a échoué (par exemple, parce que l'ID de la fenêtre n'a pas pu être trouvé), la promesse sera rejetée avec un message d'erreur.</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.sessions.setWindowValue", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définissez une valeur sur la fenêtre active lorsque l'utilisateur sélectionne un élément de menu. Notez que vous aurez besoin de la  <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "menus" pour exécuter cet exemple :</p>
+
+<pre class="brush: js">async function setOnActiveWindow() {
+ let currentWindow = await browser.windows.getLastFocused();
+ await browser.sessions.setWindowValue(currentWindow.id, "my-key", "my-value");
+}
+
+browser.menus.create({
+ id: "my-item",
+ title: "my item",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(setOnActiveWindow);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.html
new file mode 100644
index 0000000000..be3cf05fc2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.html
@@ -0,0 +1,56 @@
+---
+title: sidebarAction.close()
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/close
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - close
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/close
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Ferme la barre latérale dans la fenêtre active, s'il s'agit de la barre latérale de l'extension.</p>
+
+<p>Vous pouvez uniquement appeler cette fonction à l'intérieur du gestionnaire pour une <a href="/fr/Add-ons/WebExtensions/User_actions">action utilisateur</a>.</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">browser.sidebarAction.close()
+</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 est résolue sans arguments.</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.sidebarAction.close", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Fermez la barre latérale lorsque l'utilisateur sélectionne un élément de menu contextuel :</p>
+
+<pre class="brush: js">browser.menus.create({
+ id: "close-sidebar",
+ title: "close sidebar",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() =&gt; {
+ browser.sidebarAction.close();
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.html
new file mode 100644
index 0000000000..f94637e46c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.html
@@ -0,0 +1,109 @@
+---
+title: sidebarAction.getPanel()
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/getPanel
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - getPanel
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/getPanel
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient une URL vers le document HTML qui définit le contenu de la barre latérale.</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 gettingPanel = browser.sidebarAction.getPanel(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet avec les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>.  Obtenir le panneau pour la barre latérale spécifique à l'onglet donné.</dd>
+ <dt><code>windowId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Obtenir le panneau pour la barre latérale spécifique à la fenêtre donnée.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code>  sont tous deux fournis, la fonction échoue et la promesse qu'elle renvoie est rejetée.</li>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux omis, le panneau global est renvoyé.</li>
+</ul>
+
+<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 une chaîne contenant l'URL du document du panel. Ce sera une URL entièrement qualifiée, telle que :</p>
+
+<pre><code>moz-extension://d1d8a2eb-fe60-f646-af30-a866c5b39942/sidebar.html</code></pre>
+
+<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.sidebarAction.getPanel",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez l'URL du panneau :</p>
+
+<pre class="brush: js">function onGot(sidebarUrl) {
+ console.log(sidebarUrl);
+}
+
+var gettingPanel = browser.sidebarAction.getPanel({});
+gettingPanel.then(onGot); </pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Opera <a href="https://dev.opera.com/extensions/sidebar-action-api/"><code>chrome.sidebarAction</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.html
new file mode 100644
index 0000000000..a746b234b4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.html
@@ -0,0 +1,116 @@
+---
+title: sidebarAction.getTitle()
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/getTitle
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - getTitle
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/getTitle
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient le titre de la barre latérale.</p>
+
+<p>Tout comme vous pouvez définir le titre par tabulation à l'aide de {{WebExtAPIRef("sidebarAction.setTitle()")}},vous pouvez ainsi récupérer un titre spécifique à un onglet en lui transmettant l'ID de l'onglet.</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 gettingTitle = browser.sidebarAction.getTitle(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet avec les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Obtenir le titre de la barre latérale spécifique à l'onglet donné.</dd>
+ <dt><code>windowId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Obtenir le titre de la barre latérale spécifique à la fenêtre donnée.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux fournis, la fonction échoue et la promesse qu'elle renvoie est rejetée.</li>
+ <li>SI <code>windowId</code> et <code>tabId</code> sont tous les deux omis, le titre global est renvoyé.</li>
+</ul>
+
+<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 une chaîne contenant le titre de la barre latérale.</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.sidebarAction.getTitle",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code bascule le titre entre "this" et "that" chaque fois que l'utilisateur clique sur l'action du navigateur</p>
+
+<pre class="brush: js">function toggleTitle(title) {
+ if (title == "this") {
+ browser.sidebarAction.setTitle({title: "that"});
+ } else {
+ browser.sidebarAction.setTitle({title: "this"});
+ }
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ var gettingTitle = browser.sidebarAction.getTitle({});
+ gettingTitle.then(toggleTitle);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Opera <a href="https://dev.opera.com/extensions/sidebar-action-api/"><code>chrome.sidebarAction</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.html
new file mode 100644
index 0000000000..55907a285b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.html
@@ -0,0 +1,67 @@
+---
+title: sidebarAction.ImageDataType
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/ImageDataType
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - ImageDataType
+ - Reference
+ - Type
+ - WebExtensions
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/ImageDataType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Données de pixel pour une image. Doit être un objet <code><a href="/en-US/docs/Web/API/ImageData">ImageData</a></code> (par exemple, à partir d'un élément {{htmlelement("canvas")}}).</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Un objet <code><a href="/en-US/docs/Web/API/ImageData">ImageData</a></code>.</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><span class="diff_add">{{Compat("webextensions.api.sidebarAction.ImageDataType")}}</span></p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Opera <a href="https://dev.opera.com/extensions/sidebar-action-api/"><code>chrome.sidebarAction</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.html
new file mode 100644
index 0000000000..e5f77c06ba
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.html
@@ -0,0 +1,101 @@
+---
+title: sidebarAction
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction
+tags:
+ - API
+ - Extensions
+ - Non-standard
+ - Reference
+ - Sidebar
+ - WebExtensions
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Obtient et définit les propriétés de la barre latérale d'une extension.</p>
+
+<p>Une <a href="/fr/Add-ons/WebExtensions/Sidebars">barre latérale</a> est un volet qui s'affiche à gauche ou à droite de la fenêtre du navigateur, à côté de la page Web. Le navigateur fournit une interface utilisateur qui permet à l'utilisateur de voir les barres latérales actuellement disponibles et de sélectionner une barre latérale à afficher. En utilisant la clé <code><a href="/fr/Add-ons/WebExtensions/manifest.json/sidebar_action">sidebar_action</a></code> manifest.json, une extension peut définir sa propre barre latérale.<br>
+ En utilisant l'API <code>sidebarAction</code> décrite ici, une extension peut obtenir et définir les propriétés de la barre latérale.</p>
+
+<p>L'API <code>sidebarAction</code> est étroitement modélisée sur l'API  {{WebExtAPIRef("browserAction")}}.</p>
+
+<p>L'API sidebarAction est basée sur l'<a href="https://dev.opera.com/extensions/sidebar-action-api/">API sidebarAction</a> d'Opéra. Toutefois, notez que les éléments suivants ne sont pas encore pris en charge : <code>setBadgeText()</code>, <code>getBadgeText()</code>, <code>setBadgeBackgroundColor()</code>, <code>getBadgeBackgroundColor()</code>, <code>onFocus</code>, <code>onBlur</code>.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("sidebarAction.ImageDataType")}}</dt>
+ <dd>Données de pixel pour une image. Doit être un objet <code><a href="/fr/docs/Web/API/ImageData">ImageData</a></code> (par exemple, à partir d'un élément {{htmlelement("canvas")}}).</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("sidebarAction.close()")}}</dt>
+ <dd>Ferme la barre latérale</dd>
+ <dt>{{WebExtAPIRef("sidebarAction.getPanel()")}}</dt>
+ <dd>Obtient le panneau de la barre latérale.</dd>
+ <dt>{{WebExtAPIRef("sidebarAction.getTitle()")}}</dt>
+ <dd>Obtient le titre de la barre latérale.</dd>
+ <dt>{{WebExtAPIRef("sidebarAction.isOpen()")}}</dt>
+ <dd>Vérifie si la barre latérale est ouverte ou non.</dd>
+ <dt>{{WebExtAPIRef("sidebarAction.open()")}}</dt>
+ <dd>Ouvre la barre latérale.</dd>
+ <dt>{{WebExtAPIRef("sidebarAction.setIcon()")}}</dt>
+ <dd>Définit l'icône de la barre latérale.</dd>
+ <dt>{{WebExtAPIRef("sidebarAction.setPanel()")}}</dt>
+ <dd>Définit le panneau de la barre latérale.</dd>
+ <dt>{{WebExtAPIRef("sidebarAction.setTitle()")}}</dt>
+ <dd>Définit le titre de la barre latérale. Ceci sera affiché dans n'importe quelle interface utilisateur fournie par le navigateur pour lister les barres latérales, comme un menu.</dd>
+ <dt>{{WebExtAPIRef("sidebarAction.toggle()")}}</dt>
+ <dd>Permet de basculer la visibilité de la barre latérale.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.sidebarAction")}}</p>
+
+<h2 id="Exemple_extensions">Exemple extensions</h2>
+
+<ul>
+ <li><a class="external external-icon" href="https://github.com/mdn/webextensions-examples/tree/master/annotate-page">annotate-page</a></li>
+</ul>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Opera <a href="https://dev.opera.com/extensions/sidebar-action-api/"><code>chrome.sidebarAction</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.html
new file mode 100644
index 0000000000..afaf4eab6d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.html
@@ -0,0 +1,86 @@
+---
+title: sidebarAction.isOpen()
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/isOpen
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - isOpen
+ - slidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/isOpen
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Renvoie <code>true</code> si la barre latérale de l'extension est ouverte dans une fenêtre donnée.</p>
+
+<p>Cette fonction accepte un <code>windowId</code> en paramètre :</p>
+
+<ul>
+ <li>Si vous fournissez <code>windowId</code>, la fonction vérifie la fenêtre du navigateur.</li>
+ <li>Si vous omettez <code>windowId</code>, la fonction vérifie la fenêtre du navigateur la plus haute.</li>
+</ul>
+
+<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">let gettingIsOpen = browser.sidebarAction.isOpen(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet contenant éventuellement le <code>windowId</code> à vérifier.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>windowId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. ID d'une fenêtre de navigateur à vérifier. Si omis par défaut, il s'agit de  {{WebExtAPIRef("windows.WINDOW_ID_CURRENT")}}, qui fait référence à la fenêtre du navigateur la plus haute.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </dl>
+ </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 <code>true</code> si la barre latérale de l'extension est ouverte dans la fenêtre donnée, ou <code>false</code> dans le cas contraire.</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.sidebarAction.isOpen",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Vérifiez la fenêtre la plus haute :</p>
+
+<pre class="brush: js">browser.sidebarAction.isOpen({}).then(result =&gt; {
+ console.log(result);
+});</pre>
+
+<p>  Vérifiez toutes les fenêtres ouvertes :</p>
+
+<pre class="brush: js">async function checkWindow(windowId) {
+ let result = await browser.sidebarAction.isOpen({windowId});
+ console.log(`window: ${windowId} status: ${result}`);
+}
+
+browser.windows.getAll().then(all =&gt; {
+ for (let {id} of all) {
+ checkWindow(id);
+ }
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.html
new file mode 100644
index 0000000000..8bb1ee9484
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.html
@@ -0,0 +1,59 @@
+---
+title: sidebarAction.open()
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/open
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - open
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/open
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Ouvrez la barre latérale dans la fenêtre active.</div>
+
+<div></div>
+
+<div>
+<p>Vous pouvez uniquement appeler cette fonction à l'intérieur du gestionnaire pour une <a href="/fr/Add-ons/WebExtensions/User_actions">action utilisateur</a>.</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>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.sidebarAction.open()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun</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 est résolue sans arguments..</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.sidebarAction.open", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ouvrez la barre latérale lorsque l'utilisateur sélectionne un élément de menu contextuel :</p>
+
+<pre class="brush: js">browser.menus.create({
+ id: "open-sidebar",
+ title: "open sidebar",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() =&gt; {
+ browser.sidebarAction.open();
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.html
new file mode 100644
index 0000000000..1b0f7e3352
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.html
@@ -0,0 +1,137 @@
+---
+title: sidebarAction.setIcon()
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/setIcon
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - setIcon
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/setIcon
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit l'icône de la barre latérale.</p>
+
+<p>Vous pouvez spécifier une icône unique comme chemin d'accès à un fichier image ou un objet {{WebExtAPIRef('sidebarAction.ImageDataType')}}.</p>
+
+<p>Vous pouvez spécifier plusieurs icônes de différentes tailles en fournissant un dictionnaire contenant plusieurs chemins ou objets <code>ImageData</code>. Cela signifie que l'icône ne doit pas être mise à l'échelle pour un périphérique avec une densité de pixels différente.</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="Types_d'icônes">Types d'icônes</h2>
+
+<p>Votre extension doit spécifier une icône pour la barre latérale dans la clé de manifest <a href="/fr/Add-ons/WebExtensions/manifest.json/sidebar_action">sidebar_action</a>. C'est ce qu'on appelle <em>"manifest icon"</em>.</p>
+
+<p>Si vous ne spécifiez pas d'icône dans la clé sidebar_action, vous obtenez l'icône par défaut du navigateur. C'est ce qu'on appelle <em>"default icon"</em>.</p>
+
+<p>Si vous définissez une nouvelle icône en utilisant <code>setIcon()</code>, et incluez l'option <code>tabId</code> , l'icône est définie uniquement pour l'onglet donné. C'est ce qu'on appelle <em>"tab-specific icon"</em>.</p>
+
+<p>Si vous définissez une nouvelle icône en utilisant <code>setIcon()</code>, et incluez l'option <code>windowId</code>, alors l'icône n'est définie que pour la fenêtre donnée. Cette icône est appelée <em>"icône spécifique à la fenêtre"</em>, et apparaîtra dans tous les onglets de cette fenêtre qui n'ont pas de jeu d'icônes spécifiques aux onglets.</p>
+
+<p>Si vous définissez une nouvelle icône en utilisant <code>setIcon()</code>, et omettez l'option <code>tabId</code> and <code>windowId</code>, cela définit <em>"icône globale"</em>. L'icône globale apparaîtra alors dans tous les onglets qui n'ont pas de jeu d'icônes spécifiques aux onglets et dont la fenêtre n'a pas d'icône spécifique à la fenêtre.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var settingIcon = browser.sidebarAction.setIcon(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un Objet contenant des propriétés <code>imageData</code> ou <code>path</code>, et éventuellement une propriété <code>tabId</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>imageData</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>{{WebExtAPIRef('sidebarAction.ImageDataType')}}</code> ou <code><code>object</code></code>. C'est un objet <code>ImageData</code> unique ou un objet dictionnaire.</p>
+
+ <p>Utilisez un objet dictionnaire pour spécifier plusieurs objets <code>ImageData</code> dans différentes tailles, de sorte que l'icône ne doit pas être mise à l'échelle pour un périphérique avec une densité de pixels différente. Si <code>imageData</code> est un dictionnaire, la valeur de chaque propriété est un objet <code>ImageData</code>, et son nom est sa taille, comme ceci :</p>
+
+ <pre class="brush: json line-numbers language-json"><code class="language-json"><span class="punctuation token">{</span>
+ <span class="key token">16:</span> <span class="string token">image16</span><span class="punctuation token">,</span>
+ <span class="key token">32:</span> image32
+<span class="punctuation token">}</span></code></pre>
+
+ <p>Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir <a href="/fr/Add-ons/WebExtensions/manifest.json/browser_action#Choosing_icon_sizes">Choisir les tailles d'icônes</a> pour plus d'informations à ce sujet.</p>
+ </dd>
+ <dt><code>path</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code><code>string</code></code> ou <code><code>object</code></code>. C'est soit un chemin relatif vers un fichier d'icône, soit un objet dictionnaire. </p>
+
+ <p>Utilisez un objet de dictionnaire pour spécifier plusieurs fichiers d'icônes de différentes tailles, de sorte que l'icône ne doit pas être mise à l'échelle pour un périphérique avec une densité de pixels différente. Si <code>path</code> est un dictionnaire, la valeur de chaque propriété est un chemin relatif, et son nom est sa taille, comme ceci :</p>
+
+ <pre class="brush: json line-numbers language-json"><code class="language-json"><span class="punctuation token">{</span>
+ <span class="key token">16:</span> "path/to/image16.jpg<span class="punctuation token">",</span>
+ <span class="key token">32:</span> "path/to/image32.jpg<span class="punctuation token">"</span>
+<span class="punctuation token">}</span></code></pre>
+
+ <p>Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir <a href="/fr/Add-ons/WebExtensions/manifest.json/browser_action#Choosing_icon_sizes">Choosir les tailles d'icônes</a> pour plus d'informations à ce sujet.</p>
+
+ <p>si <code>path</code> est une chaîne vide, le navigateur utilisera l'icône par défaut.</p>
+
+ <p>si <code>path</code> n'est pas vide mais ne pointe pas vers un fichier d'icône, l'icône est masquée.</p>
+
+ <p>si <code>path</code> est <code>null</code>, et <code>tabId</code>a été spécifié, et que l'onglet spécifié possède un jeu d'icônes spécifique à l'onglet: l'icône spécifique à l'onglet est réinitialisée à l'icône globale (si une icône globale est définie) ou à l'icône manifeste.</p>
+
+ <p>si <code>path</code> est <code>null</code>, et <code>tabId</code> a été omis, et qu'il y avait un jeu d'icônes global, il sera réinitialisé à l'icône de manifest.</p>
+ </dd>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit l'icône uniquement pour l'onglet donné.</dd>
+ <dt><code>windowId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit l'icône uniquement pour la fenêtre donnée.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code>et <code>tabId</code> sont tous deux spécifiés, la fonction échoue et l'icône n'est pas définie.</li>
+ <li>SI <code>windowId</code> et <code>tabId</code> sont tous deux omis, l'icône est définie globalement.</li>
+</ul>
+
+<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 sans argument une fois l'icône définie.</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.sidebarAction.setIcon",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Le code ci-dessous bascule l'icône de la barre latérale de l'onglet actif lorsque l'utilisateur clique sur une action du navigateur :</p>
+
+<pre class="brush: js">var on = false;
+
+function toggle(tab) {
+ if (on) {
+ browser.sidebarAction.setIcon({
+ path: "off.svg",
+ tabId: tab.id
+ });
+ on = false;
+ } else {
+ browser.sidebarAction.setIcon({
+ path: "on.svg",
+ tabId: tab.id
+ });
+ on = true;
+ }
+}
+
+browser.browserAction.onClicked.addListener(toggle);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Opera <a href="https://dev.opera.com/extensions/sidebar-action-api/"><code>chrome.sidebarAction</code></a>.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.html
new file mode 100644
index 0000000000..329a0c3aa5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.html
@@ -0,0 +1,138 @@
+---
+title: sidebarAction.setPanel()
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/setPanel
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - setPanel
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/setPanel
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit le panneau de la barre latérale: c'est-à-dire le document HTML qui définit le contenu de cette barre latérale.</p>
+
+<h2 id="Types_de_panneau">Types de panneau</h2>
+
+<p>Les barres latérales ont toujours un <em>"panneau manifest"</em>, qui est le panneau défini dans la clé de manifest <code><a href="/fr/Add-ons/WebExtensions/manifest.json/sidebar_action">sidebar_action</a></code>.</p>
+
+<p>Si vous définissez un nouveau panneau à l'aide de <code>setPanel()</code>, et incluez l'option <code>tabId</code> le panneau est défini uniquement pour l'onglet donné. Ce panneau est appelé  <em>"tab-specific panel"</em>.</p>
+
+<p>Si vous définissez un nouveau panneau en utilisant <code>setPanel()</code>, et incluez l'option <code>windowId</code>, alors le panneau n'est défini que pour la fenêtre donnée.  Ce panneau est appelé <em>"panneau spécifique à la fenêtre"</em>, et apparaîtra dans tous les onglets de cette fenêtre qui n'ont pas d'ensemble de panneaux spécifiques aux onglets.</p>
+
+<p>Si vous définissez un nouveau panneau en utilisant <code>setPanel()</code>, et omettez les options <code>tabId</code> et <code>windowId</code>, alors ceci définit le <em>"panneau global"</em>. Le panneau global apparaîtra alors dans tous les onglets qui n'ont pas d'ensemble de panneaux spécifiques aux onglets et dont la fenêtre n'a pas de panneau spécifique à une fenêtre.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.sidebarAction.setPanel(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet avec les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>panel</code></dt>
+ <dd><code>string</code> ou <code>null</code>. Le panneau à charger dans la barre latérale, spécifié comme une URL pointant vers un document HTML, ou <code>null</code>, ou une chaîne vide.</dd>
+ <dd>Ceci peut pointer vers un fichier empaqueté dans l'extension (for exemple, créé à l'aide de {{WebExtAPIRef("runtime.getURL")}}), ou un document distant (par exemple <code>https://example.org/</code>). Il doit s'agir d'une URL valide.</dd>
+ <dd>Si <code>panel</code> est <code>null</code> ou <code>""</code>,alors un panneau précédemment défini sera supprimé, de sorte que :</dd>
+ <dd>
+ <ul>
+ <li>Si <code>tabId</code> est spécifié, et que l'onglet a un jeu de panneaux spécifiques aux onglets, alors l'onglet héritera du panneau à partir de la fenêtre à laquelle il appartient.</li>
+ <li>Si <code>windowId</code> est spécifié, et que la fenêtre a un jeu de panneaux spécifiques à la fenêtre, alors la fenêtre héritera du panneau global.</li>
+ <li>Sinon, le panneau global sera réinitialisé au panneau manifest.</li>
+ </ul>
+ </dd>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit le panneau uniquement pour l'onglet donné.</dd>
+ <dt><code>windowId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit le panneau uniquement pour la fenêtre donnée.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux spécifiés, la fonction échoue et le panneau n'est pas défini.</li>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous les deux omis, le panneau global est défini.</li>
+</ul>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code bascule le document de la barre latérale lorsque l'utilisateur clique sur une action du navigateur :</p>
+
+<pre class="brush: js">var thisPanel = browser.runtime.getURL("/this.html");
+var thatPanel = browser.runtime.getURL("/that.html");
+
+function toggle(panel) {
+ if (panel === thisPanel) {
+ browser.sidebarAction.setPanel({panel: thatPanel});
+ } else {
+ browser.sidebarAction.setPanel({panel: thisPanel});
+ }
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ browser.sidebarAction.getPanel({}).then(toggle);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<ul>
+</ul>
+
+<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.sidebarAction.setPanel",2)}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Opera <a href="https://dev.opera.com/extensions/sidebar-action-api/"><code>chrome.sidebarAction</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.html
new file mode 100644
index 0000000000..7f6bf473c2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.html
@@ -0,0 +1,125 @@
+---
+title: sidebarAction.setTitle()
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/setTitle
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - setTitle
+ - sidebarAction
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/setTitle
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit le titre de la barre latérale. Le titre est affiché n'importe où dans les barres latérales du navigateur. Par exemple, Firefox l'affichera dans le menu "Affichage &gt; Barre latérale". Il est également affiché en haut de la barre latérale lorsque la barre latérale est ouverte.</p>
+
+<h2 id="Types_de_titres">Types de titres</h2>
+
+<p>Votre extension doit spécifier un titre pour la barre latérale dans la clé de manifest  <a href="/fr/Add-ons/WebExtensions/manifest.json/sidebar_action">sidebar_action</a>. C'est ce qu'on appelle le <em>"titre du manifest"</em>. Si vous ne spécifiez pas le titre du manifest, il sera par défaut le nom de l'extension</p>
+
+<p>Si vous définissez un nouveau titre à l'aide de <code>setTitle()</code>, et incluez l'option <code>tabId</code> le titre est défini uniquement pour l'onglet donné. Ce titre est appelé <em>"titre spécifique à l'onglet"</em>.</p>
+
+
+
+<p>Si vous définissez un nouveau titre à l'aide de <code>setTitle()</code>,  et incluez l'option <code>windowId</code>, alors le titre est défini uniquement pour la fenêtre donnée. Ce titre est appelé <em>"titre spécifique à la fenêtre"</em>, et apparaîtra dans tous les onglets de cette fenêtre qui n'ont pas de titre spécifique à un onglet.</p>
+
+<p>Si vous définissez un nouveau titre à l'aide de <code>setTitle()</code>, et omettre les options <code>tabId</code> et <code>windowId</code>, alors ceci définit le <em>"titre global"</em>. Le titre global apparaîtra alors dans tous les onglets qui n'ont pas de titre spécifique à un onglet et dont la fenêtre n'a pas de titre spécifique à une fenêtre.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.sidebarAction.setTitle(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Un objet avec les propriétés suivantes .</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>title</code></dt>
+ <dd><code>string</code> ou <code>null</code>. Le nouveau titre de la barre latérale.</dd>
+ <dd>
+ <p>si le <code>titre</code>  est une chaîne vide, le titre utilisé sera le nom de l'extension, mais {{WebExtAPIRef("sidebarAction.getTitle")}} fournira toujours la chaîne vide.</p>
+
+ <p>Si le <code>titre</code> est <code>null</code>, alors un titre précédemment défini sera supprimé, de sorte que :</p>
+
+ <ul>
+ <li>Si <code>tabId</code> est spécifié, et que l'onglet a un jeu de titres spécifiques aux onglets, alors l'onglet héritera du titre de la fenêtre à laquelle il appartient.</li>
+ <li>Si <code>windowId</code> est spécifié et que la fenêtre a un titre spécifique à la fenêtre, alors la fenêtre héritera du titre global.</li>
+ <li>Sinon, le titre global sera réinitialisé au titre du manifest.</li>
+ </ul>
+ </dd>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit le titre uniquement pour l'onglet donné.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Définit le titre uniquement pour la fenêtre donnée.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<ul>
+ <li>Si <code>windowId</code> et <code>tabId</code> sont tous deux fournis, la fonction échoue et le titre n'est pas défini.</li>
+ <li>SI <code>windowId</code> et <code>tabId</code> sont tous les deux omis, le titre global est définit.</li>
+</ul>
+
+<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.sidebarAction.setTitle",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code modifie le titre de la barre latérale lorsque l'utilisateur clique sur une action du navigateur, mais uniquement pour l'onglet en cours :</p>
+
+<pre class="brush: js">var title = "A different title";
+
+function setTitleForTab(tab) {
+ browser.sidebarAction.setTitle({title, tabId: tab.id});
+}
+
+browser.browserAction.onClicked.addListener(setTitleForTab);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Opera <a href="https://dev.opera.com/extensions/sidebar-action-api/"><code>chrome.sidebarAction</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.html
new file mode 100644
index 0000000000..84294f1c99
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.html
@@ -0,0 +1,56 @@
+---
+title: sidebarAction.toggle()
+slug: Mozilla/Add-ons/WebExtensions/API/sidebarAction/toggle
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - sidebarAction
+ - toogle
+translation_of: Mozilla/Add-ons/WebExtensions/API/sidebarAction/toggle
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Permet de basculer la visibilité de la barre latérale dans la fenêtre active, si la barre latérale appartient à l'extension.</p>
+
+<p>Vous ne pouvez appeler cette fonction que depuis l'intérieur du gestionnaire pour une <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/User_actions">action utilisateur</a>.</p>
+
+<p>Il s'agit d'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">browser.sidebarAction.toggle()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucune.</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 est résolue sans discussion.</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.sidebarAction.toggle", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Bascule la barre latérale lorsque l'utilisateur sélectionne un élément dans le menu contextuel :</p>
+
+<pre class="brush: js">browser.menus.create({
+ id: "toggle-sidebar",
+ title: "Toggle sidebar",
+ contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() =&gt; {
+ browser.sidebarAction.toggle();
+});</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/index.html
new file mode 100644
index 0000000000..119d7756b0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/index.html
@@ -0,0 +1,107 @@
+---
+title: storage
+slug: Mozilla/Add-ons/WebExtensions/API/storage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - Storage
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Permet aux extensions de stocker et de récupérer des données et d'écouter les modifications apportées aux éléments stockés.</p>
+
+<p>Le mécanisme de stockage est basé sur l'<a href="/fr/docs/Web/API/Web_Storage_API">API Web Storage</a>, à quelques différences près. Elles incluent entre autres :</p>
+
+<ul>
+ <li>Le mécanisme est asynchrone.</li>
+ <li>La portée des valeurs s'étend à l'extension, pas à un domaine en particulier (c-à-d que les mêmes paires clef/valeur sont disponibles pour tous les scripts d'arrière-plan et de contenu).</li>
+ <li>Les valeurs stockées peuvent être de tout type compatible avec JSON et pas uniquement <code><a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/String">String</a></code>. Ce qui inclut entre autres <code><a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Array">Array</a></code> et <code><a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Object">Object</a></code>, mais seulement si leur contenu peut être représenté en JSON, ce qui exclut les nœuds DOM. Il n'est pas nécessaire de convertir vos valeurs en JSON Strings avant de les stocker, mais elles sont représentées en JSON en interne, d'où l'impératif de compatibilité.</li>
+ <li>Plusieurs paires clef/valeur peuvent être récupérées par un même appel à l'API.</li>
+</ul>
+
+<p>Pour utiliser cette API vous devez inclure la <a href="https://developer.mozilla.org/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> « storage » dans votre fichier <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json</a>.</p>
+
+<p>Chaque extension a sa propre zone de stockage, qui peut être divisée entre plusieurs types de stockage.</p>
+
+<p>Bien que cette API soit semblable à {{domxref("Window.localStorage")}} il est conseillé de ne pas utiliser <code>Window.localStorage</code> dans le code de l'extension pour stocker ses données. Firefox effacera les données stockées via l'API localStorage par les extensions dans plusieurs scénarios où les utilisateurs effacent leur historique de navigation ou des données pour des raisons de confidentialité, alors que les données sauvées en utilisant l'API <code><a href="/fr/docs/Mozilla/Add-ons/WebExtensions/API/storage/local">storage.local</a></code> seront correctement conservées dans ces scénarios.</p>
+
+<div class="note">La zone de stockage n'est pas chiffrée et ne doit pas être utilisée pour stocker des informations confidentielles sur les utilisateurs.</div>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("storage.StorageArea")}}</dt>
+ <dd>Un objet représentant la zone de stockage.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageChange")}}</dt>
+ <dd>Un objet représentant une modification d'une zone de stockage.</dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<p><code>storage</code> a trois propriétés, qui représentent les différents types de zones de stockage disponibles.</p>
+
+<dl>
+ <dt>{{WebExtAPIRef("storage.sync")}}</dt>
+ <dd>Représente la zone de stockage <code>sync</code>. Les items dans <code>sync</code> sont synchronisés par le navigateur, et disponibles pour toutes les instances de ce navigateur auxquelles l'utilisateur est connecté, pour tous les appareils.</dd>
+ <dt>{{WebExtAPIRef("storage.local")}}</dt>
+ <dd>Représente la zone de stockage <code>local</code>. Les items dans <code>local</code> sont limités à l'appareil sur lequel l'extension a été installée.</dd>
+ <dt>{{WebExtAPIRef("storage.managed")}}</dt>
+ <dd>Représente la zone de stockage <code>managed</code>. Les items dans <code>managed</code> sont en écriture pour l'administrateur du domaine et en lecture seule pour l'extension. Tenter de modifier cet espace de nom renvoie une erreur.</dd>
+</dl>
+
+<h2 id="Événements">Événements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("storage.onChanged")}}</dt>
+ <dd>Activé quand un ou plusieurs items d'une zone de stockage sont modifiés.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.storage")}}</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/local/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/local/index.html
new file mode 100644
index 0000000000..d9addc36eb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/local/index.html
@@ -0,0 +1,94 @@
+---
+title: storage.local
+slug: Mozilla/Add-ons/WebExtensions/API/storage/local
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Property
+ - Reference
+ - Storage
+ - WebExtensions
+ - local
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/local
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Représente la zone de stockage <code>local</code>. Les éléments stockés <code>localement</code> sont locaux sur la machine sur laquelle l'extension a été installée.</p>
+
+<p>Le navigateur peut limiter la quantité de données qu'une extension peut stocker dans la zone de stockage locale :</p>
+
+<ul>
+ <li>Chrome limite l'extension à 5 Mo de données à l'aide de cette API à moins qu'elle ne dispose de <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Unlimited_storage">permission "unlimitedStorage"</a>.</li>
+ <li>Firefox vous permet de demander la permission "unlimitedStorage" à partir de la version 56. Il ne limite pas encore la quantité de données que votre extension peut stocker, mais commencera à le faire dans une future version : c'est donc une bonne idée de demander la permission "unlimitedStorage" maintenant, si vous avez l'intention de stocker une grande quantité de données.</li>
+</ul>
+
+<p>Lorsque l'extension est désinstallée, son stockage local associé est effacé.</p>
+
+<p>Toujours dans Firefox, vous pouvez empêcher le navigateur d'effacer le stockage local lors de la désinstallation en visitant "about:config" et en définissant les deux préférences de navigateur suivantes sur <code>true</code>: "keepUuidOnUninstall" et "keepStorageOnUninstall". Cette fonctionnalité est fournie pour aider les développeurs à tester leurs extensions. Les extensions elles-mêmes ne sont pas en mesure de modifier ces préférences.</p>
+
+<p>Bien que cette API soit similaire à {{domxref("Window.localStorage")}} il est recommandé de ne pas utiliser <code>Window.localStorage</code> dans le code d'extension. Firefox effacera les données stockées par les extensions à l'aide de l'API localStorage dans divers scénarios  où les utilisateurs effacent leur historique de navigation et leurs données pour des raisons de confidentialité, tandis que les données enregistrées avec l'API storage.local seront correctement conservées dans ces scénarios.</p>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<p>L'objet <code>local</code> local implémente les méthodes définies sur le type  {{WebExtAPIRef("storage.StorageArea")}} :</p>
+
+<dl>
+ <dt>{{WebExtAPIRef("storage.StorageArea.get()")}}</dt>
+ <dd>Récupère un ou plusieurs éléments de la zone de stockage.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.getBytesInUse()")}}</dt>
+ <dd>Obtient la quantité d'espace de stockage (en octets) utilisée pour stocker un ou plusieurs éléments dans la zone de stockage.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.set()")}}</dt>
+ <dd>Stocke un ou plusieurs éléments dans la zone de stockage. Si l'élément existe déjà, sa valeur sera mise à jour. Lorsque vous définissez une valeur, l'événement  {{WebExtAPIRef("storage.onChanged")}} se déclenche.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.remove()")}}</dt>
+ <dd>Supprime un ou plusieurs éléments de la zone de stockage..</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.clear()")}}</dt>
+ <dd>Supprime tous les éléments de la zone de stockage.</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.storage.local")}}</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.html
new file mode 100644
index 0000000000..367206b319
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.html
@@ -0,0 +1,136 @@
+---
+title: storage.managed
+slug: Mozilla/Add-ons/WebExtensions/API/storage/managed
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Property
+ - Reference
+ - Storage
+ - WebExtensions
+ - managed
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/managed
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet {{WebExtAPIRef("storage.StorageArea")}} qui représente la zone de stockage gérée. Les éléments de stockage <code>géré</code> sont définis par l'administrateur du domaine ou d'autres applications natives installées sur l'ordinateur de l'utilisateur et sont en lecture seule pour l'extension. Essayer de modifier cette zone de stockage entraîne une erreur.</p>
+
+<h2 id="Provisionnement_du_stockage_géré">Provisionnement du stockage géré</h2>
+
+<p>La procédure de provisionnement du stockage géré est différente selon les navigateurs. Firefox a sa propre méthode mais (à partir de Firefox 67) peut aussi utiliser la fonction Storage.managed de Chrome qui supporte un fichier <code>.json</code>. ((Voir Stockage Chrome géré ci-dessous.)</p>
+
+<h3 id="manifestes_natives">manifestes natives</h3>
+
+<p>Pour Firefox, vous devez créer un fichier manifest JSON dans un format spécifique, dans un emplacement spécifique. Pour plus de détails sur la syntaxe et l'emplacement du manifeste, voir <a href="/fr/Add-ons/WebExtensions/Native_manifests">manifests natifs</a>.</p>
+
+<p>Voici un exemple de manifest :</p>
+
+<pre class="brush: json">{
+ "name": "favourite-color-examples@mozilla.org",
+ "description": "ignored",
+ "type": "storage",
+ "data":
+ {
+ "color": "management thinks it should be blue!"
+ }
+}</pre>
+
+<p>Compte tenu de ce manifeste, l'extension "favourite-color-examples@mozilla.org" pourrait accéder aux données en utilisant un code comme celui-ci :</p>
+
+<pre class="brush: js">var storageItem = browser.storage.managed.get('color');
+storageItem.then((res) =&gt; {
+ console.log(`Managed colur is: ${res.color}`);
+});</pre>
+
+<h3 id="Gestion_de_stockage_dans_Chrome">Gestion de stockage dans Chrome</h3>
+
+<p>Firefox et Chrome supportent tous deux l'utilisation d'un manifeste pour les zones de stockage.</p>
+
+<p>La zone de stockage gérée est configurée à l'aide d'un schéma JSON, qui est strictement validé par Chrome et Firefox 67 ou supérieur. Stockez le schéma dans un fichier.json et pointez-le depuis la propriété "managed_schema" de la clé de manifeste "storage" de l'extension web. Le fichier json déclare les stratégies d'entreprise supportées par l'extension.</p>
+
+<p>Les stratégies définissent les options qui ont été configurées par un administrateur système au lieu de l'utilisateur. La gestion du stockage permet de préconfigurer une extension pour tous les utilisateurs d'une organisation.</p>
+
+<p>C'est à l'extension d'appliquer les stratégies configurées par l'administrateur. L'extension peut lire les stratégies à l'aide de l'API storage.managed.</p>
+
+<h4 id="manifest.json">manifest.json</h4>
+
+<pre class="brush: js">{
+ "name": "chrome-storage-managed-examples@mozilla.org",
+<span class="str"> "storage"</span><span class="pun">:</span><span class="pln"> </span><span class="pun">{</span><span class="pln">
+ </span><span class="str">"managed_schema"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"schema.json"</span><span class="pln">
+ </span><span class="pun">},</span>
+}
+</pre>
+
+<p>Le fichier json ressemblerait à ceci :</p>
+
+<pre class="brush: json">{
+ "type": "object",
+ // "properties" maps an optional key of this object to its schema. At the
+ // top-level object, these keys are the policy names supported.
+ "properties": {
+ // "title" and "description" are optional and are used to show a
+ // user-friendly name and documentation to the administrator.
+ "bookmarks": {
+ "id": "DevTeamBookmarks",
+ "title": "Dev Team bookmarks.",
+ "description": "A set of bookmarks particularly useful to the dev team.",
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "title": { "type": "string" },
+ "url": { "type": "string" },
+ "children": { "$ref": "ListOfBookmarks" }
+ }
+ }
+ }
+}</pre>
+
+<p>Pour plus d'informations, voir l'article de Chrome pour les zones de stockage <a href="https://developer.chrome.com/extensions/manifest/storage">Manifeste pour les zones de stockage</a>.</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.storage.managed")}}</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.html
new file mode 100644
index 0000000000..e7215b138c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.html
@@ -0,0 +1,127 @@
+---
+title: storage.onChanged
+slug: Mozilla/Add-ons/WebExtensions/API/storage/onChanged
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - Storage
+ - WebExtensions
+ - onChanged
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/onChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un ou plusieurs éléments changent.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.storage.onChanged.addListener(callback)
+browser.storage.onChanged.removeListener(listener)
+browser.storage.onChanged.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>changes</code></dt>
+ <dd><code>object</code>. Objet décrivant le changement. Cela contient une propriété pour chaque clé qui a changé. Le nom de la propriété est le nom de la clé qui a changé, et sa valeur est un objet {{WebExtAPIRef('storage.StorageChange')}} décrivant la modification apportée à cet élément.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>areaName</code></dt>
+ <dd><code>string</code>. Le nom de la zone de stockage (<code>"sync"</code>, <code>"local"</code> or <code>"managed"</code>) auquel les modifications ont été apportées.</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.storage.onChanged")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">/*
+Log the storage area that changed,
+then for each item changed,
+log its old value and its new value.
+*/
+function logStorageChange(changes, area) {
+ console.log("Change in storage area: " + area);
+
+ var changedItems = Object.keys(changes);
+
+ for (var item of changedItems) {
+ console.log(item + " has changed:");
+ console.log("Old value: ");
+ console.log(changes[item].oldValue);
+ console.log("New value: ");
+ console.log(changes[item].newValue);
+ }
+}
+
+browser.storage.onChanged.addListener(logStorageChange);
+</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.html
new file mode 100644
index 0000000000..14fe3c2617
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.html
@@ -0,0 +1,62 @@
+---
+title: StorageArea.clear()
+slug: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/clear
+tags:
+ - API
+ - Add-ons
+ - Extensios
+ - Méthode
+ - Non-standard
+ - Reference
+ - Storage
+ - StorageArea
+ - WebExtensions
+ - remove
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/clear
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime tous les éléments de la zone de stockage.</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.storage.&lt;storageType&gt;.clear()
+</pre>
+
+<p><code>&lt;storageType&gt; </code>sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} or {{WebExtAPIRef("storage.local")}}.</p>
+
+<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 remplie sans arguments si l'opération a réussi. Si l'opération a échoué, la promesse sera rejetée avec un message d'erreur..</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.storage.StorageArea.clear")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onCleared() {
+ console.log("OK");
+}
+
+function onError(e) {
+ console.log(e);
+}
+
+var clearStorage = browser.storage.local.clear();
+clearStorage.then(onCleared, onError);</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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/storage/storagearea/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/get/index.html
new file mode 100644
index 0000000000..e2836d3b10
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/get/index.html
@@ -0,0 +1,135 @@
+---
+title: StorageArea.get()
+slug: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/get
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - Storage
+ - StorageArea
+ - WebExtensions
+ - get
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/get
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère un ou plusieurs éléments de la zone de stockage.</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">let gettingItem = browser.storage.&lt;storageType&gt;.get(
+ keys // null, string, object or array of strings
+)
+</pre>
+
+<p><code>&lt;storageType&gt;</code> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync", "sync")}}, {{WebExtAPIRef("storage.local", "local")}}, ou {{WebExtAPIRef("storage.managed", "managed")}}.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>keys</code></dt>
+ <dd>Une clé (chaîne) ou des clés (un tableau de chaînes ou un objet spécifiant des valeurs par défaut) pour identifier le ou les articles à extraire du stockage. Si vous passez une chaîne vide, un objet ou un tableau ici, un objet vide sera récupéré. Si vous passez <code>null</code>,  ou une valeur indéfinie, le contenu entier du stockage sera récupéré.</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 objet de <code>resultat</code> contenant tous les objets dans les <code>clefs</code> trouvées dans la zone de stockage. Si l'opération a échoué, la promesse sera rejetée avec un message d'erreur. Si le stockage géré n'est pas défini, les données  <code>non définies</code> seront retournées.</p>
+
+<div class="warning">
+<p>Lorsqu'elle est utilisée dans un script de contenu dans les versions de Firefox antérieures à 52, la promesse retournée par <code>browser.storage.local.get()</code> est remplie avec un tableau contenant un objet. L'objet dans le tableau contient les <code>clefs</code> trouvées dans la zone de stockage, comme décrit ci-dessus. La promesse est correctement remplie avec un objet lorsqu'il est utilisé dans le contexte d'arrière-plan<br>
+ (scripts d'arrière-plan, popups, pages d'options, etc.). Lorsque cette API est utilisée en tant que <code>chrome.storage.local.get()</code>, elle transmet correctement un objet à la fonction de rappel.</p>
+</div>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.storage.StorageArea.get")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supposons que le stockage contienne deux éléments :</p>
+
+<pre class="brush: js">// storage contains two items,
+// "kitten" and "monster"
+browser.storage.local.set({
+ kitten: {name:"Mog", eats:"mice"},
+ monster: {name:"Kraken", eats:"people"}
+});</pre>
+
+<p>Définissez les gestionnaires de réussite et d'échec pour la promesse:</p>
+
+<pre class="brush: js">function onGot(item) {
+ console.log(item);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}</pre>
+
+<p>Sans arguments <code>clefs</code>, tout récupérez :</p>
+
+<pre class="brush: js">let gettingItem = browser.storage.local.get();
+gettingItem.then(onGot, onError);
+
+// -&gt; Object { kitten: Object, monster: Object }</pre>
+
+<p>Avec un argument de clefs vide, ne retourne rien:</p>
+
+<pre class="brush: js">// with an empty array, retrieve nothing
+let gettingItem = browser.storage.local.get([]);
+gettingItem.then(onGot, onError);
+
+// -&gt; Object { }</pre>
+
+<p>Avec le nom d'un objet, récupérez la correspondance :</p>
+
+<pre class="brush: js">let gettingItem = browser.storage.local.get("kitten");
+gettingItem.then(onGot, onError);
+
+// -&gt; Object { kitten: Object }</pre>
+
+<p>Avec un tableau de noms d'objets, récupérez toutes les correspondances :</p>
+
+<pre class="brush: js">let gettingItem = browser.storage.local.get(["kitten", "monster", "grapefruit"]);
+gettingItem.then(onGot, onError);
+
+// -&gt; Object { kitten: Object, monster: Object } </pre>
+
+<p>Avec un objet avec des noms d'objets en tant que clefs et la valeur par défaut en tant que valeur :</p>
+
+<pre class="brush: js">let gettingItem = browser.storage.local.get({
+ kitten: "no kitten",
+ monster: "no monster",
+ grapefruit: {
+ name: "Grape Fruit",
+ eats: "Water"
+ }
+});
+
+// -&gt; Object { kitten: Object, monster: Object, grapefruit: Object }
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<h3 id="Chrome_exemples">Chrome exemples</h3>
+
+<pre class="brush: js">chrome.storage.local.get("kitten", function(items){
+ console.log(items.kitten); // -&gt; {name:"Mog", eats:"mice"}
+});</pre>
+
+<p class="brush: js">Ou avec une fonction de flèche</p>
+
+<pre class="brush: js">chrome.storage.local.get("kitten", items=&gt;{
+ console.log(items.kitten); // -&gt; {name:"Mog", eats:"mice"}
+});</pre>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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/storage/storagearea/getbytesinuse/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/getbytesinuse/index.html
new file mode 100644
index 0000000000..ee363be0e7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/getbytesinuse/index.html
@@ -0,0 +1,54 @@
+---
+title: StorageArea.getBytesInUse()
+slug: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/getBytesInUse
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - Storage
+ - StorageArea
+ - WebExtensions
+ - getBytesInUse
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/getBytesInUse
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient la quantité d'espace de stockage, en octets, utilisé un ou plusieurs éléments stockés dans la zone de stockage.</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 gettingSpace = browser.storage.&lt;storageType&gt;.getBytesInUse(
+ keys // null, string, or array of strings
+)
+</pre>
+
+<p><code>&lt;storageType&gt;</code> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} ou {{WebExtAPIRef("storage.local")}}.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>keys</code></dt>
+ <dd>Une clef (chaîne) ou des cléfs (un tableau de chaînes) pour identifier le ou les éléments dont vous voulez récupérer l'espace de stockage. Si un tableau vide est passé, 0 sera renvoyé. Si vous passez à <code>null</code> ou <code>indéfini</code> ici, la fonction retournera l'espace utilisé par l'ensemble de la zone de stockage.</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 entier, <code>bytesUsed</code>, représentant l'espace de stockage utilisé par les objets spécifiés dans les <code>clefs</code>. Si l'opération a échoué, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.storage.StorageArea.getBytesInUse")}}</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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/storage/storagearea/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/index.html
new file mode 100644
index 0000000000..c22ea99dc3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/index.html
@@ -0,0 +1,83 @@
+---
+title: storage.StorageArea
+slug: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Storage
+ - StorageArea
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>StorageArea est un objet représentant une zone de stockage.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets.</p>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("storage.StorageArea.get()")}}</dt>
+ <dd>Récupère un ou plusieurs éléments de la zone de stockage..</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.getBytesInUse()")}}</dt>
+ <dd>Obtient la quantité d'espace de stockage (en octets) utilisée pour stocker un ou plusieurs éléments dans la zone de stockage.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.set()")}}</dt>
+ <dd>Stocke un ou plusieurs éléments dans la zone de stockage. Si un élément existe déjà, sa valeur sera mise à jour.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.remove()")}}</dt>
+ <dd>Supprime un ou plusieurs éléments de la zone de stockage.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.clear()")}}</dt>
+ <dd>Supprime tous les éléments de la zone de stockage.</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.storage.StorageArea")}}</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.html
new file mode 100644
index 0000000000..c51a77e08a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.html
@@ -0,0 +1,70 @@
+---
+title: StorageArea.remove()
+slug: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/remove
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - Storage
+ - StorageArea
+ - WebExtensions
+ - remove
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/remove
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime un ou plusieurs éléments de la zone de stockage.</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">let removingItem = browser.storage.&lt;storageType&gt;.remove(
+ keys // string, or array of strings
+)
+</pre>
+
+<p><code>&lt;storageType&gt;</code> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} ou {{WebExtAPIRef("storage.local")}}.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>keys</code></dt>
+ <dd>Une chaîne ou un tableau de chaînes représentant la ou les clés de l'élément à supprimer.</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 sans arguments si l'opération a réussi. Si l'opération a échoué, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.storage.StorageArea.remove")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprimer un seul élément:</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log("OK");
+}
+
+function onError(e) {
+ console.log(e);
+}
+
+let removeKitten = browser.storage.sync.remove("kitten");
+removeKitten.then(onRemoved, onError);
+</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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/storage/storagearea/set/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/set/index.html
new file mode 100644
index 0000000000..b1d8c12e59
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/set/index.html
@@ -0,0 +1,101 @@
+---
+title: StorageArea.set()
+slug: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/set
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - Storage
+ - StorageArea
+ - WebExtensions
+ - set
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/StorageArea/set
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Stocke un ou plusieurs éléments dans la zone de stockage ou met à jour les éléments existants..</p>
+
+<p>Lorsque vous stockez ou mettez à jour une valeur à l'aide de cette API, l'événement  {{WebExtAPIRef("storage.onChanged")}} se déclenche.</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">let settingItem = browser.storage.&lt;storageType&gt;.set(
+ keys // object
+)
+</pre>
+
+<p><code>&lt;storageType&gt;</code> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} ou {{WebExtAPIRef("storage.local")}}.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>keys</code></dt>
+ <dd>
+ <p>Un objet contenant une ou plusieurs paires clé / valeur à stocker dans le stockage. Si un élément existe déjà, sa valeur sera mise à jour.</p>
+
+ <p>Les valeurs peuvent être des <a href="/fr/docs/Glossary/Primitive">types primitifs</a> tels que des nombres, des booléens et des chaînes) ou des types de <code><a href="/fr/docs/Web/JavaScript/Reference/Global_Objects/Array">tableau</a></code>.</p>
+
+ <p>Il n'est généralement pas possible de stocker d'autres types, tels que <code>Function</code>, <code>Date</code>, <code>RegExp</code>, <code>Set</code>, <code>Map</code>, <code>ArrayBuffer</code> et etc. Certains de ces types non pris en charge seront restaurés en tant qu'objet vide, et d'autres entraîneront <code>set()</code> à lancer une erreur. Le comportement exact ici est spécifique au navigateur.</p>
+ </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 sans arguments si l'opération a réussi. Si l'opération a échoué, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.storage.StorageArea.set")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function setItem() {
+ console.log("OK");
+}
+
+function gotKitten(item) {
+ console.log(`${item.kitten.name} has ${item.kitten.eyeCount} eyes`);
+}
+
+function gotMonster(item) {
+ console.log(`${item.monster.name} has ${item.monster.eyeCount} eyes`);
+}
+
+function onError(error) {
+ console.log(error)
+}
+
+// define 2 objects
+var monster = {
+ name: "Kraken",
+ tentacles: true,
+ eyeCount: 10
+}
+
+var kitten = {
+ name: "Moggy",
+ tentacles: false,
+ eyeCount: 2
+}
+
+// store the objects
+browser.storage.local.set({kitten, monster})
+ .then(setItem, onError);
+
+browser.storage.local.get("kitten")
+ .then(gotKitten, onError);
+browser.storage.local.get("monster")
+ .then(gotMonster, onError);
+</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</p>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.html
new file mode 100644
index 0000000000..4542f8dd76
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.html
@@ -0,0 +1,75 @@
+---
+title: storage.StorageChange
+slug: Mozilla/Add-ons/WebExtensions/API/storage/StorageChange
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Storage
+ - StorageChange
+ - Type
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/StorageChange
+---
+<div>{{AddonSidebar()}}</div>
+
+<div><code>StorageChange</code> est un objet représentant une modification d'une zone de stockage.</div>
+
+<h2 id="Type">Type</h2>
+
+<p>Les objets <code>StorageChange</code> contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>oldValue</code>{{optional_inline}}</dt>
+ <dd>L'ancienne valeur de l'article, s'il y avait une ancienne valeur. Cela peut être n'importe quel type de données.</dd>
+ <dt><code>newValue</code>{{optional_inline}}</dt>
+ <dd>La nouvelle valeur de l'article, s'il y a une nouvelle valeur. Cela peut être n'importe quel type de données.</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.storage.StorageChange")}}</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.html
new file mode 100644
index 0000000000..641781ea93
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.html
@@ -0,0 +1,88 @@
+---
+title: storage.sync
+slug: Mozilla/Add-ons/WebExtensions/API/storage/sync
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Property
+ - Reference
+ - Storage
+ - Sync
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/storage/sync
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Représente la zone de stockage de <code>synchronisation</code>. Les éléments stockés dans la  <code>synchronisation</code> sont synchronisés par le navigateur et disponibles sur toutes les instances de ce navigateur auxquelles l'utilisateur est connecté (par exemple via la synchronisation Firefox ou un compte Google), sur différents appareils.</p>
+
+<p>Pour Firefox, un utilisateur doit avoir coché <code>Modules complémentaires</code> dans les options « Réglages de Sync » dans « about:preferences ».</p>
+
+<p>Notez que l'implémentation de <code>storage.sync</code> dans Firefox repose sur l'ID Add-on. Si vous utilisez <code>storage.sync</code>, vous devez définir un ID pour votre extension à l'aide de la clé manifest.json <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings"><code></code></a><code><a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings">browser_specific_settings</a></code>.</p>
+
+<p>Le principal cas d'utilisation de cette API est de stocker les préférences concernant votre extension et de permettre à l'utilisateur de les synchroniser dans différents profils. Vous pouvez stocker jusqu'à 100 ko de données à l'aide de cette API. Si vous essayez de stocker plus que cela, l'appel échouera avec un message d'erreur. L'API est fournie sans garantie de disponibilité ou de performance.</p>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<p>L'objet <code>sync</code> implémente les méthodes définies sur le type  {{WebExtAPIRef("storage.StorageArea")}} :</p>
+
+<dl>
+ <dt>{{WebExtAPIRef("storage.StorageArea.get()")}}</dt>
+ <dd>Récupère un ou plusieurs éléments de la zone de stockage.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.getBytesInUse()")}}</dt>
+ <dd>Obtient la quantité d'espace de stockage (en octets) utilisée pour stocker un ou plusieurs éléments dans la zone de stockage.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.set()")}}</dt>
+ <dd>Stocke un ou plusieurs éléments dans la zone de stockage. Si un élément existe déjà, sa valeur sera mise à jour.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.remove()")}}</dt>
+ <dd>Supprime un ou plusieurs éléments de la zone de stockage.</dd>
+ <dt>{{WebExtAPIRef("storage.StorageArea.clear()")}}</dt>
+ <dd>Supprime tous les éléments de la zone de stockage.</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.storage.sync")}}</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/storage"><code>chrome.storage</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/storage.json"><code>storage.json</code></a> dans le code de Chromium.</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>
+
+<div class="hidden">
+<pre class="notranslate">// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
+&lt;tmpopup style="top: 304px; left: 182.233px;"&gt;&lt;tmpopupcolor id="tmpopupcolor--1" style="background: rgb(221, 153, 255) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--2" style="background: rgb(102, 187, 255) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--3" style="background: rgb(85, 255, 85) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--4" style="background: rgb(255, 102, 102) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--5" style="background: rgb(255, 204, 0) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--m" style="background: rgb(255, 238, 0) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;/tmpopup&gt;&lt;tmpopup style="top: 304px; left: 182.233px;"&gt;&lt;tmpopupcolor id="tmpopupcolor--1" style="background: rgb(221, 153, 255) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--2" style="background: rgb(102, 187, 255) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--3" style="background: rgb(85, 255, 85) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--4" style="background: rgb(255, 102, 102) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--5" style="background: rgb(255, 204, 0) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--m" style="background: rgb(255, 238, 0) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;/tmpopup&gt;&lt;tmpopup style="top: 304px; left: 182.233px;"&gt;&lt;tmpopupcolor id="tmpopupcolor--1" style="background: rgb(221, 153, 255) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--2" style="background: rgb(102, 187, 255) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--3" style="background: rgb(85, 255, 85) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--4" style="background: rgb(255, 102, 102) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--5" style="background: rgb(255, 204, 0) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--m" style="background: rgb(255, 238, 0) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;/tmpopup&gt;&lt;tmpopup style="top: 304px; left: 182.233px;"&gt;&lt;tmpopupcolor id="tmpopupcolor--1" style="background: rgb(221, 153, 255) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--2" style="background: rgb(102, 187, 255) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--3" style="background: rgb(85, 255, 85) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--4" style="background: rgb(255, 102, 102) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--5" style="background: rgb(255, 204, 0) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;tmpopupcolor id="tmpopupcolor--m" style="background: rgb(255, 238, 0) none repeat scroll 0% 0%;"&gt;&lt;/tmpopupcolor&gt;&lt;/tmpopup&gt;
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.html
new file mode 100644
index 0000000000..69848f0551
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.html
@@ -0,0 +1,102 @@
+---
+title: tabs.captureTab()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/captureTab
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - captureTab
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/captureTab
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Crée un URI de données codant une image de la zone visible de l'onglet donné. Vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>&lt;all_urls&gt;</code> pour utiliser cette méthode.</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 capturing = browser.tabs.captureTab(
+ tabId, // optional integer
+ options // optional extensionTypes.ImageDetails
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. ID de l'onglet à capturer. Par défaut à l'onglet actif dans la fenêtre en cours.</dd>
+ <dt><code>options</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('extensionTypes.ImageDetails')}}.</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 une URL de données qui code une image de la zone visible de l'onglet capturé. Peut être affecté à la propriété 'src' d'un élément HTML Image pour l'affichage. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Capturez une image de l'onglet actif dans la fenêtre actuelle, avec les paramètres par défaut :</p>
+
+<pre class="brush: js">function onCaptured(imageUri) {
+ console.log(imageUri);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var capturing = browser.tabs.captureTab();
+ capturing.then(onCaptured, onError);
+});
+</pre>
+
+<p>{{WebExtExamples}}</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.tabs.captureTab")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.html
new file mode 100644
index 0000000000..a8b86e33b0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.html
@@ -0,0 +1,105 @@
+---
+title: tabs.captureVisibleTab()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/captureVisibleTab
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - captureVisibleTab
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/captureVisibleTab
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Crée une URI de données codant une image de la zone visible de l'onglet actuellement actif dans la fenêtre spécifiée. Vous devez avoir la  <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>&lt;all_urls&gt;</code> pour utiliser cette méthode. (Alternativement, Chrome permet l'utilisation de cette méthode avec la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>activeTab</code> et un geste utilisateur qualifiant).</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 capturing = browser.tabs.captureVisibleTab(
+ windowId, // optional integer
+ options // optional extensionTypes.ImageDetails
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. La fenêtre cible Par défaut à la fenêtre actuelle.</dd>
+ <dt><code>options</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('extensionTypes.ImageDetails')}}.</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 une URL de données qui code une image de la zone visible de l'onglet capturé. Peut être affecté à la propriété 'src' d'un élément HTML Image pour l'affichage. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Capturez une image de l'onglet actif dans la fenêtre actuelle, avec les paramètres par défaut :</p>
+
+<pre class="brush: js">function onCaptured(imageUri) {
+ console.log(imageUri);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var capturing = browser.tabs.captureVisibleTab();
+ capturing.then(onCaptured, onError);
+});
+</pre>
+
+<p>{{WebExtExamples}}</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.tabs.captureVisibleTab")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.html
new file mode 100644
index 0000000000..db0ab99f0b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.html
@@ -0,0 +1,122 @@
+---
+title: tabs.connect()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/connect
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - connect
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/connect
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Appelez cette fonction pour configurer une connexion entre les scripts d'arrière-plan de l'extension (ou d'autres scripts privilégiés, tels que les scripts d'arrière-plan de l'extrension (ou d'autres scripts privilégiés, tels que les scripts de pages d'options) et les <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Content_scripts">scripts de contenu</a> appartenant à cette extension et s'exécutant dans l'onglet spécifié. Cette fonction renvoie un objet {{WebExtAPIRef("runtime.Port")}}.</p>
+
+<p>Lorsque cela est appelée, l'événement {{WebExtAPIRef('runtime.onConnect')}} est déclenché dans tout script de contenu appartenant à cette extension qui s'exécute dans l'onglet spécifié. L'écouteur d'événement recevra un autre objet  {{WebExtAPIRef("runtime.Port")}}. Les deux parties peuvent ensuite utiliser les objets <code>Port</code> pour échanger des messages.</p>
+
+<p>Pour plus de détails, voir <a href="/en-US/Add-ons/WebExtensions/Content_scripts#Connection-based_messaging">connection-based messaging</a>.</p>
+
+<h2 id="Syntax">Syntax</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.connect(
+ tabId, // integer
+ connectInfo // optional object
+)
+</pre>
+
+<h3 id="Parameters">Parameters</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID of the tab whose content scripts we want to connect to.</dd>
+ <dt><code>connectInfo</code>{{optional_inline}}</dt>
+ <dd><code>object</code>.
+ <dl class="reference-values">
+ <dt><code>name</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Will be passed into {{WebExtAPIRef("runtime.onConnect")}} event listeners in content scripts belonging to this extension and running in the specified tab.</dd>
+ <dt><code>frameId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Open a port to a specific frame identified by <code>frameId</code> instead of all frames in the tab.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Return_value">Return value</h3>
+
+<p>{{WebExtAPIRef('runtime.Port')}}. A port that can be used to communicate with the content scripts running in the specified tab.</p>
+
+<h2 id="Examples">Examples</h2>
+
+<p>In this example a background script listens for a click on a <a href="/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Browser_actions_2">browser action</a>, then connects to the currently active tab, then sends a message using the <code>Port</code> that's returned from <code>connect()</code>:</p>
+
+<pre class="brush: js">function connectToTab(tabs) {
+ if (tabs.length &gt; 0) {
+ var examplePort = browser.tabs.connect(
+ tabs[0].id,
+ {name: "tabs-connect-example"}
+ );
+ examplePort.postMessage({greeting: "Hi from background script"});
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var gettingActive = browser.tabs.query({
+ currentWindow: true, active: true
+ });
+ gettingActive.then(connectToTab, onError);
+});
+</pre>
+
+<p>{{WebExtExamples}}</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.tabs.connect")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.html
new file mode 100644
index 0000000000..227ff38917
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.html
@@ -0,0 +1,145 @@
+---
+title: tabs.create()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/create
+tags:
+ - API
+ - Add-ons
+ - Create
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/create
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Crée un nouvel onglet</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 creating = browser.tabs.create(
+ createProperties // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>createProperties</code></dt>
+ <dd><code>object</code>.Propriétés pour donner le nouvel onglet. Pour en savoir plus sur ces propriétés, consultez la documentation {{WebExtAPIRef("tabs.Tab")}}.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>active</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet doit devenir l'onglet actif dans la fenêtre. Si elle est <code>false</code>, elle n'a aucun effet. N'affecte pas si la fenêtre est mise au point (voir {{WebExtAPIRef('windows.update')}}). Par défaut à  <code>true</code>.</dd>
+ <dt><code>cookieStoreId</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Utilisez-le pour créer un onglet dont l'ID de cookie estCette option n'est disponible que si l'extension a  la  <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"cookies".</code></dd>
+ <dt><code>index</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. La position que l'onglet devrait prendre dans la fenêtre. La valeur fournie sera comprise entre zéro et le nombre d'onglets dans la fenêtre.</dd>
+ <dt><code>openerTabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet qui a ouvert cet onglet. Si spécifié, l'onglet d'ouverture doit être dans la même fenêtre que l'onglet nouvellement créé.</dd>
+ <dt><code>openInReaderMode</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. si <code>true</code>, ouvrez cet onglet en <a href="/fr/Add-ons/WebExtensions/API/tabs/toggleReaderMode">mode lecture</a>. Par défaut à  <code>false</code>.</dd>
+ <dt><code>pinned</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet doit être épinglé. Par défaut à <code>false</code>.</dd>
+ <dt><code>selected</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet doit devenir l'onglet sélectionné dans la fenêtre. Par défaut à <code>true</code>.
+ <div class="warning">Cette propriété est obsolète et n'est pas prise en charge dans Firefox. Utilisez  <code>actif</code> à la place.</div>
+ </dd>
+ <dt><code>url</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. 'URL permettant de naviguer dans l'onglet initialement. Par défaut à la page Nouvel onglet.</dd>
+ <dd>Les URL complètes doivent inclure un schéma (i.e. 'http://www.google.com', par 'www.google.com').</dd>
+ <dd>Pour des raisons de sécurité, dans Firefox, il se peut que ce ne soit pas une URL privilégiée. Le passage de l'une des URL suivantes échouera :</dd>
+ <dd>
+ <ul>
+ <li>chrome: URLs</li>
+ <li>javascript: URLs</li>
+ <li>data: URLs</li>
+ <li>file: URLs (c'est-à-dire, fichiers sur le système de fichiers, cependant, pour utiliser un fichier empaqueté à l'intérieur de l'extension, voir ci-dessous)</li>
+ <li>privileged about: URLs (par exemple, <code>about:config</code>, <code>about:addons</code>, <code>about:debugging</code>)<span style="display: none;"> </span>. Les URL non privilégiées (e.g., <code>about:blank</code>) sont autorisés.</li>
+ <li>La page Nouvel onglet (<code>about:newtab</code>) peut être ouverte si aucune valeur n'est fournie pour l'URL.</li>
+ </ul>
+
+ <p>Pour charger une page fournie avec votre extension, spécifiez une URL absolue à partir du fichier manifest.json de l'extension. Par exemple :  '/path/to/my-page.html'. Si vous omettez le premier caractère '/', l'URL est traitée comme une URL relative et différents navigateurs peuvent construire différentes URL absolues.</p>
+ </dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. La fenêtre pour créer le nouvel onglet. Par défaut à la fenêtre actuelle.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>A <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> that will be fulfilled with a {{WebExtAPIRef('tabs.Tab')}} object containing details about the created tab. If the tab could not be created (for example, because <code>url</code> used a privileged scheme) the promise will be rejected with an error message.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ouvre "https://example.org" dans un nouvel onglet :</p>
+
+<pre class="brush: js">function onCreated(tab) {
+ console.log(`Created new tab: ${tab.id}`)
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var creating = browser.tabs.create({
+ url:"https://example.org"
+ });
+ creating.then(onCreated, onError);
+});</pre>
+
+<p>{{WebExtExamples}}</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.tabs.create", 10)}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.html
new file mode 100644
index 0000000000..f1beb98b3b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.html
@@ -0,0 +1,127 @@
+---
+title: tabs.detectLanguage()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/detectLanguage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - detectLanguage
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/detectLanguage
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Détecte la langue principale du contenu dans un onglet, en utilisant le <a class="external external-icon" href="https://github.com/CLD2Owners/cld2">détecteur de langue compact</a> (CLD).</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 detecting = browser.tabs.detectLanguage(
+ tabId, // optional integer
+ callback // optional function
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId </code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Par défaut à l'onglet actif de la fenêtre en cours.</dd>
+ <dt><code>callback </code>{{optional_inline}}</dt>
+ <dd><code>function</code>. Actuellement, si un <code>tabId</code> est spécifié, cette méthode utilise ce rappel pour renvoyer les résultats au lieu de renvoyer une promesse. Le rappel reçoit comme seul paramètre d'entrée une chaîne de caractères contenant le code de langue détecté <code>en</code> ou <code>fr</code>.</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 une chaîne représentant un code de langue ISO tel que <code>en</code> ou <code>fr</code>. Pour une liste complète des langues prises en charge par cette méthode, see <a href="https://src.chromium.org/viewvc/chrome/trunk/src/third_party/cld/languages/internal/languages.cc#l23">kLanguageInfoTable</a>. Pour une langue inconnue, <code>"und"</code> sera retourné (mais voir <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1288263">bug 1288263</a>). Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Détecter et enregistrer la langue de l'onglet actif lorsque l'utilisateur clique sur une action du navigateur :</p>
+
+<pre class="brush: js">function onLanguageDetected(lang) {
+ console.log(`Language is: ${lang}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var detecting = browser.tabs.detectLanguage();
+ detecting.then(onLanguageDetected, onError);
+});</pre>
+
+<p>Détecter et enregistrer la langue de chaque onglet ouvert lorsque l'utilisateur clique sur une action du navigateur (notez que cet exemple nécessite  la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "tabs") :</p>
+
+<pre class="brush: js">function onLanguageDetected(url, lang) {
+ console.log(`Language in ${url} is: ${lang}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+function detectLanguages(tabs) {
+ for (tab of tabs) {
+ var onFulfilled = onLanguageDetected.bind(null, tab.url);
+ var detecting = browser.tabs.detectLanguage(tab.id);
+ detecting.then(onFulfilled, onError);
+ }
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var querying = browser.tabs.query({});
+ querying.then(detectLanguages, onError);
+});</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.tabs.detectLanguage")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.html
new file mode 100644
index 0000000000..81ecd3387a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.html
@@ -0,0 +1,119 @@
+---
+title: tabs.discard()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/discard
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - WebExtensions
+ - discard
+ - onglets
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/discard
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Rejette un ou plusieurs onglets.</p>
+
+<p>Certains navigateurs "suppriment" automatiquement les onglets dont ils ne pensent pas qu'ils seront bientôt utiles à l'utilisateur. L'onglet reste visible dans la bande d'onglets et le navigateur se souvient de son état, donc si l'utilisateur sélectionne un onglet qui a été supprimé, il est immédiatement restauré.</p>
+
+<p>Les détails de ce qui est supprimé sont spécifiques au navigateur, mais en général, l'abandon d'un onglet permet au navigateur de libérer une partie de la mémoire occupée par cet onglet.</p>
+
+<p>L'API {{WebExtAPIRef("tabs.discard()")}} permet à une extension d'ignorer un ou plusieurs onglets. Il n'est pas possible de supprimer l'onglet actuellement actif ou un onglet dont le document contient un programme d'écoute <code><a href="/fr/docs/Web/Events/beforeunload">beforeunload</a></code> qui afficherait une invite.</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 discarding = browser.tabs.discard(
+ tabIds // integer or integer array
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabIds</code></dt>
+ <dd><code><code>integer</code></code> or <code><code>array</code></code> of <code><code><code>integer</code></code></code>. Les ID de l'onglet ou des onglets à ignorer.</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 sans argument lorsque tous les onglets spécifiés ont été supprimés. Si une erreur se produit (par exemple, ID d'onglet non valide), la promesse sera rejetée avec un message d'erreur.Si l'ID de l'onglet actif est transmis, il ne sera pas supprimé, mais la promesse sera satisfaite et tous les autres onglets transférés seront supprimés.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Supprimer un seul onglet :</p>
+
+<pre class="brush: js">function onDiscarded() {
+ console.log(`Discarded`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var discarding = browser.tabs.discard(2);
+discarding.then(onDiscarded, onError);</pre>
+
+<p>Ignorer plusieurs onglets :</p>
+
+<pre class="brush: js">function onDiscarded() {
+ console.log(`Discarded`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var discarding = browser.tabs.discard([15, 14, 1]);
+discarding.then(onDiscarded, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.discard", 10)}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.html
new file mode 100644
index 0000000000..69e47f8150
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.html
@@ -0,0 +1,114 @@
+---
+title: tabs.duplicate()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/duplicate
+tags:
+ - API
+ - Add-ons
+ - Duplicate
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onglets
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/duplicate
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Duplique un onglet dont l’identifiant est donné.</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 duplicating = browser.tabs.duplicate(
+ tabId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'identifiant de l'onglet à dupliquer.</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 objet {{WebExtAPIRef('tabs.Tab')}} contenant des détails sur l'onglet dupliqué. L'objet <code>onglet</code> contient uniquement <code>url</code>, <code>title</code> et <code>favIconUrl</code> si l'extension a la <a href="/en-US/Add-ons/WebExtensions/manifest.json/permissions"> permission <code>"tabs"</code></a>. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<div class="blockIndicator note">
+<p><strong>Note</strong>: A partir de Firefox 68, la promise retournée par browser.tabs.duplicate() se résout dès que l'onglet a été dupliqué. Auparavant, la promise n'était résolue qu'une fois l'onglet entièrement chargé.</p>
+</div>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p><span id="result_box" lang="fr"><span>Duplique le premier onglet, puis affiche l'ID de l'onglet nouvellement créé :</span></span></p>
+
+<pre class="brush: js">function onDuplicated(tabInfo) {
+ console.log(tabInfo.id);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+// Duplicate the first tab in the array
+function duplicateFirstTab(tabs) {
+ console.log(tabs);
+ if (tabs.length &gt; 0) {
+ var duplicating = browser.tabs.duplicate(tabs[0].id);
+ duplicating.then(onDuplicated, onError);
+ }
+}
+
+// Query for all open tabs
+var querying = browser.tabs.query({});
+querying.then(duplicateFirstTab, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.duplicate")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.html
new file mode 100644
index 0000000000..fb748e75fb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.html
@@ -0,0 +1,176 @@
+---
+title: tabs.executeScript()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/executeScript
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - executeScript
+ - onglets
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/executeScript
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Injecte du code JavaScript dans une page.</p>
+
+<p>Vous pouvez injecter du code dans des pages dont l'URL peut être exprimée à l'aide d'un <a href="/fr/Add-ons/WebExtensions/Match_patterns">modèle de correspondance </a>: son schéma doit être "http", "https", "file", "ftp". Pour ce faire, vous devez disposer de la permission pour l'URL de la page, soit explicitement en tant que <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission d'hôte</a>, ou via la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#activeTab_permission">permission activeTab</a>.</p>
+
+<p>Vous pouvez également injecter du code dans des pages empaquetées avec votre propre extension :</p>
+
+<pre class="brush: js">browser.tabs.create({url: "/my-page.html"}).then(() =&gt; {
+ browser.tabs.executeScript({
+ code: `console.log('location:', window.location.href);`
+ });
+});</pre>
+
+<p>Vous n'avez pas besoin de permissions spéciales pour le faire.</p>
+
+<p>Vous <em>ne pouvez pas</em> injecter de code dans les pages intégrées du navigateur, par exemple : about:debugging, about:addons, ou sur la page qui s'ouvre lorsque vous ouvrez un nouvel onglet vide.</p>
+
+<p>Les scripts que vous injectez s’appellent des scripts de contenu. <a href="/fr/Add-ons/WebExtensions/Content_scripts">En savoir plus sur les scripts de contenu</a>.</p>
+
+<p>Il s’agit d’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 executing = browser.tabs.executeScript(
+ tabId, // optional integer
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L’ID de l’onglet dans lequel exécuter le script. Par défaut, l’onglet actif de la fenêtre en cours.</dd>
+ <dt><code>details</code></dt>
+ <dd>Un objet décrivant le script à exécuter. Il contient les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>allFrames</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si <code>true</code>, le code sera injecté dans toutes les images de la page courante. Si <code>true</code> et <code>frameId</code> est défini, alors il y aura une erreur, frameId et allFrames sont mutuellement exclusifs. Si c'est <code>false</code>, le code n'est injecté que dans le cadre supérieur. La valeur par défaut est <code>false</code>.</dd>
+ <dt><code>code </code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Code à injecter, sous la forme d’une chaine de texte. <strong>Attention :</strong> n’utilisez pas cette propriété pour interpoler des données non sûres dans JavaScript, car cela pourrait introduire une faille de sécurité.</dd>
+ <dt><code>file</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Chemin d’accès à un fichier contenant le code à injecter. Dans Firefox, les URL relatives ne commençant pas à la racine de l'extension sont résolues par rapport à l'URL de la page en cours. Dans Chrome, ces URL sont résolues par rapport à l’URL de base de l’extension. Pour travailler avec plusieurs navigateurs, vous pouvez spécifier le chemin comme une URL relative, en commençant à la racine de l’extension, comme ceci : <code>"/path/to/script.js"</code>.</dd>
+ <dt><code>frameId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Le cadre où le code doit être injecté. La valeur par défaut est <code>0</code> (le cadre de niveau supérieur).</dd>
+ <dt><code>matchAboutBlank</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si <code>true</code>, le code sera injecté dans des cadres <code>about:blank</code> et <code>about:srcdoc</code> inclus depuis une page si votre extension a accès à leur document parent. Le code ne peut pas être inséré dans les cadres <code>about:</code> de niveau supérieur. Par défaut, <code>false</code>.</dd>
+ <dt><code>runAt</code> {{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('extensionTypes.RunAt')}}. Le moment le plus tôt auquel le code sera injecté dans l’onglet. Par défaut, <code>document_idle</code>.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> résolue avec un tableau d’objets représentant le résultat du script dans chaque cadre où le script a été injecté.</p>
+
+<p>Le résultat du script est la dernière instruction évaluée, ce qui est similaire à ce qui serait produit (les résultats, pas les affichages de <code>console.log()</code>) si vous exécutiez le script dans la <a href="/fr/docs/Outils/Console_Web">Console Web</a>. Par exemple, considérez un script comme celui-ci :</p>
+
+<pre class="brush: js">var foo='my result';foo;</pre>
+
+<p>Ici, le tableau des résultats contiendra la chaîne <code>"my result"</code> en tant qu’élément. Les valeurs de résultat doivent être <a href="/fr/docs/Web/API/Web_Workers_API/algorithme_clonage_structure">clonables tructurées</a>. La dernière déclaration peut également être une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>, mais cette fonctionnalité n'est pas supportée par la bibliothèque <a href="https://github.com/mozilla/webextension-polyfill#tabsexecutescript">webextension-polyfill</a>.<br>
+ Si une erreur se produit, la promesse sera rejetée avec un message d’erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple exécute un extrait de code d’une ligne dans l’onglet actuellement actif :</p>
+
+<pre class="brush: js">function onExecuted(result) {
+ console.log(`We made it green`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var makeItGreen = 'document.body.style.border = "5px solid green"';
+
+var executing = browser.tabs.executeScript({
+ code: makeItGreen
+});
+executing.then(onExecuted, onError);</pre>
+
+<p>L’exemple suivant exécute un script à partir d’un fichier empaqueté avec l’extension appelé <code>content-script.js</code>. Le script est exécuté dans l’onglet actuellement actif. Le script est exécuté dans les sous-cadres ainsi que dans le document principal :</p>
+
+<pre class="brush: js">function onExecuted(result) {
+ console.log(`We executed in all subframes`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var executing = browser.tabs.executeScript({
+ file: "/content-script.js",
+ allFrames: true
+});
+executing.then(onExecuted, onError);</pre>
+
+<p>L’exemple suivant exécute un script à partir d’un fichier empaqueté avec l’extension appelé <code>content-script.js</code>. Le script est exécuté dans l’onglet ayant l’ID 2 :</p>
+
+<pre class="brush: js">function onExecuted(result) {
+ console.log(`We executed in tab 2`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var executing = browser.tabs.executeScript(
+ 2, {
+ file: "/content-script.js"
+});
+executing.then(onExecuted, onError);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<p class="hidden">La table de compatibilité dans cette page est générée à partir de données structurées. Si vous souhaitez contribuer aux données, veuillez consulter <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> et nous envoyer une <em>pull request</em>.</p>
+
+<p>{{Compat("webextensions.api.tabs.executeScript")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.html
new file mode 100644
index 0000000000..6c6092944e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.html
@@ -0,0 +1,97 @@
+---
+title: tabs.get()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/get
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - get
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/get
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Étant donné un ID d'onglet, obtenez les détails de l'onglet en tant qu'objet {{WebExtAPIRef("tabs.Tab")}}.</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 getting = browser.tabs.get(
+ tabId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet à obtenir.</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 objet {{WebExtAPIRef('tabs.Tab')}} contenant des informations sur l'onglet. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenir des informations sur un onglet lorsqu'il est activé :</p>
+
+<pre class="brush: js">async function logListener(info) {
+ try {
+ let tabInfo = await browser.tabs.get(info.tabId);
+ console.log(tabInfo);
+ } catch (error) {
+ console.error(error);
+ }
+}
+
+browser.tabs.onActivated.addListener(logListener);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.get")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.html
new file mode 100644
index 0000000000..1dcdc058f5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.html
@@ -0,0 +1,90 @@
+---
+title: tabs.getAllInWindow()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/getAllInWindow
+tags:
+ - API
+ - Add-ons
+ - Deprecated
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getAllInWindow
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/getAllInWindow
+---
+<div>{{AddonSidebar}}
+<div class="blockIndicator deprecated">
+<p><strong>Deprecated</strong><br>
+ Cette méthode est dépréciée. Utilisez {{WebExtAPIRef("tabs.query", "tabs.query({currentWindow: true})")}} à la place.</p>
+</div>
+</div>
+
+<p>Obtient des détails sur tous les onglets de la fenêtre spécifiée.</p>
+
+<p>C'est une fonction asynchrone qui renvoie une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var getting = browser.tabs.getAllInWindow(
+ windowId // optional integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code>{{Optional_Inline}}</dt>
+ <dd><code>integer</code>. Par défaut à la fenêtre actuelle.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code> qui sera remplie avec un <code>tableau</code> d'ojets <code>{{WebExtAPIRef('tabs.Tab')}}</code> contenant des informations sur tous les onglets de la fenêtre. Si la fenêtre n'a pas pu être trouvée ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p class="hidden">The compatibility table on 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.tabs.getAllInWindow")}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.html
new file mode 100644
index 0000000000..f51052ebda
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.html
@@ -0,0 +1,100 @@
+---
+title: tabs.getCurrent()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/getCurrent
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getCurrent
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/getCurrent
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtenez un {{WebExtAPIRef("tabs.Tab")}} contenant des informations sur l'onglet dans lequel ce script s'exécute.</p>
+
+<p>Vous pouvez appeler cette fonction dans des contextes comportant un onglet de navigateur, par exemple une <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Options_pages">pages d'options</a>. Si vous l'appelez à partir d'un script d'arrière-plan ou d'une fenêtre contextuelle, elle renverra undefined.</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 gettingCurrent = browser.tabs.getCurrent()
+</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 remplie avec un objet {{WebExtAPIRef('tabs.Tab')}} contenant des informations sur l'onglet en cours. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenir les informations sur l'onglet en cours :</p>
+
+<pre class="brush: js">function onGot(tabInfo) {
+ console.log(tabInfo);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var gettingCurrent = browser.tabs.getCurrent();
+gettingCurrent.then(onGot, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.getCurrent")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.html
new file mode 100644
index 0000000000..fbbdbd65f9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.html
@@ -0,0 +1,93 @@
+---
+title: tabs.getSelected()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/getSelected
+tags:
+ - API
+ - Add-ons
+ - Deprecated
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getSelected
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/getSelected
+---
+<div>{{AddonSidebar()}}</div>
+
+<div class="warning">
+<p>Cette méthode est dépréciée. utilisez {{WebExtAPIRef("tabs.query", "tabs.query({active: true})")}} à la place.</p>
+</div>
+
+<p>Obtient l'onglet sélectionné dans la fenêtre spécifiée</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 gettingSelected = browser.tabs.getSelected(
+ windowId // optional integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Par défaut à la fenêtre actuelle.</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 objet <a href="/fr/Add-ons/WebExtensions/API/tabs/Tab" title="The type tabs.Tab contains information about a tab. This provides access to information about what content is in the tab, how large the content is, what special states or restrictions are in effect, and so forth."><code>tabs.Tab</code></a> contenant des informations sur l'onglet sélectionné. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</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.tabs.getSelected")}}</p>
+
+
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.html
new file mode 100644
index 0000000000..0c8d376ee5
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.html
@@ -0,0 +1,116 @@
+---
+title: tabs.getZoom()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/getZoom
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getZoom
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/getZoom
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient le facteur de zoom actuel pour l'onglet spécifié.</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 gettingZoom = browser.tabs.getZoom(
+ tabId // optional integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet pour obtenir le facteur de zoom actuel. Par défaut à l'onglet actif de la fenêtre en cours.</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 satisfaite avec le facteur de zoom actuel de l'onglet, sous la forme d'un nombre compris entre 0,3 et 3. Si l'onglet n'a pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez le facteur de zoom  pour l'onglet actuel :</p>
+
+<pre class="brush: js">function onGot(zoom) {
+ console.log(zoom);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var gettingZoom = browser.tabs.getZoom();
+gettingZoom.then(onGot, onError);</pre>
+
+<p>Obtenez le facteur zoom pour l'onglet dont l'ID est 2:</p>
+
+<pre class="brush: js">function onGot(zoom) {
+ console.log(zoom);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var gettingZoom = browser.tabs.getZoom(2);
+gettingZoom.then(onGot, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.getZoom")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.html
new file mode 100644
index 0000000000..57d52f9c60
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.html
@@ -0,0 +1,103 @@
+---
+title: tabs.getZoomSettings()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/getZoomSettings
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getZoomSettings
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/getZoomSettings
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient les paramètres de zoom actuels pour un onglet spécifié.</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 gettingZoomSettings = browser.tabs.getZoomSettings(
+ tabId // optional integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet pour obtenir les paramètres de zoom actuels. Par défaut à l'onglet actif de la fenêtre en cours.</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 objet {{WebExtAPIRef('tabs.ZoomSettings')}} représentant les paramètres de zoom actuels de l'onglet. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez les paramètres de zoom pour l'onglet en cours :</p>
+
+<pre class="brush: js">function onGot(settings) {
+ console.log(settings);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var gettingZoomSettings = browser.tabs.getZoomSettings();
+gettingZoomSettings.then(onGot, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.getZoomSettings")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.html
new file mode 100644
index 0000000000..399173037e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.html
@@ -0,0 +1,101 @@
+---
+title: tabs.goBack()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/goBack
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - hoBack
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/goBack
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Naviguer à la page précédente dans l'historique de l'onglet, si disponible.</p>
+
+<p>Il s'agit d'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 withgoingBack = browser.tabs.goBack(
+ tabId, // optional integer
+ callback // optional function
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet à naviguer. Par défaut, l'onglet actif de la fenêtre en cours.</dd>
+ <dt><code>callback</code>{{optional_inline}}</dt>
+ <dd><code>function</code>. Lorsque la navigation sur la page se termine, cette fonction est appelée sans paramètres.</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 est tenue lorsque la navigation sur la page se termine.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.tabs.goBack")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Retournez à la page précédente dans l'onglet en cours :</p>
+
+<pre class="brush: js">function onGoBack() {
+ console.log("Gone back");
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var goingBack = browser.tabs.goBack();
+goingBack.then(onGoBack, onError);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/tabs#method-getZoomSettings"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence américaine Creative Commons Attribution 3.0.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.html
new file mode 100644
index 0000000000..26a67e0f04
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.html
@@ -0,0 +1,101 @@
+---
+title: tabs.goForward()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/goForward
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - goForward
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/goForward
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Passez à la page suivante dans l'historique de l'onglet, si disponible.</p>
+
+<p>Il s'agit d'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 goingForward = browser.tabs.goForward(
+ tabId, // optional integer
+ callback // optional function
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet à naviguer. Par défaut, l'onglet actif de la fenêtre en cours.</dd>
+ <dt><code>callback</code>{{optional_inline}}</dt>
+ <dd><code>function</code>. Lorsque la navigation sur la page se termine, cette fonction est appelée sans paramètres.</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 est tenue lorsque la navigation sur la page se termine.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.tabs.goForward")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Passez à la page suivante dans l'onglet en cours :</p>
+
+<pre class="brush: js">function onGoForward() {
+ console.log("Gone forward");
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var goingForward = browser.tabs.goForward();
+goingForward.then(onGoForward, onError);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API <a href="https://developer.chrome.com/extensions/tabs#method-getZoomSettings"><code>chrome.tabs</code></a> de Chromium.Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence américaine Creative Commons Attribution 3.0.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.html
new file mode 100644
index 0000000000..5fb1cf99f4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.html
@@ -0,0 +1,88 @@
+---
+title: tabs.hide()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/hide
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - hide
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/hide
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Masque un ou plusieurs onglets.</p>
+
+<p>Les onglets cachés ne sont plus visibles dans l'onglet du navigateur. Les onglets cachés ne sont pas automatiquement <a href="/fr/Add-ons/WebExtensions/API/tabs/discard">supprimés</a> :  le code qui s'y trouve continue à s'exécuter. Vous pouvez explicitement supprimer les onglets à chaque fois que vous les masquez : bien que cela ne soit pas approprié dans toutes les situations, cela aidera à réduire les ressources utilisées par le navigateur.</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>
+
+<p>Tous les onglets ne peuvent pas être masqués :</p>
+
+<ul>
+ <li>Les onglets épinglés ne peuvent pas être masqués.</li>
+ <li>Les onglets qui partagent l'écran, le microphone ou l'appareil photo ne peuvent pas être masqués.</li>
+ <li>L'onglet actif actuel ne peut pas être masqué.</li>
+ <li>Les onglets en cours de fermeture ne peuvent pas être masqués.</li>
+</ul>
+
+<p>La première fois qu'une extension cache un onglet, le navigateur indiquera à l'utilisateur que l'onglet est caché, leur montrera comment ils peuvent accéder à l'onglet caché et leur donnera l'option de désactiver l'extension à la place.</p>
+
+<p>Pour utiliser cette API, vous devez disposer de  la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "tabHide".</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var hiding = browser.tabs.hide(
+ tabIds // integer or integer array
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabIds</code></dt>
+ <dd><code><code>integer</code></code> or <code><code>array</code></code> of <code><code>integer</code></code>. Les ID de l'onglet ou des onglets à masquer.</dd>
+ <dd>Si l'un de ces onglets ne peut pas être masqué, il ne sera pas masqué, mais l'appel sera toujours valide et les onglets éligibles seront toujours masqués. Par exemple, si vous passez <code>[1, 3]</code>, et <code>1</code> identifie l'onglet actif, alors seulement <code>3</code> seront cachés.</dd>
+ <dd>Cependant, si l'un des ID d'onglet n'est pas valide, l'appel échouera et aucun onglet ne sera masqué.</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 tableau contenant les ID des onglets qui ont été cachés. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Masquer un seul onglet :</p>
+
+<pre class="brush: js">function onHidden() {
+ console.log(`Hidden`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.tabs.hide(2).then(onHidden, onError);</pre>
+
+<p>Masquer plusieurs onglets :</p>
+
+<pre class="brush: js">function onHidden() {
+ console.log(`Hidden`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.tabs.hide([15, 14, 1]).then(onHidden, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.hide")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.html
new file mode 100644
index 0000000000..0e22605c9b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.html
@@ -0,0 +1,102 @@
+---
+title: tabs.highlight()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/highlight
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - highlight
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/highlight
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Met en évidence (sélectionné) un ou plusieurs onglets. Les onglets sont spécifiés à l'aide d'un identifiant de fenêtre et d'une plage d'indices de tabulation.</div>
+
+<div></div>
+
+<div>
+<p>C'est une fonction asynchrone qui renvoie une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var highlighting = browser.tabs.highlight(
+ highlightInfo // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>highlightInfo</code></dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. ID de la fenêtre contenant les onglets.</dd>
+ <dt><code>populate</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Par défaut la valeur est <code>true</code>. S'il est défini sur <code>false</code>, l'objet {{WebExtAPIRef('windows.Window')}} n'aura pas de propriété <code>tabs</code> contenant une liste d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les onglets ouverts dans la fenêtre.
+ <div class="note">
+ <p><strong>Note</strong>: Remplir la fenêtre (le comportement par défaut) peut être une opération coûteuse s'il y a beaucoup d'onglets. Pour de meilleures performances, il est recommandé de définir manuellement configuré <code>populate</code> à <code>false</code> si vous n'avez pas besoin des détails de l'onglet.</p>
+ </div>
+ </dd>
+ <dt><code>tabs</code></dt>
+ <dd><code>array</code> de valeurs entières spécifiant un ou plusieurs onglets à mettre en évidence. Les onglets surlignés précédemment qui ne sont pas inclus dans les <code>onglets</code> cesseront d'être surlignés. Le premier onglet des <code>onglets</code> devient actif.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>  qui sera remplie avec un objet  {{WebExtAPIRef('windows.Window')}} contenant des détails sur la fenêtre dont les onglets ont été mis en surbrillance. Si la fenêtre n'a pas pu être trouvée ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</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.tabs.highlight",2)}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/index.html
new file mode 100644
index 0000000000..0666c1885c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/index.html
@@ -0,0 +1,225 @@
+---
+title: tabs
+slug: Mozilla/Add-ons/WebExtensions/API/tabs
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - NeedsTranslation
+ - Non-standard
+ - Reference
+ - TopicStub
+ - WebExtensions
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Permet d’interagir avec le système d’onglets du navigateur.</p>
+
+<p>Vous pouvez utiliser cette API pour obtenir une liste des onglets ouverts, filtrés par différents critères, ainsi que pour ouvrir, mettre à jour, déplacer, recharger et supprimer des onglets. Vous ne pouvez pas accéder directement au contenu hébergé par les onglets à l’aide de cette API, mais vous pouvez insérer du JavaScript et du CSS dans les onglets en utilisant les API {{WebExtAPIRef("tabs.executeScript()")}} ou {{WebExtAPIRef("tabs.insertCSS()")}}.</p>
+
+<p>Vous pouvez utiliser la majeure partie de cette API sans autorisation spéciale. Toutefois :</p>
+
+<ul>
+ <li>Pour accéder à <code>Tab.url</code>, <code>Tab.title</code> et <code>Tab.favIconUrl</code>, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"tabs"</code>.
+
+ <ul>
+ <li>Dans Firefox, cela signifie également que vous avez besoin de <code>"tabs"</code> pour {{WebExtAPIRef("tabs.query", "requête d’onglet")}} par URL.</li>
+ </ul>
+ </li>
+ <li>
+ <p>Pour utiliser {{WebExtAPIRef("tabs.executeScript()")}} ou {{WebExtAPIRef("tabs.insertCSS()")}}, vous devez avoir les <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission d’hôte</a> pour l’onglet.</p>
+ </li>
+</ul>
+
+<p>Alternativement, vous pouvez obtenir ces autorisations temporairement, uniquement pour l’onglet actuellement actif et uniquement en réponse à une action explicite de l’utilisateur ou de l’utilisatrice, en demandant la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#activeTab_permission">permission <code>"activeTab"</code></a>.</p>
+
+<p>De nombreuses opérations d’onglet utilisent un identifiant (<code>id</code>) d’onglet. Les <code>id</code> d’onglets sont seulement garantis uniques à un onglet durant une session de navigation. Si le navigateur est redémarré, il pourra recycler, et recyclera, les id d’onglets. Pour associer des informations à un onglet à travers les redémarrages du navigateur, utilisez {{WebExtAPIRef("sessions.setTabValue()")}}.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("tabs.MutedInfoReason")}}</dt>
+ <dd>Spécifie la raison pour laquelle un onglet a été rendu silencieux ou à nouveau sonore.</dd>
+ <dt>{{WebExtAPIRef("tabs.MutedInfo")}}</dt>
+ <dd>Cet objet contient un booléen indiquant si l’onglet est silencieux et la raison de la dernière modification de l’état.</dd>
+ <dt>{{WebExtAPIRef("tabs.PageSettings")}}</dt>
+ <dd>
+ <p>Permet de contrôler le rendu d’un onglet au format PDF par la méthode {{WebExtAPIRef("tabs.saveAsPDF()")}}.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("tabs.Tab")}}</dt>
+ <dd>Ce type contient des informations sur un onglet.</dd>
+ <dt>{{WebExtAPIRef("tabs.TabStatus")}}</dt>
+ <dd>Indique si l’onglet a fini de charger.</dd>
+ <dt>{{WebExtAPIRef("tabs.WindowType")}}</dt>
+ <dd>Le type de fenêtre qui héberge cet onglet.</dd>
+ <dt>{{WebExtAPIRef("tabs.ZoomSettingsMode")}}</dt>
+ <dd>Définit si les modifications de zoom sont traitées par le navigateur, par l’extension ou sont désactivées.</dd>
+ <dt>{{WebExtAPIRef("tabs.ZoomSettingsScope")}}</dt>
+ <dd>Définit si les modifications de zoom persisteront pour l’origine de la page ou ne prendront effet que dans cet onglet.</dd>
+ <dt>{{WebExtAPIRef("tabs.ZoomSettings")}}</dt>
+ <dd>Définit les paramètres de zoom {{WebExtAPIRef("tabs.ZoomSettingsMode", "mode")}}, {{WebExtAPIRef("tabs.ZoomSettingsScope", "scope")}}, et le facteur de zoom par défaut.</dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("tabs.TAB_ID_NONE")}}</dt>
+ <dd>Une valeur d’id spéciale donnée aux onglets qui ne sont pas des onglets de navigation (par exemple, les onglets dans les fenêtres <em>devtools</em>).</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("tabs.captureTab()")}}</dt>
+ <dd>Crée un URI de données codant une image de la zone visible de l’onglet donné.</dd>
+ <dt>{{WebExtAPIRef("tabs.captureVisibleTab()")}}</dt>
+ <dd>Crée un URI de données codant une image de la zone visible de l’onglet actuellement actif dans la fenêtre donnée.</dd>
+ <dt>{{WebExtAPIRef("tabs.connect()")}}</dt>
+ <dd>Définit une connexion pour échanger des messages entre les scripts d’arrière-plan de l’extension (ou d’autres scripts privilégiés, tels que les scripts de <a href="/fr/Add-ons/WebExtensions/user_interface/Popups">popups</a> ou les scripts de page d’options) et les <a href="/fr/Add-ons/WebExtensions/Content_scripts">scripts de contenu</a> s’exécutant dans l’onglet spécifié.</dd>
+ <dt>{{WebExtAPIRef("tabs.create()")}}</dt>
+ <dd>Crée un nouvel onglet.</dd>
+ <dt>{{WebExtAPIRef("tabs.detectLanguage()")}}</dt>
+ <dd>Détecte la langue principale du contenu dans un onglet.</dd>
+ <dt>{{WebExtAPIRef("tabs.discard()")}}</dt>
+ <dd>Évince un ou plusieurs onglets.</dd>
+ <dt>{{WebExtAPIRef("tabs.duplicate()")}}</dt>
+ <dd>Duplique un onglet.</dd>
+ <dt>{{WebExtAPIRef("tabs.executeScript()")}}</dt>
+ <dd>Injecte du code JavaScript dans une page.</dd>
+ <dt>{{WebExtAPIRef("tabs.get()")}}</dt>
+ <dd>Obtient des détails sur l’onglet spécifié.</dd>
+ <dt>{{WebExtAPIRef("tabs.getAllInWindow()")}} {{deprecated_inline}}</dt>
+ <dd>Obtient des détails sur tous les onglets de la fenêtre spécifiée.</dd>
+ <dt>{{WebExtAPIRef("tabs.getCurrent()")}}</dt>
+ <dd>Obtient des informations sur l’onglet dans lequel ce script s’exécute, en tant qu’objet {{WebExtAPIRef("tabs.Tab")}}.</dd>
+ <dt>{{WebExtAPIRef("tabs.getSelected()")}} {{deprecated_inline}}</dt>
+ <dd>Obtient l’onglet sélectionné dans la fenêtre spécifiée. <strong>Deprecated: utilisez plutôt <a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/tabs/query" title="Gets all tabs that have the specified properties, or all tabs if no properties are specified."><code>tabs.query({active: true})</code></a>.</strong></dd>
+ <dt>{{WebExtAPIRef("tabs.getZoom()")}}</dt>
+ <dd>Obtient le facteur de zoom actuel de l’onglet spécifié.</dd>
+ <dt>{{WebExtAPIRef("tabs.getZoomSettings()")}}</dt>
+ <dd>Obtient les paramètres de zoom actuels pour l’onglet spécifié.</dd>
+ <dt>{{WebExtAPIRef("tabs.goForward()")}}</dt>
+ <dd>Passez à la page suivante, si vous en avez une.</dd>
+ <dt>{{WebExtAPIRef("tabs.goBack()")}}</dt>
+ <dd>Retour à la page précédente, si elle est disponible.</dd>
+ <dt>{{WebExtAPIRef("tabs.hide()")}} {{experimental_inline}}</dt>
+ <dd>Masque un ou plusieurs onglets.</dd>
+ <dt>{{WebExtAPIRef("tabs.highlight()")}}</dt>
+ <dd>Met en évidence un ou plusieurs onglets.</dd>
+ <dt>{{WebExtAPIRef("tabs.insertCSS()")}}</dt>
+ <dd>Injecte CSS dans une page.</dd>
+ <dt>{{WebExtAPIRef("tabs.move()")}}</dt>
+ <dd>Déplace un ou plusieurs onglets vers une nouvelle position dans la même fenêtre ou vers une autre fenêtre.</dd>
+ <dt>{{WebExtApiRef("tabs.moveInSuccession()")}}</dt>
+ <dd>Modifie la relation de succession pour un groupe d’onglets.</dd>
+ <dt>{{WebExtAPIRef("tabs.print()")}}</dt>
+ <dd>Imprime le contenu de l’onglet actif.</dd>
+ <dt>{{WebExtAPIRef("tabs.printPreview()")}}</dt>
+ <dd>
+ <div>Ouvre l’aperçu avant impression pour l’onglet actif.</div>
+ </dd>
+ <dt>{{WebExtAPIRef("tabs.query()")}}</dt>
+ <dd>Obtient tous les onglets ayant les propriétés spécifiées, ou tous les onglets si aucune propriété n’est spécifiée.</dd>
+ <dt>{{WebExtAPIRef("tabs.reload()")}}</dt>
+ <dd>Recharge un onglet, en contournant éventuellement le cache web local.</dd>
+ <dt>{{WebExtAPIRef("tabs.remove()")}}</dt>
+ <dd>Ferme un ou plusieurs onglets.</dd>
+ <dt>{{WebExtAPIRef("tabs.removeCSS()")}}</dt>
+ <dd>Supprime d’une page CSS qui a été précédemment injectée en appelant {{WebExtAPIRef("tabs.insertCSS()")}}.</dd>
+ <dt>{{WebExtAPIRef("tabs.saveAsPDF()")}}</dt>
+ <dd>Enregistre la page en cours au format PDF.</dd>
+ <dt>{{WebExtAPIRef("tabs.sendMessage()")}}</dt>
+ <dd>Envoie un message unique au(x) script(s) de contenu dans l’onglet spécifié.</dd>
+ <dt>{{WebExtAPIRef("tabs.sendRequest()")}} {{deprecated_inline}}</dt>
+ <dd>Envoie une requête unique au(x) script(s) de contenu dans l’onglet spécifié. <strong>Déprécié :</strong> utilisez {{WebExtAPIRef("tabs.sendMessage()")}} à la place.</dd>
+ <dt>{{WebExtAPIRef("tabs.setZoom()")}}</dt>
+ <dd>Effectue un zoom sur l’onglet spécifié.</dd>
+ <dt>{{WebExtAPIRef("tabs.setZoomSettings()")}}</dt>
+ <dd>Définit les paramètres de zoom pour l’onglet spécifié.</dd>
+ <dt>{{WebExtAPIRef("tabs.show()")}} {{experimental_inline}}</dt>
+ <dd>Affiche un ou plusieurs onglets qui ont été {{WebExtAPIRef("tabs.hide()", "masqués")}}.</dd>
+ <dt>{{WebExtAPIRef("tabs.toggleReaderMode()")}}</dt>
+ <dd>Bascule en mode lecture pour l’onglet spécifié.</dd>
+ <dt>{{WebExtAPIRef("tabs.update()")}}</dt>
+ <dd>Charge une nouvelle URL dans l’onglet, ou modifie d’autres propriétés de l’onglet.</dd>
+</dl>
+
+<h2 id="Évènements">Évènements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("tabs.onActivated")}}</dt>
+ <dd>Est émis lorsque l’onglet actif dans une fenêtre change. Notez que l’URL de l’onglet peut ne pas être définie au moment où cet évènement a été émis.</dd>
+ <dt>{{WebExtAPIRef("tabs.onActiveChanged")}} {{deprecated_inline}}</dt>
+ <dd>Est émis lorsque l’onglet sélectionné dans une fenêtre change. <strong>Déprécié :</strong> utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.</dd>
+ <dt>{{WebExtAPIRef("tabs.onAttached")}}</dt>
+ <dd>Est émis lorsqu’un onglet est attaché à une fenêtre, par exemple parce qu’il a été déplacé entre différentes fenêtres.</dd>
+ <dt>{{WebExtAPIRef("tabs.onCreated")}}</dt>
+ <dd>Est émis lorsqu’un onglet est créé. Notez que l’URL de l’onglet peut ne pas être définie au moment où cet évènement a été émis.</dd>
+ <dt>{{WebExtAPIRef("tabs.onDetached")}}</dt>
+ <dd>Est émis lorsqu’un onglet est détaché d’une fenêtre, par exemple parce qu’il a été déplacé entre différentes fenêtres.</dd>
+ <dt>{{WebExtAPIRef("tabs.onHighlightChanged")}} {{deprecated_inline}}</dt>
+ <dd>Est émis lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent. <strong>Déprécié :</strong> utilisez {{WebExtAPIRef("tabs.onHighlighted")}} à la place.</dd>
+ <dt>{{WebExtAPIRef("tabs.onHighlighted")}}</dt>
+ <dd>Est émis lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent.</dd>
+ <dt>{{WebExtAPIRef("tabs.onMoved")}}</dt>
+ <dd>Est émis lorsqu’un onglet est déplacé dans une fenêtre.</dd>
+ <dt>{{WebExtAPIRef("tabs.onRemoved")}}</dt>
+ <dd>Est émis lorsqu’un onglet est fermé.</dd>
+ <dt>{{WebExtAPIRef("tabs.onReplaced")}}</dt>
+ <dd>Est émis lorsqu’un onglet est remplacé par un autre onglet en raison d’un <em lang="en-US">prerendering</em>.</dd>
+ <dt>{{WebExtAPIRef("tabs.onSelectionChanged")}} {{deprecated_inline}}</dt>
+ <dd>Est émis lorsque l’onglet sélectionné dans une fenêtre change. <strong>Déprécié :</strong> utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.</dd>
+ <dt>{{WebExtAPIRef("tabs.onUpdated")}}</dt>
+ <dd>Est émis lorsqu’un onglet est mis à jour.</dd>
+ <dt>{{WebExtAPIRef("tabs.onZoomChange")}}</dt>
+ <dd>Est émis lorsque le zoom dans un onglet est changé.</dd>
+</dl>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<div class="hidden">La table de compatibilité sur cette page est générée à partir de données structurées. Si vous souhaitez contribuer aux données, veuillez consulter <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> et nous envoyer une <em>pull request.</em></div>
+
+<p>{{Compat("webextensions.api.tabs")}}</p>
+
+<p>{{WebExtExamples("h2")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API Chromium <a class="external" href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a class="external" href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.html
new file mode 100644
index 0000000000..372b6eb6e1
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.html
@@ -0,0 +1,144 @@
+---
+title: tabs.insertCSS()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/insertCSS
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - insertCSS
+ - onglets
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/insertCSS
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Injecter du code CSS dans une page web.</p>
+
+<p>Pour utiliser cette API vous devez avoir la permission "<a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">host permission</a>" ou utiliser la permission "<a href="/en-US/Add-ons/WebExtensions/manifest.json/permissions#activeTab_permission">activeTab permission</a>".</p>
+
+<p>Vous ne pouvez injecter du CSS que dans des pages dont l'URL peut être exprimée en utilisant un <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Match_patterns">motif de correspondance</a>,  ce qui signifie que son schéma doit être "http", "https", "file", "ftp". Cela signifie que vous ne pouvez pas injecter de CSS dans les pages intégrées du navigateur, telles que about:debugging, about:addons, ou la page qui s'ouvre lorsque vous ouvrez un nouvel onglet vide.</p>
+
+<div class="blockIndicator note">
+<p><span class="tlid-translation translation" lang="fr"><span title="">Firefox résout les URL dans les fichiers CSS injectés par rapport au fichier CSS lui-même, plutôt qu'à la page dans laquelle il est injecté.</span></span></p>
+</div>
+
+<p>Le CSS inséré peut être retiré à nouveau en appelant  {{WebExtAPIRef("tabs.removeCSS()")}}.</p>
+
+<p>C'est une fonction asynchrone qui renvoie une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code> (sur Firefox seulement).</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var inserting = browser.tabs.insertCSS(
+ tabId, // optional integer
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet dans lequel insérer le CSS. Par défaut à l'onglet actif de la fenêtre en cours.</dd>
+ <dt><code>details</code></dt>
+ <dd>Un objet décrivant le CSS à insérer. Il contient les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>allFrames</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si <code>true</code>, le CSS sera injecté dans toutes les images de la page en cours. Si c'est <code>false</code>, CSS est seulement injecté dans le cadre supérieur. Par défaut à <code>false</code>.</dd>
+ <dt><code>code</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Code à injecter, sous la forme d'une chaîne de texte.</dd>
+ <dt><code>cssOrigin</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Cela peut prendre l'une des deux valeurs suivantes: "utilisateur", pour ajouter le CSS en tant que feuille de style utilisateur, ou "auteur" pour l'ajouter en tant que feuille de style auteur. Spécifier "utilisateur" vous permet d'empêcher les sites Web de surcharger le CSS que vous insérez: voir <a href="/en-US/docs/Web/CSS/Cascade#Cascading_order">la commande en cascade</a>. Si cette option est omise, le CSS est ajouté en tant que feuille de style auteur.</dd>
+ <dt><code>file</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Chemin d'accès à un fichier contenant le code à injecter. Dans Firefox, les URL relatives sont résolues par rapport à l'URL de la page en cours. Dans Chrome, ces URL sont résolues par rapport à l'URL de base de l'extension. Pour travailler avec plusieurs navigateurs, vous pouvez spécifier le chemin comme une URL absolue, en commençant à la racine de l'extension, comme ceci : <code>"/path/to/stylesheet.css"</code>.</dd>
+ <dt><code>frameId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Le cadre où le CSS doit être injecté. La valeur par défaut est <code>0</code> (l'image de niveau supérieur).</dd>
+ <dt><code>matchAboutBlank</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si<code>true</code>, le code sera injecté dans les cadres "about:blank" et "about:srcdoc" intégrés si votre extension a accès à leur document parent. Le code ne peut pas être inséré au niveau supérieur about: frames. Par défaut à <code>false</code>.</dd>
+ <dt><code>runAt</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('extensionTypes.RunAt')}}. Le plus tôt que le code sera injecté dans l'onglet. Par défaut à "document_idle".</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code> qui sera remplie sans arguments lorsque tous les CSS ont été insérés. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple s'insère dans l'onglet CSS actif qui provient d'une chaîne.</p>
+
+<pre class="brush: js">var css = "body { border: 20px dotted pink; }";
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+
+ function onError(error) {
+ console.log(`Error: ${error}`);
+ }
+
+ var insertingCSS = browser.tabs.insertCSS({code: css});
+ insertingCSS.then(null, onError);
+});</pre>
+
+<p>Cet exemple insère CSS qui est chargé à partir d'un fichier empaqueté avec l'extension. Le CSS est inséré dans l'onglet dont l'identifiant est 2 :</p>
+
+<pre class="brush: js">browser.browserAction.onClicked.addListener(() =&gt; {
+
+ function onError(error) {
+ console.log(`Error: ${error}`);
+ }
+
+ var insertingCSS = browser.tabs.insertCSS(2, {file: "content-style.css"});
+ insertingCSS.then(null, onError);
+});</pre>
+
+<p>{{WebExtExamples}}</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.tabs.insertCSS")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.html
new file mode 100644
index 0000000000..119198012b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.html
@@ -0,0 +1,168 @@
+---
+title: tabs.move()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/move
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - deplacer
+ - move
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/move
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Déplace un ou plusieurs onglets vers une nouvelle position dans la même fenêtre ou vers une autre fenêtre.</p>
+
+<p>Vous pouvez uniquement déplacer des onglets vers et à partir de fenêtres dont {{WebExtAPIRef('windows.WindowType', 'WindowType')}} est <code>"normal"</code>.</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 moving = browser.tabs.move(
+ tabIds, // integer or integer array
+ moveProperties // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabIds</code></dt>
+ <dd><code><code>integer</code></code> ou <code><code>array</code></code> d'<code><code>integer</code></code>. ID du {{WebExtAPIRef('tabs.Tab', 'tab')}}à déplacer, ou un tableau d'ID d'onglet.</dd>
+ <dt><code>moveProperties</code></dt>
+ <dd><code>object</code>. Un objet qui spécifie où déplacer le(s) onglet(s).</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. 'ID de la fenêtre dans laquelle vous souhaitez déplacer les onglet(s). Si vous omettez cela, chaque onglet de <code>tabIds</code> sera déplacé vers l' <code>index</code> dans sa fenêtre actuelle. Si vous incluez ceci, et <code>tabIds</code> contient plus d'un onglet, alors le premier onglet de <code>tabIds</code> sera déplacé vers l'<code>index</code>, et les autres onglets le suivront dans l'ordre donné dans <code>tabIds</code>.</dd>
+ <dt><code>index</code></dt>
+ <dd><code>integer</code>. La position de l'index pour déplacer la tabulation à, en commençant à 0. Une valeur de -1 placera la tabulation à la fin de la fenêtre.</dd>
+ <dd>Si vous passez une valeur inférieure à -1, la fonction renvoie une erreur.</dd>
+ <dd>Notez que vous ne pouvez pas déplacer les onglets épinglés sur une position après les onglets non épinglés d'une fenêtre, ou déplacer les onglets non épinglés à une position avant les onglets épinglés. Par exemple, si vous avez un ou plusieurs onglets épinglés dans la fenêtre cible et si tabIds fait référence à un onglet non épinglé, vous ne pouvez pas passer 0 ici. Si vous essayez de le faire, la fonction échouera silencieusement (elle ne produira pas d'erreur).</dd>
+ </dl>
+ </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 satisfaite avec un objet <code>{{WebExtAPIRef('tabs.Tab')}}</code> ou un <code><code>tableau</code></code> d'objets <code><code>{{WebExtAPIRef('tabs.Tab')}}</code></code>, contenant des détails sur les onglets déplacés. Si aucun onglet n'a été déplacé (par exemple, parce que vous avez essayé de déplacer un onglet non épinglé avant un onglet épinglé), il s'agira d'un tableau vide. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Déplacer le premier onglet de la fenêtre en cours vers la dernière position de la fenêtre en cours :</p>
+
+<pre class="brush: js">function onMoved(tab) {
+ console.log(`Moved: ${tab}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+function firstToLast(windowInfo) {
+ if (windowInfo.tabs.length == 0) {
+ return;
+ }
+ var moving = browser.tabs.move(windowInfo.tabs[0].id, {index: -1});
+ moving.then(onMoved, onError);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var gettingCurrent = browser.windows.getCurrent({populate: true});
+ gettingCurrent.then(firstToLast, onError);
+});</pre>
+
+<p><span id="result_box" lang="fr"><span>Déplacer tous les onglets servis via HTTP ou HTTPS depuis * .mozilla.org jusqu'à la fin de leur fenêtre :</span></span></p>
+
+<pre class="brush: js">function onMoved(tab) {
+ console.log(`Moved: ${tab}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+function moveMoz(tabs) {
+ var mozTabIds = tabs.map(tabInfo =&gt; tabInfo.id);
+ var moving = browser.tabs.move(mozTabIds, {index: -1});
+ moving.then(onMoved, onError);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var gettingMozTabs = browser.tabs.query({url:"*://*.mozilla.org/*"});
+ gettingMozTabs.then(moveMoz, onError);
+});</pre>
+
+<p><span id="result_box" lang="fr"><span>Déplacer tous les onglets servis via HTTP ou HTTPS de * .mozilla.org vers la fenêtre qui héberge le premier onglet de ce type, en commençant à la position 0 :</span></span></p>
+
+<pre class="brush: js">function onMoved(tab) {
+ console.log(`Moved: ${tab}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+function moveMoz(tabs) {
+ var mozTabIds = tabs.map(tabInfo =&gt; tabInfo.id);
+ var targetWindow = tabs[0].windowId;
+ var moving = browser.tabs.move(mozTabIds, {windowId: targetWindow, index: 0});
+ moving.then(onMoved, onError);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+ var gettingMozTabs = browser.tabs.query({url:"*://*.mozilla.org/*"});
+ gettingMozTabs.then(moveMoz, onError);
+});</pre>
+
+<p>{{WebExtExamples}}</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.tabs.move")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.html
new file mode 100644
index 0000000000..9514fe3192
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.html
@@ -0,0 +1,54 @@
+---
+title: tabs.moveInSuccession()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/moveInSuccession
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - onglets
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/moveInSuccession
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>Modifie la relation de succession pour un groupe d'onglets.</p>
+
+<p>Using the {{WebExtAPIRef('tabs')}} API, a tab can be assigned a <em>successor</em> tab in the same window. If tab B is the successor of tab A, and tab A is closed while it is the active tab, tab B will be activated next. If tab A doesn't have a successor, then the browser is free to determine which tab to activate next. If tab B is the successor of tab A, then tab A is called a <em>predecessor</em> of tab B. A tab can have at most one successor, but it can have any number of predecessors. A tab cannot take itself or a tab in a different window as a successor.</p>
+
+<p>All tabs start out with no successor; tabs only get a successor if assigned one by a WebExtension. However, the browser must not orphan a tab in a succession relationship with other tabs, if possible: if tab B is the successor of tab A, and tab C is the successor of tab B, and B is closed (or moved to another window), then tab A will take tab C as its successor. Preventing C from being orphaned in this way is called <em>moving a tab</em> (B) <em>from its line of succession</em>.</p>
+
+<p><code>tabs.moveInSuccession()</code> takes an array of tab IDs, and moves all of those tabs from their lines of succession. It then makes each tab the successor of the previous tab in the array, forming a chain. It can optionally set the successor of the last tab in the chain to an anchor tab, which is <em>not</em> moved from its line of succession. Additional options can control whether the tab chain is "prepended" or "appended" to the anchor tab, and whether the operation acts like a linked-list insert.</p>
+
+<p>While the successor tab can be assigned with {{WebExtAPIRef('tabs.update()')}}, it is often desirable to use <code>tabs.moveInSuccession()</code> to change successors, even if only a single tab is having its successor assigned. The difference is that <code>browser.tabs.moveInSuccession([a], b)</code> moves tab <code>a</code> from its line of succession, so any predecessors of <code>a</code> will adopt <code>a</code>'s previous successor; whereas if <code>browser.tabs.update(a, {successorTabId: b})</code> is used instead, tab <code>a</code> may continue to be the successor of other tabs, which could be unexpected. Another advantage of <code>tabs.moveInSuccession()</code> is that all of the succession changes happen atomically, without having to worry about races between calls to {{WebExtAPIRef('tabs.update()')}} and {{WebExtAPIRef('tabs.get()')}} and other operations like the user closing a tab.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="brush: js">browser.tabs.moveInSuccession([1, 3, 5, 7, 2, 9], 4, {insert:true})</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabIds</code></dt>
+ <dd><code>array</code> of <code>integer</code>. Un tableau  d'<code>ID</code>s. L'ordre des éléments dans le tableau définit la relation des onglets. Tout <code>ID</code> d'onglet invalide, ou l'<code>ID</code> d'onglet correspondant à des onglets qui ne sont pas dans la même fenêtre que <code>tabId</code> (ou le premier onglet du tableau, si  <code>tabId</code> est omis), sera ignoré - ils conserveront leurs successeurs et prédécesseurs actuels.</dd>
+ <dt><code>tabId</code> {{optional_inline}}</dt>
+ <dd><code>integer.</code> L'<code>ID</code> de l'onglet qui succédera au dernier onglet du tableau <code>tabIds</code>. Si cet <code>ID</code> est invalide ou {{WebExtAPIRef('tabs.TAB_ID_NONE')}}, le dernier onglet n'aura pas de successeur. Par défaut {{WebExtAPIRef('tabs.TAB_ID_NONE')}}.</dd>
+ <dt><code>options</code> {{optional_inline}}</dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl>
+ <dt><code>append</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Détermine s'il faut déplacer les onglets dans les <code>tabIds</code> avant ou après <code>tabId </code>dans la succession. Si <code>false</code>, les onglets sont déplacés avant <code>tabId</code>, si <code>true</code>, les onglets sont déplacés après <code>tabId</code>. Par défaut à <code>false</code>.</dd>
+ <dt><code>insert</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Détermine s'il faut lier les prédécesseurs ou successeurs actuels (selon <code>options.append</code>) de <code>tabId</code>à l'autre côté de la chaîne après son ajout ou son ajout. Si true, l'un des événements suivants se produit : si <code>options.append</code> est <code>false</code>, le premier onglet du tableau est défini comme successeur de tout prédécesseur actuel de  <code>tabId</code>; Si <code>options.append</code> est <code>true</code>, le successeur actuel de tabId est défini comme le successeur du dernier onglet du tableau. La valeur par défaut est <code>false</code>.</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.tabs.moveInSuccession", 10)}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.html
new file mode 100644
index 0000000000..eac4be0c0f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.html
@@ -0,0 +1,81 @@
+---
+title: tabs.MutedInfo
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/MutedInfo
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - MutedInfo
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/MutedInfo
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Cet objet contient un booléen indiquant si l'onglet est muet et la raison du dernier changement d'état.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>extensionId</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'ID de l'extension qui a modifié en dernier l'état muet. Non défini si une extension n'a pas été la raison pour laquelle l'état muet a été modifié pour la dernière fois.</dd>
+ <dt><code>muted</code></dt>
+ <dd><code>boolean</code>. Si l'onglet est actuellement coupé. Équivalent à l'affichage de l'indicateur audio coupé.</dd>
+ <dt><code>reason</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('tabs.MutedInfoReason')}}. La raison pour laquelle l'onglet a été désactivé ou désactivé. Non défini si l'état muet de l'onglet n'a jamais été modifié.</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.tabs.MutedInfo")}}</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/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.html
new file mode 100644
index 0000000000..7bbeb971db
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.html
@@ -0,0 +1,81 @@
+---
+title: tabs.MutedInfoReason
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/MutedInfoReason
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - MutedInfoReason
+ - Non-standard
+ - Refrence
+ - Type
+ - WebExtensions
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/MutedInfoReason
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Spécifie la raison pour laquelle un onglet a été désactivé ou désactivé.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt>"capture"</dt>
+ <dd>La capture d'onglets a commencé, forçant un changement d'état muet.</dd>
+ <dt>"extension"</dt>
+ <dd>Une extension définit l'état muet. Si c'est la raison, <code>extensionId</code> dans {{WebExtAPIRef("tabs.mutedInfo")}} contiendra l'ID de l'extension responsable.</dd>
+ <dt>"user"</dt>
+ <dd>L'utilisateur définit l'état muet.</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.tabs.MutedInfoReason")}}</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/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.html
new file mode 100644
index 0000000000..260a75553f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.html
@@ -0,0 +1,127 @@
+---
+title: tabs.onActivated
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onActivated
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onActivated
+ - tavs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onActivated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Se déclenche lorsque l'onglet actif dans une fenêtre change. Notez que l'URL de l'onglet peut ne pas être définie au moment où cet événement s'est déclenché, mais vous pouvez écouter les événements {{WebExtAPIRef("tabs.onUpdated")}} pour être averti lorsqu'une URL est définie.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onActivated.addListener(listener)
+browser.tabs.onActivated.removeListener(listener)
+browser.tabs.onActivated.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>activeInfo</code></dt>
+ <dd><a href="#activeInfo"><code>object</code></a>. ID de l'onglet qui a été activé, et ID de sa fenêtre.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="activeInfo">activeInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>previousTabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet activé précédent, si cet onglet est encore ouvert.</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet qui est devenu actif.</dd>
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. L'ID de la fenêtre de l'onglet.</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Écouter et enregistrer les événements d'activation des onglets :</p>
+
+<pre class="brush: js">function handleActivated(activeInfo) {
+ console.log("Tab " + activeInfo.tabId +
+ " was activated");
+}
+
+browser.tabs.onActivated.addListener(handleActivated);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl class="reference-values">
+</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.tabs.onActivated")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.html
new file mode 100644
index 0000000000..dfeccd0675
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.html
@@ -0,0 +1,120 @@
+---
+title: tabs.onActiveChanged
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onActiveChanged
+tags:
+ - API
+ - Add-ons
+ - Deprecated
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onActiveChanged
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onActiveChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<div class="warning">
+<p>Cet événement est obsolète. Utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.</p>
+</div>
+
+<p>Se déclenche lorsque l'onglet sélectionné dans une fenêtre change. Notez que l'URL de l'onglet peut ne pas être définie au moment où cet événement a été déclenché, mais vous pouvez écouter les événements {{WebExtAPIRef('tabs.onUpdated')}} pour être averti lorsqu'une URL est définie.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onActiveChanged.addListener(listener)
+browser.tabs.onActiveChanged.removeListener(listener)
+browser.tabs.onActiveChanged.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>
+
+<dl>
+</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>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet qui est devenu actif.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>selectInfo</code></dt>
+ <dd><a href="#selectInfo"><code>object</code></a>.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="selectInfo">selectInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. L'ID de la fenêtre contenant l'onglet sélectionné.</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.tabs.onActiveChanged")}}</p>
+
+<p>
+ </p><div class="note"><strong>Remerciements :</strong>
+
+ <p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+<p></p>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.html
new file mode 100644
index 0000000000..e170ca07ac
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.html
@@ -0,0 +1,133 @@
+---
+title: tabs.onAttached
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onAttached
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onAttached
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onAttached
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un onglet est attaché à une fenêtre, par exemple parce qu'il a été déplacé entre les fenêtres.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onAttached.addListener(listener)
+browser.tabs.onAttached.removeListener(listener)
+browser.tabs.onAttached.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>CVé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>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet qui a été attaché à une nouvelle fenêtre..</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>attachInfo</code></dt>
+ <dd><a href="#attachInfo"><code>object</code></a>. ID de la nouvelle fenêtre, et index de l'onglet à l'intérieur.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="attachInfo">attachInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>newWindowId</code></dt>
+ <dd><code>integer</code>. ID de la nouvelle fenêtre.</dd>
+ <dt><code>newPosition</code></dt>
+ <dd><code>integer</code>. Position de l'index que l'onglet a dans la nouvelle fenêtre.</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Écoutez les événements attachés et consignez les informations :</p>
+
+<pre class="brush: js">function handleAttached(tabId, attachInfo) {
+ console.log("Tab: " + tabId + " attached");
+ console.log("New window: " + attachInfo.newWindowId);
+ console.log("New index: " + attachInfo.newPosition);
+}
+
+browser.tabs.onAttached.addListener(handleAttached);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl class="reference-values">
+</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.tabs.onAttached")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.html
new file mode 100644
index 0000000000..e4d6049862
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.html
@@ -0,0 +1,121 @@
+---
+title: tabs.onCreated
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onCreated
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onCreated
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onCreated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un onglet est créé.</p>
+
+<p>Notez que l'URL de l'onglet peut ne pas avoir sa valeur finale au moment où cet événement a été déclenché. En particulier, Firefox ouvre un nouvel onglet avec l'URL  "about:blank" avant de charger la nouvelle page. Vous pouvez écouter les événements  {{WebExtAPIRef("tabs.onUpdated")}} pour être averti lorsqu'une URL est définie.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onCreated.addListener(callback)
+browser.tabs.onCreated.removeListener(listener)
+browser.tabs.onCreated.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 le <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>tab</code></dt>
+ <dd>{{WebExtAPIRef('tabs.Tab')}}. Détails de l'onglet qui a été créé.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Examples">Examples</h2>
+
+<p>Consignez les ID des nouveaux onglets créés :</p>
+
+<pre class="brush: js">function handleCreated(tab) {
+ console.log(tab.id);
+}
+
+browser.tabs.onCreated.addListener(handleCreated);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </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.tabs.onCreated")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.html
new file mode 100644
index 0000000000..e4a20d483f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.html
@@ -0,0 +1,133 @@
+---
+title: tabs.onDetached
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onDetached
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onDetached
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onDetached
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un onglet est détaché d'une fenêtre, par exemple parce qu'il est déplacé entre des fenêtres.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onDetached.addListener(listener)
+browser.tabs.onDetached.removeListener(listener)
+browser.tabs.onDetached.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>l'écouteur</code> est enregistré pour cet événemen. 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>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet qui a été détaché.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>detachInfo</code></dt>
+ <dd><a href="#detachInfo"><code>object</code></a>. ID de la fenêtre précédente et index de l'onglet à l'intérieur.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="detachInfo">detachInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>oldWindowId</code></dt>
+ <dd><code>integer</code>. ID de la fenêtre précédente</dd>
+ <dt><code>oldPosition</code></dt>
+ <dd><code>integer</code>. Position de l'index que l'onglet avait dans l'ancienne fenêtre.</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ecoutez les événements de détachement et consignez les informations :</p>
+
+<pre class="brush: js">function handleDetached(tabId, detachInfo) {
+ console.log("Tab: " + tabId + " moved");
+ console.log("Old window: " + detachInfo.oldWindowId);
+ console.log("Old index: " + detachInfo.oldPosition);
+}
+
+browser.tabs.onDetached.addListener(handleDetached);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl class="reference-values">
+</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.tabs.onDetached")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.html
new file mode 100644
index 0000000000..f3bfce612c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.html
@@ -0,0 +1,112 @@
+---
+title: tabs.onHighlightChanged
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onHighlightChanged
+tags:
+ - API
+ - Add-ons
+ - Deprecated
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onHighlightChanged
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onHighlightChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<div class="warning">Cet événement est obsolète. Utilisez {{WebExtAPIRef("tabs.onHighlighted")}} à la place.</div>
+
+<p>Lancé lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onHighlightChanged.addListener(listener)
+browser.tabs.onHighlightChanged.removeListener(listener)
+browser.tabs.onHighlightChanged.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>selectInfo</code></dt>
+ <dd><a href="#selectInfo"><code>object</code></a>.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="selectInfo">selectInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. La fenêtre dont les onglets ont changé.</dd>
+ <dt><code>tabIds</code></dt>
+ <dd><code>array</code> d'<code><code>integer</code></code>. Tous les onglets en surbrillance dans la fenêtre.</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.tabs.onHighlightChanged")}}</p>
+
+<p>
+ </p><div class="note"><strong>Remerciements :</strong>
+
+ <p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+<p></p>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.html
new file mode 100644
index 0000000000..310a611721
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.html
@@ -0,0 +1,126 @@
+---
+title: tabs.onHighlighted
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onHighlighted
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onHighlighted
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onHighlighted
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque l'ensemble des onglets en surbrillance dans une fenêtre change</p>
+
+<p>Notez qu'avant la version 63, Firefox n'avait pas le concept de mettre en évidence plusieurs onglets, donc cet événement n'était qu'un alias pour {{WebExtAPIRef("tabs.onActivated")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onHighlighted.addListener(listener)
+browser.tabs.onHighlighted.removeListener(listener)
+browser.tabs.onHighlighted.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> de l'écouteur 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>highlightInfo</code></dt>
+ <dd><a href="#highlightInfo"><code>object</code></a>. ID(s) des onglets en surbrillance, et ID de leur fenêtre.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="highlightInfo">highlightInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. ID de la fenêtre dont les onglets ont changé.</dd>
+ <dt><code>tabIds</code></dt>
+ <dd><code>array</code> d'<code><code>integer</code></code>. Identifiants des onglets en surbrillance dans la fenêtre</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ecoutez les événements en surbrillance et consignez les ID des onglets mis en surbrillance</p>
+
+<pre class="brush: js">function handleHighlighted(highlightInfo) {
+ console.log("Highlighted tabs: " + highlightInfo.tabIds);
+}
+
+browser.tabs.onHighlighted.addListener(handleHighlighted);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl class="reference-values">
+</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.tabs.onHighlighted")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.html
new file mode 100644
index 0000000000..1aa969a9df
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.html
@@ -0,0 +1,133 @@
+---
+title: tabs.onMoved
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onMoved
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onMoved
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onMoved
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un onglet est déplacé dans une fenêtre</p>
+
+<p>Un seul événement de déplacement est déclenché, représentant l'onglet que l'utilisateur a déplacé directement. Les événements de déplacement ne sont pas déclenchés pour les autres onglets qui doivent se déplacer en réponse. Cet événement n'est pas déclenché lorsqu'un onglet est déplacé entre des fenêtres. Pour cela, voir  {{WebExtAPIRef('tabs.onDetached')}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onMoved.addListener(listener)
+browser.tabs.onMoved.removeListener(listener)
+browser.tabs.onMoved.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 le <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>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet déplacé par l'utilisateur.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>moveInfo</code></dt>
+ <dd><a href="#moveInfo"><code>object</code></a>. Informations sur le déménagement.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="moveInfo">moveInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. ID de la fenêtre de cet onglet.</dd>
+ <dt><code>fromIndex</code></dt>
+ <dd><code>integer</code>. Index initial de cet onglet dans la fenêtre.</dd>
+ <dt><code>toIndex</code></dt>
+ <dd><code>integer</code>. Index final de cet onglet dans la fenêtre</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Écouter et enregistrer les événements de déplacement :</p>
+
+<pre class="brush: js">function handleMoved(tabId, moveInfo) {
+ console.log("Tab " + tabId +
+ " moved from " + moveInfo.fromIndex +
+ " to " + moveInfo.toIndex);
+}
+
+browser.tabs.onMoved.addListener(handleMoved);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<dl class="reference-values">
+</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.tabs.onMoved")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.html
new file mode 100644
index 0000000000..3f5148aaf0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.html
@@ -0,0 +1,129 @@
+---
+title: tabs.onRemoved
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onRemoved
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onRemoved
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onRemoved
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé quand un onglet est fermé.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onRemoved.addListener(callback)
+browser.tabs.onRemoved.removeListener(listener)
+browser.tabs.onRemoved.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>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet qui s'est fermé.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>removeInfo</code></dt>
+ <dd><a href="#removeInfo"><code>object</code></a>. L'ID de la fenêtre de l'onglet et un booléen indiquant si la fenêtre est également fermée.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="removeInfo">removeInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. La fenêtre dont l'onglet est fermé.</dd>
+ <dt><code>isWindowClosing</code></dt>
+ <dd><code>boolean</code>. <code>true</code> si l'onglet est fermé car sa fenêtre est en cours de fermeture.</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Écoutez les événements proches et consignez les informations :</p>
+
+<pre class="brush: js">function handleRemoved(tabId, removeInfo) {
+ console.log("Tab: " + tabId + " is closing");
+ console.log("Window ID: " + removeInfo.windowId);
+ console.log("Window is closing: " + removeInfo.isWindowClosing);
+}
+
+browser.tabs.onRemoved.addListener(handleRemoved);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<dl class="reference-values">
+</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.tabs.onRemoved")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.html
new file mode 100644
index 0000000000..1a77cd74b9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.html
@@ -0,0 +1,124 @@
+---
+title: tabs.onReplaced
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onReplaced
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onReplaced
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onReplaced
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un onglet est remplacé par un autre en raison d'un prérendering ou d'un instantané.</p>
+
+<p>Cet événement peut ne pas être pertinent ou pris en charge par des navigateurs autres que Chrome.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onReplaced.addListener(listener)
+browser.tabs.onReplaced.removeListener(listener)
+browser.tabs.onReplaced.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>addedTabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet de remplacement.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>removedTabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet qui a été remplacé.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Écoutez les événements de remplacement et consignez les informations associées :</p>
+
+<pre class="brush: js">function handleReplaced(addedTabId, removedTabId) {
+ console.log("New tab: " + addedTabId);
+ console.log("Old tab: " + removedTabId);
+}
+
+browser.tabs.onReplaced.addListener(handleReplaced);
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<dl>
+ <dd>
+ <dl class="reference-values">
+ </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.tabs.onReplaced")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.html
new file mode 100644
index 0000000000..6c6b387bf0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.html
@@ -0,0 +1,119 @@
+---
+title: tabs.onSelectionChanged
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onSelectionChanged
+tags:
+ - API
+ - Add-ons
+ - Deprecated
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onSelectionChanged
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onSelectionChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<div class="warning">Cet événement est obsolète. Utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.</div>
+
+<p>Se déclenche lorsque l'onglet sélectionné dans une fenêtre change.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onSelectionChanged.addListener(listener)
+browser.tabs.onSelectionChanged.removeListener(listener)
+browser.tabs.onSelectionChanged.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>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet qui est devenu actif.</dd>
+ </dl>
+
+ <dl class="reference-values">
+ <dt><code>selectInfo</code></dt>
+ <dd><a href="#selectInfo"><code>object</code></a>.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="selectInfo">selectInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. L'ID de la fenêtre dans laquelle l'onglet sélectionné a changé.</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.tabs.onSelectionChanged")}}</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/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.html
new file mode 100644
index 0000000000..52a4d27064
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.html
@@ -0,0 +1,281 @@
+---
+title: tabs.onUpdated
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onUpdated
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onUpdated
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onUpdated
+---
+<p>C'est déclenché lorsqu'un onglet est mis à jour.</p>
+
+<p>Lorsque l'utilisateur navigue vers une nouvelle URL dans un onglet, cela génère généralement plusieurs événements <code>onUpdated</code> au fur et à mesure que diverses propriétés de l'objet {{WebExtAPIRef("tabs.Tab")}} sont mises à jour. Ceci inclut l' <code>url</code>, mais aussi potentiellement le <code>title</code> et les propriétés <code>favIconUrl</code>. La propriété du  <code>status</code> passe par le <code>"loading"</code> et <code>"complete"</code>.</p>
+
+<p>Cet événement sera également déclenché pour les modifications des propriétés d'un onglet qui n'impliquent pas de navigation, comme le pinning et le débrochage (qui met à jour la propriété <code>pinned</code>) et le muting ou le unmuting (qui met à jour les propriétés  <code>audible</code> et <code>mutedInfo</code>).</p>
+
+<p>Vous pouvez filtrer cet événement, en le rendant uniquement valable pour les onglets dont les urls correspondent à des <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Match_patterns">patterns</a> spécifiques, ou pour les modifications de propriétés spécifiques, ou pour les modifications d'un onglet ou d'une fenêtre spécifique, ou toute combinaison de ces restrictions.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onUpdated.addListener(listener[, extraParameters])
+browser.tabs.onUpdated.removeListener(listener)
+browser.tabs.onUpdated.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback[, extraParameters])</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 produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet qui a été mis à jour.</dd>
+ <dt><code>changeInfo</code></dt>
+ <dd><a href="https://developer.mozilla.org/fr/docs/Mozilla/Add-ons/WebExtensions/API/tabs/onUpdated$edit#changeInfo"><code>object</code></a>. ontient les propriétés des propriétés de l'onglet qui ont été modifiées. Voir <code><a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/tabs/onUpdated#changeInfo">changeInfo</a></code> ci-dessous.</dd>
+ <dt><code>tab</code></dt>
+ <dd>{{WebExtAPIRef('tabs.Tab')}}. Le nouvel état de l'onglet.</dd>
+ </dl>
+ </dd>
+ <dt><code>extraParameters</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un ensemble de filtres qui restreint les événements qui seront envoyés à cet auditeur. C'est un objet qui peut avoir une ou plusieurs des propriétés suivantes. Les événements ne seront envoyés que s'ils satisfont à tous les filtres donnés.</p>
+
+ <dl class="reference-values">
+ <dt><code>urls</code></dt>
+ <dd><code>Array</code>. Un tableau <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Match_patterns">match patterns</a>. Ne déclenchez l'événement que pour les onglets dont la propriété de l'<code>url</code> courante correspond à l'un des motifs.</dd>
+ <dt><code>properties</code></dt>
+ <dd>
+ <p><code>Array</code>. un tableau de chaîne de caractères,  qui sont les noms des propriétés de l'objet {{WebExtAPIRef("tabs.Tab")}}. Ne déclenchez cet événement seulement pour les changement apportées à l'une des propriétés nommées dans ce tableau. Les propriétés suivantes peuvent être listées ici :</p>
+
+ <ul>
+ <li>"attention"</li>
+ <li>"audible"</li>
+ <li>"discarded"</li>
+ <li>"favIconUrl"</li>
+ <li>"hidden"</li>
+ <li>"isArticle"</li>
+ <li>"mutedInfo"</li>
+ <li>"pinned"</li>
+ <li>"sharingState"</li>
+ <li>"status"</li>
+ <li>"title"</li>
+ </ul>
+ </dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>Integer</code>. Ne déclenchez cet événement que pour l'onglet identifié par cet ID.</dd>
+ <dt><code>windowId</code></dt>
+ <dd><code>Integer</code>. N'activez cet événement que pour les onglets qui se trouvent actuellement dans la fenêtre identifiée par cet ID.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="changeInfo">changeInfo</h3>
+
+<p>Répertorie les modifications apportées à l'état de l'onglet mis à jour. Pour en savoir plus sur ces propriétés, consultez la documentation {{WebExtAPIRef("tabs.Tab")}}.</p>
+
+<dl class="reference-values">
+ <dt><code>attention</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Indique si l'onglet attire l'attention. Par exemple, lorsque l'onglet affiche un dialogue modal, <code>attention</code> sera <code>true</code>.</dd>
+ <dt><code>audible</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Nouvel état audible de l'onglet.</dd>
+ <dt><code>discarded</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet est ignoré. Un onglet supprimé est celui dont le contenu a été déchargé de la mémoire, mais est toujours visible dans la bande d'onglets. Son contenu est rechargé la prochaine fois qu'il est activé.</dd>
+ <dt><code>favIconUrl</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Nouvelle URL de favicon de l'onglet.</dd>
+ <dt><code>mutedInfo</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('tabs.MutedInfo')}}. Le nouvel état muet de l'onglet et la raison du changement.</dd>
+ <dt><code>pinned</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Nouvel état épinglé de l'onglet.</dd>
+ <dt><code>status</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Le statut de l'onglet. Peut être soit <em>chargé</em> ou <em>complet</em>.</dd>
+ <dt><code>title</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Le nouveau titre de l'onglet.</dd>
+ <dt><code>url</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'URL de l'onglet s'il a changé.</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Écoutez et connectez toutes les informations de changement et nouvel état:</p>
+
+<pre class="brush: js">function handleUpdated(tabId, changeInfo, tabInfo) {
+ console.log("Updated tab: " + tabId);
+ console.log("Changed attributes: ");
+ console.log(changeInfo);
+ console.log("New tab Info: ");
+ console.log(tabInfo);
+}
+
+browser.tabs.onUpdated.addListener(handleUpdated);</pre>
+
+<p>Consigner les modifications dans les URL :</p>
+
+<pre class="brush: js">function handleUpdated(tabId, changeInfo, tabInfo) {
+ if (changeInfo.url) {
+ console.log("Tab: " + tabId +
+ " URL changed to " + changeInfo.url);
+ }
+}
+
+browser.tabs.onUpdated.addListener(handleUpdated);</pre>
+
+<h3 id="Filtering_examples">Filtering examples</h3>
+
+<p>Le journal ne change que pour les onglets dont la propriété <code>url</code> est <a href="/en-US/Add-ons/WebExtensions/Match_patterns">matched</a> par "https://developer.mozilla.org/*" ou "https://twitter.com/mozdevnet":</p>
+
+<pre class="brush: js">const pattern1 = "https://developer.mozilla.org/*";
+const pattern2 = "https://twitter.com/mozdevnet";
+
+const filter = {
+ urls: [pattern1, pattern2]
+}
+
+function handleUpdated(tabId, changeInfo, tabInfo) {
+ console.log(`Updated tab: ${tabId}`);
+ console.log("Changed attributes: ", changeInfo);
+ console.log("New tab Info: ", tabInfo);
+}
+
+browser.tabs.onUpdated.addListener(handleUpdated, filter);</pre>
+
+<p>Le journal ne change que la propriété <code>épinglée</code> des onglets (c'est-à-dire les actions d'épinglage et de déblocage) :</p>
+
+<pre class="brush: js">const filter = {
+ properties: ["pinned"]
+}
+
+function handleUpdated(tabId, changeInfo, tabInfo) {
+ console.log(`Updated tab: ${tabId}`);
+ console.log("Changed attributes: ", changeInfo);
+ console.log("New tab Info: ", tabInfo);
+}
+
+browser.tabs.onUpdated.addListener(handleUpdated, filter);</pre>
+
+<p>Combiner les deux filtres précédents : changements de journal seulement :</p>
+
+<ul>
+ <li>A la propriété <code>épinglée</code> des onglets</li>
+ <li>Dont la propriété <code>url</code> est <a href="/en-US/Add-ons/WebExtensions/Match_patterns">matched</a> par "https://developer.mozilla.org/*" ou "https://twitter.com/mozdevnet":</li>
+</ul>
+
+<pre class="brush: js">const pattern1 = "https://developer.mozilla.org/*";
+const pattern2 = "https://twitter.com/mozdevnet";
+
+const filter = {
+ urls: [pattern1, pattern2],
+ properties: ["pinned"]
+}
+
+function handleUpdated(tabId, changeInfo, tabInfo) {
+ console.log(`Updated tab: ${tabId}`);
+ console.log("Changed attributes: ", changeInfo);
+ console.log("New tab Info: ", tabInfo);
+}
+
+browser.tabs.onUpdated.addListener(
+ handleUpdated,
+ filter);</pre>
+
+<p>Changements dans le journal seulement :</p>
+
+<ul>
+ <li>A la propriété <code>épinglée</code> des onglets</li>
+ <li>Dont la propriété <code>url</code> est <a href="/en-US/Add-ons/WebExtensions/Match_patterns">matched</a> par "https://developer.mozilla.org/*" ou "https://twitter.com/mozdevnet"</li>
+ <li>et qui font partie de la fenêtre actuelle du navigateur au moment où l'événement de mise à jour est déclenché :</li>
+</ul>
+
+<pre class="brush: js">const pattern1 = "https://developer.mozilla.org/*";
+const pattern2 = "https://twitter.com/mozdevnet";
+
+const filter = {
+ urls: [pattern1, pattern2],
+ properties: ["pinned"],
+ windowId: browser.windows.WINDOW_ID_CURRENT
+}
+
+function handleUpdated(tabId, changeInfo, tabInfo) {
+ console.log(`Updated tab: ${tabId}`);
+ console.log("Changed attributes: ", changeInfo);
+ console.log("New tab Info: ", tabInfo);
+}
+
+browser.tabs.onUpdated.addListener(
+ handleUpdated,
+ filter);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl class="reference-values">
+</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.tabs.onUpdated", 10)}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
+
+<p>{{AddonSidebar}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.html
new file mode 100644
index 0000000000..f9a7aa0d6e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.html
@@ -0,0 +1,134 @@
+---
+title: tabs.onZoomChange
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/onZoomChange
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onZoomChange
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/onZoomChange
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Envoyé lorsqu'un onglet est agrandi.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.onZoomChange.addListener(listener)
+browser.tabs.onZoomChange.removeListener(listener)
+browser.tabs.onZoomChange.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> de l'écouteur 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>ZoomChangeInfo</code></dt>
+ <dd><a href="#ZoomChangeInfo"><code>object</code></a>. Informations sur l'événement de zoom.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="ZoomChangeInfo">ZoomChangeInfo</h3>
+
+<dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet qui a été zoomé.</dd>
+ <dt><code>oldZoomFactor</code></dt>
+ <dd><code>number</code>. Le facteur de zoom précédent.</dd>
+ <dt><code>newZoomFactor</code></dt>
+ <dd><code>number</code>. Le nouveau facteur de zoom.</dd>
+ <dt><code>zoomSettings</code></dt>
+ <dd>{{WebExtAPIRef('tabs.ZoomSettings')}}. Paramètres de zoom pour l'onglet.</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ecoutez les événements de zoom et consignez les informations :</p>
+
+<pre class="brush: js">function handleZoomed(zoomChangeInfo) {
+ console.log("Tab: " + zoomChangeInfo.tabId + " zoomed");
+ console.log("Old zoom: " + zoomChangeInfo.oldZoomFactor);
+ console.log("New zoom: " + zoomChangeInfo.newZoomFactor);
+}
+
+browser.tabs.onZoomChange.addListener(handleZoomed);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </p>
+
+<dl class="reference-values">
+</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> </p>
+
+<p>{{Compat("webextensions.api.tabs.onZoomChange")}}</p>
+
+<p> </p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.html
new file mode 100644
index 0000000000..1f518b000b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.html
@@ -0,0 +1,92 @@
+---
+title: tabs.PageSettings
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/PageSettings
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - PageSettings
+ - Reference
+ - Type
+ - WebExtensions
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/PageSettings
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Le type <strong><code>tabs.PageSettings</code></strong> est utilisé pour contrôler le rendu d'un onglet au format PDF par la méthode  {{WebExtAPIRef("tabs.saveAsPDF()")}}.</p>
+
+<p>Toutes ses propriétés sont facultatives.</p>
+
+<p>Pour définir les en-têtes et les pieds de page, vous pouvez inclure certains caractères spéciaux dans les chaînes que vous fournissez. Ceux-ci seront remplacés dans la sortie rendue comme suit :</p>
+
+<ul>
+ <li>"&amp;P": le numéro de page, comme "2"</li>
+ <li>"&amp;PT": le numéro de page et le nombre total de pages, comme "2 su 3"</li>
+ <li>"&amp;D": la date / heure actuelle</li>
+ <li>"&amp;T": le titre de la page</li>
+ <li>"&amp;U": l'URL de la page</li>
+</ul>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>edgeBottom </code>{{optional_inline}}</dt>
+ <dd><code>number</code>. L'espacement entre le bas des pieds et le bord inférieur du papier (pouces). Par défaut : 0.</dd>
+ <dt><code>edgeLeft </code>{{optional_inline}}</dt>
+ <dd><code>number</code>. L'espacement entre l'en-tête / pied de page gauche et le bord gauche du papier (pouces). Par défaut : 0</dd>
+ <dt><code>edgeRight </code>{{optional_inline}}</dt>
+ <dd><code>number</code>. L'espacement entre l'en-tête / pied droit et le bord gauche du papier (pouces). Par défaut : 0.</dd>
+ <dt><code>edgeTop </code>{{optional_inline}}</dt>
+ <dd><code>number</code>. L'espacement entre le haut des en-têtes et le bord supérieur du papier (pouces). Par défaut : 0</dd>
+ <dt><code>footerCenter</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Le texte du pied de page central de la page. Défaut : ''.</dd>
+ <dt><code>footerLeft</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Le texte pour le pied gauche de la page. Par défaut :  '&amp;PT'.</dd>
+ <dt><code>footerRight</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Le texte pour le pied droit de la page. Par défaut : '&amp;D'.</dd>
+ <dt><code>headerCenter</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Le texte de l'en-tête du centre de la page. Défaut : ''.</dd>
+ <dt><code>headerLeft</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Le texte de l'en-tête gauche de la page. Par défaut : '&amp;T'.</dd>
+ <dt><code>headerRight</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Le texte de l'en-tête de la page. Par défaut : '&amp;U'.</dd>
+ <dt><code>marginBottom </code>{{optional_inline}}</dt>
+ <dd><code>number</code>. La marge entre le contenu de la page et le bord inférieur du papier (pouces). Par défaut : 0.5.</dd>
+ <dt><code>marginLeft </code>{{optional_inline}}</dt>
+ <dd><code>number</code>. La marge entre le contenu de la page et le bord gauche du papier (pouces). Par défaut : 0.5.</dd>
+ <dt><code>marginRight </code>{{optional_inline}}</dt>
+ <dd><code>number</code>. La marge entre le contenu de la page et le bord droit du papier (en pouces). Par défaut : 0.5.</dd>
+ <dt><code>marginTop </code>{{optional_inline}}</dt>
+ <dd><code>number</code>. La marge entre le contenu de la page et le bord supérieur du papier (pouces). Par défaut : 0.5.</dd>
+ <dt><code>orientation </code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Orientation de la page: 0 signifie "portrait", 1 signifie "paysage". Par défaut : 0.</dd>
+ <dt><code>paperHeight </code>{{optional_inline}}</dt>
+ <dd><code>number</code>. La hauteur du papier dans les unités de format papier. Par défaut : 11.0.</dd>
+ <dt><code>paperSizeUnit</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'unité de format de papier: 0 = pouces, 1 = millimètres. Par défaut : 0.</dd>
+ <dt><code>paperWidth</code> {{optional_inline}}</dt>
+ <dd><code>number</code>. La largeur du papier dans les unités de format papier. Par défaut : 8.5.</dd>
+ <dt><code>scaling</code> {{optional_inline}}</dt>
+ <dd><code>number</code>. Facteur d'échelle du contenu de la page. 1 signifie 100% ou taille normale. Par défaut : 1.</dd>
+ <dt><code>showBackgroundColors</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les couleurs d'arrière-plan de la page doivent être affichées. Par défaut : false.</dd>
+ <dt><code>showBackgroundImages</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les images d'arrière-plan de la page doivent être affichées. Par défaut : false.</dd>
+ <dt><code>shrinkToFit</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si le contenu de la page doit rétrécir pour s'adapter à la largeur de la page (remplace la mise à l'échelle). Par défaut : true.</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.tabs.PageSettings")}}</p>
+
+
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.html
new file mode 100644
index 0000000000..920cde1de3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.html
@@ -0,0 +1,50 @@
+---
+title: tabs.print()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/print
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - impression
+ - print
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/print
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Appelez cette fonction pour imprimer le contenu de l'onglet actif. Si cette fonction est appelée, l'utilisateur recevra la boîte de dialogue d'impression de la plate-forme sous-jacente et aura la possibilité de modifier les paramètres d'impression, puis d'imprimer l'onglet actuellement actif.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.tabs.print()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>None.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans cet exemple, un script d'arrière-plan écoute un clic sur une <a href="/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Browser_actions_2">action navigateur</a>, puis tente d'imprimer l'onglet actuellement actif :</p>
+
+<pre class="brush: js">browser.browserAction.onClicked.addListener(() =&gt; {
+ browser.tabs.print();
+});
+</pre>
+
+<p>{{WebExtExamples}}</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.tabs.print")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.html
new file mode 100644
index 0000000000..e04a6035ef
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.html
@@ -0,0 +1,66 @@
+---
+title: tabs.printPreview()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/printPreview
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - printPreview
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/printPreview
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Ouvre l'aperçu avant impression pour l'onglet actif.</div>
+
+<div></div>
+
+<div>C'est une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</div>
+
+<div></div>
+
+<div>Une extension peut détecter lorsque l'aperçu d'impression a été fermé en écoutant l'événement <a href="/fr/docs/Web/Events/afterprint">afterprint</a> :</div>
+
+<div></div>
+
+<div>
+<pre class="brush: js no-line-numbers" id="ct-13">window.addEventListener("afterprint", resumeFunction, false);</pre>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var openingPreview = browser.tabs.printPreview()
+</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 remplie sans argument lorsque la page d'aperçu est ouverte.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans cet exemple, un script d'arrière-plan écoute un clic sur une <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Browser_actions_2">action de navigateur</a>, puis ouvre l'aperçu avant impression pour l'onglet actuellement actif :</p>
+
+<pre class="brush: js">browser.browserAction.onClicked.addListener(() =&gt; {
+ browser.tabs.printPreview()
+ .then(() =&gt; {
+ console.log("Entered print preview");
+ });
+});
+</pre>
+
+<p>{{WebExtExamples}}</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.tabs.printPreview")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.html
new file mode 100644
index 0000000000..31cd449ad6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.html
@@ -0,0 +1,190 @@
+---
+title: tabs.query()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/query
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - query
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/query
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient tous les onglets qui ont les propriétés spécifiées, ou tous les onglets si aucune propriété n'est spécifiée.</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 querying = browser.tabs.query(
+ queryInfo // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>queryInfo</code></dt>
+ <dd><code>object</code>. La fonction <code>query()</code> obtiendra uniquement les onglets dont les propriétés correspondent aux propriétés incluses ici. Pour en savoir plus sur ces propriétés, consultez la documentation {{WebExtAPIRef("tabs.Tab")}}.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>active</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets sont actifs dans leurs fenêtres.</dd>
+ <dt><code>audible</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets sont audibles.</dd>
+ <dt><code>autoDiscardable</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets peuvent être supprimés automatiquement par le navigateur lorsque les ressources sont faibles.</dd>
+ <dt><code>cookieStoreId</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Utilisez cette option pour renvoyer uniquement les onglets dont l'ID est <code>cookieStoreId</code>. Cette option n'est disponible que si l'extension à la  <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"cookies"</code></dd>
+ <dt><code>currentWindow</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets sont dans la fenêtre actuelle.</dd>
+ <dt><code>discarded</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets sont supprimés. Un onglet supprimé est celui dont le contenu a été déchargé de la mémoire, mais est toujours visible dans la bande d'onglets. Son contenu est rechargé la prochaine fois qu'il est activé.***</dd>
+ <dt><code>hidden</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets sont cachés.</dd>
+ <dt><code>highlighted</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets sont en surbrillance.</dd>
+ <dt><code>index</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. La position des onglets dans leurs fenêtres.</dd>
+ <dt><code>muted</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets sont en sourdine.</dd>
+ <dt><code>lastFocusedWindow</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets sont dans la dernière fenêtre focalisée.</dd>
+ <dt><code>openerTabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet qui a ouvert cet onglet.</dd>
+ <dt><code>pinned</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si les onglets sont épinglés.</dd>
+ <dt><code>status</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('tabs.TabStatus')}}. Si les onglets ont terminé le chargement.</dd>
+ <dt><code>title</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Faites correspondre les titres de page à un motif.</dd>
+ <dt><code>url</code>{{optional_inline}}</dt>
+ <dd><code><code>string</code></code> ou <code><code>array</code> de <code><code>string</code></code></code>. Faites correspondre les onglets avec un ou plusieurs <a href="/fr/Add-ons/WebExtensions/Match_patterns">modèle de correspondance</a>. Notez que les identificateurs de fragment ne sont pas appariés.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de la fenêtre parente, ou  {{WebExtAPIRef('windows.WINDOW_ID_CURRENT')}} pour la fenêtre en cours.</dd>
+ <dt><code>windowType</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('tabs.WindowType')}}. Le type de fenêtre dans lequel les onglets y  sont.</dd>
+ </dl>
+ </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 <code>tableau</code> d'objets <code>{{WebExtAPIRef('tabs.Tab')}}</code>, contenant des informations sur chaque onglet correspondant. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p><span class="short_text" id="result_box" lang="fr"><span>Obtenez tous les onglets : </span></span></p>
+
+<pre class="brush: js">function logTabs(tabs) {
+ for (let tab of tabs) {
+ // tab.url requires the `tabs` permission
+ console.log(tab.url);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var querying = browser.tabs.query({});
+querying.then(logTabs, onError);</pre>
+
+<p>Obtenez tous les onglets dans la fenêtre actuelle :</p>
+
+<pre class="brush: js">function logTabs(tabs) {
+ for (let tab of tabs) {
+ // tab.url requires the `tabs` permission
+ console.log(tab.url);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var querying = browser.tabs.query({currentWindow: true});
+querying.then(logTabs, onError);</pre>
+
+<p>Obtenez l'onglet actif dans la fenêtre actuelle :</p>
+
+<pre class="brush: js">function logTabs(tabs) {
+ for (let tab of tabs) {
+ // tab.url requires the `tabs` permission
+ console.log(tab.url);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var querying = browser.tabs.query({currentWindow: true, active: true});
+querying.then(logTabs, onError);</pre>
+
+<p>Obtenez des onglets pour toutes les URL HTTP et HTTPS sous "mozilla.org" ou l'un de ses sous-domaines :</p>
+
+<pre class="brush: js">function logTabs(tabs) {
+ for (let tab of tabs) {
+ // tab.url requires the `tabs` permission
+ console.log(tab.url);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var querying = browser.tabs.query({url: "*://*.mozilla.org/*"});
+querying.then(logTabs, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.query")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.html
new file mode 100644
index 0000000000..509ecd29bf
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.html
@@ -0,0 +1,115 @@
+---
+title: tabs.reload()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/reload
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - reload
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/reload
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Rechargez un onglet, en contournant éventuellement le cache Web local.</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 reloading = browser.tabs.reload(
+ tabId, // optional integer
+ reloadProperties // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet à recharger. Par défaut à l'onglet sélectionné de la fenêtre en cours.</dd>
+ <dt><code>reloadProperties</code>{{optional_inline}}</dt>
+ <dd><code>object</code>.
+ <dl class="reference-values">
+ <dt><code>bypassCache</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Contourner le cache web local. La valeur par défaut est <code>false</code>.</dd>
+ </dl>
+ </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 sans arguments lorsque l'onglet a été rechargé. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Recharger l'onglet actif de la fenêtre en cours :</p>
+
+<pre class="brush: js">browser.tabs.reload();</pre>
+
+<p>Rechargez l'onglet actif de la fenêtre en cours, en ignorant le cache :</p>
+
+<pre class="brush: js">browser.tabs.reload({bypassCache: true});</pre>
+
+<p>Rechargez l'onglet dont l'ID est 2, en ignorant le cache et en appelant un rappel lorsque vous avez terminé :</p>
+
+<pre class="brush: js">function onReloaded() {
+ console.log(`Reloaded`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var reloading = browser.tabs.reload(2, {bypassCache: true});
+reloading.then(onReloaded, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.reload")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.html
new file mode 100644
index 0000000000..af37d0279e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.html
@@ -0,0 +1,116 @@
+---
+title: tabs.remove()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/remove
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - remove
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/remove
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Ferme un ou plusieurs onglets.</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 removing = browser.tabs.remove(
+ tabIds // integer or integer array
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabIds</code></dt>
+ <dd><code><code>integer</code></code> or <code><code>array</code> of <code><code>integer</code></code></code>. Les identifiants de l'onglet ou des onglets à fermer.</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 sans arguments lorsque tous les onglets spécifiés ont été supprimés ou que leurs invites <code>beforeunload</code> ont été traitées. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Fermer un seul onglet :</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log(`Removed`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var removing = browser.tabs.remove(2);
+removing.then(onRemoved, onError);</pre>
+
+<p>Fermer plusieurs onglets :</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log(`Removed`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var removing = browser.tabs.remove([15, 14, 1]);
+removing.then(onRemoved, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.remove")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.html
new file mode 100644
index 0000000000..3290985ea2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.html
@@ -0,0 +1,121 @@
+---
+title: tabs.removeCSS()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/removeCSS
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Mehod
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - removeCSS
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/removeCSS
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Supprime d'une page CSS précédemment injectée par un appel à {{WebExtAPIRef("tabs.insertCSS()")}}.</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">var removing = browser.tabs.removeCSS(
+ tabId, // optional integer
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet à partir duquel supprimer le CSS. Par défaut à l'onglet actif de la fenêtre en cours.</dd>
+ <dt><code>details</code></dt>
+ <dd>Un objet décrivant le CSS à retirer de la page. Il contient les propriétés suivantes :
+ <dl class="reference-values">
+ <dt></dt>
+ <dt><code>allFrames</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. si <code>true</code>, le code sera supprimé de toutes les images de la page en cours. si c'est <code>false</code>, le code est seulement retiré du cadre supérieur. Par défaut à <code>false</code>.</dd>
+ <dt><code>code</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. CSS à supprimer, en tant que chaîne de texte. Cela doit correspondre exactement à une chaîne CSS précédemment insérée dans la page en utilisant {{WebExtAPIRef("tabs.insertCSS()")}}.</dd>
+ <dt><code>cssOrigin</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Cela peut prendre l'une des deux valeurs suivantes : "user", pour CSS ajouté en tant que feuille de style utilisateur, ou "author" pour CSS ajouté en tant que feuille de style auteur. Si cette option a été définie précédemment par  {{WebExtAPIRef("tabs.insertCSS()")}}, elle doit correspondre exactement.</dd>
+ <dt><code>file</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Chemin d'accès à un fichier contenant le CSS à supprimer. Cela doit correspondre exactement à un fichier CSS préalablement inséré dans la page en utilisant {{WebExtAPIRef("tabs.insertCSS()")}}.</dd>
+ <dt><code>frameId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Le cadre à partir duquel supprimer le CSS. La valeur par défaut est <code>0</code> (l'image de niveau supérieur).</dd>
+ <dt><code>matchAboutBlank</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. si <code>true</code>, le CSS sera supprimé des cadres "about:blank" et "about:srcdoc" intégrés si votre extension a accès à leur document parent. Par défaut à <code>false</code>.</dd>
+ </dl>
+ </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 sans arguments lorsque tous les CSS ont été supprimés. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple ajoute du code CSS en utilisant {{WebExtAPIRef("tabs.insertCSS")}}, puis le supprime à nouveau lorsque l'utilisateur clique sur une action du navigateur :</p>
+
+<pre class="brush: js">var css = "body { border: 20px dotted pink; }";
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var insertingCSS = browser.tabs.insertCSS(2, {code: css});
+insertingCSS.then(null, onError);
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ var removing = browser.tabs.removeCSS(2, {code: css});
+ removing.then(null, onError);
+});</pre>
+
+<p>{{WebExtExamples}}</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.tabs.removeCSS")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.html
new file mode 100644
index 0000000000..6d0a57fcc3
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.html
@@ -0,0 +1,68 @@
+---
+title: tabs.saveAsPDF()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/saveAsPDF
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Reference
+ - WebExtensions
+ - saveAsPDF
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/saveAsPDF
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Enregistre la page en cours en tant que fichier PDF. Cela ouvrira une boîte de dialogue, fournie par le système d'exploitation sous-jacent, demandant à l'utilisateur où il veut enregistrer le fichier PDF.</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 saving = browser.tabs.saveAsPDF(
+ pageSettings // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>pageSettings</code></dt>
+ <dd><code>object</code>. Paramètres de la page enregistrée, en tant qu'objet  {{WebExtAPIRef("tabs.PageSettings")}}. Cet objet doit être donné, mais toutes ses propriétés sont facultatives. Toutes les propriétés non spécifiées ici recevront les valeurs par défaut répertoriées dans la documentation  {{WebExtAPIRef("tabs.PageSettings", "PageSettings")}}.</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 une chaîne d'état lorsque la boîte de dialogue sera fermée. La chaîne peut être l'une des :</p>
+
+<ul>
+ <li>"saved"</li>
+ <li>"replaced"</li>
+ <li>"canceled"</li>
+ <li>"not_saved"</li>
+ <li>"not_replaced"</li>
+</ul>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans cet exemple, un script d'arrière-plan écoute un clic sur une <a href="/fr/Add-ons/WebExtensions/Anatomy_of_a_WebExtension">action du navigateur</a>, puis tente d'enregistrer l'onglet actif en tant que fichier PDF, puis enregistre le résultat:</p>
+
+<pre class="brush: js">browser.browserAction.onClicked.addListener(() =&gt; {
+ browser.tabs.saveAsPDF({})
+ .then((status) =&gt; {
+ console.log(status);
+ });
+});</pre>
+
+
+
+<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.tabs.saveAsPDF")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.html
new file mode 100644
index 0000000000..c082a06bd4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.html
@@ -0,0 +1,148 @@
+---
+title: tabs.sendMessage()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/sendMessage
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onglets
+ - sendMessage
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/sendMessage
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Envoi un message unique depuis le script d'arrière plan d'extension (ou autre scripts accrédité, comme les scripts popup ou les scripts de page d'options) vers n'importe quel <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/Content_scripts">script de contenu </a>concerné par l'extension et qui s'execute dans l'onglet spécifié.</div>
+
+<div>Ce message sera reçu dans script de contenu par n'importe quel gestionnaire d'évènements à l'écoute de l'évènement</div>
+
+<p>{{WebExtAPIRef("runtime.onMessage")}}. Les gestionnaires d'évènements peuvent optionellement envoyé une réponse en retour au script d'arrière plan en utilisant l'argument <code>sendResponse</code>.</p>
+
+<p>Il s'agit d'une fonction asynchrone qui renvoit un objet <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</p>
+
+<div class="blockIndicator note">
+<p>Vous pouvez également utiliser une <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/Content_scripts#Communication_avec_les_scripts_darrière-plan">approche basée sur la connexion pour échanger des messages</a>.</p>
+</div>
+
+
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var sending = browser.tabs.sendMessage(
+ tabId, // integer
+ message, // any
+ options // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet qui contient le script de contenu auquel on veut envoyer un message.</dd>
+ <dt><code>message</code></dt>
+ <dd><code>any</code>. Un objet qui peut être sérialisé en JSON.</dd>
+ <dt><code>options</code>{{optional_inline}}</dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>frameId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>.  Envoie le message à un cadre (<em>iframe</em>) spécifique identifiée par <code>frameId</code> au lieu de tous les cadres de l'onglet. Le fait que le script de contenu soit exécuté dans tous les cadres dépend du paramètre <code>all_frames</code> dans la section  <a href="/fr/Add-ons/WebExtensions/manifest.json/content_scripts"><code>content_scripts</code></a> de manifest.json.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_renvoyée">Valeur renvoyée</h3>
+
+<p>Un objet <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera rempli avec une réponse objet au format JSON envoyé par le gestionnaire de message dans le script de contenu, ou sans arguments si le script de contenu n'a pas renvoyé de réponses. Si une erreur survient durant la connexion avec l'onglet spécifié, ou si n'importe quelle erreur survient, la promesse sera rejeté avec un message d'erreur. Si plusieurs trames répondent au message, la promesse est résolue en une des réponses</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Voici un exemple de script d'arrière plan qui envoi un message au script de contenu qui s'execute dans l'onglet actif quand le client clique sur l'icone de l'extension. Le script d'arrière plan s'attend également que le script de contenu lui renvoit une réponse:</p>
+
+<pre class="brush: js">// background-script.js
+"use strict";
+
+function onError(error) {
+ console.error(`Error: ${error}`);
+}
+
+function sendMessageToTabs(tabs) {
+ for (let tab of tabs) {
+ browser.tabs.sendMessage(
+ tab.id,
+ {greeting: "Hi from background script"}
+ ).then(response =&gt; {
+ console.log("Message from the content script:");
+ console.log(response.response);
+ }).catch(onError);
+ }
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ browser.tabs.query({
+ currentWindow: true,
+ active: true
+ }).then(sendMessageToTabs).catch(onError);
+});</pre>
+
+<p>Voici le script de contenu associé:</p>
+
+<pre class="brush: js">// content-script.js
+"use strict";
+
+browser.runtime.onMessage.addListener(request =&gt; {
+ console.log("Message from the background script:");
+ console.log(request.greeting);
+ return Promise.resolve({response: "Hi from content script"});
+});</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<h2 id="Compatiblité_des_navigateurs">Compatiblité des navigateurs</h2>
+
+<p class="hidden">La table de compatibilité de cette page est générée depuis des données établies. Si vous souhaitez contriburer aux données, merci de regarder <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> et de nous envoyer une pull-request.</p>
+
+<p>{{Compat("webextensions.api.tabs.sendMessage")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l'API Chromium <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.html
new file mode 100644
index 0000000000..55a2546655
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.html
@@ -0,0 +1,93 @@
+---
+title: tabs.sendRequest()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/sendRequest
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - sendRequest
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/sendRequest
+---
+<div>{{AddonSidebar()}}</div>
+
+<div class="warning">
+<p>Cette méthode a été dépréciée. Utilisez {{WebExtAPIRef("tabs.sendMessage()")}} à la place.</p>
+</div>
+
+<p>Envoie une seule requête au(x) script(s) de contenu dans l'onglet spécifié, avec un rappel facultatif à exécuter lorsqu'une réponse est renvoyée. L'événement {{WebExtAPIRef('extension.onRequest')}} est déclenché dans chaque script de contenu exécuté dans l'onglet spécifié pour l'extension en cours.</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 sending = browser.tabs.sendRequest(
+ tabId, // integer
+ request // any
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>.</dd>
+ <dt><code>request</code></dt>
+ <dd><code>any</code>.</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 l'objet de réponse JSON envoyé par le gestionnaire du message dans le script de contenu, ou sans arguments si le script de contenu n'a pas envoyé de réponse. Si une erreur survient lors de la connexion à l'onglet spécifié ou si une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</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.tabs.sendRequest")}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.html
new file mode 100644
index 0000000000..1a6402d61d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.html
@@ -0,0 +1,107 @@
+---
+title: tabs.setZoom()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/setZoom
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - setZoom
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/setZoom
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Effectue un zoom sur l'onglet spécifié.</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 zooming = browser.tabs.setZoom(
+ tabId, // optional integer
+ zoomFactor // number
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet à zoomer. Par défaut à l'onglet actif de la fenêtre en cours.</dd>
+ <dt><code>zoomFactor</code></dt>
+ <dd><code>number</code>. Le nouveau facteur de zoom. Utilisez une valeur de 0 ici pour régler l'onglet à son facteur de zoom par défaut actuel. Sinon, il doit s'agir d'un nombre compris entre 0,3 et 3, en spécifiant un facteur de zoom.</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> cela sera accompli sans arguments après que le facteur de zoom ait été changé. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Set the zoom factor for the current tab to 2:</p>
+
+<pre class="brush: js">function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var setting = browser.tabs.setZoom(2);
+setting.then(null, onError);</pre>
+
+<p>Set the zoom factor for the tab whose ID is 16 tab to 0.5:</p>
+
+<pre class="brush: js">function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var setting = browser.tabs.setZoom(16, 0.5);
+setting.then(null, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.setZoom")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.html
new file mode 100644
index 0000000000..38a51e8572
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.html
@@ -0,0 +1,102 @@
+---
+title: tabs.setZoomSettings()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/setZoomSettings
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - setZoomSettings
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/setZoomSettings
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit les paramètres de zoom pour l'onglet spécifié. Ces paramètres sont réinitialisés aux paramètres par défaut lors de la navigation dans l'onglet.</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 settingZoomSettings = browser.tabs.setZoomSettings(
+ tabId, // optional integer
+ zoomSettings // ZoomSettings
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet pour modifier les paramètres de zoom pour. Par défaut à l'onglet actif de la fenêtre en cours.</dd>
+ <dt><code>zoomSettings</code></dt>
+ <dd>{{WebExtAPIRef('tabs.ZoomSettings')}}. Définit comment les modifications de zoom sont gérées et à quelle portée.</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 sans arguments après que les paramètres de zoom ont été modifiés. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Désactiver le zoom pour l'onglet actuel :</p>
+
+<pre class="brush: js">function onSet() {
+ console.log(`Set zoom factor`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var setting = browser.tabs.setZoomSettings({mode:"disabled"});
+setting.then(onSet, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.setZoomSettings")}}</p>
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.html
new file mode 100644
index 0000000000..969264f963
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.html
@@ -0,0 +1,73 @@
+---
+title: tabs.show()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/show
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - show
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/show
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Affiche un ou plusieurs onglets précédemment masqués par un appel à {{WebExtAPIRef("tabs.hide")}}.</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 showing = browser.tabs.show(
+ tabIds // integer or integer array
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabIds</code></dt>
+ <dd><code><code>integer</code></code> or <code><code>array</code></code> of <code><code>integer</code></code>. Les ID de l'onglet ou des onglets à afficher.</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 accomplie sans arguments. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Afficher un seul onglet :</p>
+
+<pre class="brush: js">function onShown() {
+ console.log(`Shown`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.tabs.show(2).then(onShown, onError);</pre>
+
+<p>Afficher plusieurs onglets :</p>
+
+<pre class="brush: js">function onShown() {
+ console.log(`Shown`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.tabs.show([15, 14, 1]).then(onShown, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.show")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.html
new file mode 100644
index 0000000000..b0650208df
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.html
@@ -0,0 +1,127 @@
+---
+title: tabs.Tab
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/Tab
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Tab
+ - Type
+ - WebExtensions
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/Tab
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <strong><code>tabs.Tab</code></strong> contient des informations sur un onglet. Cela donne accès à des informations sur le contenu de l'onglet, la taille du contenu, les états spéciaux ou les restrictions en vigueur, etc.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>active</code></dt>
+ <dd><code>boolean</code>. Si l'onglet est actif dans sa fenêtre. Ceci peut être vrai même si la fenêtre de l'onglet n'est pas actuellement focalisée.</dd>
+ <dd>L'onglet actif est généralement l'onglet sélectionné. Cependant, sur Firefox pour Android, les popups d'extension s'ouvrent dans un nouvel onglet. Lorsque cet onglet popup est sélectionné, l'onglet actif sera plutôt celui dans lequel le popup s'est ouvert.</dd>
+ <dt><code>attention</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Indique si l'onglet attire l'attention. Par exemple, lorsque l'onglet affiche un dialogue modal, <code>attention</code> sera à <code>true</code>.</dd>
+ <dt><code>audible</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet n'est pas coupé: si l'onglet produit du son. Si l'onglet est coupé: si l'onglet produit un son, s'il n'est pas muet.</dd>
+ <dt><code>autoDiscardable</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet peut être supprimé automatiquement par le navigateur lorsque les ressources sont faibles.</dd>
+ <dt><code>cookieStoreId</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Le magasin de cookies de l'onglet. Si différents onglets peuvent avoir différents magasins de cookies (par exemple, pour prendre en charge l'<a href="https://wiki.mozilla.org/Security/Contextual_Identity_Project/Containers">identitié contextuelle</a>), vous pouvez passer cette option <code>storeId</code> dans différentes méthodes de l'API {{WebExtAPIRef("cookies")}}, pour définir et obtenir des cookies associés à Le magasin de cookies de cet onglet. Seulement présent si l'extension a la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"cookies".</code></dd>
+ <dt><code>discarded</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet est ignoré. Un onglet supprimé est celui dont le contenu a été déchargé de la mémoire, mais est toujours visible dans la bande d'onglets. Son contenu est rechargé la prochaine fois qu'il est activé.</dd>
+ <dt><code>favIconUrl</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. L'URL de la favicon de l'onglet. Seulement présent si l'extension a la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"tabs"</code>. Il peut également s'agir d'une chaîne vide si l'onglet est en cours de chargement.</dd>
+ <dt><code>height</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. La hauteur de l'onglet en pixels.</dd>
+ <dt><code>hidden</code></dt>
+ <dd><code>boolean</code>. Si l'onglet est caché.</dd>
+ <dt><code>highlighted</code></dt>
+ <dd><code>boolean</code>. Si l'onglet est en surbrillance, c'est-à-dire une partie de la sélection de l'onglet en cours. Un onglet actif est toujours mis en surbrillance, mais certains navigateurs peuvent permettre de mettre en surbrillance des onglets supplémentaires, par exemple en cliquant dessus tout en maintenant les touches <kbd>Ctrl</kbd>, <kbd>Shift</kbd> ou <kbd>⌘ Command</kbd> .</dd>
+ <dd>Firefox pour Android ne prend pas en charge la mise en surbrillance de plusieurs onglets, et le bureau Firefox nécessite la préférence  <code>browser.tabs.multiselect</code> (activé par défaut).</dd>
+ <dt><code>id</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet. Les ID d'onglet sont uniques dans une session de navigateur. L'ID d'onglet peut également être défini sur  {{WebExtAPIRef('tabs.TAB_ID_NONE')}} pour les fenêtres de navigateur qui n'hébergent pas d'onglets de contenu (par exemple, les fenêtres devtools).</dd>
+ <dt><code>incognito</code></dt>
+ <dd><code>boolean</code>. Si l'onglet est dans une fenêtre de navigation privée.</dd>
+ <dt><code>index</code></dt>
+ <dd><code>integer</code>. L'indice de base zéro de l'onglet dans sa fenêtre.</dd>
+ <dt><code>isArticle</code></dt>
+ <dd><code>boolean</code>. Vrai si l'onglet peut être <a href="/fr/Add-ons/WebExtensions/API/tabs/toggleReaderMode">rendu en mode lecteur</a>, sinon faux.</dd>
+ <dt><code>isInReaderMode</code></dt>
+ <dd><code>boolean</code>. Vrai si l'onglet en cours de <a href="/fr/Add-ons/WebExtensions/API/tabs/toggleReaderMode">rendu en mode lecteur</a>, sinon faux.</dd>
+ <dt><code>lastAccessed</code></dt>
+ <dd><code>double</code>. Heure à laquelle l'onglet a été accédé pour la dernière fois, en <a class="external external-icon" href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>mutedInfo</code> {{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('tabs.MutedInfo')}}. L'état en sourdine actuel pour l'onglet et la raison du dernier changement d'état.</dd>
+ <dt><code>openerTabId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet qui a ouvert cet onglet, le cas échéant. Cette propriété n'est présente que si l'onglet d'ouverture existe toujours.</dd>
+ <dt><code>pinned</code></dt>
+ <dd><code>boolean</code>. Si l'onglet est épinglé.</dd>
+ <dt><code>selected</code> {{deprecated_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet est sélectionné. Cette propriété a été remplacée par <code>active</code> et <code>highlighted</code>.</dd>
+ <dt><code>sessionId</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. L'identifiant de session utilisé pour identifier de façon unique un <code>onglet</code>  obtenu à partir de l'API {{WebExtAPIRef('sessions')}}.</dd>
+ <dt><code>status</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Soit <em>charger</em> ou <em>compléter</em>.</dd>
+ <dt><code>successorId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code> L'ID du successeur de l'onglet.</dd>
+ <dt><code>title</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Le titre de l'onglet. Seulement présent si l'extension à la <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"tabs".</code></dd>
+ <dt><code>url</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. L'URL du document que l'onglet affiche. Seulement présent si l'extension à la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> <code>"tabs"</code>.</dd>
+ <dt><code>width</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. La largeur de l'onglet en pixels</dd>
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. L'ID de la fenêtre qui héberge cet onglet.**</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.tabs.Tab", 10)}}</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/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.html
new file mode 100644
index 0000000000..e12d79bdde
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.html
@@ -0,0 +1,68 @@
+---
+title: tabs.TAB_ID_NONE
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/TAB_ID_NONE
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Property
+ - Reference
+ - TAB_ID_NONE
+ - WebExtensions
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/TAB_ID_NONE
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Une valeur d'ID spéciale donnée aux onglets qui ne sont pas des onglets du navigateur (par exemple, des onglets dans les fenêtres devtools).</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.tabs.TAB_ID_NONE")}}</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/tabs#property-TAB_ID_NONE"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.html
new file mode 100644
index 0000000000..7b32459ba0
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.html
@@ -0,0 +1,72 @@
+---
+title: tabs.TabStatus
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/TabStatus
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - TabStatus
+ - Type
+ - WebExtensions
+ - tazbs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/TabStatus
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Indique si l'onglet a terminé le chargement.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont : <code>"loading"</code> et <code>"complete"</code>.</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.tabs.TabStatus")}}</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/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.html
new file mode 100644
index 0000000000..aeaf6287c4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.html
@@ -0,0 +1,85 @@
+---
+title: tabs.toggleReaderMode()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/toggleReaderMode
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - tabs
+ - toogleReaderMode
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/toggleReaderMode
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Bascule en mode Lecteur pour l'onglet donné.</p>
+
+<ul>
+</ul>
+
+<p>Cette fonction permet de basculer en mode Lecteur pour l'onglet donné. Il prend un identifiant de tabulation en tant que paramètre: s'il est omis, l'onglet actuellement actif est basculé.</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>
+
+<p>Le mode Lecteur, également connu sous le nom de Reader View, est une fonction de navigateur qui permet à l'utilisateur de se concentrer plus facilement sur un article en :</p>
+
+<ul>
+ <li>masquage d'éléments de page non essentiels, tels que des encadrés, des bas de page et des annonces</li>
+ <li>changer la taille du texte de la page, le contraste et la disposition pour une meilleure lisibilité.</li>
+</ul>
+
+<p>Le mode Lecteur est utile spécifiquement pour les articles: c'est-à-dire, les pages qui ont un corps de texte comme caractéristique principale. Les pages qui n'ont pas d'article identifiable ne peuvent pas être affichées en mode Lecteur. Pour savoir si une page est un article, vérifiez la propriété <code>isArticle</code> de {{WebExtAPIRef("tabs.Tab")}}.</p>
+
+<p>Pour savoir si un onglet est déjà en mode Lecteur, vérifiez la propriété  <code>isInReaderMode</code> de {{WebExtAPIRef("tabs.Tab")}}. Pour suivre les onglets entrant ou sortant du mode Lecteur, vous devez suivre l'état actuel de tous les onglets et vérifier quand <code>isInReaderMode</code> change :</p>
+
+<pre class="brush: js">function handleUpdated(tabId, changeInfo, tabInfo) {
+ if (changeInfo.status === "complete") {
+ console.log(`Tab ${tabId} reader mode: ${tabInfo.isInReaderMode}`);
+ }
+}
+
+browser.tabs.onUpdated.addListener(handleUpdated);</pre>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var toggling = browser.tabs.toggleReaderMode(
+ tabId // optional integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet à afficher en mode Lecteur. Par défaut à l'onglet sélectionné de la fenêtre en cours.</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 sans argument lorsque l'onglet a été mis à jour. Si une erreur se produit (par exemple, parce que la page n'était pas un article), la promesse sera rejetée avec un message d'erreur..</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code bascule chaque nouvelle page en mode lecteur, si cette page est éligible pour cela :</p>
+
+<pre class="brush: js">function switchToReaderMode(tabId, changeInfo, tabInfo) {
+ if (changeInfo.isArticle) {
+ browser.tabs.toggleReaderMode(tabId);
+ }
+}
+
+browser.tabs.onUpdated.addListener(switchToReaderMode);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<p> </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.tabs.toggleReaderMode")}}</p>
+
+<p> </p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.html
new file mode 100644
index 0000000000..8fe8ee06ab
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.html
@@ -0,0 +1,172 @@
+---
+title: tabs.update()
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/update
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - Update
+ - WebExtensions
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/update
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Parcourez l'onglet vers une nouvelle URL ou modifiez d'autres propriétés de l'onglet.</p>
+
+<p>Pour utiliser cette fonction, transmettez l'ID de l'onglet à mettre à jour et un objet <code>updateProperties</code> contenant les propriétés que vous souhaitez mettre à jour. Les propriétés qui ne sont pas spécifiées dans  <code>updateProperties</code> ne sont pas modifiées.</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.tabs.update(
+ tabId, // optional integer
+ updateProperties // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Par défaut à l'onglet sélectionné de la fenêtre en cours.</dd>
+ <dt><code>updateProperties</code></dt>
+ <dd><code>object</code>. L'ensemble des propriétés à mettre à jour pour cet onglet. Pour en savoir plus sur ces propriétés, consultez la documentation  {{WebExtAPIRef("tabs.Tab")}}.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>active</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet doit devenir actif. Ne modifie pas le focus de la fenêtre (voir {{WebExtAPIRef('windows.update')}}). Si <code>true</code>, les onglets surlignés non actifs cesseront d'être surlignés. Si <code>false</code>, ne fait rien.</dd>
+ <dt><code>autoDiscardable</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet doit être supprimé automatiquement par le navigateur lorsque les ressources sont faibles.</dd>
+ <dt><code>highlighted</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Ajoute ou supprime l'onglet de la sélection courante. Si <code>true</code> et que l'onglet n'est pas surligné, il deviendra actif par défaut.</dd>
+ <dd>
+ <p>Si vous voulez seulement mettre en surbrillance l'onglet sans l'activer, Firefox accepte le réglage <code>highlighted</code> à <code>true</code> et <code>active</code> à <code>false</code>. D'autres navigateurs peuvent activer l'onglet même dans ce cas.</p>
+ </dd>
+ <dt><code>loadReplace</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>boolean</code>. Si la nouvelle URL doit remplacer l'ancienne URL dans l'historique de navigation de l'onglet, accessible via le bouton "Retour".</p>
+
+ <p>Par exemple, supposons que l'utilisateur crée un nouvel onglet en utilisant Ctrl + T. Par défaut, dans Firefox, cela chargerait "about:newtab". Si votre extension met alors à jour cette page en utilisant {{WebExtAPIRef("tabs.update")}}, sans <code>loadReplace</code>, le bouton "retour" sera activé et ramènera l'utilisateur à "about:newtab". Si l'extension définit <code>loadReplace</code>, le bouton "retour" sera désactivé et ce sera comme si l'URL fournie par l'extension était la première page visitée dans cet onglet.</p>
+
+ <p>Notez cependant que l'URL d'origine apparaîtra toujours dans l'historique global du navigateur.</p>
+ </dd>
+ <dt><code>muted</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet doit être coupé.</dd>
+ <dt><code>openerTabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de l'onglet qui a ouvert cet onglet. Si spécifié, l'onglet d'ouverture doit être dans la même fenêtre que cet onglet.</dd>
+ <dt><code>pinned</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet doit être épinglé.</dd>
+ <dt><code>selected</code> {{deprecated_inline}} {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si l'onglet doit être sélectionné. Cette propriété a été remplacée par <code>active</code> et <code>highlighted</code>.</dd>
+ <dt><code>successorTabId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'identifiant de l'ID du successeur de l'onglet.</dd>
+ <dt><code>url</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Une URL pour naviguer dans l'onglet. </dd>
+ <dd>Pour des raisons de sécurité, dans Firefox, il se peut que ce ne soit pas une URL privilégiée. Le passage de l'une des URL suivantes échouera, avec {{WebExtAPIRef("runtime.lastError")}} étant défini sur un message d'erreur :</dd>
+ <dd>
+ <ul>
+ <li>chrome: URLs</li>
+ <li>javascript: URLs</li>
+ <li>data: URLs</li>
+ <li>file: URLs (c'est-à-dire, fichiers sur le système de fichiers, cependant, pour utiliser un fichier empaqueté à l'intérieur de l'extension, voir ci-dessous)</li>
+ <li>confidentiel : URLs (par exemle, <code>about:config</code>, <code>about:addons</code>, <code>about:debugging</code>, <code>about:newtab</code>)<span style="display: none;"> </span>. Les URL non privilégiées (par exemple, <code>about:blank</code>) sont autorisées.</li>
+ </ul>
+ Pour charger une page fournie avec votre extension, spécifiez une URL absolue à partir du fichier manifest.json de l'extension. Par exemple : '/path/to/my-page.html'. Si vous omettez le premier caractère '/', l'URL est traitée comme une URL relative et différents navigateurs peuvent construire différentes URL absolues.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>A <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un objet {{WebExtAPIRef('tabs.Tab')}} contenant des détails sur l'onglet mis à jour. L'objet {{WebExtAPIRef('tabs.Tab')}} ne contient pas d' <code>url</code>, <code>title</code> et <code>favIconUrl</code> sauf si la permission <code>"tabs"</code> a été demandée. Si l'onglet n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Naviguez dans l'onglet actif de la fenêtre en cours pour https://developer.mozilla.org :</p>
+
+<pre class="brush: js">function onUpdated(tab) {
+ console.log(`Updated tab: ${tab.id}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var updating = browser.tabs.update({url: "https://developer.mozilla.org"});
+updating.then(onUpdated, onError);</pre>
+
+<p>Activez le premier onglet de la fenêtre actuelle et naviguez jusqu'à https://developer.mozilla.org:</p>
+
+<pre class="brush: js">function onUpdated(tab) {
+ console.log(`Updated tab: ${tab.id}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+function updateFirstTab(tabs) {
+ var updating = browser.tabs.update(tabs[0].id, {
+ active: true,
+ url: "https://developer.mozilla.org"
+ });
+ updating.then(onUpdated, onError);
+}
+
+var querying = browser.tabs.query({currentWindow:true});
+querying.then(updateFirstTab, onError);</pre>
+
+<p>{{WebExtExamples}}</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.tabs.update", 10)}}</p>
+
+
+
+<div class="note"><strong>Remerciements :</strong>
+
+<p>Cette API est basée sur l’API <a href="https://developer.chrome.com/extensions/tabs#method-executeScript"><code>chrome.tabs</code></a> de Chromium. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.html
new file mode 100644
index 0000000000..b952ce711b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.html
@@ -0,0 +1,79 @@
+---
+title: tabs.WindowType
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/WindowType
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - WindowType
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/WindowType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type de fenêtre qui héberge cet onglet.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:</p>
+
+<ul>
+ <li><strong>"normal"</strong></li>
+ <li><strong>"popup"</strong></li>
+ <li><strong>"panel"</strong></li>
+ <li><strong>"devtools"</strong></li>
+</ul>
+
+<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.tabs.WindowType")}}</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/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.html
new file mode 100644
index 0000000000..2447db6866
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.html
@@ -0,0 +1,81 @@
+---
+title: tabs.ZoomSettings
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/ZoomSettings
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - ZoomSettings
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/ZoomSettings
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit les paramètres de zoom pour un onglet : {{WebExtAPIRef("tabs.ZoomSettingsMode", "mode")}}, {{WebExtAPIRef("tabs.ZoomSettingsScope", "scope")}}, et le facteur de zoom par défaut.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>defaultZoomFactor</code>{{optional_inline}}</dt>
+ <dd><code>number</code>. Le niveau de zoom par défaut pour l'onglet actuel. Notez que ceci n'est utilisé que dans {{WebExtAPIRef("tabs.getZoomSettings")}}.</dd>
+ <dt><code>mode</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('tabs.ZoomSettingsMode')}}. Définit si les modifications de zoom sont gérées par le navigateur, par l'extension ou désactivées.</dd>
+ <dt><code>scope</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('tabs.ZoomSettingsScope')}}. Définit si les changements de zoom persisteront pour l'origine de la page ou ne prendront effet que dans cet onglet.</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.tabs.ZoomSettings")}}</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/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.html
new file mode 100644
index 0000000000..afd63cf859
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.html
@@ -0,0 +1,81 @@
+---
+title: tabs.ZoomSettingsMode
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/ZoomSettingsMode
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - ZoomSettingsMode
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/ZoomSettingsMode
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit comment les modifications de zoom sont gérées. Les extensions peuvent transférer cette valeur dans {{WebExtAPIRef("tabs.setZoomSettings()")}} pour contrôler la façon dont le navigateur gère les tentatives de modification des paramètres de zoom pour un onglet. Par défaut à "automatique".</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt>"automatic"</dt>
+ <dd>Les modifications de zoom sont gérées normalement par le navigateur.</dd>
+ <dt>"disabled"</dt>
+ <dd>Désactive tout zoom dans l'onglet. L'onglet revient au niveau de zoom par défaut, et toutes les modifications de zoom tentées seront ignorées.</dd>
+ <dt>"manual"</dt>
+ <dd>L'extension gère elle-même les changements de zoom, en écoutant l'événement {{WebExtAPIRef("tabs.onZoomChange")}} et en redimensionnant la page en conséquence. Ce mode ne prend pas en charge le zoom <code>per-origin</code> : il ignore la <code>portée</code> {{WebExtAPIRef("tabs.zoomSettings", "zoom setting")}} et utilise toujours la fonction <code>per-tab</code>.</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.tabs.ZoomSettingsMode")}}</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/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.html
new file mode 100644
index 0000000000..71c95f7e60
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.html
@@ -0,0 +1,79 @@
+---
+title: tabs.ZoomSettingsScope
+slug: Mozilla/Add-ons/WebExtensions/API/tabs/ZoomSettingsScope
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - ZoomSettingsScope
+ - tabs
+translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/ZoomSettingsScope
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Définit si les changements de zoom persisteront pour l'origine de la page ou ne prendront effet que dans cet onglet. La valeur par défaut est à <code>per-origin</code> lorsque   {{WebExtAPIRef("tabs.zoomSettingsMode")}} est "automatique", et est toujours <code>per-tab</code>.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt>"per-origin"</dt>
+ <dd>Tous les autres onglets ayant la même origine que cet onglet auront les changements de zoom qui leur sont appliqués. Cette étendue n'est disponible que si  if {{WebExtAPIRef("tabs.zoomSettingsMode")}} est "automatique".</dd>
+ <dt>"per-tab"</dt>
+ <dd>Les changements de zoom ne prennent effet que dans cet onglet et les changements de zoom dans les autres onglets n'affectent pas le zoom de cet onglet. De plus, les changements de zoom <code>per-tab</code> ont réinitialisés lors de la navigation ; la navigation dans un onglet charge toujours les pages avec <code>per-origin</code> de zoom d'origine.</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.tabs.ZoomSettingsScope")}}</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/tabs#method-executeScript"><code>chrome.tabs</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.html b/files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.html
new file mode 100644
index 0000000000..8e79c32bc7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.html
@@ -0,0 +1,66 @@
+---
+title: theme.getCurrent()
+slug: Mozilla/Add-ons/WebExtensions/API/theme/getCurrent
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - Theme
+ - WebExtensions
+ - getCurrent
+translation_of: Mozilla/Add-ons/WebExtensions/API/theme/getCurrent
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Retourne le theme utilisé actuellement sous la forme d'un objet {{WebExtAPIRef("theme.Theme", "Theme")}}. Les arguments disponible dans l'objet couleur sont listés dans les <a href="/fr/Add-ons/WebExtensions/manifest.json/theme#colors">propriétés de la couleur</a>.</p>
+
+<p>Il s'agit d'une fonction asynchrone qui renvoie un objet <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 getting = browser.theme.getCurrent(
+ <em>windowId</em> // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID d'une fenêtre. Si cela est indiqué, le thème appliqué sur cette fenêtre sera retourné. Sinon le thème appliqué sur la dernière fenêtre active sera retourné.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Un objet <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>. L'objet Promise sera résolu avec un objet {{WebExtAPIRef("theme.Theme")}} représentant le thème appliqué à la fenêtre spécifiée. Si aucun thème provenant d'une extension a été appliqué, l'objet Promise sera résolu avec un objet vide.</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.theme.getCurrent", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtient les propriétés des couleurs <code>accentcolor</code> et <code>toolbar</code> dans le thème actuel.</p>
+
+<pre class="brush: js">function getStyle(themeInfo)
+{
+ if (themeInfo.colors)
+ {
+ console.log("accent color : " + themeInfo.colors.accentcolor);
+ console.log("toolbar : " + themeInfo.colors.toolbar);
+ }
+}
+
+async function getCurrentThemeInfo()
+{
+ var themeInfo = await browser.theme.getCurrent();
+ getStyle(themeInfo);
+}
+
+getCurrentThemeInfo();</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/index.html b/files/fr/mozilla/add-ons/webextensions/api/theme/index.html
new file mode 100644
index 0000000000..9e7cd40392
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/theme/index.html
@@ -0,0 +1,50 @@
+---
+title: theme
+slug: Mozilla/Add-ons/WebExtensions/API/theme
+tags:
+ - Extensions
+ - Themes
+ - WebExtensions
+ - add-on
+translation_of: Mozilla/Add-ons/WebExtensions/API/theme
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Permet aux extensions du navigateur de mettre à jour le thème du navigateur.</p>
+
+<p>Pour utiliser cette API, une extension doit demander la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "theme" dans son fichier <a href="/fr/Add-ons/WebExtensions/manifest.json">manifest.json</a>.</p>
+
+<div class="note">
+<p>Note:  quand on met un thème en arrière plan, on doit déclarer la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> 'theme' et on ne peut pas utiliser la fonction <a href="/fr/Add-ons/WebExtensions/manifest.json/theme">theme</a> du manifest, puisque ce n'est pas compatible.</p>
+</div>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("theme.Theme")}}</dt>
+ <dd>Représente le contenu d'un thème.</dd>
+</dl>
+
+<h2 id="Fonctions">Fonctions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("theme.getCurrent()")}}</dt>
+ <dd>Retourne le thème actuel du navigateur.</dd>
+ <dt>{{WebExtAPIRef("theme.update()")}}</dt>
+ <dd>Met à jour à le thème du navigateur.</dd>
+ <dt>{{WebExtAPIRef("theme.reset()")}}</dt>
+ <dd>Supprime les mises à jour de thèmes effectuées lors d'un appel à {{WebExtAPIRef("theme.update()")}}.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("theme.onUpdated")}}</dt>
+ <dd>Emis quand le thème du navigateur change.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.theme")}}</p>
+
+<p>{{WebExtExamples("h2")}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.html b/files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.html
new file mode 100644
index 0000000000..6e06fbf0d6
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.html
@@ -0,0 +1,85 @@
+---
+title: theme.onUpdated
+slug: Mozilla/Add-ons/WebExtensions/API/theme/onUpdated
+tags:
+ - Add-ons
+ - Event
+ - Extensions
+ - Theme
+ - WebExtensions;
+translation_of: Mozilla/Add-ons/WebExtensions/API/theme/onUpdated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'événement se déclenche lorsqu'un thème fourni en tant qu'extension de navigateur est appliqué ou supprimé, plus précisément :</p>
+
+<ul>
+ <li>Quand un <a href="/fr/Add-ons/Themes/Theme_concepts#Static_themes">thème statique</a> est installé</li>
+ <li>Quand un <a href="/fr/Add-ons/WebExtensions/API/theme">thème dynamique </a>appelle <code><a href="/fr/Add-ons/WebExtensions/API/theme/update">theme.update()</a></code> ou <code><a href="/fr/Add-ons/WebExtensions/API/theme/update">theme.reset()</a></code></li>
+ <li>Quand un thème est désinstallé</li>
+</ul>
+
+<p>Notez que cet événement n'est pas déclenché pour les thèmes intégrés.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.theme.onUpdated.addListener(listener)
+browser.theme.onUpdated.removeListener(listener)
+browser.theme.onUpdated.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</code></dt>
+ <dd>Ajoute un écouteur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrête d'écouter cet événement. L'argument de <code>listener</code> est l'écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si <code>listener</code> est enregistré pour cet événement. Retourne <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 paramètres suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>updateInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant deux propriétés :</p>
+
+ <dl class="reference-values">
+ <dt><code>theme</code></dt>
+ <dd><code>object</code>. Si l'événement a été déclenché parce qu'un thème fourni par une extension a été supprimé, il s'agira d'un objet vide. Si il a été déclenché parce qu'un thème fourni par une extension a été appliqué, ce sera un objet {{WebExtAPIRef("theme.Theme")}} représentant le thème qui a été appliqué.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de la fenêtre pour laquelle le thème a été mis à jour. Si cette propriété n'est pas présente, cela signifie que le thème a été mise à jour globalement.</dd>
+ </dl>
+ </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.theme.onUpdated", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function handleUpdated(updateInfo) {
+ if (updateInfo.theme.colors) {
+ console.log(`Theme was applied: ${updateInfo.theme}`);
+ } else {
+ console.log(`Theme was removed`);
+ }
+}
+
+browser.theme.onUpdated.addListener(handleUpdated);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.html b/files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.html
new file mode 100644
index 0000000000..e4504afb4f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.html
@@ -0,0 +1,80 @@
+---
+title: theme.reset()
+slug: Mozilla/Add-ons/WebExtensions/API/theme/reset
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - Theme
+ - WebExtensions
+ - reset
+translation_of: Mozilla/Add-ons/WebExtensions/API/theme/reset
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Réinitialise tout thème appliqué à l'aide de la méthode {{WebExtAPIRef("theme.update()")}}</p>
+
+<p>Notez que cela réinitialisera toujours le thème au thème par défaut d'origine, même si l'utilisateur a sélectionné un thème différent avant que le thème de cette extension ait été appliqué (voir <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1415267">bug 1415267</a>).</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.theme.reset( windowsId // integer )
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID d'une fenêtre. Si cela est indiqué, le thème appliqué sur cette fenêtre sera réinitialisé. Sinon le thème sera réinitialisé sur toutes les fenêtres.</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.theme.reset")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code applique un thème, puis le supprime lorsque l'utilisateur clique sur une action du navigateur:</p>
+
+<pre class="brush: js">browser.theme.update(themes.night);
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+ browser.theme.reset();
+});</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.html b/files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.html
new file mode 100644
index 0000000000..f411c5af7f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.html
@@ -0,0 +1,25 @@
+---
+title: Theme
+slug: Mozilla/Add-ons/WebExtensions/API/theme/Theme
+tags:
+ - Extension
+ - Theme
+ - WebExtensions
+ - add-on
+translation_of: Mozilla/Add-ons/WebExtensions/API/theme/Theme
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet thème représente la spécification d'un thème.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Un <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Object">object</a> JSON qui prend les mêmes propriétés que la clé du manifest <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/theme">"theme"</a>.</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.theme.Theme")}}</p>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/update/index.html b/files/fr/mozilla/add-ons/webextensions/api/theme/update/index.html
new file mode 100644
index 0000000000..d935f69cad
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/theme/update/index.html
@@ -0,0 +1,86 @@
+---
+title: update
+slug: Mozilla/Add-ons/WebExtensions/API/theme/update
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Refernce
+ - Theme
+ - Update
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/theme/update
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Met à jour le thème du navigateur en fonction du contenu de l'objet {{WebExtAPIRef("theme.Theme", "Theme")}} donné.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.theme.update(
+ windowId, // integer
+ theme // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID d'une fenêtre. Si cela est prévu, le thème est appliqué uniquement à cette fenêtre. S'il est omis, le thème est appliqué à toutes les fenêtres.</dd>
+</dl>
+
+<dl>
+ <dt><code>theme</code></dt>
+ <dd><code>object</code>. Un objet {{WebExtAPIRef("theme.Theme", "Theme")}} spécifiant des valeurs pour les éléments de l'interface utilisateur que vous voulez modifier</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.theme.update", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Définit le thème du navigateur pour utiliser un graphique solaire avec une couleur de fond complémentaire:</p>
+
+<pre class="brush: js" dir="ltr">const suntheme = {
+ images: {
+ headerURL: 'sun.jpg',
+ },
+ colors: {
+ accentcolor: '#CF723F',
+ textcolor: '#111',
+ }
+};
+
+browser.theme.update(suntheme);</pre>
+
+<p dir="ltr">Définissez le thème uniquement pour la fenêtre actuellement ciblée:</p>
+
+<pre class="brush: js">const day = {
+ images: {
+ headerURL: 'sun.jpg',
+ },
+ colors: {
+ accentcolor: '#CF723F',
+ textcolor: '#111',
+ }
+};
+
+browser.menus.create({
+ id: "set-theme",
+ title: "set theme",
+ contexts: ["all"]
+});
+
+async function updateThemeForCurrentWindow() {
+ let currentWindow = await browser.windows.getLastFocused();
+ browser.theme.update(currentWindow.id, day);
+}
+
+browser.menus.onClicked.addListener(updateThemeForCurrentWindow);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.html
new file mode 100644
index 0000000000..2b737ff1ea
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.html
@@ -0,0 +1,145 @@
+---
+title: topSites.get()
+slug: Mozilla/Add-ons/WebExtensions/API/topSites/get
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - get
+ - topSites
+translation_of: Mozilla/Add-ons/WebExtensions/API/topSites/get
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient un tableau contenant des informations sur les pages que l'utilisateur a visitées souvent et récemment.</p>
+
+<p>Les navigateurs gardent une liste des pages que l'utilisateur visite souvent et récemment. Ils utilisent cette liste pour aider l'utilisateur à retourner à ces endroits facilement. Par exemple, Firefox fournit par défaut une liste des pages les plus visitées dans la page "Nouvel onglet".</p>
+
+<p>Pour déterminer quelles pages apparaissent dans la liste et dans quel ordre, le navigateur combine "fréquence" - combien de fois l'utilisateur a visité la page - et "récente" - combien de fois l'utilisateur a visité la page.</p>
+
+<p>Le navigateur peut ensuite appliquer un filtrage supplémentaire à cette liste avant de la présenter à l'utilisateur. Par exemple, dans Firefox, la page "Nouvel onglet" ne liste qu'une page par domaine, et l'utilisateur peut bloquer l'apparition de pages dans la liste.</p>
+
+<p>L'API <code>topSites.get()</code> permet à une extension d'accéder à cette liste. Appelé sans aucune option, il fournira la liste filtrée des pages, c'est-à-dire celle qui apparaît dans la page "Nouvel onglet". Cependant, en fournissant diverses options, il est possible pour une extension d'obtenir la liste non filtrée des pages.</p>
+
+<p>Il s'agit d'une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</p>
+
+<p>Pour utiliser l'API topSites, vous devez avoir la <a href="fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API</a> "topSites"</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var gettingTopSites = browser.topSites.get()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>options</code></dt>
+ <dd><code>object</code>. Options pour modifier la liste des pages retournées. Il peut s'agir de l'une des propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>includeBlocked</code> {{optional_inline}}</dt>
+ <dd><code>Boolean</code>. Inclure les pages que l'utilisateur a supprimées de la page "Nouvel onglet". La valeur par défaut est <code>false</code>.</dd>
+ <dt><code>includeFavicon</code> {{optional_inline}}</dt>
+ <dd><code>Boolean</code>.  Inclure les favicons dans les résultats, pour les pages où ils sont disponibles. La valeur par défaut est <code>false</code>.</dd>
+ <dt><code>includePinned</code> {{optional_inline}}</dt>
+ <dd><code>Boolean</code>. inclure les sites que l'utilisateur a épinglés dans le nouvel onglet Firefox.<br>
+ Par défaut à <code>false</code>.</dd>
+ <dt><code>includeSearchShortcuts</code> {{optional_inline}}</dt>
+ <dd><code>Boolean</code>.  Inclut les raccourcis de recherche qui apparaissent dans le nouvel onglet Firefox.<br>
+ Par défaut à <code>false</code>.</dd>
+ <dt><code>limit</code> {{optional_inline}}</dt>
+ <dd><code>Integer</code>. Le nombre de pages à retourner. Ce chiffre doit être compris entre 1 et 100 inclusivement. La valeur par défaut est 12.</dd>
+ <dt><code>onePerDomain</code> {{optional_inline}}</dt>
+ <dd><code>Boolean</code>. N'incluez qu'une seule page par domaine. La valeur par défaut est <code>true</code>.</dd>
+ </dl>
+ </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>. Ceci sera réalisé avec un tableau d'objets  {{WebExtAPIRef("topSites.MostVisitedURL", "MostVisitedURL")}}, un pour chaque site listé dans la page "Nouvel onglet" du navigateur. Si une erreur se produit, la presse sera rejetée avec un message d'erreur.</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.topSites.get")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code enregistre le titre et l'UL de tous les sites dans la page "Nouvel onglet" :</p>
+
+<pre class="brush: js">function logTopSites(topSitesArray) {
+ for (topSite of topSitesArray) {
+ console.log(`Title: ${topSite.title}, URL: ${topSite.url}`);
+ }
+}
+
+function onError(error) {
+ console.log(error);
+}
+
+var gettingTopSites = browser.topSites.get();
+gettingTopSites.then(logTopSites, onError);
+</pre>
+
+<p>Ce code enregistre le titre et l'URL de toutes les pages d'accueil, y compris celles que l'utilisateur a bloquées, et peut inclure plusieurs pages dans le même domaine :</p>
+
+<pre class="brush: js">function logTopSites(topSitesArray) {
+ for (topSite of topSitesArray) {
+ console.log(`Title: ${topSite.title}, URL: ${topSite.url}`);
+ }
+}
+
+function onError(error) {
+ console.log(error);
+}
+
+<span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body"><span class="cm-keyword">var</span> <span class="cm-def">gettingTopSites</span> <span class="cm-operator">=</span> <span class="cm-variable">browser</span>.<span class="cm-property">topSites</span>.<span class="cm-property">get</span>({</span></span></span>
+<span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body"><span class="cm-property"> includeBlocked</span>: <span class="cm-atom">true</span>,</span></span></span>
+<span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body"><span class="cm-property"> onePerDomain</span>: <span class="cm-atom">false</span></span></span></span>
+<span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body">});</span></span></span>
+
+<span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body"><span class="cm-variable">gettingTopSites</span>.<span class="cm-property">then</span>(<span class="cm-variable">logTopSites</span>, <span class="cm-variable">onError</span>);</span></span></span></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/topSites"><code>chrome.topSites</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/topsites/index.html b/files/fr/mozilla/add-ons/webextensions/api/topsites/index.html
new file mode 100644
index 0000000000..b702764b9f
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/topsites/index.html
@@ -0,0 +1,81 @@
+---
+title: topSites
+slug: Mozilla/Add-ons/WebExtensions/API/topSites
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - topSites
+translation_of: Mozilla/Add-ons/WebExtensions/API/topSites
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Utilisez l'API topSites pour obtenir un tableau contenant les pages que l'utilisateur a visitées  fréquemment.</p>
+
+<p>Les navigateurs maintiennent ceci pour aider l'utilisateur à retourner à ces endroits facilement. Par exemple, Firefox fournit par défaut une liste des pages les plus visitées dans la page "Nouvel onglet".</p>
+
+<p>Pour utiliser l'API topSites, vous devez disposez de l' <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">API permission</a> "topSites".</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("topSites.MostVisitedURL")}}</dt>
+ <dd>Un objet contenant le titre et l'URL d'un site web.</dd>
+</dl>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("topSites.get()")}}</dt>
+ <dd>Obtient un tableau contenant tous les sites répertoriés dans la page "Nouvel onglet" du navigateur. Notez que le nombre de sites renvoyés ici est spécifique au navigateur, et les sites particuliers retournés seront probablement spécifiques à l'utilisateur, en fonction de leur historique de navigation.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_Navigateur">Compatibilité du Navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.topSites")}}</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/topSites"><code>chrome.topSites</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.html b/files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.html
new file mode 100644
index 0000000000..3b862b78ac
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.html
@@ -0,0 +1,79 @@
+---
+title: topSites.MostVisitedURL
+slug: Mozilla/Add-ons/WebExtensions/API/topSites/MostVisitedURL
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - MostVisitedURL
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - topSites
+translation_of: Mozilla/Add-ons/WebExtensions/API/topSites/MostVisitedURL
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type <code>MostVisitedURL</code> contient deux propriétés : le titre de la page et son URL.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Values of this type are objects. They contain the following properties:</p>
+
+<dl class="reference-values">
+ <dt><code>favicon</code> {{optional_inline}}</dt>
+ <dd><code>String</code>. Une donnée : URL contenant le favicon de la page, si <code>includeFavicon</code> était donné dans {{WebExtAPIRef("topSites.get()")}} et le favicon était disponible.</dd>
+ <dt><code>title</code></dt>
+ <dd><code>String</code>. Le titre de la page.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>String</code>. L'URL de la page.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.topSites.MostVisitedURL")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<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/topSites"><code>chrome.topSites</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.html b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.html
new file mode 100644
index 0000000000..20428e77c8
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.html
@@ -0,0 +1,98 @@
+---
+title: clear()
+slug: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting/clear
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - Types
+ - WebExtensions
+ - clear
+translation_of: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting/clear
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Utilisez <code>BrowserSetting.clear()</code> pour effacer toutes les modification apportées à l'extension du navigateur. Le paramètre du navigateur revient à sa valeur précédente.</p>
+
+<p>L'extensions annulera également le contrôle du paramètre, permettant une extension avec une ancienne précédente (c'est à dire, une extensions qui a été installée avant celle-ci) à modifier la paramètre. Voir <code><a href="/fr/Add-ons/WebExtensions/API/privacy/BrowserSetting/set">BrowserSetting.set()</a></code> pour en savoir plus sur le contrôle des paramètres.</p>
+
+<p>Il s'agit d'une fonction asynchrone qui renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>. Si la compensation a échoué, la promesse renvoie une valeur à <code>false</code>. Si l'effacement de la valeur a réussi, il se résout à <code>true</code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var clearing = setting.clear(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd>Un objet vide</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 rempli avec un <code>booléen</code>: <code>true</code> Si le paramètre est effacé, <code>false</code> sinon.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>Voir {{WebExtAPIRef("types.BrowserSetting")}}.</p>
+
+<h2 id="Exemple">Exemple</h2>
+
+<p>Effacer le paramètre <code>webRTCIPHandlingPolicy</code>  :</p>
+
+<pre class="brush: js">function onCleared(result) {
+ if (result) {
+ console.log("Setting was cleared");
+ } else {
+ console.log("Setting was not cleared");
+ }
+}
+
+var clearing = browser.privacy.network.webRTCIPHandlingPolicy.clear({});
+clearing.then(onCleared);</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/types"><code>chrome.types</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.html
new file mode 100644
index 0000000000..fb3ef69fdc
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.html
@@ -0,0 +1,121 @@
+---
+title: get()
+slug: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting/get
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - Types
+ - WebExtensions
+ - get
+translation_of: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting/get
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La méthode  <code>BrowserSetting.get()</code> obtient la valeur actuelle du paramètre du navigateur et une énumération indiquant comment la valeur du paramètre est actuellement controléee..</p>
+
+<p>Il s'agit d'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 getting = setting.get(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>détails</code></dt>
+ <dd>Un objet vide.</dd>
+</dl>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un objet avec les propriétés suivantes :</p>
+
+<dl>
+ <dt><code>value</code></dt>
+ <dd>La valeur du paramètre. Le type de cette propriété est déterminé par le paramètre particulier.</dd>
+ <dt><code>levelOfControl</code></dt>
+ <dd><code>string</code>. Cela représente la façon dont la paramètre est actuellement controllé. Vous pouvez l'utiliser pour vérifier si vous pouvez modifier le paramètre. Voir <code><a href="/fr/Add-ons/WebExtensions/API/privacy/BrowserSetting/set">BrowserSetting.set()</a></code> pour plus détails. Sa valeur peut-être l'une des suivantes :
+ <table class="fullwidth-table standard-table">
+ <tbody>
+ <tr>
+ <td><code>"not_controllable"</code></td>
+ <td>Les extensions ne sont pas autorisées à modifier le paramètre.</td>
+ </tr>
+ <tr>
+ <td><code>"controlled_by_other_extensions"</code></td>
+ <td>Une autre extension qui a été installée après celle-ci a modifié ce paramètre</td>
+ </tr>
+ <tr>
+ <td><code>"controllable_by_this_extension"</code></td>
+ <td>Cette extension est autorisée à modifier le paramètre.</td>
+ </tr>
+ <tr>
+ <td><code>"controlled_by_this_extension"</code></td>
+ <td>Cette extensions a déjà modifi le paramètre.</td>
+ </tr>
+ </tbody>
+ </table>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>Voir {{WebExtAPIRef("types.BrowserSetting")}}.</p>
+
+<h2 id="Exemple">Exemple</h2>
+
+<p>Enregitrez la valeur et le niveau de contrôle de la propriété <code>networkPredictionEnabled</code> de l'objet {{WebExtAPIRef("privacy.network")}}, pour les fenêtres de navigations privées. Notez que cela nécessite la permission du navigateur "privacy".</p>
+
+<pre class="brush: js">var getting = browser.privacy.network.networkPredictionEnabled.get({});
+
+getting.then((got) =&gt; {
+ console.log(`Value: ${got.value}`);
+ console.log(`Control: ${got.levelOfControl}`);
+});
+</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/types"><code>chrome.types</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.html b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.html
new file mode 100644
index 0000000000..27e2adf49c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.html
@@ -0,0 +1,85 @@
+---
+title: BrowserSetting
+slug: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting
+tags:
+ - API
+ - Add-ons
+ - BrowserSetting
+ - Extensions
+ - Reference
+ - Type
+ - Types
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un <code>BrowserSetting</code> est un objet représentant un paramètre de navigateur.</p>
+
+<p>Il fournit des méthodes pour définir et obtenir la valeur sous-jacente du paramètre, pour effacer tout changement que vous avez apporté et pour écouter les modifications apportées à sa valeur.</p>
+
+<p>Notez que si cet objet est basé sur le type <a href="https://developer.chrome.com/extensions/types#type-ChromeSetting">ChromeSetting</a>, cet objet ne fait pas de distinction entre le réglage de la valeur dans les fenêtres de navigation privées. Cela  signifie que toutes les parties de l'API relatives à la navigation privée (telles que l'option <code>scope</code> de <code>ChromeSetting.set()</code>) ne sont pas implémentées.</p>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("types.BrowserSetting.get()")}}</dt>
+ <dd>Obtenez la valeur actuelle du paramètre et une énumération représentant la façon dont le paramètre est actuellement contrôlé.</dd>
+ <dt>{{WebExtAPIRef("types.BrowserSetting.set()")}}</dt>
+ <dd>Réglez le paramètre sur une nouvelle valeur.</dd>
+ <dt>{{WebExtAPIRef("types.BrowserSetting.clear()")}}</dt>
+ <dd>Effacez toute modification apportée au paramètre par cette extension.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("types.BrowserSetting.onChange")}}</dt>
+ <dd>Définit lorsque la valeur du paramètre change.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<h2 id="Browser_compatibility">Browser compatibility</h2>
+
+
+
+<p>{{Compat("webextensions.api.types.BrowserSetting")}}</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/types"><code>chrome.types</code></a>.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.html b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.html
new file mode 100644
index 0000000000..bd29ceaec4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.html
@@ -0,0 +1,128 @@
+---
+title: onChange
+slug: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting/onChange
+tags:
+ - API
+ - Add-ons
+ - BrowserSetting
+ - Event
+ - Extensions
+ - Privacy
+ - Reference
+ - WebExtensions
+ - onchange
+translation_of: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting/onChange
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>L'événement <code>BrowserSetting.onChanged</code> est déclenché lorsque le paramètre est modifié.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">BrowserSetting.onChanged.addListener(listener)
+BrowserSetting.onChanged.removeListener(listener)
+BrowserSetting.onChanged.hasListener(listener)
+</pre>
+
+<p>Les événement ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(listener)</code></dt>
+ <dd>Ajout un auditeur à 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'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifier si l'auditeur est enregistré pour cet événement. Renvoie <code>true</code> si elle écoute, <code>false</code> sinon.</dd>
+</dl>
+
+<h2 id="Syntaxe_addListener">Syntaxe addListener</h2>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>callback</code></dt>
+ <dd>
+ <p>Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd>Un <code>object</code> contenant des détails sur le changement survenu. Ses propriété sont les suivantes :
+ <dl class="reference-values">
+ <dt><code>value</code></dt>
+ <dd>La nouvelle valeur du paramètre. Le type de cette propriété est déterminé par le paramètre particulier.</dd>
+ <dt><code>levelOfControl</code></dt>
+ <dd><code>string</code>. Cela représente la façon dont le paramètre est actuellement controlé. Vous pouvez l'utiliser pour vérifier si vous pouvez modifier le réglage. Voir <code><a href="/fr/Add-ons/WebExtensions/API/privacy/BrowserSetting/set">BrowserSetting.set()</a></code> pour plus détails. Sa valeur peut-être l'une des suivantes :
+ <table class="fullwidth-table standard-table">
+ <tbody>
+ <tr>
+ <td><code>"not_controllable"</code></td>
+ <td>Les extensions ne sont pas autorisées à modifier ce paramètre.</td>
+ </tr>
+ <tr>
+ <td><code>"controlled_by_other_extensions"</code></td>
+ <td>Une autre extensions qui a été installée après celle-ci a modifié ce paramètre.</td>
+ </tr>
+ <tr>
+ <td><code>"controllable_by_this_extension"</code></td>
+ <td>Cette extensions est autorisée à modifier le paramètre.</td>
+ </tr>
+ <tr>
+ <td><code>controlled_by_this_extension"</code></td>
+ <td>Cette extensions a déjà modifié le paramètre.</td>
+ </tr>
+ </tbody>
+ </table>
+ </dd>
+ </dl>
+ </dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.types.BrowserSetting.onChange")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<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/types"><code>chrome.types</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.html b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.html
new file mode 100644
index 0000000000..36d7b7ae6d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.html
@@ -0,0 +1,127 @@
+---
+title: set()
+slug: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting/set
+tags:
+ - API
+ - Add-ons
+ - BrowserSetting
+ - Extensions
+ - Privacy
+ - Reference
+ - WebExtensions
+ - set
+translation_of: Mozilla/Add-ons/WebExtensions/API/types/BrowserSetting/set
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Utilisez <code>BrowserSetting.set()</code> pour modifier le paramètre du navigateur vers une nouvelle valeur.</p>
+
+<p>Certaines règles peuvent être restreintes lorsque les extensions sont capables de modifier les paramètres :</p>
+
+<ul>
+ <li>Certains paramètres sont verrouillés, de sorte qu'ils ne peuvent pas être modifiés par les extensions</li>
+ <li>Si plusieurs extensions tentent de modifier le même paramètre, les extensions reçoivent un ordre de priorité en fonction de leur installation. Plus récemment, les extensions installées ont priorité sur l'extension installée récemment.</li>
+</ul>
+
+<p>Cela signifie que si l'extension X essaie de modifier un paramètre :</p>
+
+<ol>
+ <li>Si le réglage est verrouillé, le réglage n'est pas modifié. Cependant, le changement de X est rappelé, et il est stocké dans une file d'attente, commandé par la priorité de X par rapport à toutes les autres extensions qui ont essayé de modifier le paramètre. Si le réglage devient déverrouillé plus tard, la première extension de la file d'attente permet de modifier le réglage.</li>
+ <li>Sinon, si aucune autre extension n'a déjà changé le paramètre, X réussit à modifier le réglage, puis on dit "contrôler" le réglage.</li>
+ <li>Sinon, si une extension de priorité inférieure Y a déjà changé le paramètre, X réussit à modifier le réglage et maintenant le réglage.  However, Y's change is remembered, and is stored in a queue in precedence order. Cependant, le changement de Y est rappelé et est stocké dans une file d'attente dans l'ordre de priorité. Si X efface ensuite sa valeur, ou si X est désactivé ou désinstallé, la première extension de la file d'attente permet de modifier sa valeur.</li>
+ <li>Sinon, si une extension de priorité supérieure Z a déjà changé le paramètre, X ne réussit pas à modifier le paramètre, mais sa modification est mise en file d'attente. Si Z efface ensuite sa valeur, ou si Z est désactivé ou désinstallé, la première extension de la file d'attente permet de modifier sa valeur.</li>
+</ol>
+
+<p>Une extension peut déterminer lequel de ces scénarios s'applique en examinant la propriété "<code>levelOfControl</code>" renvoyée d'un appel à <code><a href="/fr/Add-ons/WebExtensions/API/privacy/BrowserSetting/get">BrowserSetting.get()</a></code>.</p>
+
+<p>la méthode <code><a href="/fr/Add-ons/WebExtensions/API/privacy/BrowserSetting/set">BrowserSetting.set()</a></code> renvoie une promesse qui résout un booléen : Si une tentative de modification d'un paramètre aboutit à la modification du paramètre (scenarios 2 et 3 ci-dessus) le booléen est  <code>true</code>: sinon il est <code>false</code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var setting = setting.set(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd>Un objet qui doit contenir la propriété suivante :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>value</code></dt>
+ <dd><code>any</code>. La valeur à laquelle vous souhaitez modifier le paramètre. Son type dépend du réglage particulier.</dd>
+ </dl>
+ </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 <code>booléen</code>: <code>true</code> si le paramètre a été modifié, <code>false</code> sinon (par exemple, parce que l'extension n'a pas contrôlé le paramètre).</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>Voir {{WebExtAPIRef("types.BrowserSetting")}}.</p>
+
+<h2 id="Exemple">Exemple</h2>
+
+<p>Modifiez le paramètre <code>hyperlinkAuditingEnabled</code> (ceci nécessite la permission "privacy") :</p>
+
+<pre class="brush: js">function onSet(result) {
+ if (result) {
+ console.log("Value was updated");
+ } else {
+ console.log("Value was not updated");
+ }
+}
+
+browser.browserAction.onClicked.addListener(() =&gt; {
+
+ var setting = browser.privacy.websites.hyperlinkAuditingEnabled.set({
+ value: false
+ });
+ setting.then(onSet);
+
+});
+</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/types"><code>chrome.types</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/index.html b/files/fr/mozilla/add-ons/webextensions/api/types/index.html
new file mode 100644
index 0000000000..bff6b0b60c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/types/index.html
@@ -0,0 +1,64 @@
+---
+title: types
+slug: Mozilla/Add-ons/WebExtensions/API/types
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - Types
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/types
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Définit le type <code>BrowserSetting</code> , qui est utilisé pour représenter un paramètre de navigateur.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("types.BrowserSetting")}}</dt>
+ <dd>Représente un paramètre de navigateur.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<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/types"><code>chrome.types</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/apiscript/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/apiscript/index.html
new file mode 100644
index 0000000000..1af1fed65e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/apiscript/index.html
@@ -0,0 +1,43 @@
+---
+title: APIScript
+slug: Mozilla/Add-ons/WebExtensions/API/userScripts/APIScript
+tags:
+ - APIScript
+ - Add-ons
+ - Custimisation
+ - Extensions
+ - Firefox
+ - Reference
+ - WebExtensions
+ - userScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts/APIScript
+---
+<p>{{AddOnSidebar}}</p>
+
+<p>L'APIScript userScripts est un type spécial d'extension Content Script.</p>
+
+<p>Comme un script de contenu d'extension régulier :</p>
+
+<ul>
+ <li>Il s'exécute dans les processus de contenu..</li>
+ <li>Il a accès à la fenêtre et aux globes de documents relatifs à la page Web à laquelle il est attaché.</li>
+ <li>Il a accès au même sous-ensemble d'API WebExtension généralement disponibles dans un script de contenu.</li>
+</ul>
+
+<p>Contrairement à une extension régulière Content Script :</p>
+
+<ul>
+ <li>Il doit être déclaré dans le manifeste en utilisant la propriété user_scripts.api_script.</li>
+</ul>
+
+<pre class="brush: json">manifest.json
+{
+ ...
+ "user_scripts": {
+ "api_script": "apiscript.js"
+ }
+}</pre>
+
+<p>Il est exécuté automatiquement sur n'importe quelle page Web correspondant à userScript enregistrée par la même extension, avant qu'un userScript correspondant ne soit exécuté.</p>
+
+<p>Il a accès à l'API Event browser.userScripts.onBeforeScript que l'APIScript peut utiliser pour inscrire un auditeur à appeler juste avant qu'un userScript correspondant soit exécuté, ce qui permet à l'APIScript d'exporter un ensemble de méthodes API personnalisées pour le rendre disponible à l'userScript.</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/index.html
new file mode 100644
index 0000000000..c8e84968e7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/index.html
@@ -0,0 +1,70 @@
+---
+title: userScripts
+slug: Mozilla/Add-ons/WebExtensions/API/userScripts
+tags:
+ - Add-ons
+ - Customisation
+ - Extensions
+ - Firefox
+ - Mozilla
+ - Reference
+ - WebExtensions
+ - userScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts
+---
+<p>{{AddonSidebar}}</p>
+
+<p>Utilisez cette API pour enregistrer des scripts utilisateurs, des scripts tiers conçus pour manipuler des pages web ou fournir de nouvelles fonctionnalités. L'enregistrement d'un script utilisateur indique au navigateur de joindre le script aux pages qui correspondent aux modèles d'URL spécifiés lors de l'enregistrement.</p>
+
+<p>Cette API offre des capacités similaires à {{WebExtAPIRef("contentScripts")}} mais avec des fonctionnalités adaptées à la gestion de scripts tiers :</p>
+
+<ul>
+ <li>l'exécution se fait dans une sandbox isolée : chaque script utilisateur est exécuté dans une sandbox isolée au sein des processus de contenu web, ce qui empêche toute interférence accidentelle ou délibérée entre les scripts.</li>
+ <li>l'accès à la <code>fenêtre</code> et aux valeurs globales du <code>document</code> liées à la page web à laquelle le script utilisateur est attaché.</li>
+ <li>aucun accès aux API de WebExtension ou aux autorisations associées accordées à l'extension : le script API, qui hérite des autorisations de l'extension, peut fournir des API de WebExtension packagées aux scripts utilisateur enregistrés. Un script API est déclaré dans le fichier manifeste de l'extension en utilisant la clé du manifeste "user_scripts".</li>
+</ul>
+
+<div class="blockIndicator warning">
+<p>Cette API requiert la présence de la clé <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">user_scripts</a></code> dans le manifest.json, même si aucun script API n'est spécifié. Par exemple, <code>user_scripts: {}</code>.</p>
+</div>
+
+<p>Pour utiliser l'API, appelez <code>{{WebExtAPIRef("userScripts.register","register()")}}</code> en passant un objet définissant les scripts à enregistrer. La méthode renvoie une promesse qui est résolue par un objet  <code>{{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}}</code>.</p>
+
+<div class="blockIndicator note">
+<p>Les scripts utilisateur sont désenregistrés lorsque la page d'extension correspondante (à partir de laquelle les scripts utilisateur ont été enregistrés) est déchargée, vous devez donc enregistrer un script utilisateur depuis une page d'extension qui persiste au moins aussi longtemps que vous voulez que les scripts utilisateur restent enregistrés</p>
+</div>
+
+<dl>
+</dl>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("userScripts.RegisteredUserScript")}}</dt>
+ <dd>L'<code>object</code> renvoyé par la méthode  {{WebExtAPIRef("userScripts.register","register()")}}. Il représente les scripts utilisateur enregistrés et est utilisé pour désenregistrer les scripts utilisateur.</dd>
+</dl>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("userScripts.register()")}}</dt>
+ <dd>Enregistre les scripts utilisateur donnés.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("userScripts.onBeforeScript")}}</dt>
+ <dd>Un événement disponible pour le script API, enregistré dans <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">"user_scripts"</a></code>, qui s'exécute avant qu'un script utilisateur ne s'exécute. Utilisez-le pour déclencher l'exportation des API supplémentaires fournies par le script API, afin qu'elles soient disponibles pour le script utilisateur.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.userScripts", 10, 1)}}</p>
+
+<h2 id="Voir_aussi">Voir aussi</h2>
+
+<ul>
+ <li><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/userScripts/Working_with_userScripts">Working with <code>userScripts</code></a></li>
+ <li>{{WebExtAPIRef("contentScripts","browser.contentScripts")}}</li>
+</ul>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.html
new file mode 100644
index 0000000000..0af37da17d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.html
@@ -0,0 +1,51 @@
+---
+title: userScripts.onBeforeScript
+slug: Mozilla/Add-ons/WebExtensions/API/userScripts/onBeforeScript
+tags:
+ - Add-ons
+ - Addons
+ - Customisation
+ - Extensions
+ - Firefox
+ - Mozilla
+ - Reference
+ - User Scripts API
+ - WebExtensions
+ - userScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts/onBeforeScript
+---
+<div>{{AddonSidebar}}</div>
+
+<div>La propriété <strong><code>onBeforeScript</code></strong> de l'événement {{WebExtAPIRef("userScripts","browser.userScripts")}} est un {{DOMxRef("EventHandler")}} qui traite {{event("beforeScript")}}.</div>
+
+<p>L'événement <code>beforeScript</code> se déclenche juste avant l'exécution d'un script utilisateur correspondant, permettant à APIScript d'exporter des méthodes API personnalisées vers le script utilisateur.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox"><code>browser.userScripts.onBeforeScript = </code>functionRef
+<code>browser.userScripts.onBeforeScript.addListener(</code>functionRef<code>)
+browser.userScripts.onBeforeScript.removeListener(</code>functionRef<code>)
+browser.userScripts.onBeforeScript.hasListener(</code>functionRef<code>)</code>
+</pre>
+
+<h3 id="Value">Value</h3>
+
+<p><code>functionRef</code> est la function de gestionnaire à appeler lorsque l'événement <code>beforeScript</code>  du script utilisateur se déclenche.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Voir <a href="https://blog.mozilla.org/addons/2019/03/26/extensions-in-firefox-67/#userscripts">ce billet de blog</a> pour des exemples détaillés</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<div>
+
+
+<p>{{Compat("webextensions.api.userScripts.onBeforeScript")}}</p>
+</div>
+
+<h2 id="Voir_aussi">Voir aussi</h2>
+
+<ul>
+ <li>{{WebExtAPIRef("contentScripts")}}</li>
+</ul>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.html
new file mode 100644
index 0000000000..89800b16d4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.html
@@ -0,0 +1,78 @@
+---
+title: userScripts.register()
+slug: Mozilla/Add-ons/WebExtensions/API/userScripts/register
+tags:
+ - Add-ons
+ - Extensions
+ - Méthode
+ - User Scripts API
+ - WebExtensions
+ - register
+ - userScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts/register
+---
+<p>{{AddonSidebar}}</p>
+
+<p>Dans les pages d'une extension (comme la page d'arrière plan), l'API userScripts fournit une méthode API  {{WebExtAPIRef("userScripts.register","register()")}}. Cette méthode est très similaire à la méthode API  {{WebExtAPIRef("contentScripts.register","contentScripts.register()")}} (par exemple, ils retournent tous les deux une promise qui est résolue à un objet API qui fournit un   {{WebExtAPIRef("userScripts.RegisteredUserScript.unregister","unregister()")}} pour la désinscription du script enregistré de tous les processus enfants), avec quelques différences dans les options prises en charge.</p>
+
+<p>C'est une méthode asynchrone qui retourne un {{JSxRef("Promise")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="brush: js">const registeredUserScript = await browser.userScripts.register(
+ userScriptOptions // object
+);
+….
+await registeredUserScript.unregister();</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>userScriptOptions</code></dt>
+ <dd><code>object</code>. Un objet <code>UserScriptOptions</code> représentant les scripts de contenu à enregistrer. Il a une syntaxe similaire aux options supportées par {{WebExtAPIRef("contentScripts.register","contentScripts.register()")}}.
+ <p><br>
+ L'objet <code>UserScriptOptions</code> possède les propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt>scriptMetadata <code>{{Optional_Inline}}</code></dt>
+ <dd>Un objet <code>JSON</code> qui contient certaines propriétés de métadonnées associées aux <code>userScripts</code> enregistrés</dd>
+ <dt><code>allFrames {{Optional_Inline}}</code></dt>
+ <dd>Identiques à <code>all_frames</code> dans la clé <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">user_scripts</a></code>.</dd>
+ <dt><code>excludeGlobs</code> {{Optional_Inline}}</dt>
+ <dd>Identique à <code>exclude_globs</code> dans la clé <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">user_scripts</a></code>.</dd>
+ <dt><code>excludeMatches</code> {{Optional_Inline}}</dt>
+ <dd>Identique à <code>exclude_matches</code> dans la clé <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">user_scripts</a></code>.</dd>
+ <dt><code>includeGlobs</code> {{Optional_Inline}}</dt>
+ <dd>Identique à <code>include_globs</code> dans la clé <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">user_scripts</a></code>.</dd>
+ <dt><code>js</code> {{Optional_Inline}}</dt>
+ <dd>Un tableau d'objets. Chaque objet a soit une propriété nommée <code>file</code>, qui est une URL commençant par le fichier manifest.json de l'extension et pointant vers un fichier JavaScript à enregistrer, soit une propriété nommée <code>code</code>, qui est un code JavaScript à enregistrer.</dd>
+ <dt><code>matchAboutBlank</code> {{Optional_Inline}}</dt>
+ <dd>Identique à <code>match_about_blank</code> dans la clé <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">user_scripts</a></code>.</dd>
+ <dt><code>matches</code></dt>
+ <dd>Identique à <code>matches</code> dans la clé <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">user_scripts</a></code>.</dd>
+ <dt><code>runAt</code> {{Optional_Inline}}</dt>
+ <dd>Identique à<code>run_at</code> dans la clé <code><a href="https://wiki.developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">user_scripts</a></code>.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<p>Contrairement aux options de script de contenu, l'objet userScriptOptions n'a pas de propriété css. Utilisez {{WebExtAPIRef("contentScripts.register","contentScripts.register()")}} pour enregistrer/désenregistrer dynamiquement les feuilles de style).</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une {{JSxRef("Promise")}} qui sera rempli avec un objet  {{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}} que vous pouvez utiliser pour désinscrire ce script utilisateur particulier.</p>
+
+<div class="blockIndicator note">
+<p>Note: Actuellement, les scripts utilisateur sont désenregistrés lorsque la page d'extension correspondante (à partir de laquelle les scripts utilisateur ont été enregistrés) est déchargée, vous devez donc enregistrer un script utilisateur depuis une page d'extension qui persiste au moins aussi longtemps que vous voulez que les scripts utilisateur restent enregistrés.</p>
+</div>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.userScripts.register", 10)}}</p>
+
+<h2 id="Voir_aussi">Voir aussi</h2>
+
+<ul>
+ <li>{{WebExtAPIRef("contentScripts.register","contentScripts.register()")}}</li>
+ <li>{{WebExtAPIRef("userScripts.RegisteredUserScript.unregister","RegisteredUserScript.unregister()")}}</li>
+</ul>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.html
new file mode 100644
index 0000000000..968066495b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.html
@@ -0,0 +1,34 @@
+---
+title: userScripts.RegisteredUserScript
+slug: Mozilla/Add-ons/WebExtensions/API/userScripts/RegisteredUserScript
+tags:
+ - API
+ - Extensions
+ - Reference
+ - RegisteredUserScript
+ - Type
+ - userScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts/RegisteredUserScript
+---
+<p>{{AddonSidebar()}}</p>
+
+<p>Un RegisteredUserScript est retourné par un appel à {{WebExtAPIRef("userScripts.register","userScripts.register()")}} et représente les scripts utilisateur enregistrés dans cet appel.</p>
+
+<p>L'objet définit une méthode unique, {{WebExtAPIRef("userScripts.RegisteredUserScript.unregister","unregister()")}}, qui peut être utilisée pour désinscrire les scripts utilisateur.</p>
+
+<div class="blockIndicator note">
+<p><strong>Note:</strong> Si cet objet est détruit (par exemple parce qu'il sort du champ d'application), les scripts associés seront automatiquement désenregistrés, vous devez donc conserver une référence à cet objet aussi longtemps que vous voulez que les scripts de contenu restent enregistrés.</p>
+</div>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("userScripts.RegisteredUserScript.unregister","unregister()")}}</dt>
+ <dd>Désenregistre les scripts utilisateurs représentés par cet objet.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p class="hidden">The compatibility table on 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.userScripts.RegisteredUserScript", 10)}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/registereduserscript.unregister()/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/registereduserscript.unregister()/index.html
new file mode 100644
index 0000000000..0a71ce921b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/registereduserscript.unregister()/index.html
@@ -0,0 +1,49 @@
+---
+title: unregister
+slug: >-
+ Mozilla/Add-ons/WebExtensions/API/userScripts/RegisteredUserScript/RegisteredUserScript.unregister()
+tags:
+ - API
+ - Extensions
+ - Reference
+ - RegisteredUserScript
+ - Type
+ - unregister
+ - userScripts
+translation_of: >-
+ Mozilla/Add-ons/WebExtensions/API/userScripts/RegisteredUserScript/RegisteredUserScript.unregister()
+---
+<p>{{AddonSidebar}}</p>
+
+<p>La méhode <code>unregister()</code> de l'interface  {{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}}désenregistre le script utilisateur représenté par cette instance d'interface et précédemment enregistré via {{WebExtAPIRef("userScripts.register","userScripts.register()")}}.</p>
+
+<div class="blockIndicator note">
+<p><strong>Note:</strong> Les scripts utilisateur sont automatiquement désenregistrés lorsque la page d'extension correspondante (à partir de laquelle les scripts utilisateur ont été enregistrés) est déchargée, vous devez donc enregistrer un script utilisateur depuis une page d'extension qui persiste au moins aussi longtemps que vous voulez que les scripts utilisateur restent enregistrés..</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="brush: js">const registeredUserScript = await browser.userScripts.register(
+ userScriptOptions // object
+);
+…
+await registeredUserScript.unregister()</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une {{JSxRef("Promise")}} qui sera résolu une fois le script utilisateur désenregistré. La promesse ne rapporte rien.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.userScripts.RegisteredUserScript.unregister")}}</p>
+
+<h2 id="Voir_aussi">Voir aussi</h2>
+
+<ul>
+ <li>{{WebExtAPIRef("userScripts.register","userScripts.register()")}}</li>
+ <li>{{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}}</li>
+</ul>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.html
new file mode 100644
index 0000000000..fb1508e240
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.html
@@ -0,0 +1,47 @@
+---
+title: RegisteredUserScript.unregister()
+slug: Mozilla/Add-ons/WebExtensions/API/userScripts/RegisteredUserScript/unregister
+tags:
+ - Add-ons
+ - Extensions
+ - Method
+ - User Scripts API
+ - WebExtensions
+ - unregister
+ - userScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts/RegisteredUserScript/unregister
+---
+<p>{{AddonSidebar}}</p>
+
+<p>La méthode <code>unregister()</code> de l'interface  {{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}} désenregistre le script utilisateur représenté par cette instance d'interface et précédemment enregistré via  {{WebExtAPIRef("userScripts.register","userScripts.register()")}}.</p>
+
+<div class="blockIndicator note">
+<p><strong>Note:</strong> Les scripts utilisateur sont automatiquement désenregistrés lorsque la page d'extension correspondante (à partir de laquelle les scripts utilisateur ont été enregistrés) est déchargée, vous devez donc enregistrer un script utilisateur depuis une page d'extension qui persiste au moins aussi longtemps que vous voulez que les scripts utilisateur restent enregistrés..</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="brush: js">const registeredUserScript = await browser.userScripts.register(
+ userScriptOptions // object
+);
+…
+await registeredUserScript.unregister()</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>Aucun</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une {{JSxRef("Promise")}} qui sera résolu une fois le script utilisateur désenregistré. La promesse ne rapporte rien.</p>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.userScripts.RegisteredUserScript.unregister")}}</p>
+
+<h2 id="Voir_aussi">Voir aussi</h2>
+
+<ul>
+ <li>{{WebExtAPIRef("userScripts.register","userScripts.register()")}}</li>
+ <li>{{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}}</li>
+</ul>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/travailler_avec_userscripts/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/travailler_avec_userscripts/index.html
new file mode 100644
index 0000000000..8cf9fcc2b2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/travailler_avec_userscripts/index.html
@@ -0,0 +1,115 @@
+---
+title: Travailler avec userScripts
+slug: Mozilla/Add-ons/WebExtensions/API/userScripts/travailler_avec_userScripts
+tags:
+ - API
+ - Extensions
+ - How-to
+ - Tutorial
+ - userScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts/Working_with_userScripts
+---
+<p>{{draft}}</p>
+
+<p>{{AddonSidebar}}</p>
+
+<p>En implémentant userScripts, les développeurs d'extension peuvent modifier l'apparence et/ou le fonctionnement des sites pour mieux répondre aux besoins des utilisateurs.</p>
+
+<p>Implémentez userScripts dans votre extension en suivant les étapes suivantes :</p>
+
+<ol>
+ <li>Définissez le script dans le manifeste de l'extension à l'aide de la clé <code>"user_scripts"</code>.</li>
+ <li>Enregistrer le userScript</li>
+ <li>Implémenter les fonctions userScript</li>
+</ol>
+
+<p>Passons en revue les processus à l'aide d'un petit exemple d'extension Web qui illustre le processus. L'exemple est disponible dans le dépôt <a href="https://github.com/mdn/webextensions-examples">webextensions-examples</a> sur GitHub.</p>
+
+<h2 id="Manifest_userScripts">Manifest userScripts</h2>
+
+<p>Un script utilisateur est identifié par le contenu de la clé <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts">user_scripts</a> du manifeste des extensions. L'information minimale pour la clé <code>user_scripts</code> serait :</p>
+
+<pre class="brush: json"> "user_scripts": {
+ "api_script": "customUserScriptAPIs.js"
+ }</pre>
+
+<p>La propriété "api_script" indique le chemin d'accès au fichier JavaScript qui contient le code du <code>userScript</code>.</p>
+
+<h2 id="Charge_lextension_dexemple">Charge l'extension d'exemple</h2>
+
+<p>Une fois que vous avez téléchargé l'exemple  :</p>
+
+<p>Naviguez jusqu'à about:debugging, cliquez sur <strong>Charger temporairement une extension... </strong>et double-cliquez sur le manifest des extensions.</p>
+
+<p>/Le code par défaut inclus dans l'exemple vous permet de charger un <code>userScript</code> qui va "manger" le contenu des pages correspondant à l'entrée Hosts. Effectuez tous les changements que vous voulez faire avant de cliquer sur le bouton <strong>Enregistrer le script</strong> au bas du panneau.</p>
+
+<p>Dans l'image suivante, l'extension va "manger" le contenu des pages dont le nom de domaine se termine par.org. C'est le comportement par défaut pour cette extension.</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/16901/userScriptExample.png" style="border: 1px solid black; display: block; height: 812px; margin: 0px auto; width: 304px;"></p>
+
+<p>Rien ne se passera tant que vous n'aurez pas cliqué sur le bouton <strong>Enregistrer le script</strong>. Le bouton implémente le script utilisateur en fonction des paramètres de cette boîte de dialogue. Cela signifie que vous pouvez expérimenter le comportement du script sans avoir à implémenter une extension vous-même.</p>
+
+<h2 id="Register_the_userScript">Register the userScript</h2>
+
+<p>Avant qu'un userScript puisse être exécuté, il doit être enregistré en utilisant la méthode  <code>userScripts.register()</code>. Voici le code pour enregistrer l'extension d'exemple :</p>
+
+<pre class="brush: js">async function registerScript() {
+ const params = {
+ hosts: stringToArray(hostsInput.value),
+ code: codeInput.value,
+ excludeMatches: stringToArray(excludeMatchesInput.value),
+ includeGlobs: stringToArray(includeGlobsInput.value),
+ excludeGlobs: stringToArray(excludeGlobsInput.value),
+ runAt: runAtInput.value,
+ matchAboutBlank: stringToBool(matchAboutBlankInput.value),
+ allFrames: stringToBool(allFramesInput.value),
+ scriptMetadata: {name: scriptNameInput.value || null},
+ };
+
+ // Store the last submitted values to the extension storage
+ // (so that they can be restored when the popup is opened
+ // the next time).
+ await browser.storage.local.set({
+ lastSetValues: params,
+ });
+
+ try {
+ // Clear the last userScripts.register result.
+ lastResultEl.textContent = "";
+
+ await browser.runtime.sendMessage(params);
+ lastResultEl.textContent = "UserScript successfully registered";
+ // Clear the last userScripts.register error.
+ lastErrorEl.textContent = "";
+
+ // Clear the last error stored.
+ await browser.storage.local.remove("lastError");
+ } catch (e) {
+ // There was an error on registering the userScript,
+ // let's show the error message in the popup and store
+ // the last error into the extension storage.
+
+ const lastError = `${e}`;
+ // Show the last userScripts.register error.
+ lastErrorEl.textContent = lastError;
+
+ // Store the last error.
+ await browser.storage.local.set({lastError});
+ }
+}</pre>
+
+<p>Ce code initialise d'abord l'objet params pour passer les valeurs à la méthode  <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/API/userScripts/register">userScripts.register</a>.</p>
+
+<h2 id="Implementer_les_fonctions_userScript">Implementer les fonctions userScript</h2>
+
+<p>Une fois le script enregistré, naviguez vers une page dont le nom de domaine se termine par .org, et vous verrez quelque chose comme ceci :</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/16902/user_script_in_action.png" style="border: 1px solid black; display: block; height: 823px; margin: 0px auto; width: 1026px;"></p>
+
+<h2 id="Voir_aussi">Voir aussi</h2>
+
+<ul>
+ <li>{{WebExtAPIRef("userScripts")}}</li>
+ <li>{{WebExtAPIRef("userScripts.register()", "userScripts.register()")}}</li>
+ <li>{{WebExtAPIRef("userScripts.onBeforeScript")}}</li>
+</ul>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.html
new file mode 100644
index 0000000000..2d8c3ad8af
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.html
@@ -0,0 +1,48 @@
+---
+title: UserScripts.UserScriptOptions
+slug: Mozilla/Add-ons/WebExtensions/API/userScripts/UserScriptOptions
+tags:
+ - Add-ons
+ - Extensions
+ - Firefox
+ - Guide
+ - Intermediate
+ - NeedsExample
+ - UserScriptOptions
+ - WebExtensions
+ - userScripts
+translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts/UserScriptOptions
+---
+<p>{{AddonSidebar}}</p>
+
+<p>L'objet UserScriptOptions représente les scripts de contenu à enregistrer. Sa syntaxe est similaire à celle des options contentScript prises en charge par browser.contentScripts.register. Les différences sont les suivantes :</p>
+
+<ul>
+ <li>il ne prend pas en charge une propriété css (utilisez browser.contentScripts.register pour enregistrer/désenregistrer dynamiquement les feuilles de style)</li>
+ <li>Il supporte une propriété optionnelle scriptMetadata (comme un objet JSON simple qui contient certaines propriétés de métadonnées associées aux userScripts enregistrés)</li>
+</ul>
+
+<p>L'objet UserScriptOptions a les propriétés suivantes :</p>
+
+<dl>
+ <dt><code>allFrames</code>{{optional_inline}}</dt>
+ <dd>Même chose que <code>all_frames</code> dans la clé <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>excludeGlobs</code>{{optional_inline}}</dt>
+ <dd>Même chose que <code>exclude_globs</code> dans la clé <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>excludeMatches</code>{{optional_inline}}</dt>
+ <dd>Même chose que <code>exclude_matches</code> dans la clé <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>includeGlobs</code>{{optional_inline}}</dt>
+ <dd>Même chose que <code>include_globs</code> dans la clé <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>js</code>{{optional_inline}}</dt>
+ <dd>Un ensemble d'objets. Chaque objet a soit une propriété nommée <code>file</code>, qui est une URL commençant à l'extension manifest.json et pointant vers un fichier JavaScript à enregistrer, soit une propriété nommée <code>code</code>, qui est un code JavaScript à enregistrer.</dd>
+ <dt><code>matchAboutBlank</code>{{optional_inline}}</dt>
+ <dd>Même chose que <code>match_about_blank</code> dans la clé <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>matches</code></dt>
+ <dd>Même chose que <code>matches</code> dans la clé <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>runAt</code>{{optional_inline}}</dt>
+ <dd>Même chose que <code>run_at</code> dans la clé <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts">content_scripts</a></code>.</dd>
+ <dt><code>scriptMetadata</code> {{optional_inline}}</dt>
+ <dd>Une valeur de métadonnées de script utilisateur</dd>
+</dl>
+
+<p>Sa syntaxe est similaire à celle des options contentScript prises en charge par browser.contentScripts.register.</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.html
new file mode 100644
index 0000000000..ab9b261e8e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.html
@@ -0,0 +1,135 @@
+---
+title: webNavigation.getAllFrames()
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/getAllFrames
+tags:
+ - API
+ - Add-ons
+ - Exntesions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getAllFrames
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/getAllFrames
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Étant donné un ID d'onglet, récupère des informations sur toutes les images qu'il contient.</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 gettingFrames = browser.webNavigation.getAllFrames(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Informations sur l'onglet pour récupérer toutes les images.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'identifiant de l'onglet</dd>
+ </dl>
+ </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> sera accompli avec un tableau d'objets, dont chacun a les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>errorOccurred</code></dt>
+ <dd><code>boolean</code>. Vrai si la dernière navigation dans cette trame a été interrompue par une erreur, c'est-à-dire l'événement {{WebExtAPIRef("webNavigation.onErrorOccurred", "onErrorOccurred")}} déclenché.</dd>
+ <dt><code>processId</code></dt>
+ <dd><code>integer</code>. L'ID du processus exécutant le moteur de rendu pour cet onglet.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. L'identifiant de l'image Si c'est l'image principale, alors <code>frameId</code> est nul.</dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. ID du parent de cette image. C'est -1 s'il n'y a pas de cadre parent: c'est-à-dire si ce cadre est le contexte de navigation de niveau supérieur dans l'onglet.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL actuellement associée à ce cadre.</dd>
+</dl>
+
+<p>Si l'onglet spécifié n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</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.webNavigation.getAllFrames")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code enregistre les URL de toutes les images dans l'onglet actif, lorsque l'utilisateur clique sur une action du navigateur :</p>
+
+<pre class="brush: js">function logFrameInfo(framesInfo) {
+ for (frameInfo of framesInfo) {
+ console.log(frameInfo);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+function logAllFrames(tabs) {
+ var gettingAllFrames = browser.webNavigation.getAllFrames({tabId: tabs[0].id});
+ gettingAllFrames.then(logFrameInfo, onError);
+}
+
+browser.browserAction.onClicked.addListener(function() {
+
+ var querying = browser.tabs.query({
+ currentWindow: true,
+ active: true
+ });
+
+ querying.then(logAllFrames, onError);
+
+});</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.html
new file mode 100644
index 0000000000..07a0a99760
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.html
@@ -0,0 +1,126 @@
+---
+title: webNavigation.getFrame()
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/getFrame
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - getFrame
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/getFrame
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Récupère des informations sur un cadre particulier. Un cadre peut être l'image de niveau supérieur dans un onglet ou un <a href="/en-US/docs/Web/HTML/Element/iframe">iframe</a> imbriqué, et est identifié de manière unique par un ID de tabulation et un ID de cadre.</p>
+
+<p>C'est une fonction asynchrone qui renvoie une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var gettingFrame = browser.webNavigation.getFrame(
+ details // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>details</code></dt>
+ <dd><code>object</code>. Informations sur le cadre pour récupérer des informations sur :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dans lequel se trouve le cadre.</dd>
+ <dt><code>processId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID du processus exécutant le moteur de rendu pour cet onglet.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. L'ID du cadre dans l'onglet donné.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code> qui sera rempli avec un objet contenant les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>errorOccurred</code></dt>
+ <dd><code>boolean</code>. Vrai si la dernière navigation dans cette trame a été interrompue par une erreur, c'est-à-dire l'événement {{WebExtAPIRef("webNavigation.onErrorOccurred", "onErrorOccurred")}} déclenché.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL actuellement associée à cette trame, si la trame identifiée par  <code>frameId</code> existait à un point de l'onglet identifié par <code>tabId</code>. Le fait qu'une URL soit associée à un <code>frameId</code> donné n'implique pas que la trame correspondante existe toujours.</dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. ID du parent de cette image. C'est -1 s'il n'y a pas de cadre parent: c'est-à-dire si ce cadre est le contexte de navigation de niveau supérieur dans l'onglet.</dd>
+</dl>
+
+<p>Si l'onglet ou l'ID de trame spécifié n'a pas pu être trouvé ou qu'une autre erreur se produit, la promesse sera rejetée avec un message d'erreur.</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.webNavigation.getFrame")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function onGot(frameInfo) {
+ console.log(frameInfo);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var gettingFrame = browser.webNavigation.getFrame({
+ tabId: 19,
+ frameId: 1537
+});
+
+// Edge specific - processId is required not optional, must be integer not null
+//var gettingFrame = browser.webNavigation.getFrame({ tabId: 19, processId: 0, frameId: 1537 });
+
+gettingFrame.then(onGot, onError);
+</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.html
new file mode 100644
index 0000000000..b343ff3744
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.html
@@ -0,0 +1,143 @@
+---
+title: webNavigation
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Ajouter des écouteurs d'événement pour les différentes étapes d'une navigation. Une navigation se compose d'un cadre dans le navigateur passant d'une URL à l'autre, généralement (mais pas toujours) en réponse à une action de l'utilisateur comme cliquer sur un lien ou entrer une URL dans la barre d'adresse.</p>
+
+<p>Comparable à l'API {{WebExtAPIRef("webRequest")}}: Les navigations entrainent le navigateur à faire des requetes web, mais l'API webRequest travaille au niveau inférieur de la couche HTTP, contrairement à l'API webNavigation qui travaille directement au niveau de l'interface utilisateur du navigateur elle-même.</p>
+
+<p>Chaque evenement correspond directement à un état précis dans la navigation. La séquence des évenements est comme suit:</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/13374/we-flow.png" style="display: block; height: 562px; margin-left: auto; margin-right: auto; width: 745px;"></p>
+
+<ul>
+ <li>Le flux primaire est :
+ <ul>
+ <li><code>{{WebExtAPIRef("webNavigation.onBeforeNavigate", "onBeforeNavigate")}}</code></li>
+ <li><code>{{WebExtAPIRef("webNavigation.onCommitted", "onCommitted")}}</code></li>
+ <li><code>{{WebExtAPIRef("webNavigation.onDOMContentLoaded", "onDOMContentLoaded")}}</code></li>
+ <li><code>{{WebExtAPIRef("webNavigation.onCompleted", "onCompleted")}}</code>.</li>
+ </ul>
+ </li>
+ <li>Adionellement :
+ <ul>
+ <li><code>{{WebExtAPIRef("webNavigation.onCreatedNavigationTarget", "onCreatedNavigationTarget")}}</code> est déclenché avant <code>onBeforeNavigate</code> si le navigateur a besoin de créer un nouvel onglet ou une nouvelle fenêtre pour la navigation (par exemple, parce que l'utilisateur a ouvert un lien dans un nouvel onglet).</li>
+ <li>{{WebExtAPIRef("webNavigation.onHistoryStateUpdated", "onHistoryStateUpdated")}} est déclenché si une page utilise l'<a href="http://diveintohtml5.info/history.html">API historique</a> pour mettre à jour l'URL affichée dans la barre d'adresse du navigateur.</li>
+ <li>{{WebExtAPIRef("webNavigation.onReferenceFragmentUpdated", "onReferenceFragmentUpdated")}} est déclenché si <a href="https://en.wikipedia.org/wiki/Fragment_identifier">fl'identificateur de fragment</a> d'une page est modifié.</li>
+ <li>{{WebExtAPIRef("webNavigation.onErrorOccurred", "onErrorOccurred")}} peut être déclenché à tout moment.</li>
+ </ul>
+ </li>
+</ul>
+
+<p>Chaque navigation est une transition d'URL dans un cadre de navigateur particulier. Le cadre du navigateur est identifié par un ID d'onglet et un ID de trame. Le cadre peut être le contexte de navigation de niveau supérieur dans l'onglet ou peut être un contexte de navigation imbriqué implémenté en tant qu'<a href="/fr/docs/Web/HTML/Element/iframe">iframe</a>.</p>
+
+<p>L'appel <code>addListener()</code> de chaque événement accepte un paramètre de filtre facultatif. Le filtre spécifiera un ou plusieurs modèles d'URL, et l'événement ne sera alors déclenché que pour les navigations dans lesquelles l'URL cible correspond à l'un des modèles.</p>
+
+<p>L'écouteur d'événement <code>onCommitted</code>reçoit deux propriétés supplémentaires : un {{WebExtAPIRef("webNavigation.TransitionType","TransitionType")}} indiquant la cause de la navigation (par exemple, parce que l'utilisateur a cliqué sur un lien ou parce que l'utilisateur a sélectionné un signet), et un  {{WebExtAPIRef("webNavigation.TransitionQualifier","TransitionQualifier")}} fournissant plus d'informations sur la navigation.</p>
+
+<p>Pour utiliser cette API, vous devez avoir la <a href="https://developer.mozilla.org/fr/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "webNavigation".</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("webNavigation.TransitionType")}}</dt>
+ <dd>Cause de la navigation: par exemple, l'utilisateur a cliqué sur un lien, ou a tapé une adresse, ou a cliqué sur un signet.</dd>
+ <dt>{{WebExtAPIRef("webNavigation.TransitionQualifier")}}</dt>
+ <dd>
+ <div>Informations supplémentaires sur une transition.</div>
+ </dd>
+</dl>
+
+<h2 id="Functions">Functions</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("webNavigation.getFrame()")}}</dt>
+ <dd>Récupère des informations sur un cadre particulier. Ce cadre peut être le cadre de niveau supérieur dans un onglet ou un <a href="https://developer.mozilla.org/fr/docs/Web/HTML/Element/iframe">iframe</a> imbriqué, et est identifié de manière unique par un ID d'onglet et un ID de <em>frame</em>.</dd>
+ <dt>{{WebExtAPIRef("webNavigation.getAllFrames()")}}</dt>
+ <dd>
+ <p>Étant donné un ID d'onglet, récupère des informations sur tous les cadres qu'il contient.</p>
+ </dd>
+</dl>
+
+<h2 id="Events">Events</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("webNavigation.onBeforeNavigate")}}</dt>
+ <dd>
+ <p>Lancé lorsque le navigateur est sur le point de démarrer un événement de navigation.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("webNavigation.onCommitted")}}</dt>
+ <dd>Lancé lorsqu'une navigation est validée. Au moins une partie du nouveau document a été reçue du serveur et le navigateur a décidé de passer au nouveau document.</dd>
+ <dt>{{WebExtAPIRef("webNavigation.onDOMContentLoaded")}}</dt>
+ <dd>Lancé lorsque l'événement <a href="https://developer.mozilla.org/fr/docs/Web/Events/DOMContentLoaded">DOMContentLoaded</a> est déclenché dans la page.</dd>
+ <dt>{{WebExtAPIRef("webNavigation.onCompleted")}}</dt>
+ <dd>Lancé lorsqu'un document, y compris les ressources auxquelles il fait référence, est complètement chargé et initialisé. Ceci est équivalent à l'événement de <code><a href="https://developer.mozilla.org/fr/docs/Web/Events/load">chargement</a></code> du DOM.</dd>
+ <dt>{{WebExtAPIRef("webNavigation.onErrorOccurred")}}</dt>
+ <dd>Lancé lorsqu'une erreur se produit et que la navigation est annulée. Cela peut se produire si une erreur réseau s'est produite ou si l'utilisateur a interrompu la navigation.</dd>
+ <dt>{{WebExtAPIRef("webNavigation.onCreatedNavigationTarget")}}</dt>
+ <dd>Lancé lorsqu'une nouvelle fenêtre ou un nouvel onglet dans une fenêtre existante est créé pour héberger une navigation: par exemple, si l'utilisateur ouvre un lien dans un nouvel onglet.</dd>
+ <dt>{{WebExtAPIRef("webNavigation.onReferenceFragmentUpdated")}}</dt>
+ <dd>Lancé si l' <a class="external-icon external" href="https://en.wikipedia.org/wiki/Fragment_identifier">identificateur de fragment</a> d'une page a été modifié.</dd>
+ <dt>{{WebExtAPIRef("webNavigation.onTabReplaced")}}</dt>
+ <dd>
+ <p>Lancé lorsque le contenu de l'onglet est remplacé par un onglet différent (généralement précédemment pré-rendu).</p>
+ </dd>
+ <dt>{{WebExtAPIRef("webNavigation.onHistoryStateUpdated")}}</dt>
+ <dd>Lancé lorsque la page a utilisé l' <a class="external external-icon" href="http://diveintohtml5.info/history.html">API d'histoirique</a> pour mettre à jour l'URL affichée dans la barre d'adresse du navigateur.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.webNavigation")}}</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.html
new file mode 100644
index 0000000000..ab426f9c98
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.html
@@ -0,0 +1,142 @@
+---
+title: webNavigation.onBeforeNavigate
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/onBeforeNavigate
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onBeforeNavigate
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/onBeforeNavigate
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque le navigateur est sur le point de démarrer un événement de navigation.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webNavigation.onBeforeNavigate.addListener(
+ listener, // function
+ filter // optional object
+)
+browser.webNavigation.onBeforeNavigate.removeListener(listener)
+browser.webNavigation.onBeforeNavigate.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 est écouté, 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>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur l'événement de navigation.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant une seule propriété <code>url</code>, qui est un <code>tableau</code>  d'objets {{WebExtAPIRef("events.UrlFilter")}} objects.Un objet contenant une seule propriété  qui correspondent à au moins un <code>UrlFilter</code> dans le tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.</p>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL à laquelle le cadre donné va naviguer.</dd>
+ <dt><code>processId</code></dt>
+ <dd><code>integer</code>. L'ID du processus dans lequel cet onglet est rendu (Cette propriété <strong>n'est pas pris en charge sur Firefox</strong> et c'est <strong>déprécié sur Chrome</strong>).</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Cadre dans lequel la navigation est sur le point de se produire. 0 indique que la navigation se déroule dans le contexte de navigation de niveau supérieur de l'onglet, et non dans un <a href="/fr/docs/Web/HTML/Element/iframe">iframe</a> imbriqué. Une valeur positive indique que la navigation se déroule dans un iframe imbriqué. Les ID de cadre sont uniques pour un onglet et un processus donnés.</dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. ID du parent de cette image. Défini à -1 s'il s'agit d'un cadre de niveau supérieur.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle le navigateur est sur le point de démarrer la navigation, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</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.webNavigation.onBeforeNavigate")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Logs les URL cibles de <code>onBeforeNavigate</code>, si le nom d'hôte de la cible contient "example.com" ou commence avec "developer".</p>
+
+<pre class="brush: js">var filter = {
+ url:
+ [
+ {hostContains: "example.com"},
+ {hostPrefix: "developer"}
+ ]
+}
+
+function logOnBefore(details) {
+ console.log("onBeforeNavigate to: " + details.url);
+}
+
+browser.webNavigation.onBeforeNavigate.addListener(logOnBefore, filter);</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.html
new file mode 100644
index 0000000000..c8f8dc48d7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.html
@@ -0,0 +1,148 @@
+---
+title: webNavigation.onCommitted
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/onCommitted
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onCommitted
+ - webNavigations
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/onCommitted
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'une navigation est validée. Au moins une partie du nouveau document a été reçue du serveur et le navigateur a décidé de passer au nouveau document.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webNavigation.onCommitted.addListener(
+ listener, // function
+ filter // optional object
+)
+browser.webNavigation.onCommitted.removeListener(listener)
+browser.webNavigation.onCommitted.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 est écouté, 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>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur l'événement de navigation.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant une seule propriété url, qui est un <code>tableau</code> d'objets {{WebExtAPIRef("events.UrlFilter")}}. Si vous incluez ce paramètre, l'événement se déclenchera uniquement pour les transitions vers les URL qui correspondent à au moins un <code>UrlFilter</code> dans le tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.</p>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL à laquelle le cadre donné va naviguer.</dd>
+ <dt><code>processId</code></dt>
+ <dd><code>integer</code>. L'ID du processus dans lequel cet onglet est rendu.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Frame dans lequel la navigation aura lieu. 0 indique que la navigation se déroule dans le contexte de navigation de niveau supérieur de l'onglet, et non dans un <a href="/frS/docs/Web/HTML/Element/iframe">iframe</a> imbriqué. A positive value indicates that navigation happens in a nested iframe. Les ID de frame sont uniques pour un onglet et un processus donnés.</dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. ID du parent de cette image. Réglez à -1 s'il s'agit d'un cadre de niveau supérieur.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle la navigation a été validée, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>transitionType</code></dt>
+ <dd><code>{{WebExtAPIRef("webNavigation.transitionType", "transitionType")}}</code>. La raison de la navigation : par exemple, <code>"link"</code> si l'utilisateur a cliqué sur un lien, ou <code>"reload"</code> si l'utilisateur a rechargé la page.</dd>
+ <dt><code>transitionQualifiers</code></dt>
+ <dd><code>Array</code> de <code>{{WebExtAPIRef("webNavigation.transitionQualifier", "transitionQualifier")}}</code>. Informations supplémentaires sur la navigation : par exemple, s'il existait une redirection de serveur ou de client.</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.webNavigation.onCommitted")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Logs les URL cibles et les informations de transition supplémentaires pour <code>onCommitted</code>, si le nom d'hôte de l'URL cible contient "example.com" ou commence avec "developer".</p>
+
+<pre class="brush: js">var filter = {
+ url:
+ [
+ {hostContains: "example.com"},
+ {hostPrefix: "developer"}
+ ]
+}
+
+function logOnCommitted(details) {
+ console.log("target URL: " + details.url);
+ console.log("transition type: " + details.transitionType);
+ console.log("transition qualifiers: " + details.transitionQualifiers);
+}
+
+browser.webNavigation.onCommitted.addListener(logOnCommitted, filter);</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.html
new file mode 100644
index 0000000000..d05a067f89
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.html
@@ -0,0 +1,141 @@
+---
+title: webNavigation.onCompleted
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/onCompleted
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onCompleted
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/onCompleted
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'un document, y compris les ressources auxquelles il fait référence, est complètement chargé et initialisé. Ceci est équivalent à l'événement <code><a href="/fr/docs/Web/Events/load">chargement</a></code> du DOM.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webNavigation.onCompleted.addListener(
+ listener, // function
+ filter // optional object
+)
+browser.webNavigation.onCompleted.removeListener(listener)
+browser.webNavigation.onCompleted.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 est écouté, 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>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur l'événement de navigation.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant une seule propriété <code>url</code>, qui est un  <code>Array</code> d'objets  {{WebExtAPIRef("events.UrlFilter")}}. Si vous incluez ce paramètre, l'événement se déclenchera uniquement pour les transitions vers les URL qui correspondent à au moins un <code>UrlFilter</code> dans le tableau.Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.</p>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dans lequel la navigation s'est produite.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL à laquelle le cadre donné a navigué.</dd>
+ <dt><code>processId</code></dt>
+ <dd><code>integer</code>. L'ID du processus dans lequel cet onglet est rendu.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>.  Cadre dans lequel la navigation s'est produite. 0 indique que la navigation s'est déroulée dans le contexte de navigation de niveau supérieur de l'onglet, et non dans un <a href="/fr/docs/Web/HTML/Element/iframe">iframe</a> imbriqué. Une valeur positive indique que la navigation s'est déroulée dans un iframe imbriqué. Les ID de cadre sont uniques pour un onglet et un processus donnés.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle la page a terminé le chargement, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</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.webNavigation.onCompleted")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Consigne les URL cibles de <code>onCompleted</code>, si le nom d'hôte de l'URL cible contient "example.com" ou commence avec "developer".</p>
+
+<pre class="brush: js">var filter = {
+ url:
+ [
+ {hostContains: "example.com"},
+ {hostPrefix: "developer"}
+ ]
+}
+
+function logOnCompleted(details) {
+ console.log("onCompleted: " + details.url);
+}
+
+browser.webNavigation.onCompleted.addListener(logOnCompleted, filter);
+</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.html
new file mode 100644
index 0000000000..ea7f67f411
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.html
@@ -0,0 +1,156 @@
+---
+title: webNavigation.onCreatedNavigationTarget
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/onCreatedNavigationTarget
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onCreatedNavigationTarget
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/onCreatedNavigationTarget
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'une nouvelle fenêtre ou un nouvel onglet dans une fenêtre existante est créé pour héberger la cible d'une navigation. Par exemple, cet événement est envoyé lorsque :</p>
+
+<ul>
+ <li>l'utilisateur ouvre un lien dans un nouvel onglet ou une nouvelle fenêtre</li>
+ <li>une page Web charge une ressource dans un nouvel onglet ou une nouvelle fenêtre en utilisant <code><a href="/fr/docs/Web/API/Window/open">window.open()</a></code> (mais notez que l'événement n'est pas envoyé si le bloqueur de popup du navigateur bloque le chargement).</li>
+</ul>
+
+<p>L'événement n'est pas envoyé si un onglet ou une fenêtre est créé sans cible de navigation (par exemple, si l'utilisateur ouvre un nouvel onglet en appuyant sur Ctrl+T).</p>
+
+<p>Si cet événement est déclenché, il sera déclenché avant  {{WebExtAPIRef("webNavigation.onBeforeNavigate")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webNavigation.onCreatedNavigationTarget.addListener(
+ listener, // function
+ filter // optional object
+)
+browser.webNavigation.onCreatedNavigationTarget.removeListener(listener)
+browser.webNavigation.onCreatedNavigationTarget.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 est écouté, sinon <code>false</code>.</dd>
+</dl>
+
+<h2 id="addListener_syntax">addListener syntax</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>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur l'événement de navigation Voir les <a href="#details">détails</a> ci-dessous.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant une seule propriété <code>url</code>, qui est un <code>Array</code> d'objets {{WebExtAPIRef("events.UrlFilter")}}.  Si vous incluez ce paramètre, l'événement se déclenchera uniquement pour les transitions vers les URL qui correspondent à au moins un <code>UrlFilter</code> dans le tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions. Notez que le <code>filtre</code>n'est pas supporté dans Firefox.</p>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>sourceFrameId</code></dt>
+ <dd><code>integer</code>. ID de l'image à partir de laquelle la navigation est initiée. 0 indique que le cadre est le contexte de navigation de niveau supérieur de l'onglet, et non un <a href="/fr/docs/Web/HTML/Element/iframe">iframe</a> imbriqué. Une valeur positive indique que la navigation est initiée à partir d'un iframe imbriqué. Les ID de cadre sont uniques pour un onglet et un processus donnés.</dd>
+ <dt><code>sourceProcessId</code></dt>
+ <dd><code>integer</code>. L'ID du processus à partir duquel la navigation est initiée.</dd>
+ <dt><code>sourceTabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet à partir duquel la navigation est initiée. Par exemple, si l'utilisateur ouvre un lien dans un nouvel onglet, ce sera l'identifiant de l'onglet contenant le lien.</dd>
+ <dt><code>tabId</code></dt>
+ <dd>integer: L'ID de l'onglet nouvellement créé.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle le navigateur a créé la cible de navigation, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL qui sera chargée dans le nouvel onglet.</dd>
+ <dt><code>windowId</code></dt>
+ <dd>number. L'ID de la fenêtre dans laquelle le nouvel onglet est créé.</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.webNavigation.onCreatedNavigationTarget")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Logs l'URL cible, l'ID de la table source et l'ID de la trame source pour <code>onCreatedNavigationTarget</code>, si le nom d'hôte de la cible contient "example.com" ou commence par "developer".</p>
+
+<pre class="brush: js">var filter = {
+ url:
+ [
+ {hostContains: "example.com"},
+ {hostPrefix: "developer"}
+ ]
+}
+
+function logOnCreatedNavigationTarget(details) {
+ console.log("onCreatedNavigationTarget: " + details.url);
+ console.log(details.sourceTabId);
+ console.log(details.sourceFrameId);
+}
+
+browser.webNavigation.onCreatedNavigationTarget.addListener(logOnCreatedNavigationTarget, filter);
+</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.html
new file mode 100644
index 0000000000..6c7ba2d62d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.html
@@ -0,0 +1,142 @@
+---
+title: webNavigation.onDOMContentLoaded
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/onDOMContentLoaded
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onDOMContentLoaded
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/onDOMContentLoaded
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque l'événement <a href="/fr/docs/Web/Events/DOMContentLoaded">DOMContentLoaded</a> est déclenché dans la page. À ce stade, le document est chargé et analysé, et le DOM est entièrement construit, mais les ressources liées telles que les images, les feuilles de style et les sous-trames peuvent ne pas encore être chargées.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webNavigation.onDOMContentLoaded.addListener(
+ listener, // function
+ filter // optional object
+)
+browser.webNavigation.onDOMContentLoaded.removeListener(listener)
+browser.webNavigation.onDOMContentLoaded.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 est écouté, 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>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur l'événement de navigation</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant une seule propriété <code>url</code>, qui est un <code>tableau</code> d'objets  {{WebExtAPIRef("events.UrlFilter")}}. Si vous incluez ce paramètre, l'événement se déclenchera uniquement pour les transitions vers les URL qui correspondent à au moins un <code>UrlFilter</code> dans un tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.</p>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dans lequel la navigation s'est produite.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL à laquelle le cadre donné a navigué.</dd>
+ <dt><code>processId</code></dt>
+ <dd><code>integer</code>.  L'ID du processus dans lequel cet onglet est rendu.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Frame dans lequel la navigation est en cours. 0 indique que la navigation se déroule dans le contexte de navigation de niveau supérieur de l'onglet, et non dans un <a href="/fr/docs/Web/HTML/Element/iframe">iframe</a> imbriqué. Une valeur positive indique que la navigation se déroule dans un iframe imbriqué. Les ID <em>frames</em> sont uniques pour un onglet et un processus donnés.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle <code>DOMContentLoaded</code> a été déclenchée, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</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.webNavigation.onDOMContentLoaded")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Logs les URL cibles pour <code>onDOMContentLoaded</code>,si le nom d'hôte de l'URL cible contient "example.com" ou commence par "developer".</p>
+
+<pre class="brush: js">var filter = {
+ url:
+ [
+ {hostContains: "example.com"},
+ {hostPrefix: "developer"}
+ ]
+}
+
+function logOnDOMContentLoaded(details) {
+ console.log("onDOMContentLoaded: " + details.url);
+}
+
+browser.webNavigation.<code>onDOMContentLoaded</code>.addListener(logOnDOMContentLoaded, filter);
+
+</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.html
new file mode 100644
index 0000000000..15d131b148
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.html
@@ -0,0 +1,144 @@
+---
+title: webNavigation.onErrorOccurred
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/onErrorOccurred
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onErrorOccurred
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/onErrorOccurred
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsqu'une erreur se produit et que la navigation est annulée. Cela peut se produire si une erreur réseau s'est produite ou si l'utilisateur a interrompu la navigation.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webNavigation.onErrorOccurred.addListener(
+ listener, // function
+ filter // optional object
+)
+browser.webNavigation.onErrorOccurred.removeListener(listener)
+browser.webNavigation.onErrorOccurred.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 est écouté, 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>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur l'événement de navigation.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant une seule propriété <code>url</code>, qui est un <code>tableau</code> d'objets  {{WebExtAPIRef("events.UrlFilter")}}. Si vous incluez ce paramètre, l'événement se déclenchera uniquement pour les transitions vers les URL qui correspondent à au moins un <code>UrlFilter</code> dans un tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.</p>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="details">details</h3>
+
+<dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dans lequel la navigation se passait.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL à laquelle le cadre donné naviguait.</dd>
+ <dt><code>processId</code></dt>
+ <dd><code>integer</code>. L'ID du processus dans lequel cet onglet est rendu.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Cadre dans lequel la navigation se passait. 0 indique que la navigation s'est déroulée dans le contexte de navigation de niveau supérieur de l'onglet,et non dans un <a href="/fr/docs/Web/HTML/Element/iframe">iframe</a> imbriqué. Une valeur positive indique que la navigation s'est déroulée dans un iframe imbriqué. Les ID de cadre sont uniques pour un onglet et un processus donnés.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle l'erreur s'est produite, en <a href="https://en.wikipedia.org/wiki/Unix_time">milliseconde depuis l'époque</a>.</dd>
+ <dt><code>error</code></dt>
+ <dd><code>string</code>. Le code d'erreur. Il s'agit d'un code d'erreur interne qui n'est pas garanti pour rester identique ou être cohérent d'un navigateur à l'autre.</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.webNavigation.onErrorOccurred")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Logs les URL cibles de <code>onErrorOccurred</code>, si le nom d'hôte de l'URL cible contient  "example.com" ou commence par "developer".</p>
+
+<pre class="brush: js">var filter = {
+ url:
+ [
+ {hostContains: "example.com"},
+ {hostPrefix: "developer"}
+ ]
+}
+
+function logOnErrorOccurred(details) {
+ console.log("onErrorOccurred: " + details.url);
+ console.log(details.error);
+}
+
+browser.webNavigation.onErrorOccurred.addListener(logOnErrorOccurred, filter);
+</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.html
new file mode 100644
index 0000000000..073ba7dc5e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.html
@@ -0,0 +1,147 @@
+---
+title: webNavigation.onHistoryStateUpdated
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/onHistoryStateUpdated
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onHistoryStateUpdated
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/onHistoryStateUpdated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque la page a utilisé l'<a href="http://diveintohtml5.info/history.html">API history</a> pour mettre à jour l'URL affichée dans la barre d'adresse du navigateur. Tous les événements futurs de ce cadre utiliseront l'URL mise à jour.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webNavigation.onHistoryStateUpdated.addListener(
+ listener, // function
+ filter // optional object
+)
+browser.webNavigation.onHistoryStateUpdated.removeListener(listener)
+browser.webNavigation.onHistoryStateUpdated.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 est écouté, 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>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur l'événement de navigation.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant une seule propriété <code>url</code>, qui est un <code>tableau</code> d'objets  {{WebExtAPIRef("events.UrlFilter")}}. Si vous incluez ce paramètre, l'événement se déclenchera uniquement pour les transitions vers les URL qui correspondent à au moins un <code>UrlFilter</code> dans un tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.</p>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL à laquelle le cadre donné va naviguer.</dd>
+ <dt><code>processId</code></dt>
+ <dd><code>integer</code>. L'ID du processus dans lequel cet onglet est rendu.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Frame dans lequel la navigation aura lieu. 0 indique que la navigation se déroule dans le contexte de navigation de niveau supérieur de l'onglet, et non dans un <a href="/fr/docs/Web/HTML/Element/iframe">iframe</a> imbriqué. Une valeur positive indique que la navigation se déroule dans un  iframe imbriqué. Les ID de <em>frames</em> sont uniques pour un onglet et un processus donnés.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle la navigation a été validée, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'origine</a>.</dd>
+ <dt><code>transitionType</code></dt>
+ <dd><code>{{WebExtAPIRef("webNavigation.transitionType", "transitionType")}}</code>.La raison de la navigation: par exemple, <code>"link"</code> si l'utilisateur a cliqué sur un lien.</dd>
+ <dt><code>transitionQualifiers</code></dt>
+ <dd><code>Array</code> de <code>{{WebExtAPIRef("webNavigation.transitionQualifier", "transitionQualifier")}}</code>. Informations supplémentaires sur la navigation : par exemple, s'il existait une redirection de serveur ou de client.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.webNavigation.onHistoryStateUpdated")}}</p>
+
+<h2 id="Examples">Examples</h2>
+
+<p>Logs les URL cibles et les informations de transition supplémentaires pour  <code>onHistoryStateUpdated</code>, si le nom d'hôte de l'URL cible contient "example.com" ou commence par "developer".</p>
+
+<pre class="brush: js">var filter = {
+ url:
+ [
+ {hostContains: "example.com"},
+ {hostPrefix: "developer"}
+ ]
+}
+
+function logOnHistoryStateUpdated(details) {
+ console.log("onHistoryStateUpdated: " + details.url);
+ console.log("Transition type: " + details.transitionType);
+ console.log("Transition qualifiers: " + details.transitionQualifiers);
+}
+
+browser.webNavigation.onHistoryStateUpdated.addListener(logOnHistoryStateUpdated, filter);
+</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.html
new file mode 100644
index 0000000000..36aed3f413
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.html
@@ -0,0 +1,149 @@
+---
+title: webNavigation.onReferenceFragmentUpdated
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/onReferenceFragmentUpdated
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onReferenceFragmentUpdated
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/onReferenceFragmentUpdated
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Lancé si <a class="external external-icon" href="https://en.wikipedia.org/wiki/Fragment_identifier">identificateur dee fragment</a> d'une page est modifié. Par exemple, si une page implémente une table des matières à l'aide de fragments et que l'utilisateur clique sur une entrée dans la table des matières, cet événement se déclenche. Tous les événements futurs de ce cadre utiliseront l'URL mise à jour.</div>
+
+<div></div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webNavigation.onReferenceFragmentUpdated.addListener(
+ listener, // function
+ filter // optional object
+)
+browser.webNavigation.onReferenceFragmentUpdated.removeListener(listener)
+browser.webNavigation.onReferenceFragmentUpdated.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 est écouté, 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>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur l'événement de navigation.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code>{{optional_inline}}</dt>
+ <dd>
+ <p><code>object</code>. Un objet contenant une seule propriété <code>url</code>, qui est un <code>Array</code> d'objets {{WebExtAPIRef("events.UrlFilter")}}. Si vous incluez ce paramètre, l'événement se déclenchera uniquement pour les transitions vers les URL qui correspondent à au moins un <code>UrlFilter</code> dans le tableau.Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.</p>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. L'URL à laquelle le cadre donné va naviguer.</dd>
+ <dt><code>processId</code></dt>
+ <dd><code>integer</code>. L'ID du processus dans lequel cet onglet est rendu.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>.Cadre dans lequel la navigation aura lieu. 0 indique que la navigation se déroule dans le contexte de navigation de niveau supérieur de l'onglet, et non dans un <a href="/fr/docs/Web/HTML/Element/iframe">iframe</a> imbriqué. Une valeur positive indique que la navigation se déroule dans un iframe imbriqué. Les ID de cadre sont uniques pour un onglet et un processus donnés.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle la navigation a été validée, en <a href="https://en.wikipedia.org/wiki/Unix_time">milliseconde depuis l'époque</a>.</dd>
+ <dt><code>transitionType</code></dt>
+ <dd><code>{{WebExtAPIRef("webNavigation.transitionType", "transitionType")}}</code>. La raison de la navigation: par exemple, <code>"link"</code> si l'utilisateur a cliqué sur un lien.</dd>
+ <dt><code>transitionQualifiers</code></dt>
+ <dd><code>Array</code> de <code>{{WebExtAPIRef("webNavigation.transitionQualifier", "transitionQualifier")}}</code>. Informations supplémentaires sur la navigation : par exemple, s'il existait une redirection de serveur ou de client.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.webNavigation.onReferenceFragmentUpdated")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Consigne les URL cibles et les informations de transition supplémentaires pour  <code>onReferenceFragmentUpdated</code>, si le nom d'hôte de l'URL cible contient "example.com" ou commence par "developer".</p>
+
+<pre class="brush: js">var filter = {
+ url:
+ [
+ {hostContains: "example.com"},
+ {hostPrefix: "developer"}
+ ]
+}
+
+function logOnReferenceFragmentUpdated(details) {
+ console.log("onReferenceFragmentUpdated: " + details.url);
+ console.log("Transition type: " + details.transitionType);
+ console.log("Transition qualifiers: " + details.transitionQualifiers);
+}
+
+browser.webNavigation.onReferenceFragmentUpdated.addListener(logOnReferenceFragmentUpdated, filter);
+</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.html
new file mode 100644
index 0000000000..d8a0489e27
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.html
@@ -0,0 +1,126 @@
+---
+title: webNavigation.onTabReplaced
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/onTabReplaced
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onTabReplaced
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/onTabReplaced
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque le contenu de l'onglet est remplacé par un onglet différent (généralement précédemment pré-rendu).</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webNavigation.onTabReplaced.addListener(
+ listener, // function
+ filter // optional object
+);
+browser.webNavigation.onTabReplaced.removeListener(listener)
+browser.webNavigation.onTabReplaced.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 est écouté, 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>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>replacedTabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet qui a été remplacé.</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. L'ID de l'onglet qui a remplacé l'ancien onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. Le moment où le remplacement s'est produit, en <a class="external external-icon" href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+
+
+<p>{{Compat("webextensions.api.webNavigation.onTabReplaced")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function logOnTabReplaced(details) {
+ console.log("onTabReplaced: " + details);
+}
+
+browser.webNavigation.onTabReplaced.addListener(logOnTabReplaced);</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Acknowledgements</strong>
+
+<p>This API is based on Chromium's <a href="https://developer.chrome.com/extensions/webNavigation#event-onTabReplaced"><code>chrome.webNavigation</code></a> API. This documentation is derived from <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> in the Chromium code.</p>
+
+<p>Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.html
new file mode 100644
index 0000000000..a224bd4316
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.html
@@ -0,0 +1,85 @@
+---
+title: webNavigation.TransitionQualifier
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/TransitionQualifier
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - TransitionQualifier
+ - Type
+ - WebExtensions
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/TransitionQualifier
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Informations supplémentaires sur une transition.</div>
+
+<div></div>
+
+<div>Notez que beaucoup de valeurs ne sont actuellement pas supportées dans Firefox : voir la <a href="/fr/Add-ons/WebExtensions/API/WebNavigation/TransitionQualifier#Browser_compatibility">table de compatibilité</a> pour plus de détails.</div>
+
+<div></div>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt>"client_redirect"</dt>
+ <dd>Redirection(s) provoquée par le JavaScript en cours d'exécution dans la page ou un pragma "actualiser" dans la balise <a href="/fr/docs/Web/HTML/Element/meta">meta</a> de la page.</dd>
+ <dt>"server_redirect"</dt>
+ <dd>Redirection(s) provoquée par un <a href="https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#3xx_Redirection">code status HTTP 3XX</a> envoyé par le serveur.</dd>
+ <dt>"forward_back"</dt>
+ <dd>L'utilisateur a utilisé le bouton avant ou arrière pour déclencher la navigation..</dd>
+ <dt>"from_address_bar"</dt>
+ <dd>L'utilisateur a déclenché la navigation depuis la barre d'adresse.</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.webNavigation.TransitionQualifier")}}</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.html
new file mode 100644
index 0000000000..47bab38b4a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.html
@@ -0,0 +1,95 @@
+---
+title: webNavigation.TransitionType
+slug: Mozilla/Add-ons/WebExtensions/API/webNavigation/TransitionType
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - TransitionType
+ - Type
+ - WebExtensions
+ - webNavigation
+translation_of: Mozilla/Add-ons/WebExtensions/API/webNavigation/TransitionType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Cause de la navigation: par exemple, l'utilisateur a cliqué sur un lien, ou a tapé une adresse, ou a cliqué sur un signet.</p>
+
+<p>Notez que beaucoup de valeurs ne sont actuellement pas supportées dans Firefox : voir la <a href="/fr/Add-ons/WebExtensions/API/WebNavigation/TransitionType#Browser_compatibility">table de compatibilité du navigateur</a> pour plus de détails.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt><a id="value-link" name="value-link"></a>"link"</dt>
+ <dd>L'utilisateur a cliqué sur un lien dans une autre page.</dd>
+ <dt><a id="value-typed" name="value-typed"></a>"typed"</dt>
+ <dd>L'utilisateur a tapé l'URL dans la barre d'adresse. Ceci est également utilisé si l'utilisateur a commencé à taper dans la barre d'adresse, puis sélectionné une URL parmi les suggestions qu'il a proposées. Voir aussi " generated".</dd>
+ <dt><a id="value-auto_bookmark" name="value-auto_bookmark"></a>"auto_bookmark"</dt>
+ <dd>L'utilisateur a cliqué sur un signet ou un élément dans l'historique du navigateur.</dd>
+ <dt><a id="value-auto_subframe" name="value-auto_subframe"></a>"auto_subframe"</dt>
+ <dd>Les iframes imbriqués qui sont automatiquement chargés par leur parent.</dd>
+ <dt><a id="value-manual_subframe" name="value-manual_subframe"></a>"manual_subframe"</dt>
+ <dd>Les iframes imbriqués chargés en tant qu'action utilisateur explicite. Le chargement d'une telle iframe générera une entrée dans la liste de navigation avant/arrière.</dd>
+ <dt><a id="value-generated" name="value-generated"></a>"generated"</dt>
+ <dd>L'utilisateur a commencé à taper dans la barre d'adresse, puis a cliqué sur une entrée suggérée qui ne contenait pas d'URL.</dd>
+ <dt><a id="value-start_page" name="value-start_page"></a>"start_page"</dt>
+ <dd>La page a été passée à la ligne de commande ou est la page de démarrage.</dd>
+ <dt><a id="value-form_submit" name="value-form_submit"></a>"form_submit"</dt>
+ <dd>L'utilisateur a soumis un formulaire. Notez que dans certaines situations, par exemple lorsqu'un formulaire utilise un script pour soumettre son contenu, l'envoi d'un formulaire n'entraîne pas ce type de transition.</dd>
+ <dt><a id="value-reload" name="value-reload"></a>"reload"</dt>
+ <dd>L'utilisateur a rechargé la page en utilisant le bouton Recharger ou en appuyant sur Entrée dans la barre d'adresse. Ceci est également utilisé pour la restauration de session et la réouverture des onglets fermés.</dd>
+ <dt><a id="value-keyword" name="value-keyword"></a>"keyword"</dt>
+ <dd>L'URL a été générée à l'aide d'une <a href="https://support.mozilla.org/fr/kb/comment-rechercher-site-barre-adresse">rechercher par mot</a> configurée par l'utilisateur.</dd>
+ <dt><a id="value-keyword_generated" name="value-keyword_generated"></a>"keyword_generated"</dt>
+ <dd>Correspond à une visite générée pour un mot clé.</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.webNavigation.TransitionType")}}</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/webNavigation"><code>chrome.webNavigation</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/web_navigation.json"><code>web_navigation.json</code></a> dans le code de Chromium code.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.html
new file mode 100644
index 0000000000..ae6f4733cf
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.html
@@ -0,0 +1,97 @@
+---
+title: webRequest.BlockingResponse
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/BlockingResponse
+tags:
+ - API
+ - Add-ons
+ - BlockingResponse
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/BlockingResponse
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet de ce type est renvoyé par les auditeurs d'événements qui ont défini le <code>"blocking"</code> dans leur argument <code>extraInfoSpec</code>.</p>
+
+<p>En définissant des propriétés particulières dans <code>BlockingResponse</code>, l'auditeur peut modifier les requêtes réseau.</p>
+
+<p>Notez que vous ne pouvez pas définir toutes les propriétés de cet objet dans chaque auditeur : les propriétés que vous pouvez définir dépendent de l'événement qui a déclenché cet auditeur, comme détaillé ci-dessous.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>authCredentials</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Si elle est définie, la demande est faite en utilisant les informations d'identification données. Vous ne pouvez définir cette propriété que dans {{WebExtAPIRef("webRequest.onAuthRequired", "onAuthRequired")}}. La propriété <code>authCredentials</code> est un objet avec les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur à fournir.</dd>
+ <dt><code>password</code></dt>
+ <dd><code>string</code>. Mot de passe à fournir.</dd>
+ </dl>
+ </dd>
+ <dt><code>cancel</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si <code>true</code>, la demande est annulée. Vous ne pouvez définir cette propriété dans {{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}}, {{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}}, {{WebExtAPIRef("webRequest.onHeadersReceived", "onHeadersReceived")}}, et  {{WebExtAPIRef("webRequest.onAuthRequired", "onAuthRequired")}}.</dd>
+ <dt><code>redirectUrl</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Il s'agit d'une URL, et si elle est définie, la requête originale est redirigée vers cette URL. Vous ne pouvez définir cette propriété que dans {{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}} ou {{WebExtAPIRef("webRequest.onHeadersReceived", "onHeadersReceived")}}.</dd>
+ <dd>Les redirections vers des schémas non-HTTP tels que data : sont autorisées, mais elles ne sont pas prises en charge actuellement (<span id="summary_alias_container"><span id="short_desc_nonedit_display">{{bug("707624")}})</span></span>. Les redirections utilisent la même méthode de requête que la requête originale à moins qu'elle ne soit initiée à partir de l'étape <code>onHeadersReceived</code>, auquel cas la redirection utilise la méthode GET.</dd>
+ <dd>Si une extension veut rediriger une URL publique (par exemple HTTPS) vers une <a href="/fr/Add-ons/WebExtensions/user_interface/Extension_pages">page d'extension</a>, le fichier manifest.json de l'extension doit contenir une clé <a href="/fr/Add-ons/WebExtensions/manifest.json/web_accessible_resources">web_accessible_resources</a> qui liste l'URL de la page d'extension.</dd>
+ <dt><code>requestHeaders</code>{{optional_inline}}</dt>
+ <dd>
+ <p>{{WebExtAPIRef('webRequest.HttpHeaders')}}. C'est un objet {{WebExtAPIRef('webRequest.HttpHeaders', "HttpHeaders")}}, un tableau dans lequel chaque objet représente un en-tête. Si elle est définie, la demande est faite avec ces en-têtes plutôt qu'avec les en-têtes d'origine. Vous ne pouvez définir cette propriété que dans {{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}} .</p>
+ </dd>
+ <dt><code>responseHeaders</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('webRequest.HttpHeaders')}}. C'est un objet {{WebExtAPIRef('webRequest.HttpHeaders', "HttpHeaders")}}, un tableau dans lequel chaque objet représente un en-tête. Si elle est définie, le serveur est supposé avoir répondu avec ces en-têtes de réponse au lieu des originaux. Vous ne pouvez définir cette propriété que dans {{WebExtAPIRef("webRequest.onHeadersReceived", "onHeadersReceived")}}. Si plusieurs extensions tentent de définir le même en-tête (par exemple, <code>Content-Security-Policy</code>), une seule des modifications sera réussie..</dd>
+ <dt><code>upgradeToSecure</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si la valeur <code>true</code> est est définie et que la requête originale est une requête HTTP, cela empêchera l'envoi de la requête originale et fera plutôt une requête sécurisée (HTTPS). Si une extension renvoie <code>redirectUrl</code> dans <code>onBeforeRequest</code>, alors <code>upgradeToSecure</code> sera ignoré pour cette requête. Vous ne pouvez définir cette propriété que dans {{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}}.</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.webRequest.BlockingResponse")}}</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.html
new file mode 100644
index 0000000000..d97bd2e112
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.html
@@ -0,0 +1,79 @@
+---
+title: webRequest.CertificateInfo
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/CertificateInfo
+tags:
+ - API
+ - Add-ons
+ - CertificateInfo
+ - Extensions
+ - Reference
+ - Type
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/CertificateInfo
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet décrivant un seul <a href="https://tools.ietf.org/html/rfc5280">certificat X.509</a>.</p>
+
+<p>L'objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}} retourné par l'objet {{WebExtAPIRef("webRequest.getSecurityInfo()")}} API inclut une propriété de  <code>certificats</code> qui est un tableau de ces objets.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>fingerprint</code></dt>
+ <dd>
+ <p><code>Object</code>. Un objet avec les propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>sha1</code></dt>
+ <dd><code>String</code>. SHA-1 hash de l'encodage DER du certificat.</dd>
+ <dt><code>sha256</code></dt>
+ <dd><code>String</code>. SHA-256 hash de l'encodage DER du certificat.</dd>
+ </dl>
+ </dd>
+ <dt><code>isBuiltInRoot</code></dt>
+ <dd>
+ <p><code>Boolean</code>. <code>true</code> si le certificat est l'une des racines de confiance installées dans le navigateur, sinon <code>false</code>.</p>
+ </dd>
+ <dt><code>issuer</code></dt>
+ <dd><code>String</code>. Nom de l'organisation qui a délivré ce certificat, représenté par un nom distinctif et formaté sous la forme d'une liste de noms distinctifs relatifs séparés par des virgules, chacun de la forme "type=value".</dd>
+ <dd>Par exemple: "<span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body"><span class="objectBox objectBox-string">CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US</span></span></span></span>".</dd>
+ <dt><code>rawDER</code></dt>
+ <dd><code>Array</code> de <code>Number</code>. Si <a href="/fr/Add-ons/WebExtensions/API/webRequest/getSecurityInfo" title="Use this function to get detailed information about the TLS connection associated with a particular request."><code>webRequest.getSecurityInfo()</code></a> a été appelé avec l'option <code>rawDER</code> présent et mis à <code>true</code>, ceci contiendra l'encodage DER du certificat.</dd>
+ <dt><code>serialNumber</code></dt>
+ <dd><code>String</code>. Le <a href="https://tools.ietf.org/html/rfc5280#section-4.1.2.2">numéro de série</a> du certificat.</dd>
+ <dt><code>subject</code></dt>
+ <dd><code>String</code>. Nom de l'organisation qui a délivré ce certificat, représenté par un nom distinctif et formaté sous la forme d'une liste de noms distinctifs relatifs séparés par des virgules, chacun de la forme "type=value".</dd>
+ <dd>Par exemple: "<span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body"><span class="objectBox objectBox-string">CN=*.cdn.mozilla.net,O=Mozilla Corporation,L=Mountain View,ST=California,C=US</span></span></span></span>".</dd>
+ <dt><code>subjectPublicKeyInfoDigest</code></dt>
+ <dd>
+ <p><code>Object</code>. Un objet contenant les propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>sha256</code></dt>
+ <dd><code>String</code>. Base64 encodé SHA-256 hash de l'<a href="https://tools.ietf.org/html/rfc5280#section-4.1.2.7">information de clé publique</a> codée DER.</dd>
+ </dl>
+ </dd>
+ <dt><code>validity</code></dt>
+ <dd>
+ <p><code>Object</code>. Période de validité du certificat. Un objet contenant les propriétés suivantes :</p>
+
+ <dl class="reference-values">
+ <dt><code>start</code></dt>
+ <dd><code>Number</code>. Le début de la période de validité du certificat, en <a class="external external-icon" href="https://en.wikipedia.org/wiki/Unix_time" rel="noopener">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>end</code></dt>
+ <dd><code>Number</code>. La fin de la période de validité du certificat, en <a class="external external-icon" href="https://en.wikipedia.org/wiki/Unix_time" rel="noopener">millisecondes depuis l'époque</a>.</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.webRequest.CertificateInfo", 10)}}</p>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.html
new file mode 100644
index 0000000000..1286990c18
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.html
@@ -0,0 +1,76 @@
+---
+title: webRequest.filterResponseData()
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/filterResponseData
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - filterResponseData
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/filterResponseData
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Utilisez cette fonction pour créer un objet {{WebExtAPIRef("webRequest.StreamFilter")}} pour une requête particulière.<br>
+ Vous pouvez ensuite utiliser le filtre de flux pour surveiller et modifier la réponse. Vous appelez typiquement cette fonction à partir d'un écouteur d'événements <code>webRequest</code>.</p>
+
+<p>Pour utiliser cette API, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API</a> "webRequestBlocking", ainsi que les permissions normales nécessaires à l'auditeur de l'événement (la permission "webRequest" et la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission hôte </a>pour l'hôte).</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var filter = browser.webRequest.filterResponseData(
+ requestId // string
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. ID de la requête à filtrer. Vous pouvez l'obtenir à partir de l'objet de <code>details</code> qui est passé dans n'importe quel écouteur d'événement <code>webRequest</code>.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Un objet {{WebExtAPIRef("webRequest.StreamFilter")}} que vous pouvez utiliser pour surveiller et modifier la réponse.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple, tiré de l'extension <a href="https://github.com/mdn/webextensions-examples/tree/master/http-response">http-response</a>, crée un filtre dans  {{WebExtAPIRef("webRequest.onBeforeRequest")}} et l'utilise pour modifier la réponse :</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+ let decoder = new TextDecoder("utf-8");
+ let encoder = new TextEncoder();
+
+ filter.ondata = event =&gt; {
+ let str = decoder.decode(event.data, {stream: true});
+ // Just change any instance of Example in the HTTP response
+ // to WebExtension Example.
+ str = str.replace(/Example/g, 'WebExtension Example');
+ filter.write(encoder.encode(str));
+ filter.disconnect();
+ }
+
+ return {};
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.com/*"], types: ["main_frame"]},
+ ["blocking"]
+);
+</pre>
+
+<p>{{WebExtExamples}}</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.webRequest.filterResponseData", 10)}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.html
new file mode 100644
index 0000000000..28f7039917
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.html
@@ -0,0 +1,106 @@
+---
+title: webRequest.getSecurityInfo()
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/getSecurityInfo
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Reference
+ - WebExtensions
+ - getSecurityInfo
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/getSecurityInfo
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Utilisez cette fonction pour obtenir des informations détaillées sur la connexion <a href="/fr/docs/Glossaire/TLS">TLS</a> associée à une demande particulière..</p>
+
+<p>Vous passez à cette fonction la <code>requestId</code> pour la requête en question, et quelques paramètres supplémentaires optionnels. Il retourne une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera résolue à un objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}}.</p>
+
+<p>Vous ne pouvez appeler cette fonction qu'à partir de l'écouteur  {{WebExtAPIRef("webRequest.onHeadersReceived")}}. La <code>requestId</code> peut être trouvée dans l'objet <code>details</code> object qui est passé dans l'écouteur.</p>
+
+<p>Vous devez également passer l'option "blocking" à  <code>webRequest.onHeadersReceived.addListener()</code>. Ainsi, pour utiliser cette API, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API</a> "webRequestBlocking", ainsi que les permissions normales nécessaires pour utiliser les écouteurs <code>webRequest</code>  (la permission "webRequest" et la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission hôte</a> pour le hôte).</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">var gettingInfo = browser.webRequest.getSecurityInfo(
+ requestId, // string
+ options // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. ID de la requête pour laquelle vous souhaitez obtenir des informations de sécurité. Vous pouvez l'obtenir à partir de l'objet de <code>details</code> qui est passé dans n'importe quel écouteur d'événement <code>webRequest</code>.</dd>
+ <dt><code>options</code></dt>
+ <dd><code>object</code>. Un objet qui peut contenir l'une des propriétés suivantes, toutes facultatives :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>certificateChain</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si <code>true</code>, l'objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}} retourné inclura toute la chaîne de certificats jusqu'à et y compris la racine de confiance. Si <code>false</code>, <br>
+ il n'inclura que le certificat du serveur. La valeur par défaut est <code>false</code>.</dd>
+ <dt><code>rawDER</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si true, chaque propriété {{WebExtAPIRef("webRequest.CertificateInfo", "CertificateInfo")}} dans le {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo.certificates")}} contiendra une propriété <code>rawDER</code>. Il contient le DER-encoded ASN.1 qui comprend les données du certificat.</dd>
+ </dl>
+ </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 se résout en un objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}}.</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.webRequest.getSecurityInfo", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple écoute toutes les requêtes HTTPS à "mozilla.org" ou ses sous-domaines, et enregistre le nom de l'objet dans le certificat du serveur :</p>
+
+<pre class="brush: js">async function logSubject(details) {
+ try {
+ let securityInfo = await browser.webRequest.getSecurityInfo(details.requestId, {});
+ console.log(details.url);
+ if (securityInfo.state === "secure" || securityInfo.state === "weak") {
+ console.log(securityInfo.certificates[0].subject);
+ }
+ }
+ catch(error) {
+ console.error(error);
+ }
+}
+
+browser.webRequest.onHeadersReceived.addListener(logSubject,
+ {urls: ["https://*.mozilla.org/*"]},
+ ["blocking"]
+);</pre>
+
+<p>Cet exemple écoute toutes les requêtes HTTPS à "mozilla.org" ou ses sous-domaines, et enregistre le nom dans le certificat racine de confiance :</p>
+
+<pre class="brush: js">async function logRoot(details) {
+ try {
+ let securityInfo = await browser.webRequest.getSecurityInfo(
+ details.requestId,
+ {"certificateChain": true}
+ );
+ console.log(details.url);
+ if (securityInfo.state === "secure" || securityInfo.state === "weak") {
+ console.log(securityInfo.certificates[securityInfo.certificates.length - 1].issuer);
+ }
+ }
+ catch(error) {
+ console.error(error);
+ }
+}
+
+browser.webRequest.onHeadersReceived.addListener(logRoot,
+ {urls: ["https://*.mozilla.org/*"]},
+ ["blocking"]
+);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.html
new file mode 100644
index 0000000000..f5eb98c557
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.html
@@ -0,0 +1,115 @@
+---
+title: webRequest.handlerBehaviorChanged()
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/handlerBehaviorChanged
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - handlerBehaviorChanged
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/handlerBehaviorChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Cette fonction peut être utilisée pour s'assurer que les auditeurs d'événements sont appliqués correctement lorsque les pages se trouvent dans le cache en mémoire du navigateur.</div>
+
+<div></div>
+
+<div>Si le navigateur a chargé une page et que la page est rechargée, le navigateur peut recharger la page à partir de son cache en mémoire, et dans ce cas, les événements ne seront pas déclenchés pour la demande.</div>
+
+<p>Supposons que le travail d'une extension consiste à bloquer les requêtes Web par rapport à un modèle, et le scénario suivant se produit :</p>
+
+<ul>
+ <li>L'utilisateur charge une page qui inclut une requête particulière, et le modèle permet la requête.</li>
+ <li>La ressource est chargée et mise en cache en mémoire.</li>
+ <li>Les modèles de l'extension sont mis à jour, de telle sorte que la ressource ne serait plus autorisée.</li>
+ <li>L'utilisateur recharge la page.</li>
+</ul>
+
+<p>Comme la page sera rechargée à partir du cache mémoire, il se peut que l'auditeur ne soit plus appelé et que la requête soit chargée malgré la nouvelle stratégie de l'extension.</p>
+
+<p>La fonction <code>handlerBehaviorChanged()</code> est conçue pour résoudre ce problème. Il vide le cache en mémoire, de sorte que les rechargements de page déclenchent les auditeurs d'événements.</p>
+
+<p>Parce que <code>handlerBehaviorChanged()</code> nettoie le cache, cela peut être coûteux et mauvais pour la performance. Le module webRequest définit une propriété en lecture seule  {{WebExtAPIRef("webRequest.MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES", "MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES")}} : faire plus d'appels que ce nombre en 10 minutes n'aura aucun effet.</p>
+
+<p>L'implémentation de la mise en cache, d'où la nécessité de cette fonction, varie d'un navigateur à l'autre, de sorte que dans certains navigateurs, cette fonction ne fait rien.</p>
+
+<p>Il s'agit d'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 flushingCache = browser.webRequest.handlerBehaviorChanged()
+</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 remplie sans arguments, lorsque l'opération sera terminée.</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.webRequest.handlerBehaviorChanged")}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Dans le snippet suivant, nous vidons le cache en mémoire via un appel à <code>handlerBehaviorChanged()</code>,  et signalons cette action en enregistrant un message approprié à la console.</p>
+
+<pre class="brush: js">function onFlushed() {
+ console.log(`In-memory cache flushed`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+var flushingCache = browser.webRequest.handlerBehaviorChanged();
+flushingCache.then(onFlushed, onError);</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.html
new file mode 100644
index 0000000000..5b2ff2cd61
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.html
@@ -0,0 +1,77 @@
+---
+title: webRequest.HttpHeaders
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/HttpHeaders
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - HttpHeaders
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/HttpHeaders
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un tableau d'en-tetes HTTP. Chaque en-tête est représenté comme un objet avec deux propriétés : <code>name</code> et <code>valeur</code> ou <code>binaryValue</code>.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Un <code>tableau</code> d'<code>objet</code>s. Chaque objet a les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>name</code></dt>
+ <dd><code>string</code>. Nom de l'en-tête HTTP.</dd>
+ <dt><code>value</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Valeur de l'en-tete HTTP si elle peut être représentée par UTF-8. Cette propriété ou valeur binaire doit être présente.</dd>
+ <dt><code>binaryValue</code>{{optional_inline}}</dt>
+ <dd><code>array</code> d'<code><code>integer</code></code>. Valeur de l'en-tête HTTP s'il ne peut pas être représenté par UTF-8, représenté par en octets (0..255). Soit cette propriété ou cette <code>valeur</code> doit être présente.</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.webRequest.HttpHeaders")}}</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/index.html
new file mode 100644
index 0000000000..ccf4a09b02
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/index.html
@@ -0,0 +1,200 @@
+---
+title: webRequest
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Interface
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest
+---
+<p>{{AddonSidebar}}</p>
+
+<p>Ajout d'écouteurs d'événements pour les différentes étapes d'une requête HTTP. L'écouteur de l'événement reçoit des informations détaillées sur la demande et peut modifier ou annuler la demande.</p>
+
+<p>Chaque événement est déclenché à un stade particulier de la demande. La séquence typique des événements est la suivante :</p>
+
+<p><img alt="" src="https://mdn.mozillademos.org/files/13376/webRequest-flow.png" style="display: block; height: 680px; margin-left: auto; margin-right: auto; width: 624px;"></p>
+
+<p>{{WebExtAPIRef("webRequest.onErrorOccurred", "onErrorOccurred")}} peut être tiré à tout moment pendant la requête. Notez également que parfois la séquence des événements peut différer de ceci : par exemple, dans Firefox, lors d'une mise à niveau <a href="/fr/docs/Sécurité/HTTP_Strict_Transport_Security">HSTS</a>, l'événement <code>onBeforeRedirect</code> sera déclenché immédiatement après <code>onBeforeRequest</code>.</p>
+
+<p>Tous les évènements (excepté <code>onErrorOccurred</code>) peuvent prendre trois arguments pour <code>addListener()</code>:</p>
+
+<ul>
+ <li>Le receveur d'évènements lui-même</li>
+ <li>un {{WebExtAPIRef("webRequest.RequestFilter", "filter")}} objet, afin de n'être notifié que pour les requêtes effectués par des URLs particulières ou pour un type particulier de ressources.</li>
+ <li>un  <code>extraInfoSpec</code> objet optionnel. Vous pouvez utiliser celui-ci pour passer des instructions spécifiques à l'évènement supplémentaires.</li>
+</ul>
+
+<p>Une fonction d'écoute reçoit un objet <code>details</code> qui contient des informations à propos de la requête. Il inclut un ID de requête, fourni afin de permettre à une extension de relier des évènements associés à une même requête. Il est unique à chaque session de navigation et à l'extension. Il reste le même tout au long d'une requête, même durant les redirections et les échanges d'authentifications.</p>
+
+<p>Pour utiliser l'API webRequest pour un hôte donné, une extension doit avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission API</a>  "webRequest" et la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission hôte </a>pour cet hôte. Pour utiliser la fonction "blocking", l'extension doit également avoir la permission API "webRequestBlocking".</p>
+
+<p>Pour intercepter des ressources chargées par une page (comme des images, des scripts ou des feuilles de style), l'extension doit avoir la permission de l'hôte pour la ressource ainsi que pour la page principale demandant la ressource. Par exemple, si une page à  "https://developer.mozilla.org" charge une image à partir de "https://mdn.mozillademos.org", alors une extension doit avoir les deux permissions d'hôte si elle doit intercepter la demande d'image.</p>
+
+<h2 id="Modifier_une_requête">Modifier une requête</h2>
+
+<p>Sur certains de ces événements, vous pouvez modifier la demande. Plus précisément, vous pouvez  :</p>
+
+<ul>
+ <li>Annuler une requête avec:
+ <ul>
+ <li>{{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}}</li>
+ <li>{{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}}</li>
+ <li>{{WebExtAPIRef("webRequest.onAuthRequired", "onAuthRequired")}}</li>
+ </ul>
+ </li>
+ <li>Rediriger une requête avec:
+ <ul>
+ <li>{{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}}</li>
+ <li>{{WebExtAPIRef("webRequest.onHeadersReceived", "onHeadersReceived")}}</li>
+ </ul>
+ </li>
+ <li>Modifier des en-têtes de requêtes avec:
+ <ul>
+ <li>{{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}}</li>
+ </ul>
+ </li>
+ <li>Modifier des réponses d'en-têtes avec:
+ <ul>
+ <li>{{WebExtAPIRef("webRequest.onHeadersReceived", "onHeadersReceived")}}</li>
+ </ul>
+ </li>
+ <li>Fournir des informations d'authentifications avec:
+ <ul>
+ <li>{{WebExtAPIRef("webRequest.onAuthRequired", "onAuthRequired")}}</li>
+ </ul>
+ </li>
+</ul>
+
+<p>Pour ce faire, vous devez transmettre une option avec la valeur "blocking" dans l'argument <code>extraInfoSpec</code> à la fonction <code>addListener()</code> de l'événement. Cela rend l'auditeur synchrone. Dans l'écouteur, vous pouvez alors renvoyer un objet {{WebExtAPIRef("webRequest.BlockingResponse", "BlockingResponse")}}, qui indique la modification à apporter : par exemple, l'en-tête de requête modifié que vous souhaitez envoyer.</p>
+
+<div class="blockIndicator warning">
+<p><strong>Avertissement </strong>: Les protocoles non-HTTP(S) ne supportent pas actuellement la fonctionnalité de "<code>blockage</code>", donc la modification de ces requêtes n'est pas disponible pour le moment. Voir {{bug(1475832)}} pour plus de détails.</p>
+</div>
+
+<h2 id="Accéder_aux_informations_de_sécurité">Accéder aux informations de sécurité</h2>
+
+<p>Dans l'écouteur {{WebExtAPIRef("webRequest.onHeadersReceived", "onHeadersReceived")}} vous pouvez accéder aux propriétés <a href="/fr/docs/Glossaire/TLS">TLS</a> d'une requête en appelant {{WebExtAPIRef("webRequest.getSecurityInfo()", "getSecurityInfo()")}}. Pour ce faire, vous devez également transmettre le "blockage" dans l'argument <code>extraInfoSpec</code> à la fonction <code>addListener()</code> de l'évènement.</p>
+
+<p>Vous pouvez lire les détails de la prise de contact TLS, mais vous ne pouvez pas les modifier ou remplacer les décisions de confiance du navigateur.</p>
+
+<h2 id="Modifier_les_réponses">Modifier les réponses</h2>
+
+<p>Pour modifier les corps de réponse HTTP pour une requête, appelez {{WebExtAPIRef("webRequest.filterResponseData")}}, en lui transmettant l'ID de la requête. Cela renvoie un objet {{WebExtAPIRef("webRequest.StreamFilter")}} que vous pouvez utiliser pour examiner et modifier les données reçues par le navigateur.</p>
+
+<p>Pour ce faire, vous devez disposer de la permission de l'API "webRequestBlocking" ainsi que la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API</a> "webRequest" et la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">permission de l'hôte </a>pour l'hôte concerné.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("webRequest.BlockingResponse")}}</dt>
+ <dd>
+ <p>Un objet de ce type est renvoyé par les auditeurs d'événements qui ont défini le <code>"blockage"</code> dans leur argument <code>extraInfoSpec</code>. En définissant des propriétés particulières dans <code>BlockingResponse</code>, the listener can modify network requests.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("webRequest.CertificateInfo")}}</dt>
+ <dd>Un objet décrivant un seul certificat X.509.</dd>
+ <dt>{{WebExtAPIRef("webRequest.HttpHeaders")}}</dt>
+ <dd>Un tableau d'en-têtes HTTP. Chaque en-tête est représenté comme un objet avec deux propriétés : <code>name</code> et <code>valeur</code> ou <code>binaryValue</code>.</dd>
+ <dt>{{WebExtAPIRef("webRequest.RequestFilter")}}</dt>
+ <dd>Un objet décrivant les filtres à appliquer aux événements webRequest.</dd>
+ <dt>{{WebExtAPIRef("webRequest.ResourceType")}}</dt>
+ <dd>Représente un type particulier de ressources récupérées dans une requête Web.</dd>
+ <dt>{{WebExtAPIRef("webRequest.SecurityInfo")}}</dt>
+ <dd>Un objet décrivant les propriétés de sécurité d'une requête Web particulière.</dd>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter")}}</dt>
+ <dd>Un objet qui peut être utilisé pour surveiller et modifier les réponses HTTP pendant leur réception.</dd>
+ <dt>{{WebExtAPIRef("webRequest.UploadData")}}</dt>
+ <dd>Contient des données téléchargées dans une requête URL.</dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("webRequest.MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES", "webRequest.MAX_​HANDLER_​BEHAVIOR_​CHANGED_​CALLS_​PER_​10_​MINUTES")}}</dt>
+ <dd>Le nombre de fois que <code><a href="/fr/Add-ons/WebExtensions/API/WebRequest/handlerBehaviorChanged" title="Suppose an add-on's job is to block web requests against a pattern, and the following scenario happens:"><code>handlerBehaviorChanged()</code></a></code> peut être appelé dans une période de 10 minutes.</dd>
+</dl>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("webRequest.handlerBehaviorChanged()")}}</dt>
+ <dd>Cette fonction peut être utilisée pour s'assurer que les écouteurs d'événements sont appliqués correctement lorsque les pages se trouvent dans le cache en mémoire du navigateur.</dd>
+ <dt>{{WebExtAPIRef("webRequest.filterResponseData()")}}</dt>
+ <dd>Retourne un objet {{WebExtAPIRef("webRequest.StreamFilter")}} pour une requête donnée.</dd>
+ <dt>{{WebExtAPIRef("webRequest.getSecurityInfo()")}}</dt>
+ <dd>Obtient des informations détaillées sur la connexion <a href="/fr/docs/Glossaire/TLS">TLS</a> associée à une requête donnée.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("webRequest.onBeforeRequest")}}</dt>
+ <dd>Lancé lorsqu'une demande est sur le point d'être faite, et avant que les en-têtes ne soient disponibles. C'est un bon endroit pour écouter si vous voulez annuler ou rediriger la demande.</dd>
+ <dt>{{WebExtAPIRef("webRequest.onBeforeSendHeaders")}}</dt>
+ <dd>Câblé avant d'envoyer des données HTTP, mais après que les en-têtes HTTP soient disponibles. C'est un bon endroit pour écouter si vous voulez modifier les en-têtes de requête HTTP.</dd>
+ <dt>{{WebExtAPIRef("webRequest.onSendHeaders")}}</dt>
+ <dd>Lancé juste avant l'envoi des en-têtes. Si votre add-on ou d'autres en-têtes modifiés dans <code>{{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}}</code>, vous verrez la version modifiée ici.</dd>
+ <dt>{{WebExtAPIRef("webRequest.onHeadersReceived")}}</dt>
+ <dd>Lancé lorsque les en-têtes de réponse HTTP associés à une requête ont été reçus. Vous pouvez utiliser cet événement pour modifier les en-têtes de réponse HTTP.</dd>
+ <dt>{{WebExtAPIRef("webRequest.onAuthRequired")}}</dt>
+ <dd>Déclenché lorsque le serveur demande au client de fournir des informations d'authentification. L'auditeur ne peut rien faire, annuler la demande ou fournir des informations d'authentification.</dd>
+ <dt>{{WebExtAPIRef("webRequest.onResponseStarted")}}</dt>
+ <dd>Lancé lorsque le premier octet du corps de réponse est reçu. Pour les requêtes HTTP, cela signifie que la ligne d'état et les en-têtes de réponse sont disponibles.</dd>
+ <dt>{{WebExtAPIRef("webRequest.onBeforeRedirect")}}</dt>
+ <dd>Déclenché lorsqu'une redirection initiée par le serveur est sur le point de se produirer.</dd>
+ <dt>{{WebExtAPIRef("webRequest.onCompleted")}}</dt>
+ <dd>C'est déclenché lorsqu'une demande est complétée.</dd>
+ <dt>{{WebExtAPIRef("webRequest.onErrorOccurred")}}</dt>
+ <dd>Déclenché lorsqu'une erreur se produit.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.webRequest")}}</p>
+
+<p><a href="/docs/Mozilla/Add-ons/WebExtensions/Chrome_incompatibilities#webRequest_incompatibilities">Extra notes on Chrome incompatibilities</a>.</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.html
new file mode 100644
index 0000000000..8baf0fb950
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.html
@@ -0,0 +1,68 @@
+---
+title: webRequest.MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES
+slug: >-
+ Mozilla/Add-ons/WebExtensions/API/webRequest/MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES
+ - Non-standard
+ - Property
+ - Reference
+ - WebExtensions
+ - webRequest
+translation_of: >-
+ Mozilla/Add-ons/WebExtensions/API/webRequest/MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES
+---
+<p>{{AddonSidebar}}</p>
+
+<p>Le nombre maximum de fois que <code>{{WebExtAPIRef("webRequest.handlerBehaviorChanged", "handlerBehaviorChanged()")}}</code> peut être appelé dans une période de 10 minutes.</p>
+
+<p>Cette propriété est en lecture seule.</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.webRequest.MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES")}}</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.html
new file mode 100644
index 0000000000..3ed5ad38ca
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.html
@@ -0,0 +1,367 @@
+---
+title: webRequest.onAuthRequired
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/onAuthRequired
+tags:
+ - API
+ - Addons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onAuthRequired
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/onAuthRequired
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Mise en place quand le serveur envoie un code status 401 ou 407 : c'est-à-dire lorsque le serveur demande au client de fournir des informations d'authentification telles qu'un nom d'utilisateur et un mot de passe.</p>
+
+<p>L'auditeur peut répondre de l'une des quatre façons suivantes :</p>
+
+<p><strong>Ne rien faire </strong>: l'auditeur ne peut rien faire, il suffit d'observer la demande. Si cela se produit, cela n'aura aucun effet sur le traitement de la demande, et le navigateur demandera probablement simplement à l'utilisateur de se connecter.</p>
+
+<p><strong>Annuler la demande </strong>: l'auditeur peut annuler la demande. S'ils le font, l'authentification échouera et l'utilisateur ne sera pas invité à se connecter. Les prolongations peuvent annuler les demandes comme suit :</p>
+
+<ul>
+ <li>dans addListener, passez <code>"blocking"</code> dans le paramètre <code>extraInfoSpec </code></li>
+ <li>dans l'écouteur lui-même, retourne un objet avec une propriété <code>cancel</code> définie à  <code>true</code></li>
+</ul>
+
+<p><strong>Fournir des informations d'identification de manière synchrone </strong>: si les informations d'identification sont disponibles de manière synchrone, l'extension peut les fournir de manière synchrone. Si l'extension fait cela, le navigateur tentera de se connecter avec les informations d'identification données.<br>
+ L'auditeur peut fournir des informations d'identification de manière synchrone comme suit :</p>
+
+<ul>
+ <li>dans addListener, passez <code>"blocking"</code> dans le paramètre <code>extraInfoSpec</code></li>
+ <li>dans l'auditeur, retourner un objet avec une propriété <code>authCredentials</code> définie sur les informations d'identification à fournir</li>
+</ul>
+
+<p><strong>Fournir les informations d'identification de manière asynchrone </strong>: l'extension peut avoir besoin de récupérer les informations d'identification de manière asynchrone. Par exemple, l'extension peut avoir besoin d'extraire les informations d'identification du stockage ou de demander à l'utilisateur. Dans ce cas, l'auditeur peut fournir des informations d'identification de manière asynchrone comme suit :</p>
+
+<ul>
+ <li>dans addListener, passez <code>"blocking"</code> dans le paramère <code>extraInfoSpec</code></li>
+ <li>dans l'auditeur, retourner une <code>Promise</code> qui est résolue avec un objet contenant une propriété <code>authCredentials</code>, définie sur les credentials à fournir.</li>
+</ul>
+
+<p>Voir <a href="/fr/Add-ons/WebExtensions/API/webRequest/onAuthRequired#Examples">Exemples</a>.</p>
+
+<p>Si vous utilisez le <code>"blockage"</code> vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API "webRequestBlocking"</a> dans votre manifest.json.</p>
+
+<p>Si votre poste fournit de mauvaises informations d'identification, l'auditeur sera rappelé. Pour cette raison, veillez à ne pas entrer dans une boucle infinie en fournissant à plusieurs reprises de mauvaises informations d'identification.</p>
+
+<h2 id="Autorisation_de_proxy">Autorisation de proxy</h2>
+
+<p>En général, Firefox ne déclenche pas d'événements <code>webRequest</code> pour les requêtes système, telles que les mises à jour de navigateur ou d'extension, ou les requêtes des moteurs de recherche. Pour permettre à l'autorisation de proxy de fonctionner sans problème pour les requêtes système, à partir de la version 57 Firefox implémente une exception à cette règle.</p>
+
+<p>Si une extension a les permissions "webRequest", "webRequestBlocking", "proxy", et "&lt;all_urls&gt;", alors elle pourra utiliser <code>onAuthRequired</code> pour fournir des informations d'identification pour l'autorisation de proxy (mais pas pour l'autorisation web normale).  L'auditeur ne sera pas en mesure d'annuler les demandes du système ou d'apporter d'autres modifications aux demandes du système.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webRequest.onAuthRequired.addListener(
+ listener, // function
+ filter, // object
+ extraInfoSpec // optional array of strings
+)
+browser.webRequest.onAuthRequired.removeListener(listener)
+browser.webRequest.onAuthRequired.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback, filter, extraInfoSpec)</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>écouteur</code> est enregistré à cet événement. Retourne <code>true</code> s'il est à l'é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> Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur la demande. Voir les <code><a href="#details">détails</a></code> ci-dessous.</dd>
+ </dl>
+
+ <p>Retourne : {{WebExtAPIRef('webRequest.BlockingResponse')}} ou une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code>.</p>
+
+ <ul>
+ <li>Pour traiter la requête de manière synchrone, inclure<code>"blocking"</code> dans le paramètre <code>extraInfoSpec</code> et retourner un objet <code>BlockingResponse</code>, avec son <code>cancel</code> ou ses propriétés <code>authCredentials</code>.</li>
+ <li>Pour traiter la requête de manière asynchrone, inclure <code>"blocking"</code> dans le paramètre <code>extraInfoSpec</code> et retourner une <code>Promise</code> qui est résolue avec un objet  <code>BlockingResponse</code>, avec son <code>cancel</code> ou ses propriétés <code>authCredentials</code>.</li>
+ </ul>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.</dd>
+ <dt><code>extraInfoSpec</code>{{optional_inline}}</dt>
+ <dd><code>array</code> de <code>string</code>. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes <span class="im">:</span></dd>
+ <dd>
+ <ul>
+ <li><code>"blocking"</code>: faire le blocage de la demande, afin que vous puissiez annuler la demande ou fournir des informations d'authentification.</li>
+ <li><span class="im"><code>"</code></span><code>responseHeaders</code><span class="im"><code>"</code>: inclure <code>responseHeaders</code> dans l'objet <code>details</code> transmis à l'auditeur</span></li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>challenger</code></dt>
+ <dd><code>object</code>. Le serveur demandant l'authentification. C'est un objet avec les propriétés suivantes :</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le <a href="https://en.wikipedia.org/wiki/Hostname#Internet_hostnames">nom d'hôte</a> du serveur.<br>
+ <strong>Warning</strong>: Contrairement à chrome, Firefox retournera l'hôte demandé au lieu du proxy demandant l'authentification, même si <code>isProxy</code> est <code>true</code>.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur.</dd>
+ </dl>
+ </dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal ; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'un (sous-)cadre est chargé (<code>type</code> is <code>main_frame</code> or <code>sub_frame</code>), <code>frameId</code> indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.</dd>
+ <dt><code>isProxy</code></dt>
+ <dd><code>boolean</code>. <code>true</code> pour Proxy-Authenticate, <code>false</code> pour WWW-Authenticate. <strong>Note</strong>: <code>webRequest.onAuthRequired</code> n'est appelé que pour les serveurs proxy HTTP et HTTPS/SSL nécessitant une authentification, et non pour les serveurs proxy SOCKS nécessitant une authentification.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard : par exemple, "GET" ou "POST".</dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. de la trame qui contient la trame qui a envoyé la requête. Réglé à -1 s'il n'existe pas de l'iframe parent.</dd>
+ <dt><code>proxyInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :</p>
+
+ <dl>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur proxy.</dd>
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Le type de serveur proxy. L'un des :</p>
+
+ <ul>
+ <li>"http": proxy HTTP (ou SSL CONNECT pour HTTPS)</li>
+ <li>"https": proxy HTTP sur connexion TLS vers proxy</li>
+ <li>"socks": SOCKS v5 proxy</li>
+ <li>"socks4": SOCKS v4 proxy</li>
+ <li>"direct": pas de proxy</li>
+ <li>"unknown": proxy inconnu</li>
+ </ul>
+ </dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Vrai si le proxy exécutera une résolution de nom de domaine basée sur le nom d'hôte fourni, ce qui signifie que le client ne doit pas faire sa propre recherche DNS.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>integer</code>. Délai d'attente de basculement en secondes. Si la connexion ne parvient pas à connecter le serveur proxy après ce nombre de secondes, le serveur proxy suivant dans le tableau renvoyé par <a href="/fr/docs/Add-ons/WebExtensions/API/proxy#FindProxyForURL()_return_value">FindProxyForURL()</a> sera utilisé.</dd>
+ </dl>
+ </dd>
+ <dt><code>realm</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. La zone d'authentification <a href="https://tools.ietf.org/html/rfc1945#section-11">realm</a> fournie par le serveur, s'il y en a un.</dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande. Les ID de requête sont uniques au sein d'une session de navigateur, de sorte que vous pouvez les utiliser pour relier différents événements associés à la même requête.</dd>
+ <dd>
+ <dl class="reference-values">
+ </dl>
+ </dd>
+ <dt><code>responseHeaders</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.</dd>
+ <dt><code>scheme</code></dt>
+ <dd><code>string</code>. Le schéma d'authentification : <code>"basic"</code> ou <code>"digest</code>".</dd>
+ <dt><code>statusCode</code></dt>
+ <dd><code>integer</code>. Code d'état HTTP standard renvoyé par le serveur.</dd>
+ <dt><code>statusLine</code></dt>
+ <dd><code>string</code>. Status d'état HTTP de la réponse ou la chaîne 'HTTP/0.9 200 OK' pour les réponses HTTP/0.9 (c'est-à-dire les réponses qui n'ont pas de ligne d'état) ou une chaîne vide s'il n'y a pas d'en-têtes</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.webRequest.onAuthRequired", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code n'observe que les demandes d'authentification pour l'URL cible :</p>
+
+<pre class="brush: js">var target = "https://intranet.company.com/";
+
+function observe(requestDetails) {
+ console.log("observing: " + requestDetails.requestId);
+}
+
+browser.webRequest.onAuthRequired.addListener(
+ observe,
+ {urls: [target]}
+);</pre>
+
+<p>Ce code annule les demandes d'authentification pour l'URL cible :</p>
+
+<pre class="brush: js">var target = "https://intranet.company.com/";
+
+function cancel(requestDetails) {
+ console.log("canceling: " + requestDetails.requestId);
+ return {cancel: true};
+}
+
+browser.webRequest.onAuthRequired.addListener(
+ cancel,
+ {urls: [target]},
+ ["blocking"]
+);</pre>
+
+<p>Ce code fournit les informations d'identification de manière synchrone. Il doit garder une trace des demandes en suspens, pour s'assurer qu'il n'essaie pas à plusieurs reprises de soumettre de mauvaises références :</p>
+
+<pre class="brush: js">var target = "https://intranet.company.com/";
+
+var myCredentials = {
+ username: "me@company.com",
+ password: "zDR$ERHGDFy"
+}
+
+var pendingRequests = [];
+
+// A request has completed.
+// We can stop worrying about it.
+function completed(requestDetails) {
+ console.log("completed: " + requestDetails.requestId);
+ var index = pendingRequests.indexOf(requestDetails.requestId);
+ if (index &gt; -1) {
+ pendingRequests.splice(index, 1);
+ }
+}
+
+function provideCredentialsSync(requestDetails) {
+ // If we have seen this request before, then
+ // assume our credentials were bad, and give up.
+ if (pendingRequests.indexOf(requestDetails.requestId) != -1) {
+ console.log("bad credentials for: " + requestDetails.requestId);
+ return {cancel:true};
+ }
+ pendingRequests.push(requestDetails.requestId);
+ console.log("providing credentials for: " + requestDetails.requestId);
+ return {authCredentials: myCredentials};
+}
+
+browser.webRequest.onAuthRequired.addListener(
+ provideCredentialsSync,
+ {urls: [target]},
+ ["blocking"]
+ );
+
+browser.webRequest.onCompleted.addListener(
+ completed,
+ {urls: [target]}
+);
+
+browser.webRequest.onErrorOccurred.addListener(
+ completed,
+ {urls: [target]}
+);</pre>
+
+<p>Ce code fournit les informations d'identification de manière asynchrone, en les récupérant à partir du stockage. Il doit également assurer le suivi des demandes en suspens, afin de s'assurer qu'il n'essaie pas à plusieurs reprises de soumettre de mauvaises références :</p>
+
+<pre class="brush: js">var target = "https://httpbin.org/basic-auth/*";
+
+var pendingRequests = [];
+
+/*
+A request has completed. We can stop worrying about it.
+*/
+function completed(requestDetails) {
+ console.log("completed: " + requestDetails.requestId);
+ var index = pendingRequests.indexOf(requestDetails.requestId);
+ if (index &gt; -1) {
+ pendingRequests.splice(index, 1);
+ }
+}
+
+function provideCredentialsAsync(requestDetails) {
+ // If we have seen this request before,
+ // then assume our credentials were bad,
+ // and give up.
+ if (pendingRequests.indexOf(requestDetails.requestId) != -1) {
+ console.log("bad credentials for: " + requestDetails.requestId);
+ return {cancel: true};
+
+ } else {
+ pendingRequests.push(requestDetails.requestId);
+ console.log("providing credentials for: " + requestDetails.requestId);
+ // we can return a promise that will be resolved
+ // with the stored credentials
+ return browser.storage.local.get(null);
+ }
+}
+
+browser.webRequest.onAuthRequired.addListener(
+ provideCredentialsAsync,
+ {urls: [target]},
+ ["blocking"]
+ );
+
+browser.webRequest.onCompleted.addListener(
+ completed,
+ {urls: [target]}
+);
+
+browser.webRequest.onErrorOccurred.addListener(
+ completed,
+ {urls: [target]}
+);
+</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.html
new file mode 100644
index 0000000000..0a3aa3992e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.html
@@ -0,0 +1,208 @@
+---
+title: webRequest.onBeforeRedirect
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/onBeforeRedirect
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onBeforeRedirect
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/onBeforeRedirect
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Déclenché lorsqu'une redirection initiée par le serveur est sur le point de se produire.</p>
+
+<p>Notez que vous ne pouvez pas passer le <code>"blockage"</code> pour cet événement, donc vous ne pouvez pas modifier ou annuler la demande de cet événement : c'est uniquement à titre d'information.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webRequest.onBeforeRedirect.addListener(
+ listener, // function
+ filter, // object
+ extraInfoSpec // optional array of strings
+)
+browser.webRequest.onBeforeRedirect.removeListener(listener)
+browser.webRequest.onBeforeRedirect.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback, filter, extraInfoSpec)</code></dt>
+ <dd>Ajouter un auditeur à 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'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est enregistré à cet événement. Retourne <code>true</code> s'il est écouté, 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>Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur la demande. Voir les <code><a href="#details">détails</a></code> ci-dessous.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.</dd>
+ <dt><code>extraInfoSpec</code>{{optional_inline}}</dt>
+ <dd><code>array</code> de <code>string</code>. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur :</dd>
+ <dd>
+ <ul>
+ <li><span class="im"><code>"</code></span><code>responseHeaders</code><span class="im"><code>"</code>: inclure <code>responseHeaders</code> dans l'objet <code>détails</code> </span>transmis à l'auditeur.</li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>documentUrl</code></dt>
+ <dd><code>string</code>. URL du document dans lequel la ressource sera chargée. Par exemple, si la page web "https://example.com" contient une image ou un iframe, alors le <code>documentUrl</code> pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, <code>documentUrl</code> n'est pas défini.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal ; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'un (sous-)cadre est chargé (<code>type</code> is <code>main_frame</code> or <code>sub_frame</code>), <code>frameId</code> indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.</dd>
+ <dt><code>fromCache</code></dt>
+ <dd><code>boolean</code>. Indique si cette réponse a été récupérée dans le cache du disque.</dd>
+ <dt><code>ip</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'adresse IP du serveur à laquelle la requête a été envoyée. Notez qu'il peut s'agir d'une adresse IPv6 littérale.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard : par exemple, "GET" ou "POST".</dd>
+ <dt><code>originUrl</code></dt>
+ <dd>
+ <p><code>string</code>. URL de la ressource qui a déclenché la requête. Par exemple, si "https://example.com" contient un lien, et que l'utilisateur clique sur le lien, alors <code>originUrl</code> de la requête résultante est "https://example.com".</p>
+
+ <p>L'<code>originUrl</code> est souvent mais pas toujours la même chose que <code>documentUrl</code>.Par exemple, si une page contient une iframe, et que l'iframe contient un lien qui charge un nouveau document dans l'iframe, alors le <code>documentUrl</code> pour la requête résultante sera le document parent de l'iframe, mais l'<code>originUrl</code> sera l'URL du document dans l'iframe qui contenait le lien.</p>
+
+
+ </dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. de la trame qui contient la trame qui a envoyé la requête. Réglé à -1 s'il n'existe pas de l'iframe parent.</dd>
+ <dt><code>proxyInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :</p>
+
+ <dl>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur proxy.</dd>
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Le type de serveur proxy. L'un des :</p>
+
+ <ul>
+ <li>"http": proxy HTTP (ou SSL CONNECT pour HTTPS)</li>
+ <li>"https": proxy HTTP sur connexion TLS vers proxy</li>
+ <li>"socks": SOCKS v5 proxy</li>
+ <li>"socks4": SOCKS v4 proxy</li>
+ <li>"direct": pas de proxy</li>
+ <li>"unknown": proxy inconnu</li>
+ </ul>
+ </dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Vrai si le proxy exécutera une résolution de nom de domaine basée sur le nom d'hôte fourni, ce qui signifie que le client ne doit pas faire sa propre recherche DNS.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>integer</code>. Délai d'attente de basculement en secondes. Si la connexion par proxy échoue, le proxy ne sera pas utilisé à nouveau pendant cette période.</dd>
+ </dl>
+ </dd>
+ <dt><code>redirectUrl</code></dt>
+ <dd><code>string</code>. La nouvelle URL.</dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande. Les ID de requête sont uniques au sein d'une session de navigateur, de sorte que vous pouvez les utiliser pour relier différents événements associés à la même requête.</dd>
+ <dt><code>responseHeaders</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.</dd>
+ <dt><code>statusCode</code></dt>
+ <dd><code>integer</code>. Code d'état HTTP standard renvoyé par le serveur.</dd>
+ <dt><code>statusLine</code></dt>
+ <dd><code>string</code>. Status d'état HTTP de la réponse ou la chaîne 'HTTP/0.9 200 OK' pour les réponses HTTP/0.9 (c'est-à-dire les réponses qui n'ont pas de ligne d'état) ou une chaîne vide s'il n'y a pas d'en-têtes</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.webRequest.onBeforeRedirect", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">var target = "https://developer.mozilla.org/*";
+
+/*
+e.g.
+"https://developer.mozilla.org/"
+"https://developer.mozilla.org/en-US/"
+*/
+function logResponse(responseDetails) {
+ console.log(responseDetails.url);
+ console.log(responseDetails.redirectUrl);
+}
+
+browser.webRequest.onBeforeRedirect.addListener(
+ logResponse,
+ {urls: [target]}
+);
+</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.html
new file mode 100644
index 0000000000..c9d06a4872
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.html
@@ -0,0 +1,301 @@
+---
+title: webRequest.onBeforeRequest
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/onBeforeRequest
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onBeforeRequest
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/onBeforeRequest
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Cet événement est déclenché lorsqu'une demande est sur le point d'être faite et avant que les en-têtes ne soient disponibles. C'est un bon endroit pour écouter si vous voulez annuler ou rediriger la demande.</p>
+
+<p>Pour annuler ou rediriger la requête, incluez d'abord <code>"blocking"</code> dans l'argument tableau <code>extraInfoSpec</code> pour <code>addListener()</code>. Ensuite, dans la fonction Listener, retournez un objet {{WebExtAPIRef("webRequest.BlockingResponse", "BlockingResponse")}}, en définissant la propriété appropriée :</p>
+
+<ul>
+ <li>pour annuler la demande, inclure une propriété <code>cancel</code> avec la valeur <code>true</code>.</li>
+ <li>pour rediriger la requête, inclure une propriété <code>redirectUrl</code> avec la valeur fixée à l'URL vers laquelle vous voulez rediriger.</li>
+</ul>
+
+<p>Si une extension veut rediriger une URL publique (par exemple HTTPS) ver une <a href="/fr/Add-ons/WebExtensions/user_interface/Extension_pages">page d'extension</a>, de l'extension doit contenir une clé <a href="/fr/Add-ons/WebExtensions/manifest.json/web_accessible_resources">web_accessible_resources</a> qui liste l'URL de la page d'extension.</p>
+
+<p>Lorsque plusieurs gestionnaires de blocage modifient une requête, une seule série de modifications prend effet. Les redirections et les annulations ont la même priorité. Ainsi, si vous avez annulé une requête, vous pouvez voir une autre requête avec la même  <code>requestId</code> à nouveau si un autre gestionnaire de blocage a redirigé la requête.</p>
+
+<p>A partir de Firefox 52, au lieu de renvoyer <code>BlockingResponse</code>, l'auditeur peut renvoyer une  <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui est résolue avec un <code>BlockingResponse</code>. Ceci permet à l'auditeur de traiter la demande de manière asynchrone.</p>
+
+<p>Si vous utilisez le <code>"blocking"</code>, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API "webRequestBlocking"</a> dans votre manifest.json.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webRequest.onBeforeRequest.addListener(
+ listener, // function
+ filter, // object
+ extraInfoSpec // optional array of strings
+)
+browser.webRequest.onBeforeRequest.removeListener(listener)
+browser.webRequest.onBeforeRequest.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback, filter, extraInfoSpec)</code></dt>
+ <dd>Ajoute un auditeur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêtez d'écouter cet événement. L'argument de l'<code>écouteur</code> est l'écouteur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>l'écouteur</code> est inscrit à cet événement. Renvoie <code>true</code> s'il est à l'é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 produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur la demande. Voir les <code><a href="#details">details</a></code> ci-dessous.</dd>
+ </dl>
+
+ <p>Les retours : {{WebExtAPIRef('webRequest.BlockingResponse')}}. Si <code>"blocking"</code>est spécifié dans le paramètre <code>extraInfoSpec</code>, l'auditeur d'événement doit retourner un objet <code>BlockingResponse</code>, et peut définir soit son <code>annulation</code>, soit ses propriétés  <code>redirectUrl</code>. A partir de Firefox 52, au lieu de renvoyer <code>BlockingResponse</code>,l'auditeur peut renvoyer une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui est résolue avec un <code>BlockingResponse</code>. Ceci permet à l'auditeur de traiter la demande de manière asynchrone.</p>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.</dd>
+ <dt><code>extraInfoSpec</code>{{optional_inline}}</dt>
+ <dd><code>array</code> de <code>string</code>. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes <span class="im">:</span></dd>
+ <dd>
+ <ul>
+ <li><code>"blocking"</code>: rendre la requête synchrone, de sorte que vous pouvez annuler ou rediriger la requête</li>
+ <li><span class="im"><code>"requestBody"</code>: include <code>requestBody</code> dans l'objet <code>details</code> </span>transmis à l'auditeur</li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>documentUrl</code></dt>
+ <dd><code>string</code>. URL du document dans lequel la ressource sera chargée. Par exemple, si la page web "https://example.com" contient une image ou un iframe, alors le <code>documentUrl</code> pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, <code>documentUrl</code> n'est pas défini.</dd>
+ <dt><code>frameAncestors</code></dt>
+ <dd><code>array</code>. Contient des informations pour chaque document dans la hiérarchie des cadres jusqu'au document de niveau supérieur. Le premier élément du tableau contient des informations sur le parent immédiat du document demandé, et le dernier élément contient des informations sur le document de niveau supérieur. Si la charge est réellement pour le document de niveau supérieur, alors ce tableau est vide.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. URL à partir de laquelle le document a été chargé.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Le <code>frameId</code> du document. <code>details.frameAncestors[0].frameId</code> est le même que <code>details.parentFrameId</code>.</dd>
+ </dl>
+ </dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal ; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'un (sous-)cadre est chargé (<code>type</code> is <code>main_frame</code> or <code>sub_frame</code>), <code>frameId</code> indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard : par exemple, "GET" ou "POST".</dd>
+ <dt><code>originUrl</code></dt>
+ <dd>
+ <p><code>string</code>. URL de la ressource qui a déclenché la requête. Par exemple, si "https://example.com" contient un lien, et que l'utilisateur clique sur le lien, alors <code>originUrl</code> de la requête résultante est "https://example.com".</p>
+
+ <p>L'<code>originUrl</code> est souvent mais pas toujours la même chose que <code>documentUrl</code>.Par exemple, si une page contient une iframe, et que l'iframe contient un lien qui charge un nouveau document dans l'iframe, alors le <code>documentUrl</code> pour la requête résultante sera le document parent de l'iframe, mais l'<code>originUrl</code> sera l'URL du document dans l'iframe qui contenait le lien.</p>
+ </dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. de la trame qui contient la trame qui a envoyé la requête. Réglé à -1 s'il n'existe pas de l'iframe parent.</dd>
+ <dt><code>proxyInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :</p>
+
+ <dl>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur proxy.</dd>
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Le type de serveur proxy. L'un des :</p>
+
+ <ul>
+ <li>"http": proxy HTTP (ou SSL CONNECT pour HTTPS)</li>
+ <li>"https": proxy HTTP sur connexion TLS vers proxy</li>
+ <li>"socks": SOCKS v5 proxy</li>
+ <li>"socks4": SOCKS v4 proxy</li>
+ <li>"direct": pas de proxy</li>
+ <li>"unknown": proxy inconnu</li>
+ </ul>
+ </dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Vrai si le proxy exécutera une résolution de nom de domaine basée sur le nom d'hôte fourni, ce qui signifie que le client ne doit pas faire sa propre recherche DNS.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>integer</code>. Délai d'attente de basculement en secondes. Si la connexion par proxy échoue, le proxy ne sera pas utilisé à nouveau pendant cette période.</dd>
+ </dl>
+ </dd>
+ <dt><code>requestBody</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Contient les données du corps de la requête HTTP. Seulement si <code>extraInfoSpec</code> contient <code>"requestBody"</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>error</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Ce paramètre est défini si des erreurs ont été rencontrées lors de l'obtention des données du corps de la demande.</dd>
+ <dt><code>formData</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Cet objet est présent si la méthode de requête est POST et que le corps est une séquence de paires clé-valeur codées en UTF-8 sous la forme "multipart/form-data" ou "application/x-www-form-urlencoded".</dd>
+ <dd>Il s'agit d'un dictionnaire dans lequel chaque clé contient la liste de toutes les valeurs de cette clé. Par exemple: <code>{'key': ['value1', 'value2']}</code>. Si les données sont d'un autre type de support, ou si elles sont malformées, l'objet n'est pas présent.</dd>
+ <dt><code>raw</code>{{optional_inline}}</dt>
+ <dd><code>array</code> of <code>{{WebExtAPIRef('webRequest.UploadData')}}</code>. Si la méthode de requête est PUT ou POST, et que le corps n'est pas déjà analysé dans <code>formData</code>, alors ce tableau contient les éléments de corps de requête non analysés.</dd>
+ </dl>
+ </dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande. Les ID de requête sont uniques au sein d'une session de navigateur, de sorte que vous pouvez les utiliser pour relier différents événements associés à la même requête.</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.webRequest.onBeforeRequest", 10)}}</p>
+
+<h3 id="Ordre_de_résolution_DNS_lorsque_BlockingResponse_est_utilisé">Ordre de résolution DNS lorsque BlockingResponse est utilisé</h3>
+
+<p>En ce qui concerne la résolution DNS lorsque BlockingResponse est utilisé avec  OnBeforeRequest : Dans le canal HTTP, avec réponse de blocage se produit avant la résolution DNS et avant la connexion spéculative. Pour les autres canaux, une connexion spéculative peut provoquer des requêtes DNS avant onBeforeRequest. Cet ordre n'est pas quelque chose sur quoi un développeur d'extension devrait se fier, car il peut varier d'un navigateur à l'autre, et encore moins d'une version de navigateur à l'autre, et encore moins d'un canal de requête à l'autre. Référez-vous <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1466099">à la clarification du problème de BugZilla fournie par les développeurs Mozilla sur la commande de la résolution DNS</a></p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code enregistre l'URL de chaque ressource demandée qui correspond au modèle  <a href="/fr/Add-ons/WebExtensions/Match_patterns#&lt;all_urls>">&lt;all_urls&gt;</a> :</p>
+
+<pre class="brush: js">function logURL(requestDetails) {
+ console.log("Loading: " + requestDetails.url);
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ logURL,
+ {urls: ["&lt;all_urls&gt;"]}
+);</pre>
+
+<p>Ce code annule les demandes d'images qui sont faites aux URLs sous "https://mdn.mozillademos.org/" (pour voir l'effet, visitez n'importe quelle page de MDN qui contient des images, comme <a href="/fr/docs/Mozilla/Firefox/Developer_Edition">Firefox Developer Edition</a>):</p>
+
+<pre class="brush: js">// match pattern for the URLs to redirect
+var pattern = "https://mdn.mozillademos.org/*";
+
+// cancel function returns an object
+// which contains a property `cancel` set to `true`
+function cancel(requestDetails) {
+ console.log("Canceling: " + requestDetails.url);
+ return {cancel: true};
+}
+
+// add the listener,
+// passing the filter argument and "blocking"
+browser.webRequest.onBeforeRequest.addListener(
+ cancel,
+ {urls: [pattern], types: ["image"]},
+ ["blocking"]
+);
+</pre>
+
+<p>Ce code remplace, par redirection, toutes les demandes de réseau pour des images qui sont faites à des URLs sous "https://mdn.mozillademos.org/" (pour voir l'effet, visitez n'importe quelle page de MDN qui contient des images, comme <a href="/fr/docs/Mozilla/Firefox/Developer_Edition">Firefox Developer Edition</a>) :</p>
+
+<pre class="brush: js">// match pattern for the URLs to redirect
+var pattern = "https://mdn.mozillademos.org/*";
+
+// redirect function
+// returns an object with a property `redirectURL`
+// set to the new URL
+function redirect(requestDetails) {
+ console.log("Redirecting: " + requestDetails.url);
+ return {
+ redirectUrl: "https://38.media.tumblr.com/tumblr_ldbj01lZiP1qe0eclo1_500.gif"
+ };
+}
+
+// add the listener,
+// passing the filter argument and "blocking"
+browser.webRequest.onBeforeRequest.addListener(
+ redirect,
+ {urls:[pattern], types:["image"]},
+ ["blocking"]
+);</pre>
+
+<p>Ce code est exactement comme l'exemple précédent, sauf que l'auditeur traite la requête de manière asynchrone. Il renvoie une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui définit une minuterie et se résout avec l'URL de redirection lorsque la minuterie expire :</p>
+
+<pre class="brush: js">// match pattern for the URLs to redirect
+var pattern = "https://mdn.mozillademos.org/*";
+
+// URL we will redirect to
+var redirectUrl = "https://38.media.tumblr.com/tumblr_ldbj01lZiP1qe0eclo1_500.gif";
+
+// redirect function returns a Promise
+// which is resolved with the redirect URL when a timer expires
+function redirectAsync(requestDetails) {
+ console.log("Redirecting async: " + requestDetails.url);
+ return new Promise((resolve, reject) =&gt; {
+ window.setTimeout(() =&gt; {
+ resolve({redirectUrl});
+ }, 2000);
+ });
+}
+
+// add the listener,
+// passing the filter argument and "blocking"
+browser.webRequest.onBeforeRequest.addListener(
+ redirectAsync,
+ {urls: [pattern], types: ["image"]},
+ ["blocking"]
+);</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.html
new file mode 100644
index 0000000000..e1a48c9207
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.html
@@ -0,0 +1,286 @@
+---
+title: webRequest.onBeforeSendHeaders
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/onBeforeSendHeaders
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standardn
+ - Reference
+ - WebExtensions
+ - onBeforeSendHeaders
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/onBeforeSendHeaders
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Cet événement est déclenché avant l'envoi de données HTTP, mais après que tous les en-têtes HTTP soient disponibles. C'est un bon endroit pour écouter si vous voulez modifier les en-têtes de requête HTTP.</p>
+
+<p>Pour que les en-têtes de requête soient passés dans l'écouteur avec le reste des données de requête, passez <code>"requestHeaders"</code> dans un tableau <code>extraInfoSpec</code>.</p>
+
+<p>Pour modifier les en-têtes de façon synchrone : passez <code>"blocking"</code> dans <code>extraInfoSpec</code>, puis dans votre événement écouté, retournez un <a href="/fr/Add-ons/WebExtensions/API/webRequest/BlockingResponse" title='An object of this type is returned by event listeners that have set "blocking" in their extraInfoSpec argument.'><code>BlockingResponse</code></a> avec une propriété nommée <code>requestHeaders</code>, dont la valeur est l'ensemble des en-têtes de requête à envoyer.</p>
+
+<p>Pour modifier les en-têtes de façon asynchrone : passez <code>"blocking"</code> dans <code>extraInfoSpec</code>, puis dans votre event listener, retournez une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui est résolue avec une <code>BlockingResponse</code>.</p>
+
+<p>Si vous utilisez le <code>"blocking"</code>, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">"permission de l'API "webRequestBlocking"</a> dans votre manifest.json.</p>
+
+<p>Il est possible d'étendre le conflit ici. Si deux extensions écoutent <code>onBeforeSendHeaders</code> pour la même requête, le deuxième auditeur verra les modifications apportées par le premier auditeur et pourra annuler les modifications apportées par le premier auditeur. Par exemple, si le premier auditeur ajoute un en-tête <code>Cookie</code>, et que le deuxième auditeur supprime tous les en-têtes <code>Cookie</code>, les modifications apportées par le premier auditeur seront perdues. Si vous voulez voir les en-têtes qui sont effectivement envoyés, sans risque qu'une autre extension les modifie par la suite, utilisez {{WebExtAPIRef("webRequest.onSendHeaders", "onSendHeaders")}}, bien que vous ne puissiez pas modifier les en-têtes sur cet événement.</p>
+
+<p>Tous les en-têtes réellement envoyés ne sont pas toujours inclus dans <code>requestHeaders</code>. En particulier, les en-têtes liés à la mise en cache (par exemple, <code>Cache-Control</code>, <code>If-Modified-Since</code>, <code>If-None-Match</code>) ne sont jamais envoyés. De plus, le comportement peut différer d'un navigateur à l'autre.</p>
+
+<p>Selon la spécification, les noms d'en-tête sont insensibles à la casse. Cela signifie que pour être sûr de faire correspondre un en-tête particulier, l'auditeur devrait minuscules le nom avant de le comparer :</p>
+
+<pre class="brush: js">for (let header of e.requestHeaders) {
+ if (header.name.toLowerCase() === desiredHeader) {
+ // process header
+ }
+}</pre>
+
+<p>Le navigateur conserve la casse originale du nom de l'en-tête tel qu'il a été généré par le navigateur. Si l'auditeur de l'extension change la casse, ce changement ne sera pas conservé.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webRequest.onBeforeSendHeaders.addListener(
+ listener, // function
+ filter, // object
+ extraInfoSpec // optional array of strings
+)
+browser.webRequest.onBeforeSendHeaders.removeListener(listener)
+browser.webRequest.onBeforeSendHeaders.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback, filter, extraInfoSpec)</code></dt>
+ <dd>Ajouter un auditeur à 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'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est enregistré à cet événement. Retourne <code>true</code> s'il est écouté, 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 produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails de la demande. Ceci inclura les en-têtes de demande si vous avez inclus <code>"requestHeaders"</code> dans <code>extraInfoSpec</code>.</dd>
+ </dl>
+
+ <p>Retourne : {{WebExtAPIRef('webRequest.BlockingResponse')}}. si <code>"blocking"</code> est spécifié dans le paramètre <code>extraInfoSpec</code>, l'auditeur d'événement doit retourner un objet <code>BlockingResponse</code>, et peut définir sa propriété <code>requestHeaders</code>.</p>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un ensemble de filtres qui restreint les événements qui seront envoyés à cet auditeur.</dd>
+ <dt><code>extraInfoSpec</code>{{optional_inline}}</dt>
+ <dd><code>array</code> de <code>string</code>. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes <span class="im">:</span></dd>
+ <dd>
+ <ul>
+ <li><code>"blocking"</code>: rendre la requête synchrone, ce qui vous permet de modifier les en-têtes de requête</li>
+ <li><span class="im"><code>"requestHeaders"</code>: </span>inclure les en-têtes de requête dans l'objet<span class="im"> <code>details</code>  </span>transmis à l'auditeur</li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>documentUrl</code></dt>
+ <dd><code>string</code>. URL du document dans lequel la ressource sera chargée. Par exemple, si la page web "https://example.com" contient une image ou un iframe, alors le <code>documentUrl</code> pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, <code>documentUrl</code> n'est pas défini.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal ; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'un (sous-)cadre est chargé (<code>type</code> is <code>main_frame</code> or <code>sub_frame</code>), <code>frameId</code> indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard : par exemple, "GET" ou "POST".</dd>
+ <dt><code>originUrl</code></dt>
+ <dd>
+ <p><code>string</code>. URL de la ressource qui a déclenché la requête. Par exemple, si "https://example.com" contient un lien, et que l'utilisateur clique sur le lien, alors <code>originUrl</code> de la requête résultante est "https://example.com".</p>
+
+ <p>L'<code>originUrl</code> est souvent mais pas toujours la même chose que <code>documentUrl</code>.Par exemple, si une page contient une iframe, et que l'iframe contient un lien qui charge un nouveau document dans l'iframe, alors le <code>documentUrl</code> pour la requête résultante sera le document parent de l'iframe, mais l'<code>originUrl</code> sera l'URL du document dans l'iframe qui contenait le lien.</p>
+ </dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. de la trame qui contient la trame qui a envoyé la requête. Réglé à -1 s'il n'existe pas de l'iframe parent.</dd>
+ <dt><code>proxyInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :</p>
+
+ <dl>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur proxy.</dd>
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Le type de serveur proxy. L'un des :</p>
+
+ <ul>
+ <li>"http": proxy HTTP (ou SSL CONNECT pour HTTPS)</li>
+ <li>"https": proxy HTTP sur connexion TLS vers proxy</li>
+ <li>"socks": SOCKS v5 proxy</li>
+ <li>"socks4": SOCKS v4 proxy</li>
+ <li>"direct": pas de proxy</li>
+ <li>"unknown": proxy inconnu</li>
+ </ul>
+ </dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Vrai si le proxy exécutera une résolution de nom de domaine basée sur le nom d'hôte fourni, ce qui signifie que le client ne doit pas faire sa propre recherche DNS.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>integer</code>. Délai d'attente de basculement en secondes. Si la connexion par proxy échoue, le proxy ne sera pas utilisé à nouveau pendant cette période.</dd>
+ </dl>
+ </dd>
+ <dt><code>requestHeaders</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.</dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande. Les ID de requête sont uniques au sein d'une session de navigateur, de sorte que vous pouvez les utiliser pour relier différents événements associés à la même requête.</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.webRequest.onBeforeSendHeaders", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code modifie l'en-tête "User-Agent" pour que le navigateur s'identifie comme étant Opera 12.16, mais uniquement lors de la visite des pages sous "https://httpbin.org/".</p>
+
+<pre class="brush: js">"use strict";
+
+/*
+This is the page for which we want to rewrite the User-Agent header.
+*/
+var targetPage = "https://httpbin.org/*";
+
+/*
+Set UA string to Opera 12
+*/
+var ua = "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16";
+
+/*
+Rewrite the User-Agent header to "ua".
+*/
+function rewriteUserAgentHeader(e) {
+ for (var header of e.requestHeaders) {
+ if (header.name.toLowerCase() === "user-agent") {
+ header.value = ua;
+ }
+ }
+ return {requestHeaders: e.requestHeaders};
+}
+
+/*
+Add rewriteUserAgentHeader as a listener to onBeforeSendHeaders,
+only for the target page.
+
+Make it "blocking" so we can modify the headers.
+*/
+browser.webRequest.onBeforeSendHeaders.addListener(
+ rewriteUserAgentHeader,
+ {urls: [targetPage]},
+ ["blocking", "requestHeaders"]
+);
+</pre>
+
+<p>Ce code est exactement comme l'exemple précédent, sauf que l'auditeur est asynchrone, retournant une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui est résolue avec les nouveaux en-têtes :</p>
+
+<pre class="brush: js">"use strict";
+
+/*
+This is the page for which we want to rewrite the User-Agent header.
+*/
+var targetPage = "https://httpbin.org/*";
+
+/*
+Set UA string to Opera 12
+*/
+var ua = "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16";
+
+/*
+Rewrite the User-Agent header to "ua".
+*/
+function rewriteUserAgentHeaderAsync(e) {
+ var asyncRewrite = new Promise((resolve, reject) =&gt; {
+ window.setTimeout(() =&gt; {
+ for (var header of e.requestHeaders) {
+ if (header.name.toLowerCase() === "user-agent") {
+ header.value = ua;
+ }
+ }
+ resolve({requestHeaders: e.requestHeaders});
+ }, 2000);
+ });
+
+ return asyncRewrite;
+}
+
+/*
+Add rewriteUserAgentHeader as a listener to onBeforeSendHeaders,
+only for the target page.
+
+Make it "blocking" so we can modify the headers.
+*/
+browser.webRequest.onBeforeSendHeaders.addListener(
+ rewriteUserAgentHeaderAsync,
+ {urls: [targetPage]},
+ ["blocking", "requestHeaders"]
+);
+
+</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.html
new file mode 100644
index 0000000000..5ea489118a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.html
@@ -0,0 +1,209 @@
+---
+title: webRequest.onCompleted
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/onCompleted
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onCompleted
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/onCompleted
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Utilisé lorsqu'une demande est complétée.</p>
+
+<p>Cet événement est à titre d'information seulement.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webRequest.onCompleted.addListener(
+ listener, // function
+ filter, // object
+ extraInfoSpec // optional array of strings
+)
+browser.webRequest.onCompleted.removeListener(listener)
+browser.webRequest.onCompleted.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback, filter, extraInfoSpec)</code></dt>
+ <dd>Ajouter un auditeur à 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'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est enregistré à cet événement. Retourne <code>true</code> s'il est écouté, 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>Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Details sur la demande. voir les <code><a href="#details">détails</a></code> ci-dessous.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.</dd>
+ <dt><code>extraInfoSpec</code>{{optional_inline}}</dt>
+ <dd><code>array</code> of <code>string</code>. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur <span class="im">:</span></dd>
+ <dd>
+ <ul>
+ <li><span class="im"><code>"</code></span><code>responseHeaders</code><span class="im"><code>"</code>: inclure <code>responseHeaders</code> dans l'objet <code>details</code> transmis à l'auditeur</span></li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="objets_supplémentaires">objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>documentUrl</code></dt>
+ <dd><code>string</code>. URL du document dans lequel la ressource sera chargée. Par exemple, si la page web "https://example.com" contient une image ou un iframe, alors le <code>documentUrl</code> pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, <code>documentUrl</code> n'est pas défini.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal ; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'un (sous-)cadre est chargé (<code>type</code> is <code>main_frame</code> or <code>sub_frame</code>), <code>frameId</code> indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.</dd>
+ <dt><code>fromCache</code></dt>
+ <dd><code>boolean</code>. Indique si cette réponse a été récupérée dans le cache du disque.</dd>
+ <dt><code>ip</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'adresse IP du serveur à laquelle la requête a été envoyée. Notez qu'il peut s'agir d'une adresse IPv6 littérale.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard : par exemple, "GET" ou "POST".</dd>
+ <dt><code>originUrl</code></dt>
+ <dd>
+ <p><code>string</code>. URL de la ressource qui a déclenché la requête. Par exemple, si "https://example.com" contient un lien, et que l'utilisateur clique sur le lien, alors <code>originUrl</code> de la requête résultante est "https://example.com".</p>
+
+ <p>L'<code>originUrl</code> est souvent mais pas toujours la même chose que <code>documentUrl</code>.Par exemple, si une page contient une iframe, et que l'iframe contient un lien qui charge un nouveau document dans l'iframe, alors le <code>documentUrl</code> pour la requête résultante sera le document parent de l'iframe, mais l'<code>originUrl</code> sera l'URL du document dans l'iframe qui contenait le lien.</p>
+ </dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. de la trame qui contient la trame qui a envoyé la requête. Réglé à -1 s'il n'existe pas de l'iframe parent.</dd>
+ <dt><code>proxyInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :</p>
+
+ <dl>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur proxy.</dd>
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Le type de serveur proxy. L'un des :</p>
+
+ <ul>
+ <li>"http": proxy HTTP (ou SSL CONNECT pour HTTPS)</li>
+ <li>"https": proxy HTTP sur connexion TLS vers proxy</li>
+ <li>"socks": SOCKS v5 proxy</li>
+ <li>"socks4": SOCKS v4 proxy</li>
+ <li>"direct": pas de proxy</li>
+ <li>"unknown": proxy inconnu</li>
+ </ul>
+ </dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Vrai si le proxy exécutera une résolution de nom de domaine basée sur le nom d'hôte fourni, ce qui signifie que le client ne doit pas faire sa propre recherche DNS.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>integer</code>. Délai d'attente de basculement en secondes. Si la connexion par proxy échoue, le proxy ne sera pas utilisé à nouveau pendant cette période.</dd>
+ </dl>
+ </dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande. Les ID de requête sont uniques au sein d'une session de navigateur, de sorte que vous pouvez les utiliser pour relier différents événements associés à la même requête.</dd>
+ <dt><code>responseHeaders</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.</dd>
+ <dt><code>statusCode</code></dt>
+ <dd><code>integer</code>. Code d'état HTTP standard renvoyé par le serveur.</dd>
+ <dt><code>statusLine</code></dt>
+ <dd><code>string</code>. Status d'état HTTP de la réponse ou la chaîne 'HTTP/0.9 200 OK' pour les réponses HTTP/0.9 (c'est-à-dire les réponses qui n'ont pas de ligne d'état) ou une chaîne vide s'il n'y a pas d'en-têtes</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.webRequest.onCompleted", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">var target = "https://developer.mozilla.org/*";
+
+/*
+e.g.
+"https://developer.mozilla.org/en-US/"
+200
+
+or:
+
+"https://developer.mozilla.org/en-US/xfgkdkjdfhs"
+404
+*/
+function logResponse(responseDetails) {
+ console.log(responseDetails.url);
+ console.log(responseDetails.statusCode);
+}
+
+browser.webRequest.onCompleted.addListener(
+ logResponse,
+ {urls: [target]}
+);
+</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.html
new file mode 100644
index 0000000000..96a0184d1d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.html
@@ -0,0 +1,196 @@
+---
+title: webRequest.onErrorOccurred
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/onErrorOccurred
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onErrorOccurred
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/onErrorOccurred
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Utilisé lorsqu'une demande n'a pas pu être traitée en raison d'une erreur : par exemple, un manque de connectivité Internet.</p>
+
+<p>L'erreur est transmise à l'auditeur en tant que propriété d'<code>erreur</code> de l'objet <code><a href="#details">details</a></code>.</p>
+
+<p>Notez que cet événement n'est pas déclenché pour les erreurs HTTP (réponses 4XX ou 5XX) : celles-ci passent par les étapes normales d'une requête, en appelant n'importe quel auditeur d'événement et en définissant <code>details.statusCode</code> pour signaler l'erreur.</p>
+
+<p>Cet événement est à titre d'information seulement.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webRequest.onErrorOccurred.addListener(
+ listener, // function
+ filter // object
+)
+browser.webRequest.onErrorOccurred.removeListener(listener)
+browser.webRequest.onErrorOccurred.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback, filter, extraInfoSpec)</code></dt>
+ <dd>Ajouter un auditeur à 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'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est enregistré à cet événement. Retourne <code>true</code> s'il est écouté, 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>Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur la demande. Voir les <code><a href="#details">details</a></code> ci-dessous.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.</dd>
+</dl>
+
+<h2 id="objets_supplémentaires">objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>documentUrl</code></dt>
+ <dd><code>string</code>. URL du document dans lequel la ressource sera chargée. Par exemple, si la page web "https://example.com" contient une image ou un iframe, alors le <code>documentUrl</code> pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, <code>documentUrl</code> n'est pas défini.</dd>
+ <dt><code>error</code></dt>
+ <dd><code>string</code>. La description de l'erreur. Cette chaîne est une chaîne d'erreur interne, peut varier d'un navigateur à l'autre et n'est pas garantie de rester la même entre les versions.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal ; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'un (sous-)cadre est chargé (<code>type</code> is <code>main_frame</code> or <code>sub_frame</code>), <code>frameId</code> indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.</dd>
+ <dt><code>fromCache</code></dt>
+ <dd><code>boolean</code>. Indique si cette réponse a été récupérée dans le cache du disque.</dd>
+ <dt><code>ip</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'adresse IP du serveur à laquelle la requête a été envoyée. Notez qu'il peut s'agir d'une adresse IPv6 littérale.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard : par exemple, "GET" ou "POST".</dd>
+ <dt><code>originUrl</code></dt>
+ <dd>
+ <p><code>string</code>. URL de la ressource qui a déclenché la requête. Par exemple, si "https://example.com" contient un lien, et que l'utilisateur clique sur le lien, alors <code>originUrl</code> de la requête résultante est "https://example.com".</p>
+
+ <p>L'<code>originUrl</code> est souvent mais pas toujours la même chose que <code>documentUrl</code>.Par exemple, si une page contient une iframe, et que l'iframe contient un lien qui charge un nouveau document dans l'iframe, alors le <code>documentUrl</code> pour la requête résultante sera le document parent de l'iframe, mais l'<code>originUrl</code> sera l'URL du document dans l'iframe qui contenait le lien.</p>
+ </dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. de la trame qui contient la trame qui a envoyé la requête. Réglé à -1 s'il n'existe pas de l'iframe parent.</dd>
+ <dt><code>proxyInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :</p>
+
+ <dl>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur proxy.</dd>
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Le type de serveur proxy. L'un des :</p>
+
+ <ul>
+ <li>"http": proxy HTTP (ou SSL CONNECT pour HTTPS)</li>
+ <li>"https": proxy HTTP sur connexion TLS vers proxy</li>
+ <li>"socks": SOCKS v5 proxy</li>
+ <li>"socks4": SOCKS v4 proxy</li>
+ <li>"direct": pas de proxy</li>
+ <li>"unknown": proxy inconnu</li>
+ </ul>
+ </dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Vrai si le proxy exécutera une résolution de nom de domaine basée sur le nom d'hôte fourni, ce qui signifie que le client ne doit pas faire sa propre recherche DNS.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>integer</code>. Délai d'attente de basculement en secondes. Si la connexion par proxy échoue, le proxy ne sera pas utilisé à nouveau pendant cette période.</dd>
+ </dl>
+ </dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande. Les ID de requête sont uniques au sein d'une session de navigateur, de sorte que vous pouvez les utiliser pour relier différents événements associés à la même requête.</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.webRequest.onErrorOccurred", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">var target = "&lt;all_urls&gt;";
+
+/*
+e.g., with no network:
+"https://developer.mozilla.org/en-US/"
+NS_ERROR_NET_ON_RESOLVED in Firefox
+net::ERR_INTERNET_DISCONNECTED in Chrome
+*/
+function logError(responseDetails) {
+ console.log(responseDetails.url);
+ console.log(responseDetails.error);
+}
+
+browser.webRequest.onErrorOccurred.addListener(
+ logError,
+ {urls: [target]}
+);</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.html
new file mode 100644
index 0000000000..33f11f91ae
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.html
@@ -0,0 +1,248 @@
+---
+title: webRequest.onHeadersReceived
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/onHeadersReceived
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onHeadersReceived
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/onHeadersReceived
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque les en-têtes de réponse HTTP associés à une requête ont été reçus. Vous pouvez utiliser cet événement pour modifier les en-têtes de réponse HTTP.</p>
+
+<p>Pour que les en-têtes de réponse soient passés dans l'écouteur avec le reste des données de la requête, passez <code>"responseHeaders"</code> dans le tableau <code>extraInfoSpec</code>.</p>
+
+<p>Pour modifier les en-têtes, passez <code>"blocking"</code> dans <code>extraInfoSpec</code>. Ensuite, dans votre écouteur d'événements, retournez un objet avec une propriété nommée <code>responseHeaders</code>, dont la valeur est l'ensemble des en-têtes de réponse à utiliser. Le navigateur se comportera comme si le serveur avait envoyé les en-têtes modifiées.</p>
+
+<p>A partir de Firefox 52, au lieu de renvoyer <code>BlockingResponse</code>, l'auditeur peut renvoyer une Promesse qui est résolue avec un <code>BlockingResponse</code>. Ceci permet à l'auditeur de traiter la demande de manière asynchrone.</p>
+
+<p>Si vous utilisez le <code>"blocking"</code>, vous devez avoir la <a href="/fr/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">permission de l'API "webRequestBlocking" </a>dans votre manifest.json.</p>
+
+<p>Notez qu'il est possible que des extensions entrent en conflit ici. Si deux extensions écoutent <code>onHeadersReceived</code> pour la même requête et retournent <code>responseHeaders</code> essayant de définir le même en-tête (par exemple, <code>Content-Security-Policy</code>), seule une des modifications sera réussie. Si vous voulez voir les en-têtes qui sont effectivement traités par le système, sans risque qu'une autre extension les modifie par la suite, utilisez {{WebExtAPIRef("webRequest.onResponseStarted", "onResponseStarted", "onResponseStarted")}}, mais vous ne pouvez pas modifier les entêtes sur cet événement<br>
+  </p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webRequest.onHeadersReceived.addListener(
+ listener, // function
+ filter, // object
+ extraInfoSpec // optional array of strings
+)
+browser.webRequest.onHeadersReceived.removeListener(listener)
+browser.webRequest.onHeadersReceived.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback, filter, extraInfoSpec)</code></dt>
+ <dd>Ajouter un auditeur à 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'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est enregistré à cet événement. Retourne <code>true</code> s'il est écouté, 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 produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails de la demande. Ceci inclura les en-têtes de réponse si vous avez inclus <code>"responseHeaders"</code> dans <code>extraInfoSpec</code>.</dd>
+ </dl>
+
+ <p>Retourne : {{WebExtAPIRef('webRequest.BlockingResponse')}}. Si <code>"blocking"</code> est spécifié dans le paramètre <code>extraInfoSpec</code>, l'auditeur d'événement doit retourner un objet <code>BlockingResponse</code>, et peut définir sa propriété <code>responseHeaders</code>.</p>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un ensemble de filtres qui restreint les événements qui seront envoyés à cet auditeur.</dd>
+ <dt><code>extraInfoSpec</code>{{optional_inline}}</dt>
+ <dd><code>array</code> de <code>string</code>. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes <span class="im">:</span></dd>
+ <dd>
+ <ul>
+ <li><code>"blocking"</code> pour rendre la requête synchrone, de sorte que vous pouvez modifier les en-têtes de requête et réponse.</li>
+ <li><span class="im"><code>"responseHeaders"</code> </span>pour inclure les en-têtes de réponse dans l'objet <span class="im"> <code>détails</code> </span>transmis à l'auditeur</li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="objets_supplémentaires">objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>documentUrl</code></dt>
+ <dd><code>string</code>. URL du document dans lequel la ressource sera chargée. Par exemple, si la page web "https://example.com" contient une image ou un iframe, alors le <code>documentUrl</code> pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, <code>documentUrl</code> n'est pas défini.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal ; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'un (sous-)cadre est chargé (<code>type</code> is <code>main_frame</code> or <code>sub_frame</code>), <code>frameId</code> indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard : par exemple, "GET" ou "POST".</dd>
+ <dt><code>originUrl</code></dt>
+ <dd>
+ <p><code>string</code>. URL de la ressource qui a déclenché la requête. Par exemple, si "https://example.com" contient un lien, et que l'utilisateur clique sur le lien, alors <code>originUrl</code> de la requête résultante est "https://example.com".</p>
+
+ <p>L'<code>originUrl</code> est souvent mais pas toujours la même chose que <code>documentUrl</code>.Par exemple, si une page contient une iframe, et que l'iframe contient un lien qui charge un nouveau document dans l'iframe, alors le <code>documentUrl</code> pour la requête résultante sera le document parent de l'iframe, mais l'<code>originUrl</code> sera l'URL du document dans l'iframe qui contenait le lien.</p>
+ </dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. de la trame qui contient la trame qui a envoyé la requête. Réglé à -1 s'il n'existe pas de l'iframe parent.</dd>
+ <dt><code>proxyInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :</p>
+
+ <dl>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur proxy.</dd>
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Le type de serveur proxy. L'un des :</p>
+
+ <ul>
+ <li>"http": proxy HTTP (ou SSL CONNECT pour HTTPS)</li>
+ <li>"https": proxy HTTP sur connexion TLS vers proxy</li>
+ <li>"socks": SOCKS v5 proxy</li>
+ <li>"socks4": SOCKS v4 proxy</li>
+ <li>"direct": pas de proxy</li>
+ <li>"unknown": proxy inconnu</li>
+ </ul>
+ </dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Vrai si le proxy exécutera une résolution de nom de domaine basée sur le nom d'hôte fourni, ce qui signifie que le client ne doit pas faire sa propre recherche DNS.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>integer</code>. Délai d'attente de basculement en secondes. Si la connexion par proxy échoue, le proxy ne sera pas utilisé à nouveau pendant cette période.</dd>
+ </dl>
+ </dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande. Les ID de requête sont uniques au sein d'une session de navigateur, de sorte que vous pouvez les utiliser pour relier différents événements associés à la même requête.</dd>
+ <dt><code>responseHeaders</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.</dd>
+ <dt><code>statusCode</code></dt>
+ <dd><code>integer</code>. Code d'état HTTP standard renvoyé par le serveur.</dd>
+ <dt><code>statusLine</code></dt>
+ <dd><code>string</code>. Status d'état HTTP de la réponse ou la chaîne 'HTTP/0.9 200 OK' pour les réponses HTTP/0.9 (c'est-à-dire les réponses qui n'ont pas de ligne d'état) ou une chaîne vide s'il n'y a pas d'en-têtes</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.webRequest.onHeadersReceived", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code définit un cookie supplémentaire lors de la demande d'une ressource à partir de l'URL cible :</p>
+
+<pre class="brush: js">var targetPage = "https://developer.mozilla.org/en-US/Firefox/Developer_Edition";
+
+// Add the new header to the original array,
+// and return it.
+function setCookie(e) {
+ var setMyCookie = {
+ name: "Set-Cookie",
+ value: "my-cookie1=my-cookie-value1"
+ };
+ e.responseHeaders.push(setMyCookie);
+ return {responseHeaders: e.responseHeaders};
+}
+
+// Listen for onHeaderReceived for the target page.
+// Set "blocking" and "responseHeaders".
+browser.webRequest.onHeadersReceived.addListener(
+ setCookie,
+ {urls: [targetPage]},
+ ["blocking", "responseHeaders"]
+);</pre>
+
+<p>Ce code fait la même chose que l'exemple précédent, sauf que l'auditeur est asynchrone, retournant une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui est résolue avec les nouveaux en-têtes :</p>
+
+<pre class="brush: js">var targetPage = "https://developer.mozilla.org/en-US/Firefox/Developer_Edition";
+
+// Return a Promise that sets a timer.
+// When the timer fires, resolve the promise with
+// modified set of response headers.
+function setCookieAsync(e) {
+ var asyncSetCookie = new Promise((resolve, reject) =&gt; {
+ window.setTimeout(() =&gt; {
+ var setMyCookie = {
+ name: "Set-Cookie",
+ value: "my-cookie1=my-cookie-value1"
+ };
+ e.responseHeaders.push(setMyCookie);
+ resolve({responseHeaders: e.responseHeaders});
+ }, 2000);
+ });
+
+ return asyncSetCookie;
+}
+
+// Listen for onHeaderReceived for the target page.
+// Set "blocking" and "responseHeaders".
+browser.webRequest.onHeadersReceived.addListener(
+ setCookieAsync,
+ {urls: [targetPage]},
+ ["blocking", "responseHeaders"]
+);
+</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.html
new file mode 100644
index 0000000000..a48c38e43a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.html
@@ -0,0 +1,205 @@
+---
+title: webRequest.onResponseStarted
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/onResponseStarted
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onResponseStarted
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/onResponseStarted
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancé lorsque le premier octet du corps de réponse est reçu.</p>
+
+<p>Cet événement est à titre d'information seulement.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webRequest.onResponseStarted.addListener(
+ listener, // function
+ filter, // object
+ extraInfoSpec // optional array of strings
+)
+browser.webRequest.onResponseStarted.removeListener(listener)
+browser.webRequest.onResponseStarted.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback, filter, extraInfoSpec)</code></dt>
+ <dd>Ajouter un auditeur à 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'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est enregistré à cet événement. Retourne <code>true</code> s'il est écouté, 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>Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur la demande. Voir les <code><a href="#details">details</a></code> ci-dessous.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.</dd>
+ <dt><code>extraInfoSpec</code>{{optional_inline}}</dt>
+ <dd><code>array</code> de <code>string</code>. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur <span class="im">:</span></dd>
+ <dd>
+ <ul>
+ <li><span class="im"><code>"</code></span><code>responseHeaders</code><span class="im"><code>"</code>: inclure <code>responseHeaders</code> dans l'objet <code>détails</code> </span>transmis à l'auditeur</li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>documentUrl</code></dt>
+ <dd><code>string</code>. URL du document dans lequel la ressource sera chargée. Par exemple, si la page web "https://example.com" contient une image ou un iframe, alors le <code>documentUrl</code> pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, <code>documentUrl</code> n'est pas défini.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal ; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'un (sous-)cadre est chargé (<code>type</code> is <code>main_frame</code> or <code>sub_frame</code>), <code>frameId</code> indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.</dd>
+ <dt><code>fromCache</code></dt>
+ <dd><code>boolean</code>. Indique si cette réponse a été récupérée dans le cache du disque.</dd>
+ <dt><code>ip</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'adresse IP du serveur à laquelle la requête a été envoyée. Notez qu'il peut s'agir d'une adresse IPv6 littérale.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard : par exemple, "GET" ou "POST".</dd>
+ <dt><code>originUrl</code></dt>
+ <dd>
+ <p><code>string</code>. URL de la ressource qui a déclenché la requête. Par exemple, si "https://example.com" contient un lien, et que l'utilisateur clique sur le lien, alors <code>originUrl</code> de la requête résultante est "https://example.com".</p>
+
+ <p>L'<code>originUrl</code> est souvent mais pas toujours la même chose que <code>documentUrl</code>.Par exemple, si une page contient une iframe, et que l'iframe contient un lien qui charge un nouveau document dans l'iframe, alors le <code>documentUrl</code> pour la requête résultante sera le document parent de l'iframe, mais l'<code>originUrl</code> sera l'URL du document dans l'iframe qui contenait le lien.</p>
+ </dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. de la trame qui contient la trame qui a envoyé la requête. Réglé à -1 s'il n'existe pas de l'iframe parent.</dd>
+ <dt><code>proxyInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :</p>
+
+ <dl>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur proxy.</dd>
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Le type de serveur proxy. L'un des :</p>
+
+ <ul>
+ <li>"http": proxy HTTP (ou SSL CONNECT pour HTTPS)</li>
+ <li>"https": proxy HTTP sur connexion TLS vers proxy</li>
+ <li>"socks": SOCKS v5 proxy</li>
+ <li>"socks4": SOCKS v4 proxy</li>
+ <li>"direct": pas de proxy</li>
+ <li>"unknown": proxy inconnu</li>
+ </ul>
+ </dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Vrai si le proxy exécutera une résolution de nom de domaine basée sur le nom d'hôte fourni, ce qui signifie que le client ne doit pas faire sa propre recherche DNS.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>integer</code>. Délai d'attente de basculement en secondes. Si la connexion par proxy échoue, le proxy ne sera pas utilisé à nouveau pendant cette période.</dd>
+ </dl>
+ </dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande. Les ID de requête sont uniques au sein d'une session de navigateur, de sorte que vous pouvez les utiliser pour relier différents événements associés à la même requête.</dd>
+ <dt><code>responseHeaders</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.</dd>
+ <dt><code>statusCode</code></dt>
+ <dd><code>integer</code>. Code d'état HTTP standard renvoyé par le serveur.</dd>
+ <dt><code>statusLine</code></dt>
+ <dd><code>string</code>. Status d'état HTTP de la réponse ou la chaîne 'HTTP/0.9 200 OK' pour les réponses HTTP/0.9 (c'est-à-dire les réponses qui n'ont pas de ligne d'état) ou une chaîne vide s'il n'y a pas d'en-têtes</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.webRequest.onResponseStarted", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">var target = "https://developer.mozilla.org/*";
+
+/*
+e.g.
+"https://developer.mozilla.org/en-US/Firefox/Releases"
+200
+HTTP/1.1 200 OK
+*/
+function logResponse(responseDetails) {
+ console.log(responseDetails.url);
+ console.log(responseDetails.statusCode);
+ console.log(responseDetails.statusLine);
+}
+
+browser.webRequest.onResponseStarted.addListener(
+ logResponse,
+ {urls: [target]}
+);</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.html
new file mode 100644
index 0000000000..3f0bf5b2a8
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.html
@@ -0,0 +1,200 @@
+---
+title: webRequest.onSendHeaders
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/onSendHeaders
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - onSendHeaders
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/onSendHeaders
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Cet événement est déclenché juste avant l'envoi des en-têtes. Si votre extension ou une autre extension a modifié les en-têtes dans  <code>{{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}}</code>, vous verrez la version modifiée ici.</p>
+
+<p>Cet événement est à titre d'information seulement.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.webRequest.onSendHeaders.addListener(
+ listener, // function
+ filter, // object
+ extraInfoSpec // optional array of strings
+)
+browser.webRequest.onSendHeaders.removeListener(listener)
+browser.webRequest.onSendHeaders.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback, filter, extraInfoSpec)</code></dt>
+ <dd>Ajouter un auditeur à 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'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si <code>listener</code> est enregistré à cet événement. Retourne <code>true</code> s'il est écouté, 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 produira. La fonction sera passée les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>details</code></dt>
+ <dd><a href="#details"><code>object</code></a>. Détails sur la demande. Voir les <code><a href="#details">details</a></code> ci-dessous.</dd>
+ </dl>
+ </dd>
+ <dt><code>filter</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.</dd>
+ <dt><code>extraInfoSpec</code>{{optional_inline}}</dt>
+ <dd><code>array</code> de <code>string</code>. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur ici <span class="im">:</span></dd>
+ <dd>
+ <ul>
+ <li><span class="im"><code>"requestHeaders"</code>: </span>inclure les en-têtes de requête dans l'objet détails transmis à l'auditeur</li>
+ </ul>
+ </dd>
+</dl>
+
+<h2 id="Objets_supplémentaires">Objets supplémentaires</h2>
+
+<h3 id="détails">détails</h3>
+
+<dl class="reference-values">
+ <dt><code>documentUrl</code></dt>
+ <dd><code>string</code>. URL du document dans lequel la ressource sera chargée. Par exemple, si la page web "https://example.com" contient une image ou un iframe, alors le <code>documentUrl</code> pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, <code>documentUrl</code> n'est pas défini.</dd>
+ <dt><code>frameId</code></dt>
+ <dd><code>integer</code>. Zéro si la requête se produit dans le cadre principal ; une valeur positive est l'ID d'une sous-trame dans laquelle la requête se produit. Si le document d'un (sous-)cadre est chargé (<code>type</code> is <code>main_frame</code> or <code>sub_frame</code>), <code>frameId</code> indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.</dd>
+ <dt><code>method</code></dt>
+ <dd><code>string</code>. Méthode HTTP standard : par exemple, "GET" ou "POST".</dd>
+ <dt><code>originUrl</code></dt>
+ <dd>
+ <p><code>string</code>. URL de la ressource qui a déclenché la requête. Par exemple, si "https://example.com" contient un lien, et que l'utilisateur clique sur le lien, alors <code>originUrl</code> de la requête résultante est "https://example.com".</p>
+
+ <p>L'<code>originUrl</code> est souvent mais pas toujours la même chose que <code>documentUrl</code>.Par exemple, si une page contient une iframe, et que l'iframe contient un lien qui charge un nouveau document dans l'iframe, alors le <code>documentUrl</code> pour la requête résultante sera le document parent de l'iframe, mais l'<code>originUrl</code> sera l'URL du document dans l'iframe qui contenait le lien.</p>
+ </dd>
+ <dt><code>parentFrameId</code></dt>
+ <dd><code>integer</code>. de la trame qui contient la trame qui a envoyé la requête. Réglé à -1 s'il n'existe pas de l'iframe parent.</dd>
+ <dt><code>proxyInfo</code></dt>
+ <dd>
+ <p><code>object</code>. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :</p>
+
+ <dl>
+ <dt><code>host</code></dt>
+ <dd><code>string</code>. Le nom d'hôte du serveur proxy.</dd>
+ <dt><code>port</code></dt>
+ <dd><code>integer</code>. Le numéro de port du serveur proxy.</dd>
+ <dt><code>type</code></dt>
+ <dd>
+ <p><code>string</code>. Le type de serveur proxy. L'un des :</p>
+
+ <ul>
+ <li>"http": proxy HTTP (ou SSL CONNECT pour HTTPS)</li>
+ <li>"https": proxy HTTP sur connexion TLS vers proxy</li>
+ <li>"socks": SOCKS v5 proxy</li>
+ <li>"socks4": SOCKS v4 proxy</li>
+ <li>"direct": pas de proxy</li>
+ <li>"unknown": proxy inconnu</li>
+ </ul>
+ </dd>
+ <dt><code>username</code></dt>
+ <dd><code>string</code>. Nom d'utilisateur pour le service proxy.</dd>
+ <dt><code>proxyDNS</code></dt>
+ <dd><code>boolean</code>. Vrai si le proxy exécutera une résolution de nom de domaine basée sur le nom d'hôte fourni, ce qui signifie que le client ne doit pas faire sa propre recherche DNS.</dd>
+ <dt><code>failoverTimeout</code></dt>
+ <dd><code>integer</code>. Délai d'attente de basculement en secondes. Si la connexion par proxy échoue, le proxy ne sera pas utilisé à nouveau pendant cette période.</dd>
+ </dl>
+ </dd>
+ <dt><code>requestId</code></dt>
+ <dd><code>string</code>. L'ID de la demande. Les ID de requête sont uniques au sein d'une session de navigateur, de sorte que vous pouvez les utiliser pour relier différents événements associés à la même requête.</dd>
+ <dt><code>requestHeaders</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.</dd>
+ <dt><code>tabId</code></dt>
+ <dd><code>integer</code>. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.</dd>
+ <dt><code>timeStamp</code></dt>
+ <dd><code>number</code>. L'heure à laquelle cet événement s'est déclenché, en <a href="https://en.wikipedia.org/wiki/Unix_time">millisecondes depuis l'époque</a>.</dd>
+ <dt><code>type</code></dt>
+ <dd>{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".</dd>
+ <dt><code>url</code></dt>
+ <dd><code>string</code>. Cible de la demande.</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.webRequest.onSendHeaders", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code enregistre tous les cookies qui seront envoyés en faisant des demandes au <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/Match_patterns">modèle de match</a> cible :</p>
+
+<pre class="brush: js">// The target match pattern
+var targetPage = "*://*.google.ca/*";
+
+// Log cookies sent with this request
+function logCookies(e) {
+ for (var header of e.requestHeaders) {
+ if (header.name == "Cookie") {
+ console.log(header.value);
+ }
+ }
+}
+
+// Listen for onSendHeaders, and pass
+// "requestHeaders" so we get the headers
+browser.webRequest.onSendHeaders.addListener(
+ logCookies,
+ {urls: [targetPage]},
+ ["requestHeaders"]
+);</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.html
new file mode 100644
index 0000000000..c1dffeb223
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.html
@@ -0,0 +1,81 @@
+---
+title: webRequest.RequestFilter
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/RequestFilter
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - RequestFilter
+ - Type
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/RequestFilter
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un objet décrivant les filtres à appliquer aux événements webRequest.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>urls</code></dt>
+ <dd><code>array</code> de <code><code>string</code></code>. Un tableau de <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/Match_patterns">motifs (Match patterns)</a>. L'auditeur ne sera appelé que pour les demandes dont les cibles correspondent à l'un des modèles donnés. Seules les requêtes faites en utilisant HTTP ou HTTPS déclencheront des événements, même si les modèles de correspondance peuvent correspondre à d'autres protocoles.</dd>
+ <dt><code>types</code>{{optional_inline}}</dt>
+ <dd><code>array</code> de <code>{{WebExtAPIRef('webRequest.ResourceType')}}</code>. Une liste des types de ressources (par exemple, feuilles de style, images, scripts). L'auditeur ne sera appelé que pour les demandes de ressources qui sont de l'un des types donnés.</dd>
+ <dt><code>tabId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'auditeur ne sera appelé que pour les requêtes provenant du {{WebExtAPIRef("tabs.Tab", "tab")}} identifié par cet ID.</dd>
+ <dt><code>windowId</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'auditeur ne sera appelé que pour les requêtes provenant du  {{WebExtAPIRef("windows.Window", "window")}} identifié par cet ID.</dd>
+ <dt>incognito {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si elles sont fournies, les demandes qui ne correspondent pas à l'état incognito (<code>true</code> ou <code>false</code>) seront filtrées.</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.webRequest.RequestFilter")}}</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.html
new file mode 100644
index 0000000000..a8b07698ea
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.html
@@ -0,0 +1,120 @@
+---
+title: webRequest.ResourceType
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/ResourceType
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - ResourceType
+ - Type
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/ResourceType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Ce type est une chaîne de caractères, qui représente le contexte dans lequel une ressource a été récupérée dans une requête web.</p>
+
+<p>Il est utilisé pour <a href="/fr/Add-ons/WebExtensions/API/WebRequest/RequestFilter">filtrer</a> les requêtes que vous écoutez en utilisant l'API webRequest. Par exemple : vous pouvez écouter les requêtes uniquement pour les images, ou uniquement pour les scripts.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes de caractères. Les valeurs possibles sont :</p>
+
+<dl>
+ <dt><code>beacon</code></dt>
+ <dd>Demandes envoyées par le biais de l'<a href="/fr/docs/Web/API/Beacon_API">API Beacon</a>.</dd>
+ <dt><code>csp_report</code></dt>
+ <dd>Demandes envoyées au {{CSP("report-uri")}} donné dans l'en-tête {{HTTPHeader("Content-Security-Policy")}}, lorsqu'une tentative de violation de la politique est détectée.</dd>
+ <dt><code>font</code></dt>
+ <dd>Polices Web chargées pour un {{cssxref("@font-face")}} règle CSS.</dd>
+ <dt><code>image</code></dt>
+ <dd>Les ressources chargées pour être rendues sous forme d'image, à l'exception de  <code>imageset</code> sur les navigateurs qui prennent en charge ce type (voir la compatibilité des navigateurs ci-dessous).</dd>
+ <dt><code>imageset</code></dt>
+ <dd>Images chargées par un élément {{HTMLElement("picture")}} ou données dans un attribut {{htmlattrxref("srcset", "img")}} d'un élement <code>&lt;img&gt;</code>.</dd>
+</dl>
+
+<dl>
+ <dt><code>main_frame</code></dt>
+ <dd>Documents de niveau chargés dans un objet.</dd>
+ <dt><code>media</code></dt>
+ <dd>Ressources chargées par un élément  {{HTMLElement("video")}} ou  {{HTMLElement("audio")}}.</dd>
+ <dt><code>object</code></dt>
+ <dd>Ressources chargées par un élément {{HTMLElement("object")}} ou {{HTMLElement("embed")}}.</dd>
+ <dd>Les navigateurs qui n'ont pas de type <code>object_subrequest</code> dédié (voir compatibilité des navigateurs ci-dessous), étiquettent également les requêtes ultérieures envoyées par le plugin en tant <code>object</code>.</dd>
+ <dt><code>object_subrequest</code></dt>
+ <dd>Requêtes envoyées par plugins.</dd>
+ <dt><code>ping</code></dt>
+ <dd>Demandes envoyées à l'URL donnée dans l'attribut {{htmlattrxref("ping", "a")}} d'un hyperlien, lorsque l'hyperlien est suivi..</dd>
+ <dd><span style="display: none;"> </span>Les navigateurs qui n'ont pas de type de <code>balise</code> dédié (voir la compatibilité des navigateurs ci-dessous), étiquettent également les requêtes envoyées par l'API Beacon en tant que <code>ping</code>.</dd>
+ <dt><code>script</code></dt>
+ <dd>Code chargé pour être exécuté par un élément {{HTMLElement("script")}} ou exécuté dans un <a href="/fr/docs/Web/API/Web_Workers_API">Worker</a>.</dd>
+ <dt><code>speculative</code></dt>
+ <dd>Dans une connexion spéculative, le navigateur a déterminé qu'une demande d'URI pourrait bientôt arriver, donc il lance immédiatement un handshake TCP et/ou TLS, de sorte qu'il est prêt plus rapidement lorsque la ressource est effectivement demandée.</dd>
+ <dt><code>stylesheet</code></dt>
+ <dd>Feuilles de style <a href="/fr/docs/Web/CSS">CSS</a> chargées pour décrire la représentation d'un document.</dd>
+ <dt><code>sub_frame</code></dt>
+ <dd>Documents chargés dans un élément {{HTMLElement("iframe")}} ou {{HTMLElement("frame")}}.</dd>
+ <dt><code>web_manifest</code></dt>
+ <dd><a href="/fr/docs/Web/Manifest">Manifests Web App</a> chargés pour les sites Web qui peuvent être installés sur l'écran d'accueil.</dd>
+ <dt><code>websocket</code></dt>
+ <dd>Requêtes initiant une connexion à un serveur via l'<a href="/fr/docs/WebSockets">API WebSocket</a>.</dd>
+ <dt><code>xbl</code></dt>
+ <dd><a href="/fr/docs/XBL">XBL</a> bindings chargés pour étendre le comportement des éléments d'un document.</dd>
+ <dt><code>xml_dtd</code></dt>
+ <dd><a href="/fr/docs/Glossaire/DTD">DTDs</a> chargées pour un document XML.</dd>
+ <dt><code>xmlhttprequest</code></dt>
+ <dd>Requêtes envoyées par un objet {{domxref("XMLHttpRequest")}} ou par l'<a href="/fr/docs/Web/API/Fetch_API">API Fetch</a>.</dd>
+ <dt><code>xslt</code></dt>
+ <dd>Feuilles de style <a href="/fr/docs/Web/XSLT">XSLT</a> chargées pour transformer un document XML</dd>
+ <dt><code>other</code></dt>
+ <dd>Ressources qui ne sont couvertes par aucun autre type disponible.</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.webRequest.ResourceType")}}</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.html
new file mode 100644
index 0000000000..f9470561ce
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.html
@@ -0,0 +1,98 @@
+---
+title: webRequest.SecurityInfo
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/SecurityInfo
+tags:
+ - API
+ - Add-ons
+ - Reference
+ - SecurityInfo
+ - Type
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/SecurityInfo
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Objet décrivant les propriétés de sécurité d'une requête Web particulière. Un objet de ce type est retourné depuis l'API {{WebExtAPIRef("webRequest.getSecurityInfo()")}}.</p>
+
+<p>Si la requête n'est pas sécurisée par <a href="/fr/docs/Glossaire/TLS">TLS</a>, alors cet objet ne contiendra que l'état de la propriété <code>state</code>, dont la valeur sera <code>"insecure"</code>.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>certificates</code></dt>
+ <dd><code>Array</code> de {{WebExtAPIRef("webRequest.CertificateInfo", "CertificateInfo")}}. Si {{WebExtAPIRef("webRequest.getSecurityInfo()")}} a été appelé avec l'option <code>certificateChain</code> présente et définie sur <code>true</code>, cela contiendra un objet <code>CertificateInfo</code> pour chaque certificat de la chaîne, depuis le certificat du serveur jusqu'à et y compris la racine de confiance.</dd>
+ <dd>Sinon, il contiendra un seul objet <code>CertificateInfo</code>, pour le certificat du serveur.</dd>
+ <dt><code>certificateTransparencyStatus</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd>
+ <p><code>String</code>. Indique l'état de la <a href="https://www.certificate-transparency.org/">transparence des certificats</a> pour la connexion. Ceci peut prendre l'une des valeurs suivantes :</p>
+
+ <ul>
+ <li>"not_applicable"</li>
+ <li>"policy_compliant"</li>
+ <li>"policy_not_enough_scts"</li>
+ <li>"policy_not_diverse_scts"</li>
+ </ul>
+ </dd>
+ <dt><code>cipherSuite</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd><code>String</code>. Suite de chiffrement utilisée pour la connexion, formatée selon la <a href="https://tools.ietf.org/html/rfc5246#appendix-A.5">specification TLS </a>: par exemple, "<span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body"><span class="objectBox objectBox-string">TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256</span></span></span></span>".</dd>
+ <dt><code>errorMessage</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd>
+ <p><code>String</code>. S'il y a eu un problème avec le protocole TLS  (for example, the certificate had expired, or a trusted root could not be found, or a certificate was revoked) then <code>status</code> will be "broken" and the <code>errorMessage</code> property will contain a string describing the error, taken from Firefox's internal list of error codes.</p>
+
+ <p>Note though that at present you can only call <code>getSecurityInfo()</code> in the <code>onHeaderReceived</code> listener, and the <code>onHeaderReceived</code> event is not fired when the handshake fails. So in practice this will never be set. </p>
+ </dd>
+ <dt><code>hpkp</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd><code>Boolean</code>. <code>true</code> si l'hôte utilise <a href="/fr/docs/Web/Security/Public_Key_Pinning">Public Key Pinning</a>, sinon <code>false</code>.</dd>
+ <dt><code>hsts</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd><code>Boolean</code>. <code>true</code> si l'hôte utilise <a href="/fr/docs/Sécurité/HTTP_Strict_Transport_Security">Strict Transport Security</a>, sinon <code>false</code>.</dd>
+ <dt><code>isDomainMismatch</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd><code>Boolean</code>. <code>true</code> si le nom de domaine du serveur ne correspond pas au nom de domaine dans son certificat, sinon <code>false</code>.</dd>
+ <dt><code>isExtendedValidation</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd><code>Boolean</code>. <code>true</code> si le serveur possède un <a href="https://en.wikipedia.org/wiki/Extended_Validation_Certificate">Extended Validation Certificate</a>, sinon <code>false</code>.</dd>
+ <dt><code>isNotValidAtThisTime</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd><code>Boolean</code>. <code>true</code> si l'heure actuelle tombe en dehors de la période de validité du certificat de serveur (c'est-à-dire que le certificat a expiré ou n'est pas encore valide), sinon <code>false</code>.</dd>
+ <dt><code>isUntrusted</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd><code>Boolean</code>. <code>true</code> si une chaîne de retour à un certificat racine de confiance n'a pas pu être construite, sinon <code>false</code>.</dd>
+ <dt><code>keaGroupName</code> {{optional_inline}}</dt>
+ <dd><code>String</code>. Si <code>state</code> est "sécurisé" cela décrit l'algorithme d'échange de clé utilisé dans cette requête.</dd>
+ <dt><code>protocolVersion</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd>
+ <p><code>String</code>. Version du protocole TLS utilisé. L'un des :</p>
+
+ <ul>
+ <li>"TLSv1"</li>
+ <li>"TLSv1.1"</li>
+ <li>"TLSv1.2"</li>
+ <li>"TLSv1.3"</li>
+ <li>"inconnu" (si la version n'est pas valide)</li>
+ </ul>
+ </dd>
+ <dt><code>signatureSchemeName</code> {{optional_inline}}</dt>
+ <dd><code>String</code>. Si <code>state</code> est "sécurisé", cela décrit le schéma de signature utilisé dans cette requête.t.</dd>
+ <dt><code>state</code></dt>
+ <dd>
+ <p><code>String</code>. État de la connexion. L'un des :</p>
+
+ <ul>
+ <li>"broken": la poignée de main TLS a échoué (par exemple, le certificat a expiré)</li>
+ <li>"insecure": la connexion n'est pas une connexion TLS</li>
+ <li>"secure": la connexion est une connexion TLS sécurisée</li>
+ <li>"weak": la connexion est une connexion TLS mais est considérée comme faible. Vous pouvez examiner les <code>weaknessReasons</code> pour découvrir le problème.</li>
+ </ul>
+
+ <p>Notez cependant qu'actuellement, vous ne pouvez appele <code>getSecurityInfo()</code> que dans l'écouteur <code>onHeaderReceived</code>, et l'événement <code>onHeaderReceived</code> n'est pas déclenché lorsque la poignée de main échoue. Ainsi, dans la pratique, il ne sera jamais réglé sur "cassé".</p>
+ </dd>
+ <dt><code>weaknessReasons</code><span class="diff_add"> {{optional_inline}}</span></dt>
+ <dd><code>String</code>. Si l'<code>état</code> est "faible", cela indique la raison. Actuellement, il ne peut contenir qu'une seule valeur "chiffre", ce qui indique que la suite de chiffres négociée est considérée comme faible.</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.webRequest.SecurityInfo", 10)}}</p>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.html
new file mode 100644
index 0000000000..ac4971601b
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.html
@@ -0,0 +1,63 @@
+---
+title: webRequest.StreamFilter.close()
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/close
+tags:
+ - Add-ons
+ - Extensions
+ - Method
+ - StreamFilter.close
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/close
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Ferme la demande. Après cet appel, aucune autre donnée de réponse ne sera transmise au moteur de rendu du navigateur et aucun autre événement de filtrage ne sera donné à l'extension.</p>
+
+<p>Notez la différence entre cette fonction et  {{WebExtAPIRef("webRequest.StreamFilter.disconnect()", "disconnect()")}}. Avec  <code>disconnect()</code>, le navigateur continuera à traiter d'autres données de réponse, mais il ne sera pas accessible par le filtre. Avec <code>close()</code>, le navigateur ignorera toutes les données de réponse qui n'ont pas déjà été transmises au moteur de rendu.</p>
+
+<p>Vous devriez toujours appeler <code>close()</code> ou <code>disconnect()</code> une fois que vous n'avez plus besoin d'interagir avec la réponse.</p>
+
+<p>Vous ne pouvez pas appeler cette fonction avant que l'événement  {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">filter.close()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>None.</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.webRequest.StreamFilter.close", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple remplacera le contenu de la page par "texte de remplacement"  :</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+
+ filter.onstart = event =&gt; {
+ console.log("started");
+ let encoder = new TextEncoder();
+ filter.write(encoder.encode("replacement content"));
+ filter.close();
+ }
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.org/"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.html
new file mode 100644
index 0000000000..fad9309e83
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.html
@@ -0,0 +1,67 @@
+---
+title: webRequest.StreamFilter.disconnect()
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/disconnect
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - StreamFilter.disconnect
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/disconnect
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Déconnecte le filtre de la requête. Après cela, le navigateur continuera à traiter la réponse, mais plus aucun événement de filtrage ne se déclenchera, et plus aucun appel de fonction de filtrage n'aura d'effet.</div>
+
+<div></div>
+
+<div>Notez la différence entre cette fonction et {{WebExtAPIRef("webRequest.StreamFilter.close()", "close()")}}. Avec  <code>disconnect()</code>, le navigateur continuera à traiter d'autres données de réponse, mais il ne sera pas accessible par le filtre. Avec <code>close()</code>, le navigateur ignorera toutes les données de réponse qui n'ont pas déjà été transmises au moteur de rendu.</div>
+
+<div></div>
+
+<p>Vous devriez toujours appeler <code>disconnect()</code> ou <code>close()</code> une fois que vous n'avez plus besoin d'interagir avec la réponse.</p>
+
+<p>Vous ne pouvez pas appeler cette fonction avant que l'événement {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">filter.disconnect()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>None.</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.webRequest.StreamFilter.disconnect", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple précèdera "preface text" au corps de la réponse. Il se déconnecte ensuite, de sorte que le corps de réponse d'origine se charge normalement :</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+
+ filter.onstart = event =&gt; {
+ console.log("started");
+ let encoder = new TextEncoder();
+ filter.write(encoder.encode("preface text"));
+ filter.disconnect();
+ }
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.org/"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.html
new file mode 100644
index 0000000000..f4f88ef3c2
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.html
@@ -0,0 +1,46 @@
+---
+title: webRequest.Streamfilter.error
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/error
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StreamFilter.error
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/error
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>
+<p>Une chaîne de caractères qui contiendra un message d'erreur après le déclenchement de l'événement {{WebExtAPIRef("webRequest.StreamFilter.onerror", "onerror")}}.</p>
+</div>
+
+<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.webRequest.StreamFilter.error", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple ajoute un écouteur {{WebExtAPIRef("webRequest.StreamFilter.onerror", "onerror")}} qui enregistre la valeur de <code>error</code>.</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">listener</span><span class="punctuation token">(</span>details<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">let</span> filter <span class="operator token">=</span> browser<span class="punctuation token">.</span>webRequest<span class="punctuation token">.</span><span class="function token">filterResponseData</span><span class="punctuation token">(</span><span class="string token">"12345"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+ filter<span class="punctuation token">.</span>onerror <span class="operator token">=</span> event <span class="operator token">=</span><span class="operator token">&gt;</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="template-string token"><span class="string token">`Error: </span><span class="interpolation token"><span class="interpolation-punctuation punctuation token">${</span>filter<span class="punctuation token">.</span>error<span class="interpolation-punctuation punctuation token">}</span></span><span class="string token">`</span></span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span>
+
+ <span class="keyword token">//return</span> <span class="punctuation token">{</span><span class="punctuation token">}</span><span class="punctuation token">; // not needed</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>webRequest<span class="punctuation token">.</span>onBeforeRequest<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span>
+ listener<span class="punctuation token">,</span>
+ <span class="punctuation token">{</span>urls<span class="punctuation token">:</span> <span class="punctuation token">[</span><span class="string token">"&lt;all_urls&gt;"</span><span class="punctuation token">]</span><span class="punctuation token">,</span> types<span class="punctuation token">:</span> <span class="punctuation token">[</span><span class="string token">"main_frame"</span><span class="punctuation token">]</span><span class="punctuation token">}</span><span class="punctuation token">,</span>
+ <span class="punctuation token">[</span><span class="string token">"blocking"</span><span class="punctuation token">]</span>
+<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.html
new file mode 100644
index 0000000000..6ed8b962a8
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.html
@@ -0,0 +1,126 @@
+---
+title: webRequest.StreamFilter
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - NeedsTranslation
+ - Reference
+ - StreamFilter
+ - TopicStub
+ - Type
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Un <code>StreamFilter</code> est un objet que vous pouvez utiliser pour surveiller et modifier les réponses HTTP.</p>
+
+<p>Pour créer un <code>StreamFilter</code>, appelez {{WebExtAPIRef("webRequest.filterResponseData()")}}, en lui passant l'ID de la requête web que vous voulez filtrer.</p>
+
+<p>Vous pouvez imaginer le filtre de flux entre la pile réseau et le moteur de rendu du navigateur. Le filtre passe les données de réponse HTTP au fur et à mesure qu'il est reçu du réseau, et peut examiner et modifier les données avant de les transmettre au moteur de rendu, où elles seront analysées et rendues.</p>
+
+<p>Le filtre génère quatre événements différents :</p>
+
+<ul>
+ <li>{{WebEXTAPIRef("webRequest.StreamFilter.onstart", "onstart")}} lorsque le filtre est sur le point de commencer à recevoir les données de réponse.</li>
+ <li>{{WebEXTAPIRef("webRequest.StreamFilter.ondata", "ondata")}} lorsque des données de réponse ont été reçues par le filtre et sont disponibles pour être examinées ou modifiées.</li>
+ <li>{{WebEXTAPIRef("webRequest.StreamFilter.onstop", "onstop")}} lorsque le filtre a fini de recevoir les données de réponse.</li>
+ <li>{{WebEXTAPIRef("webRequest.StreamFilter.onerror", "onerror")}} si une erreur s'est produite lors de l'initialisation et de l'utilisation du filtre.</li>
+</ul>
+
+<p>Vous pouvez écouter chaque événement en assignant une fonction d'écoute à son attribut :</p>
+
+<pre class="brush: js">filter.onstart = event =&gt; {
+ console.log("started");
+}</pre>
+
+<p>Notez que la demande est bloquée pendant l'exécution de n'importe quel auditeur d'événement.</p>
+
+<p>Le filtre fournit une fonction {{WebExtAPIRef("webRequest.StreamFilter.write()", "write()")}}. A tout moment à partir de l'événement <code>onstart</code>, vous pouvez utiliser cette fonction pour écrire des données dans le flux de sortie.</p>
+
+<p>Si vous assignez des auditeurs à l'un des événements du filtre, alors toutes les données de réponse transmises au moteur de rendu seront fournies par les appels que vous faites pour <code>write()</code>: donc si vous ajoutez un auditeur mais n'appelez pas <code>write()</code>, alors la page rendue sera vide.</p>
+
+<p>Une fois que vous avez terminé d'interagir avec la réponse, vous appelez l'un ou l'autre des éléments suivants :</p>
+
+<ul>
+ <li>{{WebEXTAPIRef("webRequest.StreamFilter.disconnect()", "disconnect()")}} : Cela déconnecte le filtre de la requête, de sorte que le reste de la réponse est traité normalement.</li>
+ <li>{{WebEXTAPIRef("webRequest.StreamFilter.close()", "close()")}}: Cela met fin à la demande, de sorte qu'aucune donnée de réponse supplémentaire ne sera traitée.</li>
+</ul>
+
+<p>Le filtre fournit également des fonctions à {{WebEXTAPIRef("webRequest.StreamFilter.suspend()", "suspend()")}} et {{WebEXTAPIRef("webRequest.StreamFilter.resume()", "resume()")}} la requête.</p>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.close()")}}</dt>
+ <dd>Ferme la demande.</dd>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.disconnect()")}}</dt>
+ <dd>Déconnecte le filtre de la requête.</dd>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.resume()")}}</dt>
+ <dd>Reprend le traitement de la demande.</dd>
+</dl>
+
+<dl>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.suspend()")}}</dt>
+ <dd>Suspend le traitement de la demande.</dd>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.write()")}}</dt>
+ <dd>Écrit quelques données dans le flux de sortie.</dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.ondata")}}</dt>
+ <dd>Gestionnaire d'événements qui est appelé lorsque les données entrantes sont disponibles.</dd>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.onerror")}}</dt>
+ <dd>Gestionnaire d'événements qui est appelé lorsqu'une erreur s'est produite.</dd>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.onstart")}}</dt>
+ <dd>Gestionnaire d'événements qui est appelé lorsque le flux est sur le point de commencer à recevoir des données.</dd>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.onstop")}}</dt>
+ <dd>Gestionnaire d'événements qui est appelé lorsque le flux n'a plus de données à livrer et qu'il s'est fermé.</dd>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.error")}}</dt>
+ <dd>Quand {{WebExtAPIRef("webRequest.StreamFilter.onerror")}} est appelé, cela décrira l'erreur.</dd>
+ <dt>{{WebExtAPIRef("webRequest.StreamFilter.status")}}</dt>
+ <dd>Décrit l'état actuel du flux.</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.webRequest.StreamFilter", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code écoute pour <code>onstart</code>, <code>ondata</code> et <code>onstop</code>. Il enregistre simplement ces événements et les données de réponse elles-mêmes :</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+
+ filter.onstart = event =&gt; {
+ console.log("started");
+ }
+
+ filter.ondata = event =&gt; {
+ console.log(event.data);
+ filter.write(event.data);
+ }
+
+ filter.onstop = event =&gt; {
+ console.log("finished");
+ filter.disconnect();
+ }
+
+ //return {}; // not needed
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.org/"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.html
new file mode 100644
index 0000000000..6a07feea5c
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.html
@@ -0,0 +1,197 @@
+---
+title: webRequest.StreamFilter.ondata
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/ondata
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StreamFilter.ondata
+ - TextDecoder
+ - TextEncoder
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/ondata
+---
+<div>{{AddonSidebar()}}
+<p>Un gestionnaire d'événements qui sera appelé à plusieurs reprises lorsque les données de réponse sont disponibles. Le gestionnaire est passé un objet <code>event</code> qui contient une propriété de <code>data</code>, qui contient un morceau des données de réponse sous la forme d'un {{domxref("ArrayBuffer")}}.</p>
+</div>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple ajoute un écouteur <code>ondata</code> qui remplace "Example" dans la réponse par  "WebExtension Example".</p>
+
+<p>Notez que cet exemple ne fonctionne que pour les occurrences de "Example" qui sont entièrement contenues dans un bloc de données, et non celles qui chevauchent deux morceaux (ce qui peut arriver ~0.1% du temps pour les gros documents). De plus, il ne traite que les documents codés UTF-8. Une véritable mise en œuvre de ce projet devrait être plus complexe.</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+ let decoder = new TextDecoder("utf-8");
+ let encoder = new TextEncoder();
+
+ filter.ondata = event =&gt; {
+ let str = decoder.decode(event.data, {stream: true});
+ // Just change any instance of Example in the HTTP response
+ // to WebExtension Example.
+ str = str.replace(/Example/g, 'WebExtension Example');
+ filter.write(encoder.encode(str));
+ // Doing filter.disconnect(); here would make us process only
+ // the first chunk, and let the rest through unchanged. Note
+ // that this would break multi-byte characters that occur on
+ // the chunk boundary!
+ }
+
+ filter.onstop = event =&gt; {
+ filter.close();
+ }
+
+ //return {}; // not needed
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.com/*"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>Un autre exemple pour le traitement de documents volumineux :</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+ let decoder = new TextDecoder("utf-8");
+ let encoder = new TextEncoder();
+
+ let data = [];
+ filter.ondata = event =&gt; {
+ data.push(event.data);
+ };
+
+ filter.onstop = event =&gt; {
+ let str = "";
+ if (data.length == 1) {
+ str = decoder.decode(data[0]);
+ }
+ else {
+ for (let i = 0; i &lt; data.length; i++) {
+ let stream = (i == data.length - 1) ? false : true;
+ str += decoder.decode(data[i], {stream});
+ }
+ }
+ // Just change any instance of Example in the HTTP response
+ // to WebExtension Example.
+ str = str.replace(/Example/g, 'WebExtension $&amp;');
+ filter.write(encoder.encode(str));
+ filter.close();
+ };
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.com/"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>L'exemple ci-dessus peut aussi s'écrire ainsi :</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+ let decoder = new TextDecoder("utf-8");
+ let encoder = new TextEncoder();
+
+ let data = [];
+ filter.ondata = event =&gt; {
+ data.push(decoder.decode(event.data, {stream: true}));
+ };
+
+ filter.onstop = event =&gt; {
+ data.push(decoder.decode());
+
+ let str = data.join("");
+ // Just change any instance of Example in the HTTP response
+ // to WebExtension Example.
+ str = str.replace(/Example/g, 'WebExtension $&amp;');
+ filter.write(encoder.encode(str));
+ filter.close();
+ };
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.com/"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>Cet exemple utilise un {{domxref("Blob")}}:</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+ let encoder = new TextEncoder();
+
+ let data = [];
+ filter.ondata = event =&gt; {
+ data.push(event.data);
+ };
+
+ filter.onstop = async event =&gt; {
+ let blob = new Blob(data, {type: 'text/html'});
+ let str = await blob.text();
+
+ // Just change any instance of Example in the HTTP response
+ // to WebExtension Example.
+ str = str.replace(/Example/g, 'WebExtension $&amp;');
+ filter.write(encoder.encode(str));
+ filter.close();
+ };
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.com/"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>Cet exemple combine tous les tampons en un simple tampon :</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+ let decoder = new TextDecoder("utf-8");
+ let encoder = new TextEncoder();
+
+ let data = [];
+ filter.ondata = event =&gt; {
+ data.push(new Uint8Array(event.data));
+ };
+
+ filter.onstop = event =&gt; {
+ let combinedLength = 0;
+ for (let buffer of data) {
+ combinedLength += buffer.length;
+ }
+ let combinedArray = new Uint8Array(combinedLength);
+ let writeOffset = 0;
+ while (writeOffset &lt; combinedLength) {
+ let buffer = data.shift();
+ combinedArray.set(buffer, writeOffset);
+ writeOffset += buffer.length;
+ }
+ let str = decoder.decode(combinedArray);
+ // Just change any instance of Example in the HTTP response
+ // to WebExtension Example.
+ str = str.replace(/Example/g, 'WebExtension $&amp;');
+ filter.write(encoder.encode(str));
+ filter.close();
+ };
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.com/"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>{{WebExtExamples}}</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.webRequest.StreamFilter.ondata", 10)}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.html
new file mode 100644
index 0000000000..265b58e215
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.html
@@ -0,0 +1,51 @@
+---
+title: webRequest.StreamFilter.onerror
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/onerror
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StreamFilter.onerror
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/onerror
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>
+<p>Un gestionnaire d'événements qui sera appelé lorsqu'une erreur se produit. C'est le plus souvent parce qu'un ID de requête invalide a été passé dans {{WebExtAPIRef("webRequest.filterResponseData()")}}.</p>
+
+<p>Après le déclenchement de cet événement, la propriété {{WebExtAPIRef("webRequest.StreamFilter.error")}} contiendra un message donnant plus d'informations sur l'erreur.</p>
+
+<p>Notez que cet événement n'est <em>pas</em> déclenché pour les erreurs réseau.</p>
+</div>
+
+<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.webRequest.StreamFilter.onerror", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple ajoute un écouteur <code>onerror</code> qui enregistre la valeur de  {{WebExtAPIRef("webRequest.StreamFilter.error")}}.</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData("12345");
+
+ filter.onerror = event =&gt; {
+ console.log(`Error: ${filter.error}`);
+ }
+
+ //return {}; // not needed
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["&lt;all_urls&gt;"], types: ["main_frame"]},
+ ["blocking"]
+);
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.html
new file mode 100644
index 0000000000..3fca5b7e06
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.html
@@ -0,0 +1,47 @@
+---
+title: webRequest.StreamFilter.onstart
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/onstart
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StreamFilter.onstart
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/onstart
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>
+<p>Un gestionnaire d'événements qui sera appelé lorsque le flux est ouvert et est sur le point de commencer à livrer les données. A partir de ce point, l'extension peut utiliser des fonctions de filtrage telles que {{WebExtAPIRef("webRequest.StreamFilter.write()", "write()")}}, {{WebExtAPIRef("webRequest.StreamFilter.disconnect()", "disconnect()")}}, ou {{WebExtAPIRef("webRequest.StreamFilter.close()", "close()")}}.</p>
+</div>
+
+<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.webRequest.StreamFilter.onstart", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple remplacera le contenu de la page par "texte de remplacement" :</p>
+
+<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">listener</span><span class="punctuation token">(</span>details<span class="punctuation token">)</span> <span class="punctuation token">{</span>
+ <span class="keyword token">let</span> filter <span class="operator token">=</span> browser<span class="punctuation token">.</span>webRequest<span class="punctuation token">.</span><span class="function token">filterResponseData</span><span class="punctuation token">(</span>details<span class="punctuation token">.</span>requestId<span class="punctuation token">)</span><span class="punctuation token">;</span>
+
+ filter<span class="punctuation token">.</span>onstart <span class="operator token">=</span> event <span class="operator token">=</span><span class="operator token">&gt;</span> <span class="punctuation token">{</span>
+ console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span><span class="string token">"started"</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="keyword token">let</span> encoder <span class="operator token">=</span> <span class="keyword token">new</span> <span class="class-name token">TextEncoder</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ filter<span class="punctuation token">.</span><span class="function token">write</span><span class="punctuation token">(</span>encoder<span class="punctuation token">.</span><span class="function token">encode</span><span class="punctuation token">(</span><span class="string token">"replacement content"</span><span class="punctuation token">)</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ filter<span class="punctuation token">.</span><span class="function token">close</span><span class="punctuation token">(</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
+ <span class="punctuation token">}</span>
+<span class="punctuation token">}</span>
+
+browser<span class="punctuation token">.</span>webRequest<span class="punctuation token">.</span>onBeforeRequest<span class="punctuation token">.</span><span class="function token">addListener</span><span class="punctuation token">(</span>
+ listener<span class="punctuation token">,</span>
+ <span class="punctuation token">{</span>urls<span class="punctuation token">:</span> <span class="punctuation token">[</span><span class="string token">"https://example.org/"</span><span class="punctuation token">]</span><span class="punctuation token">,</span> types<span class="punctuation token">:</span> <span class="punctuation token">[</span><span class="string token">"main_frame"</span><span class="punctuation token">]</span><span class="punctuation token">}</span><span class="punctuation token">,</span>
+ <span class="punctuation token">[</span><span class="string token">"blocking"</span><span class="punctuation token">]</span>
+<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.html
new file mode 100644
index 0000000000..00de044ebf
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.html
@@ -0,0 +1,51 @@
+---
+title: webRequest.StreamFilter.onstop
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/onstop
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StreamFilter.onstop
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/onstop
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>
+<p>Un gestionnaire d'événements qui sera appelé lorsque le flux n'a plus de données à livrer. IDans le gestionnaire d'événements, vous pouvez toujours appeler des fonctions de filtrage telles que {{WebExtAPIRef("webRequest.StreamFilter.write()", "write()")}}, {{WebExtAPIRef("webRequest.StreamFilter.disconnect()", "disconnect()")}}, ou {{WebExtAPIRef("webRequest.StreamFilter.close()", "close()")}}.</p>
+</div>
+
+<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.webRequest.StreamFilter.onstop", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple ajoutera des "extra stuff" à la réponse  :</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+ let encoder = new TextEncoder();
+
+ filter.ondata = event =&gt; {
+ // pass through all the response data
+ filter.write(event.data);
+ }
+
+ filter.onstop = event =&gt; {
+ filter.write(encoder.encode("extra stuff"));
+ filter.disconnect();
+ }
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.com/*"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.html
new file mode 100644
index 0000000000..e733df0d44
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.html
@@ -0,0 +1,63 @@
+---
+title: webRequest.StreamFilter.resume()
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/resume
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StreamFilter.resume()
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/resume
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Reprend une requête qui a été précédemment suspendue par un appel à {{WebExtAPIRef("webRequest.StreamFilter.suspend()", "suspend()")}}.</p>
+
+<p>Vous ne pouvez pas appeler cette fonction avant que l'événement  {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">filter.suspend()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>None.</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.webRequest.StreamFilter.suspend", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple utilise la <em>suspend/resume</em> pour retarder une requête web</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+
+ filter.onstart = event =&gt; {
+ filter.suspend();
+
+ setTimeout(() =&gt; {
+ filter.resume();
+ filter.disconnect();
+ }, 1000);
+
+ }
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.org/"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.html
new file mode 100644
index 0000000000..eaf6867663
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.html
@@ -0,0 +1,72 @@
+---
+title: webRequest.StreamFilter.status
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/status
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StreamFilter.status
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/status
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>
+<p>Une chaîne de caractères qui décrit l'état actuel de la demande. Ce sera l'une des valeurs suivantes :</p>
+
+<dl>
+ <dt><code>"uninitialized"</code></dt>
+ <dd>Le filtre n'est pas entièrement initialisé. Aucune fonction de filtrage ne peut être appelée.</dd>
+ <dt><code>"transferringdata"</code></dt>
+ <dd>Le canal sous-jacent transfère actuellement des données qui seront acheminées vers l'extension dans un ou plusieurs événements  {{WebExtAPIRef("webRequest.StreamFilter.ondata", "ondata")}}. L'extension peut appeler des fonctions de filtrage telles que  {{WebExtAPIRef("webRequest.StreamFilter.write()", "write()")}}, {{WebExtAPIRef("webRequest.StreamFilter.close()", "close()")}}, ou  {{WebExtAPIRef("webRequest.StreamFilter.disconnect()", "disconnect()")}}.</dd>
+ <dt><code>"finishedtransferringdata"</code></dt>
+ <dd>Le canal sous-jacent a terminé le transfert des données. Dans cet état, l'extension peut toujours écrire des données de réponse en utilisant la fonction  {{WebExtAPIRef("webRequest.StreamFilter.write()", "write()")}}  du filtre.</dd>
+ <dt><code>"suspended"</code></dt>
+ <dd> Le transfert de données est actuellement suspendu. Dans cet état, l'extension peut reprendre la requête en appelant la fonction  {{WebExtAPIRef("webRequest.StreamFilter.resume()", "resume()")}} et peut écrire les données de réponse en utilisant la fonction  {{WebExtAPIRef("webRequest.StreamFilter.write()", "write()")}}  du filtre.</dd>
+ <dt><code>"closed"</code></dt>
+ <dd>L'extension a fermé la requête en appelant la fonction {{WebExtAPIRef("webRequest.StreamFilter.close()", "close()")}} du filtre. Le filtre ne déclenchera plus d'événements, et l'extension ne peut pas appeler de fonctions de filtrage.</dd>
+ <dt><code>"disconnected"</code></dt>
+ <dd> L'extension a déconnecté le filtre de la requête en appelant la fonction  {{WebExtAPIRef("webRequest.StreamFilter.disconnect()", "disconnect()")}} du filtre. Toutes les autres données seront livrées directement, sans passer par le filtre. Le filtre ne déclenchera plus d'événements, et l'extension ne peut pas appeler de fonctions de filtrage.</dd>
+ <dt><code>"failed"</code></dt>
+ <dd>Une erreur s'est produite et le filtre a été déconnecté de la requête. L'extension peut trouver un message d'erreur dans {{WebExtAPIRef("webRequest.StreamFilter.error", "error")}}, et ne peut appeler aucune fonction de filtrage.</dd>
+</dl>
+</div>
+
+<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.webRequest.StreamFilter.status", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+ console.log(filter.status); // uninitialized
+
+ filter.onstart = event =&gt; {
+ console.log(filter.status); // transferringdata
+ }
+
+ filter.ondata = event =&gt; {
+ console.log(filter.status); // transferringdata
+ // pass through the response data
+ filter.write(event.data);
+ }
+
+ filter.onstop = event =&gt; {
+ console.log(filter.status); // finishedtransferringdata
+ filter.disconnect();
+ console.log(filter.status); // disconnected
+ }
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.com/*"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.html
new file mode 100644
index 0000000000..fb5e40d299
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.html
@@ -0,0 +1,63 @@
+---
+title: webRequest.StreamFilter.suspend()
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/suspend
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StreamFilter.suspend()
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/suspend
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Suspend une demande. Après cet appel, plus aucune donnée ne sera livrée jusqu'à ce que la requête soit reprise avec un appel à {{WebExtAPIRef("webRequest.StreamFilter.resume()", "resume()")}}.</p>
+
+<p>Vous ne pouvez pas appeler cette fonction avant que l'événement {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">filter.suspend()
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<p>None.</p>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>None.</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.webRequest.StreamFilter.suspend", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple utilise la <em>suspend/resume</em> pour retarder une requête web.</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+
+ filter.onstart = event =&gt; {
+ filter.suspend();
+
+ setTimeout(() =&gt; {
+ filter.resume();
+ filter.disconnect();
+ }, 1000);
+
+ }
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.org/"], types: ["main_frame"]},
+ ["blocking"]
+);</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.html
new file mode 100644
index 0000000000..b1a46ecce8
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.html
@@ -0,0 +1,76 @@
+---
+title: webRequest.StreamFilter.write()
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/write
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Reference
+ - StreamFilter.write()
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/write
+---
+<div>{{AddonSidebar()}}</div>
+
+<div>Écrit quelques données de réponse dans le flux de sortie..</div>
+
+<div></div>
+
+<div>Vous ne pouvez appeler cette fonction qu'après le déclenchement de l'événement {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}}.</div>
+
+<div></div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">filter.write(
+ data // ArrayBuffer or Uint8Array
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>data</code></dt>
+ <dd><code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Uint8Array">Uint8Array</a></code> ou <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/ArrayBuffer">ArrayBuffer</a></code>: tableau d'octets contenant les données à transmettre au moteur de rendu du navigateur.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>None.</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.webRequest.StreamFilter.write", 10)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple utilise <code>write()</code> pour remplacer "Example" dans la réponse par  "WebExtension Example".</p>
+
+<pre class="brush: js">function listener(details) {
+ let filter = browser.webRequest.filterResponseData(details.requestId);
+ let decoder = new TextDecoder("utf-8");
+ let encoder = new TextEncoder();
+
+ filter.ondata = event =&gt; {
+ let str = decoder.decode(event.data, {stream: true});
+ // Just change any instance of Example in the HTTP response
+ // to WebExtension Example.
+ str = str.replace(/Example/g, 'WebExtension Example');
+ filter.write(encoder.encode(str));
+ filter.disconnect();
+ }
+
+ //return {}; // not needed
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+ listener,
+ {urls: ["https://example.com/*"], types: ["main_frame"]},
+ ["blocking"]
+);
+</pre>
+
+<p>{{WebExtExamples}}</p>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.html
new file mode 100644
index 0000000000..a5f366758e
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.html
@@ -0,0 +1,75 @@
+---
+title: webRequest.UploadData
+slug: Mozilla/Add-ons/WebExtensions/API/webRequest/UploadData
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - UploadData
+ - WebExtensions
+ - webRequest
+translation_of: Mozilla/Add-ons/WebExtensions/API/webRequest/UploadData
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Contient les données téléchargées dans une requête URL..</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>bytes</code>{{optional_inline}}</dt>
+ <dd><code>any</code>. Un ArrayBuffer avec une copie des données.</dd>
+ <dt><code>file</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. Une chaîne de caractères avec le chemin et le nom du fichier.</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.webRequest.UploadData")}}</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/webRequest"><code>chrome.webRequest</code></a>. Cette documentation est dérivée de <a href="https://chromium.googlesource.com/chromium/src/+/master/extensions/common/api/web_request.json"><code>web_request.json</code></a> dans le code Chromium.</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>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/create/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/create/index.html
new file mode 100644
index 0000000000..864690f912
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/create/index.html
@@ -0,0 +1,192 @@
+---
+title: windows.create()
+slug: Mozilla/Add-ons/WebExtensions/API/windows/create
+tags:
+ - API
+ - Add-ons
+ - Create
+ - Extensions
+ - Fenêtre
+ - Méthode
+ - Non-standard
+ - WebExtensions
+ - Windows
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/create
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Crée une nouvelle fenêtre.</p>
+
+<p>Lorsque vous créez la fenêtre, vous pouvez :</p>
+
+<ul>
+ <li>Chargez un ou plusieurs nouveaux onglets dans la fenêtre.</li>
+ <li>Déplacez un onglet d'une fenêtre existante dans la nouvelle fenêtre.</li>
+ <li>Réglez la taille et la position de la fenêtre.</li>
+ <li>Créez une fenêtre de style "panneau" qui, dans ce contexte, désigne une fenêtre sans l'interface utilisateur UI (barre d'adresse, barre d'outils, etc.).</li>
+ <li>Définissez différentes propriétés de la fenêtre, par exemple, qu'elle soit concentrée ou privée.</li>
+</ul>
+
+<p>Il s'agit d'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 creating = browser.windows.create(
+ createData // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>createData</code>{{optional_inline}}</dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>allowScriptsToClose</code> {{optional_inline}}</dt>
+ <dd>
+ <p><code>boolean</code>. Lorsque la fenêtre est ouverte, elle contiendra un seul onglet, ou plus d'un onglet si <code>url</code> est donnée et comprendra un tableau contenant plus d'une URL. Par défaut, les scripts s'exécutant dans ces pages ne sont pas autorisés à fermer leur onglet en utilisant <code><a href="/fr/docs/Web/API/Window/close">window.close()</a></code>. Si vous incluez <code>allowScriptsToClose</code> et le mettez à <code>true</code> ,  alors ce comportement par défaut est modifié, de sorte que les scripts peuvent fermer leurs onglets. Notez cela :</p>
+
+ <ul>
+ <li>Ceci ne s'applique qu'aux onglets qui ont été ouverts lors de la création de la fenêtre. Si l'utilisateur ouvre plus d'onglets dans cette fenêtre, les scripts ne pourront pas fermer ces nouveaux onglets.</li>
+ <li>Si la ou les url(s) donnée(s) dans <code>url</code> pointent vers les <a href="/fr/Add-ons/WebExtensions/user_interface/Bundled_web_pages">pages d'extension</a> (c'est-à-dire qu'il s'agit de pages incluses avec cette extension et chargées avec le protocole "moz-extension:") alors les scripts <em>sont</em> par défaut autorisés à fermer ces onglets.</li>
+ </ul>
+ </dd>
+ <dt><code>cookieStoreId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. S'il est présent, spécifie le <code>CookieStoreId</code> pour tous les onglets qui seront créés lorsque la fenêtre sera ouverte.</dd>
+ <dt><code>focused</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si c'est vrai, la nouvelle fenêtre sera concentrée. Si c'est <code>false</code>, la nouvelle fenêtre sera ouverte en arrière-plan et la fenêtre actuellement concentrée restera concentrée. Le paramètre par défaut est <code>true</code>.</dd>
+ <dt><code>height</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Hauteur en pixels de la nouvelle fenêtre, y compris dans une frame. Si elle n'est pas spécifiée, par défaut une hauteur naturel.</dd>
+ <dt><code>incognito</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Que la nouvelle fenêtre soit une fenêtre privée. Notez que si vous spécifiez <code>incognito</code> et <code>tabId</code>, c'est-à-dire, vous ne pouvez pas déplacer un onglet privé dans une fenêtre privée.</dd>
+ <dt><code>left</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Nombre de pixels pour positionner la nouvelle fenêtre à partir du bord gauche de l'écran. Si elle n'est pas spécifiée, la nouvelle fenêtre est décalée naturellement à partir de la dernière fenêtre ciblée. Cette valeur est ignorée pour les panneaux. (Dans Firefox, cette valeur est actuellement ignorée pour les popups  (bug 1271047) mais peut être définie en utilisant browser.windows.update().)</dd>
+ <dt><code>state</code> {{optional_inline}}</dt>
+ <dd>Une valeur {{WebExtAPIRef('windows.WindowState')}}. L'état initial de la fenêtre. Les états minimisés, maximisés et plein écran ne peuvent pas être combinés avec la gauche, le haut, la largeur ou la hauteur.</dd>
+ <dt><code>tabId</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Si inclus, déplace un onglet de l'ID spécifié d'une fenêtre existante dans la nouvelle fenêtre.</dd>
+ <dt><code>titlePreface</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Utilisez ceci pour ajouter une chaîne au début du titre de la fenêtre du navigateur. Selon le système d'exploitation sous-jacent, cela pourrait ne pas fonctionner sur les fenêtres du navigateur qui n'ont pas de titre (comme  about:blank dans Firefox).</dd>
+ <dt><code>top</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Le nombre de pixels pour positionner la nouvelle fenêtre à partir du bord supérieur de l'écran. Si elle n'est pas spécifiée, la nouvelle fenêtre est naturellement décalée à partir de la dernière fenêtre ciblée. Cette valeur est ignorée pour les panneaux. (Dans Firefox, cette valeur est actuellement ignorée pour les popups  (bug 1271047) mais peut être définie en utilisant browser.windows.update().)</dd>
+ <dt><code>type</code> {{optional_inline}}</dt>
+ <dd>Une valeur {{WebExtAPIRef('windows.CreateType')}} spécifie le type de fenêtre du navigateur à créer. Spécifié le <code>panneau</code> ou la <code>fenêtre contextuelle</code> ici pour ouvrir une fenêtre sans l'interface utilisateur (barre d'adresse, barre d'outils, etc).</dd>
+ <dt><code>url</code> {{optional_inline}}</dt>
+ <dd><code><code>string</code></code> ou <code><code>array</code></code> of <code><code><code>string</code></code></code>s. Une URL ou un tableau d'URL à ouvrir comme onglets dans une fenêtre. Les URL hautement qualifiées doivent inclure un schéma (c'est à dire <code>http://www.google.com</code>, et non <code>www.google.com</code>). Les URL relatives seront relatives à la page actuelle dans l'extension. Par défaut, la nouvelle page d'onglet.</dd>
+ <dt><code>width</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. La largeur en pixels de la nouvelle fenêtre, y compris le cadre. Si elle n'est pas spécifiée par défaut, vous avez une largeur naturelle.</dd>
+ </dl>
+ </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 objet {{WebExtAPIRef('windows.Window')}} contenant les détails de la nouvelle fenêtre. Cet objet de fenêtre aura toujours son ensemble de propriétés d'onglets, contrairement aux objets de fenêtre retournés à partir de {{WebExtAPIRef("windows.get()")}} et d'API similaires, qui contiennent uniquement des onglets si l'option de remplissage est passée. Si une erreur survient, la promesse sera rejetée avec un message d'erreur.</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ouvrir une fenêtre contenant deux onglets :</p>
+
+<pre class="brush: js">function onCreated(windowInfo) {
+ console.log(`Created window: ${windowInfo.id}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+ var creating = browser.windows.create({
+ url: ["https://developer.mozilla.org",
+ "https://addons.mozilla.org"]
+ });
+ creating.then(onCreated, onError);
+});</pre>
+
+<p>Ouvrez une fenêtre lorsque l'utilisateur clique sur une action du navigateur et déplacez l'onglet actif actuellement :</p>
+
+<pre class="brush: js">function onCreated(windowInfo) {
+ console.log(`Created window: ${windowInfo.id}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+ var creating = browser.windows.create({
+ tabId: tab.id
+ });
+ creating.then(onCreated, onError);
+});</pre>
+
+<p>Ouvrez une petite fenêtre de style panneau et chargez-en un fichier local:</p>
+
+<pre class="brush: js">function onCreated(windowInfo) {
+ console.log(`Created window: ${windowInfo.id}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+
+ var popupURL = browser.extension.getURL("popup/popup.html");
+
+ var creating = browser.windows.create({
+ url: popupURL,
+ type: "popup",
+ height: 200,
+ width: 200
+ });
+ creating.then(onCreated, onError);
+
+});</pre>
+
+<p>{{WebExtExamples}}</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.windows.create", 10)}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.html
new file mode 100644
index 0000000000..0dbfb64141
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.html
@@ -0,0 +1,79 @@
+---
+title: windows.CreateType
+slug: Mozilla/Add-ons/WebExtensions/API/windows/CreateType
+tags:
+ - API
+ - Add-ons
+ - CreateType
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - Windows
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/CreateType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Spécifie le type de fenêtre du navigateur à créer.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets <code>strings</code>. Les valeurs possibles sont :</p>
+
+<ul>
+ <li><code>"normal"</code></li>
+ <li><code>"popup"</code></li>
+ <li><code>"panel"</code></li>
+ <li><code>"detached_panel"</code></li>
+</ul>
+
+<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.windows.CreateType")}}</p>
+
+
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/get/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/get/index.html
new file mode 100644
index 0000000000..7c75f9d804
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/get/index.html
@@ -0,0 +1,123 @@
+---
+title: windows.get()
+slug: Mozilla/Add-ons/WebExtensions/API/windows/get
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Méthode
+ - Non-standard
+ - Référence(2)
+ - WebExtensions
+ - Windows
+ - get
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/get
+---
+<div><span class="diff_add">{{AddonSidebar()}}</span></div>
+
+<p>Obtient les détails sur une fenêtre, compte tenu de son identifiant. Les détails sont transmis à un rappel.</p>
+
+<p>Il s'agit d'une fonction asynchrone qui renvoit 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 getting = browser.windows.get(
+ windowId, // integer
+ getInfo // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. L'ID de l'objet de fenêtre souhaité est retourné.</dd>
+ <dt><code>getInfo</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Contient des options pour filtrer le type de fenêtre.
+ <dl class="reference-values">
+ <dt><code>populate</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si c'est vrai, l'objet {{WebExtAPIRef('windows.Window')}} aura une propriété de tabulation qui contient une liste d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les onglets ouverts dans la fenêtre. Les objets Tab ne contiennent que les propriétés <code>url</code>, <code>title</code> et <code>favIconUrl</code>  i le fichier manifeste de l'extension comprend la permission <code>"tabs"</code>.</dd>
+ <dt><code>windowTypes</code>{{optional_inline}}</dt>
+ <dd><code>Ensemble d'objets</code> {{WebExtAPIRef('windows.WindowType')}}. Si défini, le retour de {{WebExtAPIRef('windows.Window')}} sera filtré en fonction de son type. Si désactivé, le filtre par défaut est réglé sur <code>['normal', 'panel', 'popup']</code>, avec des types de fenêtres <code>'panel'</code> qui sont limités aux propres fenêtres de l'extension.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<div class="note"><strong>Note:</strong>
+
+<p>Si fourni, le composant <code>windowTypes</code> de <code>getInfo</code> est ignoré. L'utilisation de  <code>windowTypes</code> a été dépréciée à partir de Firefox 62.</p>
+</div>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un objet {{WebExtAPIRef('windows.Window')}} contenant les détails de la fenêtre. Si une erreur survient, la promesse sera rejetée avec un message d'erreur.</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.windows.get",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Cet exemple obtient la fenêtre actuelle et enregistre les URL des onglets qu'il contient. Notez que vous aurez besoin des <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "onglets" pour accéder aux URL des onglets.</p>
+
+<div class="note">
+<p><strong>Note</strong>: Cet exemple est un peu irréaliste: dans cette situation, vous utiliserez probablement  {{WebExtAPIRef("windows.getCurrent()")}}.</p>
+</div>
+
+<pre class="brush: js">function logTabs(windowInfo) {
+ for (tabInfo of windowInfo.tabs) {
+ console.log(tabInfo.url);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+ var getting = browser.windows.get(tab.windowId, {populate: true});
+ getting.then(logTabs, onError);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.html
new file mode 100644
index 0000000000..019e4ec500
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.html
@@ -0,0 +1,120 @@
+---
+title: windows.getAll()
+slug: Mozilla/Add-ons/WebExtensions/API/windows/getAll
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - Windows
+ - getAll
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/getAll
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient des informations sur toutes les fenêtres ouvertes, en les passant dans un rappel.</p>
+
+<p>Il s'agit d'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.windows.getAll(
+ getInfo // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>getInfo</code>{{optional_inline}}</dt>
+ <dd><code>object</code>. Cela contrôle ce que les objets {{WebExtAPIRef('windows.Window')}} sont récupérés.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>populate</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code> Par défaut à <code>false</code>.  S'il est défini sur <code>true</code>, chaque objet {{WebExtAPIRef('windows.Window')}} aura une propriété <code>tabs</code> qui contient une liste d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les tabs de cette fenêtre. Les objets <code>Tab</code> contiendront les propriétés <code>url</code>, <code>title</code> et <code>favIconUrl</code> uniquement si le fichier manifest de l'extension contient les permissions <code>"tabs"</code>.</dd>
+ <dt><code>windowTypes</code>{{optional_inline}}</dt>
+ <dd><code>Un ensemble d'objets</code> {{WebExtAPIRef('windows.WindowType')}}. Si cette option est définie, les objets {{WebExtAPIRef('windows.Window')}} renvoyés seront filtrés en fonction de leur type. Si désactivé, le filtre par défaut est réglé sur <code>['normal', 'panel', 'popup']</code>, avec des types de fenêtres <code>'panel'</code> qui sont limités aux propres fenêtres de l'extension.</dd>
+ </dl>
+ </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 ensemble d'objets  {{WebExtAPIRef('windows.Window')}}, représentant toutes les fenêtres qui correspondent aux critères donnés. Si une erreur survient, la promesse sera rejetée avec un message d'erreur.</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.windows.getAll")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez les URL pour les onglets sur toutes les fenêtres de navigateur "normales". Notez que vous aurez besoin de <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "onglets" pour accéder aux URLs des onglets.</p>
+
+<pre class="brush: js">function logTabsForWindows(windowInfoArray) {
+ for (windowInfo of windowInfoArray) {
+ console.log(`Window: ${windowInfo.id}`);
+ console.log(windowInfo.tabs.map((tab) =&gt; {return tab.url}));
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+ var getting = browser.windows.getAll({
+ populate: true,
+ windowTypes: ["normal"]
+ });
+ getting.then(logTabsForWindows, onError);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.html
new file mode 100644
index 0000000000..986ec1b0de
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.html
@@ -0,0 +1,119 @@
+---
+title: windows.getCurrent()
+slug: Mozilla/Add-ons/WebExtensions/API/windows/getCurrent
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - Windows
+ - getCurrent
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/getCurrent
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient la fenêtre actuelle du navigateur, en passant ses détails dans un rappel.</p>
+
+<p>La fenêtre "actuelle" n'est pas nécessairement la même que la fenêtre ayant actuellement le focus. Si cette fonction est appelée à partir d'un script en arrière-plan, elle renvoie la fenêtre ayant actuellement le focus. Mais s'il est appelé à partir d'un script dont le document est associé à une fenêtre de navigateur particulière, il retourne la fenêtre de ce navigateur. Par exemple, si le navigateur affiche une barre latérale, chaque fenêtre de navigateur possède sa propre instance du document de la barre latérale. Si un script exécuté dans le document de la barre latérale appelle <code>getCurrent()</code>, il renverra la fenêtre de ce document de la barre latérale.</p>
+
+<p>Il s'agit d'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 gettingCurrent = browser.windows.getCurrent(
+ getInfo // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>getInfo</code>{{optional_inline}}</dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>populate</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si c'est vrai, l'objet {{WebExtAPIRef('windows.Window')}} aura une propriété de tabulation contenant une liste d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les onglets de la fenêtre. Les objets Tab ne contiennent que les propriétés <code>url</code>, <code>title</code> et <code>favIconUrl</code> si le fichier manifest de l'extension comprend la permission <code>"tabs"</code>.</dd>
+ <dt><code>windowTypes</code>{{optional_inline}}</dt>
+ <dd>Un ensemble d'objets <code>{{WebExtAPIRef('windows.WindowType')}}</code>. Si défini, le  {{WebExtAPIRef('windows.Window')}} retourné sera filtré en fonction de son type. Si désactivé, le filtre par défaut est réglé sur <code>['normal', 'panel', 'popup']</code>, avec des types de fenêtres <code>'panneau'</code> qui sont limités aux propres fenêtres de l'extension.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<div class="note"><strong>Note:</strong>
+
+<p>Si fourni, le composant <code>windowTypes</code> de <code>getInfo</code> est ignoré. L'utilisation de  <code>windowTypes</code> a été dépréciée à partir de Firefox 62.</p>
+</div>
+
+<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 objet <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/API/windows/Window" title="Information about a browser window."><code>windows.Window</code></a> object contenant les détails de la fenêtre. Si une erreur survient, la promesse sera rejetée avec un message d'erreur.</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.windows.getCurrent",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Lorsque l'utilisateur clique sur l'icône d'une action du navigateur, cet exemple obtient la fenêtre actuelle et enregistre les URL des onglets qu'elle contient. Notez que vous aurez besoin de la <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "tabs" pour accéder aux URL des onglets.</p>
+
+<pre class="brush: js">function logTabs(windowInfo) {
+ for (let tabInfo of windowInfo.tabs) {
+ console.log(tabInfo.url);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+ var getting = browser.windows.getCurrent({populate: true});
+ getting.then(logTabs, onError);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.html
new file mode 100644
index 0000000000..fe798635ac
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.html
@@ -0,0 +1,117 @@
+---
+title: windows.getLastFocused()
+slug: Mozilla/Add-ons/WebExtensions/API/windows/getLastFocused
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Referece
+ - WebExtensions
+ - Windows
+ - getLastFocused
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/getLastFocused
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Obtient la fenêtre qui a été recentrée récemment — généralement la fenêtre 'en haut'.</p>
+
+<p>Il s'agit d'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 gettingWindow = browser.windows.getLastFocused(
+ getInfo // optional object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>getInfo</code>{{optional_inline}}</dt>
+ <dd><code>object</code>.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>populate</code>{{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si c'est vrai, l'objet {{WebExtAPIRef('windows.Window')}} aura une propriété de tabulation contenant une liste d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les onglets de la fenêtre. Les objets d'onglets ne contiennent que les propriétés <code>url</code>, <code>title</code> et <code>favIconUrl</code> si le fichier manifest de l'extension comprend la permission <code>"tabs"</code>.</dd>
+ <dt><code>windowTypes</code>{{optional_inline}}</dt>
+ <dd>Un ensemble d'objets {{WebExtAPIRef('windows.WindowType')}}. Si défini, le  {{WebExtAPIRef('windows.Window')}} retourné sera filtré en fonction de son type. Si désactivé, le filtre par défaut est réglé sur <code>['normal', 'panel', 'popup']</code>, avec le type de fenêtre <code>'panel'</code> qui sont limités aux propres fenêtres de l'extension.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<div class="note"><strong>Note:</strong>
+
+<p>Si fourni, le composant <code>windowTypes</code> de <code>getInfo</code> est ignoré. L'utilisation de <code>windowTypes</code> a été dépréciée à partir de Firefox 62.</p>
+</div>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p><code>Une <a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un objet {{WebExtAPIRef('windows.Window')}} contenant les détails de la dernière fenêtre ciblée. Si une erreur survient, la promesse sera rejetée avec un message d'erreur.</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.windows.getLastFocused",2)}}</p>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Obtenez la dernière fenêtre ciblée et enregistrez les onglets qu'elle contient. Notez que vous aurez besoin de la <a href="/fr/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> "tabs" pour accéder aux URL des onglets.</p>
+
+<pre class="brush: js">function logTabs(windowInfo) {
+ for (tabInfo of windowInfo.tabs) {
+ console.log(tabInfo.url);
+ }
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+ var getting = browser.windows.getLastFocused({populate: true});
+ getting.then(logTabs, onError);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/index.html
new file mode 100644
index 0000000000..2967f8e342
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/index.html
@@ -0,0 +1,115 @@
+---
+title: windows
+slug: Mozilla/Add-ons/WebExtensions/API/windows
+tags:
+ - API
+ - Add-os
+ - Extensions
+ - Interface
+ - Non-standard
+ - Référence(2)
+ - WebExtensions
+ - Windows
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows
+---
+<div>{{AddonSidebar}}</div>
+
+<p>Intéragissez avec les fenêtres du navigateur. Vous pouvez utiliser cette API pour obtenir des informations sur les fenêtres ouvertes et à ouvrir, modifiée et fermée les fenêtres. Vous pouvez également écouter la fenêtre ouverte, fermée, et activée les événements.</p>
+
+<h2 id="Types">Types</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("windows.WindowType")}}</dt>
+ <dd>Le type de fenêtre du navigateur ici.</dd>
+ <dt>{{WebExtAPIRef("windows.WindowState")}}</dt>
+ <dd>L'état de cette fenêtre du navigateur.</dd>
+ <dt>{{WebExtAPIRef("windows.Window")}}</dt>
+ <dd>Contient des informations sur une fenêtre de navigateur.</dd>
+ <dt>{{WebExtAPIRef("windows.CreateType")}}</dt>
+ <dd>Spécifie le type de fenêtre du navigateur à créer.</dd>
+</dl>
+
+<h2 id="Constantes">Constantes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("windows.WINDOW_ID_NONE")}}</dt>
+ <dd>La valeur <code>windowId</code> qui représente l'absence d'une fenêtre de navigateur.</dd>
+ <dt>{{WebExtAPIRef("windows.WINDOW_ID_CURRENT")}}</dt>
+ <dd>Une valeur qui peut être utilisée à la place d'un <code>windowId</code> dans certaines APIs pour représenter la fenêtre courante.</dd>
+</dl>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("windows.get()")}}</dt>
+ <dd>Obtient les détails sur une fenêtre, compte tenu de son identifiant.</dd>
+ <dt>{{WebExtAPIRef("windows.getCurrent()")}}</dt>
+ <dd>Obtient les informations de la fenêtre courante.</dd>
+ <dt>{{WebExtAPIRef("windows.getLastFocused()")}}</dt>
+ <dd>Obtient la fenêtre qui a été recentrée plus récemment — généralement la fenêtre « en haut ».</dd>
+ <dt>{{WebExtAPIRef("windows.getAll()")}}</dt>
+ <dd>Obtient les informations de toutes les fenêtres</dd>
+ <dt>{{WebExtAPIRef("windows.create()")}}</dt>
+ <dd>
+ <p>Crée une nouvelle fenêtre.</p>
+ </dd>
+ <dt>{{WebExtAPIRef("windows.update()")}}</dt>
+ <dd>Mises à jour des propriétés d'une fenêtre. Utilisez ceci pour déplacer, redimensionner, et (un) se concentrer sur une fenêtre, etc.</dd>
+ <dt>{{WebExtAPIRef("windows.remove()")}}</dt>
+ <dd>Ferme une fenêtre et tous ses onglets.</dd>
+</dl>
+
+<h2 id="Evénements">Evénements</h2>
+
+<dl>
+ <dt>{{WebExtAPIRef("windows.onCreated")}}</dt>
+ <dd>Lancé quand une fenêtre est créée.</dd>
+ <dt>{{WebExtAPIRef("windows.onRemoved")}}</dt>
+ <dd>Lancé quand une fenêtre est fermée.</dd>
+ <dt>{{WebExtAPIRef("windows.onFocusChanged")}}</dt>
+ <dd>Lancé quand la fenêtre courante change.</dd>
+</dl>
+
+<h2 id="Compatibilité_du_navigateur">Compatibilité du navigateur</h2>
+
+<p>{{Compat("webextensions.api.windows")}}</p>
+
+<p>{{WebExtExamples("h2")}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.html
new file mode 100644
index 0000000000..b45dfcf4a7
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.html
@@ -0,0 +1,110 @@
+---
+title: windows.onCreated
+slug: Mozilla/Add-ons/WebExtensions/API/windows/onCreated
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Référence(2)
+ - WebExtensions
+ - Windows
+ - onCreated
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/onCreated
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancer quand la fenêtre est créée</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.windows.onCreated.addListener(listener)
+browser.windows.onCreated.removeListener(listener)
+browser.windows.onCreated.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un auditeur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêter d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si un auditeur est enregistré pour cet événement. Renvoie vrai si elle répond, Faux sinon.</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 lors de l'événement. La fonction passera les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>window</code></dt>
+ <dd>Un objet {{WebExtAPIRef('windows.Window')}} contenant les détails de la fenêtre qui a été créé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.windows.onCreated")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrez les ID des nouvelles fenêtres lorsqu'elles sont créées</p>
+
+<pre class="brush: js">browser.windows.onCreated.addListener((window) =&gt; {
+ console.log("New window: " + window.id);
+});</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.html
new file mode 100644
index 0000000000..08c08a94aa
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.html
@@ -0,0 +1,114 @@
+---
+title: windows.onFocusChanged
+slug: Mozilla/Add-ons/WebExtensions/API/windows/onFocusChanged
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Reference
+ - WebExtensions
+ - Windows
+ - onFocusChanged
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/onFocusChanged
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Attiré lorsque la fenêtre actuellement change. Sera {{WebExtAPIRef('windows.WINDOW_ID_NONE')}} si toutes les fenêtres du navigateur ont perdu le focus.</p>
+
+<div class="note">
+<p><strong>Note</strong>: Sur certains gestionnaires de fenêtres Linux, WINDOW_ID_NONE sera toujours envoyé immédiatement avant un passage d'une fenêtre de navigateur à l'autre.</p>
+</div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="syntaxbox brush:js">browser.windows.onFocusChanged.addListener(listener)
+browser.windows.onFocusChanged.removeListener(listener)
+browser.windows.onFocusChanged.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois événements :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un auditeur à cet événement</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêtez d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifiez si un auditeur est enregistré pour cet événement. Renvoie <strong>vrai</strong> si elle écoute, <strong>faux</strong> sinon..</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 lors de l'événement. La fonction passera les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. ID de la fenêtre nouvellement localisé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.windows.onFocusChanged")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Changements de mise au point du journal :</p>
+
+<pre class="brush: js">browser.windows.onFocusChanged.addListener((windowId) =&gt; {
+ console.log("Newly focused window: " + windowId);
+});</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.html
new file mode 100644
index 0000000000..ca48c390fb
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.html
@@ -0,0 +1,111 @@
+---
+title: windows.onRemoved
+slug: Mozilla/Add-ons/WebExtensions/API/windows/onRemoved
+tags:
+ - API
+ - Add-ons
+ - Event
+ - Extensions
+ - Non-standard
+ - Référence(2)
+ - WebExtensions
+ - Windows
+ - onRemoved
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/onRemoved
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Lancer quand une fenêtre est fermée.</p>
+
+<h2 id="Syntax">Syntax</h2>
+
+<pre class="syntaxbox brush:js">browser.windows.onRemoved.addListener(listener)
+browser.windows.onRemoved.removeListener(listener)
+browser.windows.onRemoved.hasListener(listener)
+</pre>
+
+<p>Les événements ont trois fonctions :</p>
+
+<dl>
+ <dt><code>addListener(callback)</code></dt>
+ <dd>Ajoute un auditeur à cet événement.</dd>
+ <dt><code>removeListener(listener)</code></dt>
+ <dd>Arrêter d'écouter cet événement. L'argument de l'auditeur est l'auditeur supprimer.</dd>
+ <dt><code>hasListener(listener)</code></dt>
+ <dd>Vérifie si un auditeur est enregistré pour cet événement. Renvoie vrai si elle écoute, faux sinon.</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 lors de l'événement. La fonction passera les arguments suivants :</p>
+
+ <dl class="reference-values">
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. ID de la fenêtre fermé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.windows.onRemoved")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Enregistrer les identifiants de la fenêtre lorsqu'ils sont supprimés</p>
+
+<pre class="brush: js">browser.windows.onRemoved.addListener((windowId) =&gt; {
+ console.log("Closed window: " + windowId);
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.html
new file mode 100644
index 0000000000..49cc7a2d71
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.html
@@ -0,0 +1,120 @@
+---
+title: windows.remove()
+slug: Mozilla/Add-ons/WebExtensions/API/windows/remove
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Fenêtre
+ - Méthode
+ - Non-standard
+ - Référence(2)
+ - Suppression
+ - WebExtensions
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/remove
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Ferme une fenêtre et tous les onglets à l'intérieur, compte tenu de l'ID de la fenêtre.</p>
+
+<p>Il s'agit d'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 removing = browser.windows.remove(
+ windowId // integer
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. ID of the window to close.</dd>
+</dl>
+
+<h3 id="Valeur_retournée">Valeur retournée</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promesse</a></code> qui sera remplie sans arguments lorsque la fenêtre a été fermée. Si une erreur survient, la promesse sera rejetée avec un message d'erreur.</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.windows.remove")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Lorsque l'utilisateur clique sur l'icône d'une action du navigateur, fermez la fenêtre dans laquelle l'icône a été cliquée:</p>
+
+<pre class="brush: js">function onRemoved() {
+ console.log(`Removed window`);
+}
+
+function onError(error) {
+ console.error(`Error:`, error);
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+
+ var removing = browser.windows.remove(tab.windowId);
+ removing.then(onRemoved, onError);
+
+});</pre>
+
+<p><br>
+ Fermez la fenêtre en cours, par exemple une fenêtre contextuelle, lorsque l'utilisateur clique sur un bouton de la page :</p>
+
+<pre class="brush: js">// in a script loaded by the page in the window
+document.querySelector('#close').addEventListener(async ({ button, }) =&gt; { try {
+ if (button) return; // not a left click
+ const windowId = (await browser.windows.getCurrent()).id;
+ await browser.windows.remove(windowId);
+ // this point will never be reached, since the window is gone
+} catch (error) { console.error('Closing failed:', error); } });</pre>
+
+<p>Dans Firefox, la même chose pourrait être réalisée avec la propriété de création de fenêtre  <code>.allowScriptsToClose</code> et <code>window.close()</code>.</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/update/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/update/index.html
new file mode 100644
index 0000000000..de597c8bc9
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/update/index.html
@@ -0,0 +1,134 @@
+---
+title: windows.update()
+slug: Mozilla/Add-ons/WebExtensions/API/windows/update
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Method
+ - Non-standard
+ - Reference
+ - Update
+ - WebExtensions
+ - Windows
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/update
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Mises à jour des propriétés d'une fenêtre. Utilisez ceci pour déplacer, redimensionner, et (un) se concentrer sur une fenêtre, etc.</p>
+
+<p>Il s'agit d'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.windows.update(
+ windowId, // integer
+ updateInfo // object
+)
+</pre>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>windowId</code></dt>
+ <dd><code>integer</code>. ID de la fenêtre à mettre à jour.</dd>
+ <dt><code>updateInfo</code></dt>
+ <dd><code>object</code>. Objet contenant les propriétés de mise à jour.</dd>
+ <dd>
+ <dl class="reference-values">
+ <dt><code>drawAttention</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. si cela est vrai, la fenêtre doit être affichée de manière à attirer l'attention de l'utilisateur sur la fenêtre, sans changer la fenêtre ciblée. L'effet dure jusqu'à ce que l'utilisateur change de focus sur la fenêtre. Cette option n'a aucun effet si la fenêtre a déjà un focus. Si cela est faux pour annuler la requête précéndete <code>drawAttention</code>.</dd>
+ <dt><code>focused</code> {{optional_inline}}</dt>
+ <dd><code>boolean</code>. Si c'est vrai, apporte la fenêtre à l'avant. Si c'est faux, apporte la fenêtre suivante dans le z-order de l'avant.</dd>
+ <dt><code>height</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Hauteur pour redimensionner la fenêtre en pixels. Cette valeur est ignorée pour les panneaux.</dd>
+ <dt><code>left</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Le décalage du bord gauche de l'écran pour déplacer la fenêtre en pixels. Cette valeur est ignorée pour les panneaux.</dd>
+ <dt><code>state</code>{{optional_inline}}</dt>
+ <dd>{{WebExtAPIRef('windows.WindowState')}}. Le nouvel état de la fenêtre. Les états minimisés, maximisés et en plein écran ne peuvent pas être combinés avec gauche, haut, largeur ou hauteur.</dd>
+ <dt><code>titlePreface</code> {{optional_inline}}</dt>
+ <dd><code>string</code>. Utilisez ceci pour ajouter une chaîne au début du titre de la fenêtre du navigateur. Selon le système d'exploitation sous-jacent, cela pourrait ne pas fonctionner sur les fenêtres du navigateur qui n'ont pas de titre (comme about:blank dans Firefox).</dd>
+ <dt><code>top</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. Le décallage du bord supérieur de l'écran pour déplacer la fenêtre en pixels. Cette valeur est ignorée pour les panneaux.</dd>
+ <dt><code>width</code> {{optional_inline}}</dt>
+ <dd><code>integer</code>. La largeur pour redimensionner la fenêtre en pixels. Cette valeur est ignorée pour les panneaux.</dd>
+ </dl>
+ </dd>
+</dl>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Une <code><a href="/fr/docs/Web/JavaScript/Reference/Objets_globaux/Promise">Promise</a></code> qui sera remplie avec un objet {{WebExtAPIRef('windows.Window')}}  contenant les détails de la fenêtre mise à jour. Si une erreur survient, la promesse sera rejetée avec un message d'erreur.</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.windows.update")}}</p>
+
+
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Lorsque l'utilisateur clique sur l'icône d'une action du navigateur, déplacez la fenêtre vers le coin supérieur gauche:</p>
+
+<pre class="brush: js">function onUpdated(windowInfo) {
+ console.log(`Updated window: ${windowInfo.id}`);
+}
+
+function onError(error) {
+ console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) =&gt; {
+
+ var updating = browser.windows.update(tab.windowId, {
+ left: 0,
+ top: 0
+ });
+ updating.then(onUpdated, onError);
+
+});
+</pre>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/window/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/window/index.html
new file mode 100644
index 0000000000..7c4933b0bd
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/window/index.html
@@ -0,0 +1,96 @@
+---
+title: windows.Window
+slug: Mozilla/Add-ons/WebExtensions/API/windows/Window
+tags:
+ - Fenêtre
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/Window
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Informations sur une fenêtre du navigateur.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :</p>
+
+<dl class="reference-values">
+ <dt><code>alwaysOnTop</code></dt>
+ <dd><code>boolean</code>. Que la fenêtre soit configurée pour toujours être sur le dessus.</dd>
+ <dt><code>focused</code></dt>
+ <dd><code>boolean</code>.  Que la fenêtre soit actuellement la fenêtre ciblée.</dd>
+ <dt><code>height</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. La hauteur de la fenêtre, y compris le cadre, en pixels.</dd>
+</dl>
+
+<dl class="reference-values">
+ <dt><code>id</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. L'ID de la fenêtre. Les identifiants de fenêtre sont uniques dans une session de navigateur.</dd>
+ <dt><code>incognito</code></dt>
+ <dd><code>boolean</code>. Que la fenêtre soit incognito (privé).</dd>
+ <dt><code>left</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Le décalage de la fenêtre du bord gauche de l'écran en pixels.</dd>
+ <dt><code>sessionId</code>{{optional_inline}}</dt>
+ <dd><code>string</code>. L'ID de session utilisé pour identifier de manière unique une fenêtre obtenue à partir de l'API {{WebExtAPIRef ('sessions')}}.</dd>
+ <dt><code>state</code>{{optional_inline}}</dt>
+ <dd>Une valeur {{WebExtAPIRef('windows.WindowState')}} représentant l'état de cette fenêtre du navigateur - maximisé, minimisé, etc.</dd>
+ <dt><code>tabs</code>{{optional_inline}}</dt>
+ <dd>Tableau d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les onglets courants dans la fenêtre.</dd>
+ <dt><code>title</code> {{optional_inline}}</dt>
+ <dd>Le titre de la fenêtre du navigateur. Nécessite la permission "tabs". Lecture seulement.</dd>
+ <dt><code>top</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. Le décalage de la fenêtre du bord supérieur de l'écran en pixels.</dd>
+ <dt><code>type</code>{{optional_inline}}</dt>
+ <dd>Une valeur {{WebExtAPIRef('windows.WindowType')}} représentant le type de fenêtre du navigateur, c'est-à-dire — fenêtre normale du navigateur, fenêtre contextuelle, etc.</dd>
+ <dt><code>width</code>{{optional_inline}}</dt>
+ <dd><code>integer</code>. La largeur de la fenêtre, y compris le cadre, en pixels.</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.windows.Window")}}</p>
+
+
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.html
new file mode 100644
index 0000000000..a4b7def27d
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.html
@@ -0,0 +1,67 @@
+---
+title: windows.WINDOW_ID_CURRENT
+slug: Mozilla/Add-ons/WebExtensions/API/windows/WINDOW_ID_CURRENT
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Propriété
+ - WINDOW_ID_CURRENT
+ - WebExtensions
+ - Windows
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/WINDOW_ID_CURRENT
+---
+<div>{{AddonSidebar()}}</div>
+
+<p><code>browser.windows.WINDOW_ID_CURRENT</code> est une valeur qui peut être utilisée comme paramètre <code>windowId</code> dans certaines APIs pour représenter la fenêtre courante.</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.windows.WINDOW_ID_CURRENT")}}</p>
+
+
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.html
new file mode 100644
index 0000000000..87ea7e8467
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.html
@@ -0,0 +1,68 @@
+---
+title: windows.WINDOW_ID_NONE
+slug: Mozilla/Add-ons/WebExtensions/API/windows/WINDOW_ID_NONE
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Propriété
+ - Référence(2)
+ - WINDOWS_ID_NONE
+ - WebExtensions
+ - Windows
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/WINDOW_ID_NONE
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>La valeur <code>windowId</code> que représente l'absence d'une fenêtre du navigateur.</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.windows.WINDOW_ID_NONE")}}</p>
+
+
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.html
new file mode 100644
index 0000000000..5e7125577a
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.html
@@ -0,0 +1,83 @@
+---
+title: windows.WindowState
+slug: Mozilla/Add-ons/WebExtensions/API/windows/WindowState
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - WindowState
+ - Windows
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/WindowState
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>L'état de cette fenêtre du navigateur.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:</p>
+
+<dl>
+ <dt><code>"normal"</code></dt>
+ <dd>La fenêtre est à la taille par défaut ou à la taille sélectionnée par l'utilisateur.</dd>
+ <dt><code>"minimized"</code></dt>
+ <dd>La fenêtre n'est visible que sous la forme d'une icône dans la barre des tâches ou .</dd>
+ <dt><code>"maximized"</code></dt>
+ <dd>La fenêtre remplit l'écran sur lequel elle est affichée sans inclure les zones d'écran réservées par le système d'exploitation.</dd>
+ <dt><code>"fullscreen"</code></dt>
+ <dd>La fenêtre s'exécute en plein écran ou le contenu d'un onglet utilise l'<a href="https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API">API Fullscreen</a></dd>
+ <dt><code>"docked"</code></dt>
+ <dd>Une fenêtre ancrée occupe une position fixe par rapport aux autres fenêtres appartenant à la même application.</dd>
+</dl>
+
+<p>Compatibilité macOS : A partir de macOS 10.10, le comportement de maximisation par défaut pour les fenêtres a été modifié pour exécuter les applications en plein écran au lieu des fenêtres "zoomées". <code>fullscreen</code> fait référence à la fois au navigateur fonctionnant en plein écran et lorsque le contenu dans un onglet utilise l'API Fullscreen.</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.windows.WindowState")}}</p>
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>
diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.html
new file mode 100644
index 0000000000..24709c8ab4
--- /dev/null
+++ b/files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.html
@@ -0,0 +1,79 @@
+---
+title: windows.WindowType
+slug: Mozilla/Add-ons/WebExtensions/API/windows/WindowType
+tags:
+ - API
+ - Add-ons
+ - Extensions
+ - Non-standard
+ - Reference
+ - Type
+ - WebExtensions
+ - WindowType
+ - Windows
+translation_of: Mozilla/Add-ons/WebExtensions/API/windows/WindowType
+---
+<div>{{AddonSidebar()}}</div>
+
+<p>Le type de la fenêtre du navigateur est comme çà.</p>
+
+<h2 id="Type">Type</h2>
+
+<p>Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :</p>
+
+<ul>
+ <li><code>"normal"</code></li>
+ <li><code>"popup"</code></li>
+ <li><code>"panel"</code></li>
+ <li><code>"devtools"</code></li>
+</ul>
+
+<h2 id="Browser_compatibility">Browser compatibility</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.windows.WindowType")}}</p>
+
+
+
+<p>{{WebExtExamples}}</p>
+
+<div class="note"><strong>Remerciements</strong>
+
+<p>Cette API est basée sur l'API de Chromnium <a href="https://developer.chrome.com/extensions/windows"><code>chrome.windows</code></a>. Cette documentation provient de <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/windows.json"><code>windows.json</code></a> dans le code de Chromium.</p>
+
+<p>Les données de compatibilité Microsoft Edge sont fournies par Microsoft Corporation et sont incluses ici sous la licence Creative Commons Attribution 3.0 United States.</p>
+</div>
+
+<div class="hidden">
+<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without
+// modification, are permitted provided that the following conditions are
+// met:
+//
+// * Redistributions of source code must retain the above copyright
+// notice, this list of conditions and the following disclaimer.
+// * Redistributions in binary form must reproduce the above
+// copyright notice, this list of conditions and the following disclaimer
+// in the documentation and/or other materials provided with the
+// distribution.
+// * Neither the name of Google Inc. nor the names of its
+// contributors may be used to endorse or promote products derived from
+// this software without specific prior written permission.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+</pre>
+</div>